"use strict";var __esbuild_esm_mermaid=(()=>{var oxt=Object.create;var Z1=Object.defineProperty;var lxt=Object.getOwnPropertyDescriptor;var cxt=Object.getOwnPropertyNames;var uxt=Object.getPrototypeOf,hxt=Object.prototype.hasOwnProperty;var o=(e,t)=>Z1(e,"name",{value:t,configurable:!0});var R=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ti=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xr=(e,t)=>{for(var r in t)Z1(e,r,{get:t[r],enumerable:!0})},Zb=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of cxt(t))!hxt.call(e,i)&&i!==r&&Z1(e,i,{get:()=>t[i],enumerable:!(n=lxt(t,i))||n.enumerable});return e},wr=(e,t,r)=>(Zb(e,t,"default"),r&&Zb(r,t,"default")),Qi=(e,t,r)=>(r=e!=null?oxt(uxt(e)):{},Zb(t||!e||!e.__esModule?Z1(r,"default",{value:e,enumerable:!0}):r,e)),fxt=e=>Zb(Z1({},"__esModule",{value:!0}),e);var Jb=Ti((pS,mS)=>{"use strict";(function(e,t){typeof pS=="object"&&typeof mS<"u"?mS.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs=t()})(pS,function(){"use strict";var e=1e3,t=6e4,r=36e5,n="millisecond",i="second",a="minute",s="hour",l="day",u="week",h="month",f="quarter",d="year",p="date",m="Invalid Date",g=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|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,v={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:o(function(k){var I=["th","st","nd","rd"],C=k%100;return"["+k+(I[(C-20)%10]||I[C]||I[0])+"]"},"ordinal")},x=o(function(k,I,C){var O=String(k);return!O||O.length>=I?k:""+Array(I+1-O.length).join(C)+k},"m"),b={s:x,z:o(function(k){var I=-k.utcOffset(),C=Math.abs(I),O=Math.floor(C/60),D=C%60;return(I<=0?"+":"-")+x(O,2,"0")+":"+x(D,2,"0")},"z"),m:o(function k(I,C){if(I.date()1)return k(F[0])}else{var B=I.name;S[B]=I,D=B}return!O&&D&&(w=D),D||!O&&w},"t"),A=o(function(k,I){if(E(k))return k.clone();var C=typeof I=="object"?I:{};return C.date=k,C.args=arguments,new M(C)},"O"),L=b;L.l=_,L.i=E,L.w=function(k,I){return A(k,{locale:I.$L,utc:I.$u,x:I.$x,$offset:I.$offset})};var M=function(){function k(C){this.$L=_(C.locale,null,!0),this.parse(C),this.$x=this.$x||C.x||{},this[T]=!0}o(k,"M");var I=k.prototype;return I.parse=function(C){this.$d=function(O){var D=O.date,P=O.utc;if(D===null)return new Date(NaN);if(L.u(D))return new Date;if(D instanceof Date)return new Date(D);if(typeof D=="string"&&!/Z$/i.test(D)){var F=D.match(g);if(F){var B=F[2]-1||0,G=(F[7]||"0").substring(0,3);return P?new Date(Date.UTC(F[1],B,F[3]||1,F[4]||0,F[5]||0,F[6]||0,G)):new Date(F[1],B,F[3]||1,F[4]||0,F[5]||0,F[6]||0,G)}}return new Date(D)}(C),this.init()},I.init=function(){var C=this.$d;this.$y=C.getFullYear(),this.$M=C.getMonth(),this.$D=C.getDate(),this.$W=C.getDay(),this.$H=C.getHours(),this.$m=C.getMinutes(),this.$s=C.getSeconds(),this.$ms=C.getMilliseconds()},I.$utils=function(){return L},I.isValid=function(){return this.$d.toString()!==m},I.isSame=function(C,O){var D=A(C);return this.startOf(O)<=D&&D<=this.endOf(O)},I.isAfter=function(C,O){return A(C){"use strict";Az=Qi(Jb(),1),nu={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},V={trace:o((...e)=>{},"trace"),debug:o((...e)=>{},"debug"),info:o((...e)=>{},"info"),warn:o((...e)=>{},"warn"),error:o((...e)=>{},"error"),fatal:o((...e)=>{},"fatal")},J1=o(function(e="fatal"){let t=nu.fatal;typeof e=="string"?e.toLowerCase()in nu&&(t=nu[e]):typeof e=="number"&&(t=e),V.trace=()=>{},V.debug=()=>{},V.info=()=>{},V.warn=()=>{},V.error=()=>{},V.fatal=()=>{},t<=nu.fatal&&(V.fatal=console.error?console.error.bind(console,So("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",So("FATAL"))),t<=nu.error&&(V.error=console.error?console.error.bind(console,So("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",So("ERROR"))),t<=nu.warn&&(V.warn=console.warn?console.warn.bind(console,So("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",So("WARN"))),t<=nu.info&&(V.info=console.info?console.info.bind(console,So("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",So("INFO"))),t<=nu.debug&&(V.debug=console.debug?console.debug.bind(console,So("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",So("DEBUG"))),t<=nu.trace&&(V.trace=console.debug?console.debug.bind(console,So("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",So("TRACE")))},"setLogLevel"),So=o(e=>`%c${(0,Az.default)().format("ss.SSS")} : ${e} : `,"format")});var dxt,hp,gS,_z,t4=R(()=>{"use strict";dxt=Object.freeze({left:0,top:0,width:16,height:16}),hp=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),gS=Object.freeze({...dxt,...hp}),_z=Object.freeze({...gS,body:"",hidden:!1})});var pxt,Lz,Dz=R(()=>{"use strict";t4();pxt=Object.freeze({width:null,height:null}),Lz=Object.freeze({...pxt,...hp})});var e4,yS,r4,Rz=R(()=>{"use strict";e4=/^[a-z0-9]+(-[a-z0-9]+)*$/,yS=o((e,t,r,n="")=>{let i=e.split(":");if(e.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;n=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let l=i.pop(),u=i.pop(),h={provider:i.length>0?i[0]:n,prefix:u,name:l};return t&&!r4(h)?null:h}let a=i[0],s=a.split("-");if(s.length>1){let l={provider:n,prefix:s.shift(),name:s.join("-")};return t&&!r4(l)?null:l}if(r&&n===""){let l={provider:n,prefix:"",name:a};return t&&!r4(l,r)?null:l}return null},"stringToIcon"),r4=o((e,t)=>e?!!((e.provider===""||e.provider.match(e4))&&(t&&e.prefix===""||e.prefix.match(e4))&&e.name.match(e4)):!1,"validateIconName")});function Nz(e,t){let r={};!e.hFlip!=!t.hFlip&&(r.hFlip=!0),!e.vFlip!=!t.vFlip&&(r.vFlip=!0);let n=((e.rotate||0)+(t.rotate||0))%4;return n&&(r.rotate=n),r}var Mz=R(()=>{"use strict";o(Nz,"mergeIconTransformations")});function vS(e,t){let r=Nz(e,t);for(let n in _z)n in hp?n in e&&!(n in r)&&(r[n]=hp[n]):n in t?r[n]=t[n]:n in e&&(r[n]=e[n]);return r}var Iz=R(()=>{"use strict";t4();Mz();o(vS,"mergeIconData")});function Oz(e,t){let r=e.icons,n=e.aliases||Object.create(null),i=Object.create(null);function a(s){if(r[s])return i[s]=[];if(!(s in i)){i[s]=null;let l=n[s]&&n[s].parent,u=l&&a(l);u&&(i[s]=[l].concat(u))}return i[s]}return o(a,"resolve"),(t||Object.keys(r).concat(Object.keys(n))).forEach(a),i}var Pz=R(()=>{"use strict";o(Oz,"getIconsTree")});function Bz(e,t,r){let n=e.icons,i=e.aliases||Object.create(null),a={};function s(l){a=vS(n[l]||i[l],a)}return o(s,"parse"),s(t),r.forEach(s),vS(e,a)}function xS(e,t){if(e.icons[t])return Bz(e,t,[]);let r=Oz(e,[t])[t];return r?Bz(e,t,r):null}var Fz=R(()=>{"use strict";Iz();Pz();o(Bz,"internalGetIconData");o(xS,"getIconData")});function bS(e,t,r){if(t===1)return e;if(r=r||100,typeof e=="number")return Math.ceil(e*t*r)/r;if(typeof e!="string")return e;let n=e.split(mxt);if(n===null||!n.length)return e;let i=[],a=n.shift(),s=gxt.test(a);for(;;){if(s){let l=parseFloat(a);isNaN(l)?i.push(a):i.push(Math.ceil(l*t*r)/r)}else i.push(a);if(a=n.shift(),a===void 0)return i.join("");s=!s}}var mxt,gxt,zz=R(()=>{"use strict";mxt=/(-?[0-9.]*[0-9]+[0-9.]*)/g,gxt=/^-?[0-9.]*[0-9]+[0-9.]*$/g;o(bS,"calculateSize")});function yxt(e,t="defs"){let r="",n=e.indexOf("<"+t);for(;n>=0;){let i=e.indexOf(">",n),a=e.indexOf("",a);if(s===-1)break;r+=e.slice(i+1,a).trim(),e=e.slice(0,n).trim()+e.slice(s+1)}return{defs:r,content:e}}function vxt(e,t){return e?""+e+""+t:t}function $z(e,t,r){let n=yxt(e);return vxt(n.defs,t+n.content+r)}var Gz=R(()=>{"use strict";o(yxt,"splitSVGDefs");o(vxt,"mergeDefsAndContent");o($z,"wrapSVGContent")});function wS(e,t){let r={...gS,...e},n={...Lz,...t},i={left:r.left,top:r.top,width:r.width,height:r.height},a=r.body;[r,n].forEach(y=>{let v=[],x=y.hFlip,b=y.vFlip,w=y.rotate;x?b?w+=2:(v.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),v.push("scale(-1 1)"),i.top=i.left=0):b&&(v.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),v.push("scale(1 -1)"),i.top=i.left=0);let S;switch(w<0&&(w-=Math.floor(w/4)*4),w=w%4,w){case 1:S=i.height/2+i.top,v.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:v.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:S=i.width/2+i.left,v.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}w%2===1&&(i.left!==i.top&&(S=i.left,i.left=i.top,i.top=S),i.width!==i.height&&(S=i.width,i.width=i.height,i.height=S)),v.length&&(a=$z(a,'',""))});let s=n.width,l=n.height,u=i.width,h=i.height,f,d;s===null?(d=l===null?"1em":l==="auto"?h:l,f=bS(d,u/h)):(f=s==="auto"?u:s,d=l===null?bS(f,h/u):l==="auto"?h:l);let p={},m=o((y,v)=>{xxt(v)||(p[y]=v.toString())},"setAttr");m("width",f),m("height",d);let g=[i.left,i.top,u,h];return p.viewBox=g.join(" "),{attributes:p,viewBox:g,body:a}}var xxt,Vz=R(()=>{"use strict";t4();Dz();zz();Gz();xxt=o(e=>e==="unset"||e==="undefined"||e==="none","isUnsetKeyword");o(wS,"iconToSVG")});function TS(e,t=wxt){let r=[],n;for(;n=bxt.exec(e);)r.push(n[1]);if(!r.length)return e;let i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return r.forEach(a=>{let s=typeof t=="function"?t(a):t+(Txt++).toString(),l=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+l+')([")]|\\.[a-z])',"g"),"$1"+s+i+"$3")}),e=e.replace(new RegExp(i,"g"),""),e}var bxt,wxt,Txt,Uz=R(()=>{"use strict";bxt=/\sid="(\S+)"/g,wxt="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16),Txt=0;o(TS,"replaceIDs")});function kS(e,t){let r=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let n in t)r+=" "+n+'="'+t[n]+'"';return'"+e+""}var Hz=R(()=>{"use strict";o(kS,"iconToHTML")});var Yz=Ti((Lae,Wz)=>{"use strict";var fp=1e3,dp=fp*60,pp=dp*60,Yf=pp*24,kxt=Yf*7,Ext=Yf*365.25;Wz.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return Cxt(e);if(r==="number"&&isFinite(e))return t.long?Axt(e):Sxt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Cxt(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*Ext;case"weeks":case"week":case"w":return r*kxt;case"days":case"day":case"d":return r*Yf;case"hours":case"hour":case"hrs":case"hr":case"h":return r*pp;case"minutes":case"minute":case"mins":case"min":case"m":return r*dp;case"seconds":case"second":case"secs":case"sec":case"s":return r*fp;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}o(Cxt,"parse");function Sxt(e){var t=Math.abs(e);return t>=Yf?Math.round(e/Yf)+"d":t>=pp?Math.round(e/pp)+"h":t>=dp?Math.round(e/dp)+"m":t>=fp?Math.round(e/fp)+"s":e+"ms"}o(Sxt,"fmtShort");function Axt(e){var t=Math.abs(e);return t>=Yf?n4(e,t,Yf,"day"):t>=pp?n4(e,t,pp,"hour"):t>=dp?n4(e,t,dp,"minute"):t>=fp?n4(e,t,fp,"second"):e+" ms"}o(Axt,"fmtLong");function n4(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}o(n4,"plural")});var Xz=Ti((Rae,qz)=>{"use strict";function _xt(e){r.debug=r,r.default=r,r.coerce=u,r.disable=a,r.enable=i,r.enabled=s,r.humanize=Yz(),r.destroy=h,Object.keys(e).forEach(f=>{r[f]=e[f]}),r.names=[],r.skips=[],r.formatters={};function t(f){let d=0;for(let p=0;p{if(E==="%%")return"%";S++;let A=r.formatters[_];if(typeof A=="function"){let L=v[S];E=A.call(x,L),v.splice(S,1),S--}return E}),r.formatArgs.call(x,v),(x.log||r.log).apply(x,v)}return o(y,"debug"),y.namespace=f,y.useColors=r.useColors(),y.color=r.selectColor(f),y.extend=n,y.destroy=r.destroy,Object.defineProperty(y,"enabled",{enumerable:!0,configurable:!1,get:o(()=>p!==null?p:(m!==r.namespaces&&(m=r.namespaces,g=r.enabled(f)),g),"get"),set:o(v=>{p=v},"set")}),typeof r.init=="function"&&r.init(y),y}o(r,"createDebug");function n(f,d){let p=r(this.namespace+(typeof d>"u"?":":d)+f);return p.log=this.log,p}o(n,"extend");function i(f){r.save(f),r.namespaces=f,r.names=[],r.skips=[];let d,p=(typeof f=="string"?f:"").split(/[\s,]+/),m=p.length;for(d=0;d"-"+d)].join(",");return r.enable(""),f}o(a,"disable");function s(f){if(f[f.length-1]==="*")return!0;let d,p;for(d=0,p=r.skips.length;d{"use strict";qs.formatArgs=Dxt;qs.save=Rxt;qs.load=Nxt;qs.useColors=Lxt;qs.storage=Mxt();qs.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();qs.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Lxt(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}o(Lxt,"useColors");function Dxt(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+i4.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}o(Dxt,"formatArgs");qs.log=console.debug||console.log||(()=>{});function Rxt(e){try{e?qs.storage.setItem("debug",e):qs.storage.removeItem("debug")}catch{}}o(Rxt,"save");function Nxt(){let e;try{e=qs.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}o(Nxt,"load");function Mxt(){try{return localStorage}catch{}}o(Mxt,"localstorage");i4.exports=Xz()(qs);var{formatters:Ixt}=i4.exports;Ixt.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Iae,Kz=R(()=>{"use strict";Rz();Fz();Vz();Uz();Hz();Iae=Qi(jz(),1)});var CS,ES,Qz,a4,Oxt,Ao,iu=R(()=>{"use strict";ce();Kz();CS={body:'?',height:80,width:80},ES=new Map,Qz=new Map,a4=o(e=>{for(let t of e){if(!t.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(V.debug("Registering icon pack:",t.name),"loader"in t)Qz.set(t.name,t.loader);else if("icons"in t)ES.set(t.name,t.icons);else throw V.error("Invalid icon loader:",t),new Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),Oxt=o(async(e,t)=>{let r=yS(e,!0,t!==void 0);if(!r)throw new Error(`Invalid icon name: ${e}`);let n=r.prefix||t;if(!n)throw new Error(`Icon name must contain a prefix: ${e}`);let i=ES.get(n);if(!i){let s=Qz.get(n);if(!s)throw new Error(`Icon set not found: ${r.prefix}`);try{i={...await s(),prefix:n},ES.set(n,i)}catch(l){throw V.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let a=xS(i,r.name);if(!a)throw new Error(`Icon not found: ${e}`);return a},"getRegisteredIconData"),Ao=o(async(e,t)=>{let r;try{r=await Oxt(e,t?.fallbackPrefix)}catch(a){V.error(a),r=CS}let n=wS(r,t);return kS(TS(n.body),n.attributes)},"getIconSVG")});function s4(e){for(var t=[],r=1;r{"use strict";o(s4,"dedent")});var o4,qf,Zz,l4=R(()=>{"use strict";o4=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,qf=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,Zz=/\s*%%.*\n/gm});var mp,AS=R(()=>{"use strict";mp=class extends Error{static{o(this,"UnknownDiagramError")}constructor(t){super(t),this.name="UnknownDiagramError"}}});var Xf,gp,c4,_S,Jz,jf=R(()=>{"use strict";ce();l4();AS();Xf={},gp=o(function(e,t){e=e.replace(o4,"").replace(qf,"").replace(Zz,` `);for(let[r,{detector:n}]of Object.entries(Xf))if(n(e,t))return r;throw new mp(`No diagram type detected matching given configuration for text: ${e}`)},"detectType"),c4=o((...e)=>{for(let{id:t,detector:r,loader:n}of e)_S(t,r,n)},"registerLazyLoadedDiagrams"),_S=o((e,t,r)=>{Xf[e]&&V.warn(`Detector with key ${e} already exists. Overwriting.`),Xf[e]={detector:t,loader:r},V.debug(`Detector with key ${e} added${r?" with loader":""}`)},"addDetector"),Jz=o(e=>Xf[e].loader,"getDiagramLoader")});var ty,t$,LS=R(()=>{"use strict";ty=function(){var e=o(function(_t,dt,Y,ft){for(Y=Y||{},ft=_t.length;ft--;Y[_t[ft]]=dt);return Y},"o"),t=[1,24],r=[1,25],n=[1,26],i=[1,27],a=[1,28],s=[1,63],l=[1,64],u=[1,65],h=[1,66],f=[1,67],d=[1,68],p=[1,69],m=[1,29],g=[1,30],y=[1,31],v=[1,32],x=[1,33],b=[1,34],w=[1,35],S=[1,36],T=[1,37],E=[1,38],_=[1,39],A=[1,40],L=[1,41],M=[1,42],N=[1,43],k=[1,44],I=[1,45],C=[1,46],O=[1,47],D=[1,48],P=[1,50],F=[1,51],B=[1,52],G=[1,53],z=[1,54],W=[1,55],Q=[1,56],j=[1,57],at=[1,58],X=[1,59],J=[1,60],Z=[14,42],H=[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],q=[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],K=[1,82],ot=[1,83],ct=[1,84],ut=[1,85],et=[12,14,42],Mt=[12,14,33,42],it=[12,14,33,42,76,77,79,80],wt=[12,33],Ot=[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],St={trace:o(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:o(function(dt,Y,ft,mt,rt,ht,nt){var st=ht.length-1;switch(rt){case 3:mt.setDirection("TB");break;case 4:mt.setDirection("BT");break;case 5:mt.setDirection("RL");break;case 6:mt.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:mt.setC4Type(ht[st-3]);break;case 19:mt.setTitle(ht[st].substring(6)),this.$=ht[st].substring(6);break;case 20:mt.setAccDescription(ht[st].substring(15)),this.$=ht[st].substring(15);break;case 21:this.$=ht[st].trim(),mt.setTitle(this.$);break;case 22:case 23:this.$=ht[st].trim(),mt.setAccDescription(this.$);break;case 28:ht[st].splice(2,0,"ENTERPRISE"),mt.addPersonOrSystemBoundary(...ht[st]),this.$=ht[st];break;case 29:ht[st].splice(2,0,"SYSTEM"),mt.addPersonOrSystemBoundary(...ht[st]),this.$=ht[st];break;case 30:mt.addPersonOrSystemBoundary(...ht[st]),this.$=ht[st];break;case 31:ht[st].splice(2,0,"CONTAINER"),mt.addContainerBoundary(...ht[st]),this.$=ht[st];break;case 32:mt.addDeploymentNode("node",...ht[st]),this.$=ht[st];break;case 33:mt.addDeploymentNode("nodeL",...ht[st]),this.$=ht[st];break;case 34:mt.addDeploymentNode("nodeR",...ht[st]),this.$=ht[st];break;case 35:mt.popBoundaryParseStack();break;case 39:mt.addPersonOrSystem("person",...ht[st]),this.$=ht[st];break;case 40:mt.addPersonOrSystem("external_person",...ht[st]),this.$=ht[st];break;case 41:mt.addPersonOrSystem("system",...ht[st]),this.$=ht[st];break;case 42:mt.addPersonOrSystem("system_db",...ht[st]),this.$=ht[st];break;case 43:mt.addPersonOrSystem("system_queue",...ht[st]),this.$=ht[st];break;case 44:mt.addPersonOrSystem("external_system",...ht[st]),this.$=ht[st];break;case 45:mt.addPersonOrSystem("external_system_db",...ht[st]),this.$=ht[st];break;case 46:mt.addPersonOrSystem("external_system_queue",...ht[st]),this.$=ht[st];break;case 47:mt.addContainer("container",...ht[st]),this.$=ht[st];break;case 48:mt.addContainer("container_db",...ht[st]),this.$=ht[st];break;case 49:mt.addContainer("container_queue",...ht[st]),this.$=ht[st];break;case 50:mt.addContainer("external_container",...ht[st]),this.$=ht[st];break;case 51:mt.addContainer("external_container_db",...ht[st]),this.$=ht[st];break;case 52:mt.addContainer("external_container_queue",...ht[st]),this.$=ht[st];break;case 53:mt.addComponent("component",...ht[st]),this.$=ht[st];break;case 54:mt.addComponent("component_db",...ht[st]),this.$=ht[st];break;case 55:mt.addComponent("component_queue",...ht[st]),this.$=ht[st];break;case 56:mt.addComponent("external_component",...ht[st]),this.$=ht[st];break;case 57:mt.addComponent("external_component_db",...ht[st]),this.$=ht[st];break;case 58:mt.addComponent("external_component_queue",...ht[st]),this.$=ht[st];break;case 60:mt.addRel("rel",...ht[st]),this.$=ht[st];break;case 61:mt.addRel("birel",...ht[st]),this.$=ht[st];break;case 62:mt.addRel("rel_u",...ht[st]),this.$=ht[st];break;case 63:mt.addRel("rel_d",...ht[st]),this.$=ht[st];break;case 64:mt.addRel("rel_l",...ht[st]),this.$=ht[st];break;case 65:mt.addRel("rel_r",...ht[st]),this.$=ht[st];break;case 66:mt.addRel("rel_b",...ht[st]),this.$=ht[st];break;case 67:ht[st].splice(0,1),mt.addRel("rel",...ht[st]),this.$=ht[st];break;case 68:mt.updateElStyle("update_el_style",...ht[st]),this.$=ht[st];break;case 69:mt.updateRelStyle("update_rel_style",...ht[st]),this.$=ht[st];break;case 70:mt.updateLayoutConfig("update_layout_config",...ht[st]),this.$=ht[st];break;case 71:this.$=[ht[st]];break;case 72:ht[st].unshift(ht[st-1]),this.$=ht[st];break;case 73:case 75:this.$=ht[st].trim();break;case 74:let Tt={};Tt[ht[st-1].trim()]=ht[st].trim(),this.$=Tt;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:t,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{13:70,19:20,20:21,21:22,22:t,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{13:71,19:20,20:21,21:22,22:t,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{13:72,19:20,20:21,21:22,22:t,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{13:73,19:20,20:21,21:22,22:t,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{14:[1,74]},e(Z,[2,13],{43:23,29:49,30:61,32:62,20:75,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J}),e(Z,[2,14]),e(H,[2,16],{12:[1,76]}),e(Z,[2,36],{12:[1,77]}),e(q,[2,19]),e(q,[2,20]),{25:[1,78]},{27:[1,79]},e(q,[2,23]),{35:80,75:81,76:K,77:ot,79:ct,80:ut},{35:86,75:81,76:K,77:ot,79:ct,80:ut},{35:87,75:81,76:K,77:ot,79:ct,80:ut},{35:88,75:81,76:K,77:ot,79:ct,80:ut},{35:89,75:81,76:K,77:ot,79:ct,80:ut},{35:90,75:81,76:K,77:ot,79:ct,80:ut},{35:91,75:81,76:K,77:ot,79:ct,80:ut},{35:92,75:81,76:K,77:ot,79:ct,80:ut},{35:93,75:81,76:K,77:ot,79:ct,80:ut},{35:94,75:81,76:K,77:ot,79:ct,80:ut},{35:95,75:81,76:K,77:ot,79:ct,80:ut},{35:96,75:81,76:K,77:ot,79:ct,80:ut},{35:97,75:81,76:K,77:ot,79:ct,80:ut},{35:98,75:81,76:K,77:ot,79:ct,80:ut},{35:99,75:81,76:K,77:ot,79:ct,80:ut},{35:100,75:81,76:K,77:ot,79:ct,80:ut},{35:101,75:81,76:K,77:ot,79:ct,80:ut},{35:102,75:81,76:K,77:ot,79:ct,80:ut},{35:103,75:81,76:K,77:ot,79:ct,80:ut},{35:104,75:81,76:K,77:ot,79:ct,80:ut},e(et,[2,59]),{35:105,75:81,76:K,77:ot,79:ct,80:ut},{35:106,75:81,76:K,77:ot,79:ct,80:ut},{35:107,75:81,76:K,77:ot,79:ct,80:ut},{35:108,75:81,76:K,77:ot,79:ct,80:ut},{35:109,75:81,76:K,77:ot,79:ct,80:ut},{35:110,75:81,76:K,77:ot,79:ct,80:ut},{35:111,75:81,76:K,77:ot,79:ct,80:ut},{35:112,75:81,76:K,77:ot,79:ct,80:ut},{35:113,75:81,76:K,77:ot,79:ct,80:ut},{35:114,75:81,76:K,77:ot,79:ct,80:ut},{35:115,75:81,76:K,77:ot,79:ct,80:ut},{20:116,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{12:[1,118],33:[1,117]},{35:119,75:81,76:K,77:ot,79:ct,80:ut},{35:120,75:81,76:K,77:ot,79:ct,80:ut},{35:121,75:81,76:K,77:ot,79:ct,80:ut},{35:122,75:81,76:K,77:ot,79:ct,80:ut},{35:123,75:81,76:K,77:ot,79:ct,80:ut},{35:124,75:81,76:K,77:ot,79:ct,80:ut},{35:125,75:81,76:K,77:ot,79:ct,80:ut},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},e(Z,[2,15]),e(H,[2,17],{21:22,19:130,22:t,23:r,24:n,26:i,28:a}),e(Z,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:r,24:n,26:i,28:a,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J}),e(q,[2,21]),e(q,[2,22]),e(et,[2,39]),e(Mt,[2,71],{75:81,35:132,76:K,77:ot,79:ct,80:ut}),e(it,[2,73]),{78:[1,133]},e(it,[2,75]),e(it,[2,76]),e(et,[2,40]),e(et,[2,41]),e(et,[2,42]),e(et,[2,43]),e(et,[2,44]),e(et,[2,45]),e(et,[2,46]),e(et,[2,47]),e(et,[2,48]),e(et,[2,49]),e(et,[2,50]),e(et,[2,51]),e(et,[2,52]),e(et,[2,53]),e(et,[2,54]),e(et,[2,55]),e(et,[2,56]),e(et,[2,57]),e(et,[2,58]),e(et,[2,60]),e(et,[2,61]),e(et,[2,62]),e(et,[2,63]),e(et,[2,64]),e(et,[2,65]),e(et,[2,66]),e(et,[2,67]),e(et,[2,68]),e(et,[2,69]),e(et,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},e(wt,[2,28]),e(wt,[2,29]),e(wt,[2,30]),e(wt,[2,31]),e(wt,[2,32]),e(wt,[2,33]),e(wt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},e(H,[2,18]),e(Z,[2,38]),e(Mt,[2,72]),e(it,[2,74]),e(et,[2,24]),e(et,[2,35]),e(Ot,[2,25]),e(Ot,[2,26],{12:[1,138]}),e(Ot,[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:o(function(dt,Y){if(Y.recoverable)this.trace(dt);else{var ft=new Error(dt);throw ft.hash=Y,ft}},"parseError"),parse:o(function(dt){var Y=this,ft=[0],mt=[],rt=[null],ht=[],nt=this.table,st="",Tt=0,kt=0,Ct=0,At=2,$t=1,Nt=ht.slice.call(arguments,1),yt=Object.create(this.lexer),Ut={yy:{}};for(var zt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,zt)&&(Ut.yy[zt]=this.yy[zt]);yt.setInput(dt,Ut.yy),Ut.yy.lexer=yt,Ut.yy.parser=this,typeof yt.yylloc>"u"&&(yt.yylloc={});var ae=yt.yylloc;ht.push(ae);var ke=yt.options&&yt.options.ranges;typeof Ut.yy.parseError=="function"?this.parseError=Ut.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ee(qe){ft.length=ft.length-2*qe,rt.length=rt.length-qe,ht.length=ht.length-qe}o(Ee,"popStack");function le(){var qe;return qe=mt.pop()||yt.lex()||$t,typeof qe!="number"&&(qe instanceof Array&&(mt=qe,qe=mt.pop()),qe=Y.symbols_[qe]||qe),qe}o(le,"lex");for(var Zt,me,Ht,ne,xe,Se,Ye={},fe,ee,pe,Me;;){if(Ht=ft[ft.length-1],this.defaultActions[Ht]?ne=this.defaultActions[Ht]:((Zt===null||typeof Zt>"u")&&(Zt=le()),ne=nt[Ht]&&nt[Ht][Zt]),typeof ne>"u"||!ne.length||!ne[0]){var oe="";Me=[];for(fe in nt[Ht])this.terminals_[fe]&&fe>At&&Me.push("'"+this.terminals_[fe]+"'");yt.showPosition?oe="Parse error on line "+(Tt+1)+`: `+yt.showPosition()+` Expecting `+Me.join(", ")+", got '"+(this.terminals_[Zt]||Zt)+"'":oe="Parse error on line "+(Tt+1)+": Unexpected "+(Zt==$t?"end of input":"'"+(this.terminals_[Zt]||Zt)+"'"),this.parseError(oe,{text:yt.match,token:this.terminals_[Zt]||Zt,line:yt.yylineno,loc:ae,expected:Me})}if(ne[0]instanceof Array&&ne.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ht+", token: "+Zt);switch(ne[0]){case 1:ft.push(Zt),rt.push(yt.yytext),ht.push(yt.yylloc),ft.push(ne[1]),Zt=null,me?(Zt=me,me=null):(kt=yt.yyleng,st=yt.yytext,Tt=yt.yylineno,ae=yt.yylloc,Ct>0&&Ct--);break;case 2:if(ee=this.productions_[ne[1]][1],Ye.$=rt[rt.length-ee],Ye._$={first_line:ht[ht.length-(ee||1)].first_line,last_line:ht[ht.length-1].last_line,first_column:ht[ht.length-(ee||1)].first_column,last_column:ht[ht.length-1].last_column},ke&&(Ye._$.range=[ht[ht.length-(ee||1)].range[0],ht[ht.length-1].range[1]]),Se=this.performAction.apply(Ye,[st,kt,Tt,Ut.yy,ne[1],rt,ht].concat(Nt)),typeof Se<"u")return Se;ee&&(ft=ft.slice(0,-1*ee*2),rt=rt.slice(0,-1*ee),ht=ht.slice(0,-1*ee)),ft.push(this.productions_[ne[1]][0]),rt.push(Ye.$),ht.push(Ye._$),pe=nt[ft[ft.length-2]][ft[ft.length-1]],ft.push(pe);break;case 3:return!0}}return!0},"parse")},Vt=function(){var _t={EOF:1,parseError:o(function(Y,ft){if(this.yy.parser)this.yy.parser.parseError(Y,ft);else throw new Error(Y)},"parseError"),setInput:o(function(dt,Y){return this.yy=Y||this.yy||{},this._input=dt,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]),this.offset=0,this},"setInput"),input:o(function(){var dt=this._input[0];this.yytext+=dt,this.yyleng++,this.offset++,this.match+=dt,this.matched+=dt;var Y=dt.match(/(?:\r\n?|\n).*/g);return Y?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),dt},"input"),unput:o(function(dt){var Y=dt.length,ft=dt.split(/(?:\r\n?|\n)/g);this._input=dt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Y),this.offset-=Y;var mt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ft.length-1&&(this.yylineno-=ft.length-1);var rt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ft?(ft.length===mt.length?this.yylloc.first_column:0)+mt[mt.length-ft.length].length-ft[0].length:this.yylloc.first_column-Y},this.options.ranges&&(this.yylloc.range=[rt[0],rt[0]+this.yyleng-Y]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(dt){this.unput(this.match.slice(dt))},"less"),pastInput:o(function(){var dt=this.matched.substr(0,this.matched.length-this.match.length);return(dt.length>20?"...":"")+dt.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var dt=this.match;return dt.length<20&&(dt+=this._input.substr(0,20-dt.length)),(dt.substr(0,20)+(dt.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var dt=this.pastInput(),Y=new Array(dt.length+1).join("-");return dt+this.upcomingInput()+` `+Y+"^"},"showPosition"),test_match:o(function(dt,Y){var ft,mt,rt;if(this.options.backtrack_lexer&&(rt={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&&(rt.yylloc.range=this.yylloc.range.slice(0))),mt=dt[0].match(/(?:\r\n?|\n).*/g),mt&&(this.yylineno+=mt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:mt?mt[mt.length-1].length-mt[mt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+dt[0].length},this.yytext+=dt[0],this.match+=dt[0],this.matches=dt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(dt[0].length),this.matched+=dt[0],ft=this.performAction.call(this,this.yy,this,Y,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ft)return ft;if(this._backtrack){for(var ht in rt)this[ht]=rt[ht];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var dt,Y,ft,mt;this._more||(this.yytext="",this.match="");for(var rt=this._currentRules(),ht=0;htY[0].length)){if(Y=ft,mt=ht,this.options.backtrack_lexer){if(dt=this.test_match(ft,rt[ht]),dt!==!1)return dt;if(this._backtrack){Y=!1;continue}else return!1}else if(!this.options.flex)break}return Y?(dt=this.test_match(Y,rt[mt]),dt!==!1?dt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Y=this.next();return Y||this.lex()},"lex"),begin:o(function(Y){this.conditionStack.push(Y)},"begin"),popState:o(function(){var Y=this.conditionStack.length-1;return Y>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Y){return Y=this.conditionStack.length-1-Math.abs(Y||0),Y>=0?this.conditionStack[Y]:"INITIAL"},"topState"),pushState:o(function(Y){this.begin(Y)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Y,ft,mt,rt){var ht=rt;switch(mt){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:[],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 _t}();St.lexer=Vt;function Pt(){this.yy={}}return o(Pt,"Parser"),Pt.prototype=St,St.Parser=Pt,new Pt}();ty.parser=ty;t$=ty});var DS,Vn,yp=R(()=>{"use strict";DS=o((e,t,{depth:r=2,clobber:n=!1}={})=>{let i={depth:r,clobber:n};return Array.isArray(t)&&!Array.isArray(e)?(t.forEach(a=>DS(e,a,i)),e):Array.isArray(t)&&Array.isArray(e)?(t.forEach(a=>{e.includes(a)||e.push(a)}),e):e===void 0||r<=0?e!=null&&typeof e=="object"&&typeof t=="object"?Object.assign(e,t):t:(t!==void 0&&typeof e=="object"&&typeof t=="object"&&Object.keys(t).forEach(a=>{typeof t[a]=="object"&&(e[a]===void 0||typeof e[a]=="object")?(e[a]===void 0&&(e[a]=Array.isArray(t[a])?[]:{}),e[a]=DS(e[a],t[a],{depth:r-1,clobber:n})):(n||typeof e[a]!="object"&&typeof t[a]!="object")&&(e[a]=t[a])}),e)},"assignWithDepth"),Vn=DS});var u4,e$,r$=R(()=>{"use strict";u4={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:o(e=>e>=255?255:e<0?0:e,"r"),g:o(e=>e>=255?255:e<0?0:e,"g"),b:o(e=>e>=255?255:e<0?0:e,"b"),h:o(e=>e%360,"h"),s:o(e=>e>=100?100:e<0?0:e,"s"),l:o(e=>e>=100?100:e<0?0:e,"l"),a:o(e=>e>=1?1:e<0?0:e,"a")},toLinear:o(e=>{let t=e/255;return e>.03928?Math.pow((t+.055)/1.055,2.4):t/12.92},"toLinear"),hue2rgb:o((e,t,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<.16666666666666666?e+(t-e)*6*r:r<.5?t:r<.6666666666666666?e+(t-e)*(.6666666666666666-r)*6:e),"hue2rgb"),hsl2rgb:o(({h:e,s:t,l:r},n)=>{if(!t)return r*2.55;e/=360,t/=100,r/=100;let i=r<.5?r*(1+t):r+t-r*t,a=2*r-i;switch(n){case"r":return u4.hue2rgb(a,i,e+.3333333333333333)*255;case"g":return u4.hue2rgb(a,i,e)*255;case"b":return u4.hue2rgb(a,i,e-.3333333333333333)*255}},"hsl2rgb"),rgb2hsl:o(({r:e,g:t,b:r},n)=>{e/=255,t/=255,r/=255;let i=Math.max(e,t,r),a=Math.min(e,t,r),s=(i+a)/2;if(n==="l")return s*100;if(i===a)return 0;let l=i-a,u=s>.5?l/(2-i-a):l/(i+a);if(n==="s")return u*100;switch(i){case e:return((t-r)/l+(t{"use strict";Pxt={clamp:o((e,t,r)=>t>r?Math.min(t,Math.max(r,e)):Math.min(r,Math.max(t,e)),"clamp"),round:o(e=>Math.round(e*1e10)/1e10,"round")},n$=Pxt});var Bxt,a$,s$=R(()=>{"use strict";Bxt={dec2hex:o(e=>{let t=Math.round(e).toString(16);return t.length>1?t:`0${t}`},"dec2hex")},a$=Bxt});var Fxt,We,rc=R(()=>{"use strict";r$();i$();s$();Fxt={channel:e$,lang:n$,unit:a$},We=Fxt});var au,Mi,ey=R(()=>{"use strict";rc();au={};for(let e=0;e<=255;e++)au[e]=We.unit.dec2hex(e);Mi={ALL:0,RGB:1,HSL:2}});var RS,o$,l$=R(()=>{"use strict";ey();RS=class{static{o(this,"Type")}constructor(){this.type=Mi.ALL}get(){return this.type}set(t){if(this.type&&this.type!==t)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=t}reset(){this.type=Mi.ALL}is(t){return this.type===t}},o$=RS});var NS,c$,u$=R(()=>{"use strict";rc();l$();ey();NS=class{static{o(this,"Channels")}constructor(t,r){this.color=r,this.changed=!1,this.data=t,this.type=new o$}set(t,r){return this.color=r,this.changed=!1,this.data=t,this.type.type=Mi.ALL,this}_ensureHSL(){let t=this.data,{h:r,s:n,l:i}=t;r===void 0&&(t.h=We.channel.rgb2hsl(t,"h")),n===void 0&&(t.s=We.channel.rgb2hsl(t,"s")),i===void 0&&(t.l=We.channel.rgb2hsl(t,"l"))}_ensureRGB(){let t=this.data,{r,g:n,b:i}=t;r===void 0&&(t.r=We.channel.hsl2rgb(t,"r")),n===void 0&&(t.g=We.channel.hsl2rgb(t,"g")),i===void 0&&(t.b=We.channel.hsl2rgb(t,"b"))}get r(){let t=this.data,r=t.r;return!this.type.is(Mi.HSL)&&r!==void 0?r:(this._ensureHSL(),We.channel.hsl2rgb(t,"r"))}get g(){let t=this.data,r=t.g;return!this.type.is(Mi.HSL)&&r!==void 0?r:(this._ensureHSL(),We.channel.hsl2rgb(t,"g"))}get b(){let t=this.data,r=t.b;return!this.type.is(Mi.HSL)&&r!==void 0?r:(this._ensureHSL(),We.channel.hsl2rgb(t,"b"))}get h(){let t=this.data,r=t.h;return!this.type.is(Mi.RGB)&&r!==void 0?r:(this._ensureRGB(),We.channel.rgb2hsl(t,"h"))}get s(){let t=this.data,r=t.s;return!this.type.is(Mi.RGB)&&r!==void 0?r:(this._ensureRGB(),We.channel.rgb2hsl(t,"s"))}get l(){let t=this.data,r=t.l;return!this.type.is(Mi.RGB)&&r!==void 0?r:(this._ensureRGB(),We.channel.rgb2hsl(t,"l"))}get a(){return this.data.a}set r(t){this.type.set(Mi.RGB),this.changed=!0,this.data.r=t}set g(t){this.type.set(Mi.RGB),this.changed=!0,this.data.g=t}set b(t){this.type.set(Mi.RGB),this.changed=!0,this.data.b=t}set h(t){this.type.set(Mi.HSL),this.changed=!0,this.data.h=t}set s(t){this.type.set(Mi.HSL),this.changed=!0,this.data.s=t}set l(t){this.type.set(Mi.HSL),this.changed=!0,this.data.l=t}set a(t){this.changed=!0,this.data.a=t}},c$=NS});var zxt,lh,ry=R(()=>{"use strict";u$();zxt=new c$({r:0,g:0,b:0,a:0},"transparent"),lh=zxt});var h$,Kf,MS=R(()=>{"use strict";ry();ey();h$={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:o(e=>{if(e.charCodeAt(0)!==35)return;let t=e.match(h$.re);if(!t)return;let r=t[1],n=parseInt(r,16),i=r.length,a=i%4===0,s=i>4,l=s?1:17,u=s?8:4,h=a?0:-1,f=s?255:15;return lh.set({r:(n>>u*(h+3)&f)*l,g:(n>>u*(h+2)&f)*l,b:(n>>u*(h+1)&f)*l,a:a?(n&f)*l/255:1},e)},"parse"),stringify:o(e=>{let{r:t,g:r,b:n,a:i}=e;return i<1?`#${au[Math.round(t)]}${au[Math.round(r)]}${au[Math.round(n)]}${au[Math.round(i*255)]}`:`#${au[Math.round(t)]}${au[Math.round(r)]}${au[Math.round(n)]}`},"stringify")},Kf=h$});var h4,ny,f$=R(()=>{"use strict";rc();ry();h4={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:o(e=>{let t=e.match(h4.hueRe);if(t){let[,r,n]=t;switch(n){case"grad":return We.channel.clamp.h(parseFloat(r)*.9);case"rad":return We.channel.clamp.h(parseFloat(r)*180/Math.PI);case"turn":return We.channel.clamp.h(parseFloat(r)*360)}}return We.channel.clamp.h(parseFloat(e))},"_hue2deg"),parse:o(e=>{let t=e.charCodeAt(0);if(t!==104&&t!==72)return;let r=e.match(h4.re);if(!r)return;let[,n,i,a,s,l]=r;return lh.set({h:h4._hue2deg(n),s:We.channel.clamp.s(parseFloat(i)),l:We.channel.clamp.l(parseFloat(a)),a:s?We.channel.clamp.a(l?parseFloat(s)/100:parseFloat(s)):1},e)},"parse"),stringify:o(e=>{let{h:t,s:r,l:n,a:i}=e;return i<1?`hsla(${We.lang.round(t)}, ${We.lang.round(r)}%, ${We.lang.round(n)}%, ${i})`:`hsl(${We.lang.round(t)}, ${We.lang.round(r)}%, ${We.lang.round(n)}%)`},"stringify")},ny=h4});var f4,IS,d$=R(()=>{"use strict";MS();f4={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:o(e=>{e=e.toLowerCase();let t=f4.colors[e];if(t)return Kf.parse(t)},"parse"),stringify:o(e=>{let t=Kf.stringify(e);for(let r in f4.colors)if(f4.colors[r]===t)return r},"stringify")},IS=f4});var p$,iy,m$=R(()=>{"use strict";rc();ry();p$={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:o(e=>{let t=e.charCodeAt(0);if(t!==114&&t!==82)return;let r=e.match(p$.re);if(!r)return;let[,n,i,a,s,l,u,h,f]=r;return lh.set({r:We.channel.clamp.r(i?parseFloat(n)*2.55:parseFloat(n)),g:We.channel.clamp.g(s?parseFloat(a)*2.55:parseFloat(a)),b:We.channel.clamp.b(u?parseFloat(l)*2.55:parseFloat(l)),a:h?We.channel.clamp.a(f?parseFloat(h)/100:parseFloat(h)):1},e)},"parse"),stringify:o(e=>{let{r:t,g:r,b:n,a:i}=e;return i<1?`rgba(${We.lang.round(t)}, ${We.lang.round(r)}, ${We.lang.round(n)}, ${We.lang.round(i)})`:`rgb(${We.lang.round(t)}, ${We.lang.round(r)}, ${We.lang.round(n)})`},"stringify")},iy=p$});var $xt,Ii,su=R(()=>{"use strict";MS();f$();d$();m$();ey();$xt={format:{keyword:IS,hex:Kf,rgb:iy,rgba:iy,hsl:ny,hsla:ny},parse:o(e=>{if(typeof e!="string")return e;let t=Kf.parse(e)||iy.parse(e)||ny.parse(e)||IS.parse(e);if(t)return t;throw new Error(`Unsupported color format: "${e}"`)},"parse"),stringify:o(e=>!e.changed&&e.color?e.color:e.type.is(Mi.HSL)||e.data.r===void 0?ny.stringify(e):e.a<1||!Number.isInteger(e.r)||!Number.isInteger(e.g)||!Number.isInteger(e.b)?iy.stringify(e):Kf.stringify(e),"stringify")},Ii=$xt});var Gxt,d4,OS=R(()=>{"use strict";rc();su();Gxt=o((e,t)=>{let r=Ii.parse(e);for(let n in t)r[n]=We.channel.clamp[n](t[n]);return Ii.stringify(r)},"change"),d4=Gxt});var Vxt,Xs,PS=R(()=>{"use strict";rc();ry();su();OS();Vxt=o((e,t,r=0,n=1)=>{if(typeof e!="number")return d4(e,{a:t});let i=lh.set({r:We.channel.clamp.r(e),g:We.channel.clamp.g(t),b:We.channel.clamp.b(r),a:We.channel.clamp.a(n)});return Ii.stringify(i)},"rgba"),Xs=Vxt});var Uxt,ay,g$=R(()=>{"use strict";rc();su();Uxt=o((e,t)=>We.lang.round(Ii.parse(e)[t]),"channel"),ay=Uxt});var Hxt,y$,v$=R(()=>{"use strict";rc();su();Hxt=o(e=>{let{r:t,g:r,b:n}=Ii.parse(e),i=.2126*We.channel.toLinear(t)+.7152*We.channel.toLinear(r)+.0722*We.channel.toLinear(n);return We.lang.round(i)},"luminance"),y$=Hxt});var Wxt,x$,b$=R(()=>{"use strict";v$();Wxt=o(e=>y$(e)>=.5,"isLight"),x$=Wxt});var Yxt,Ka,w$=R(()=>{"use strict";b$();Yxt=o(e=>!x$(e),"isDark"),Ka=Yxt});var qxt,p4,BS=R(()=>{"use strict";rc();su();qxt=o((e,t,r)=>{let n=Ii.parse(e),i=n[t],a=We.channel.clamp[t](i+r);return i!==a&&(n[t]=a),Ii.stringify(n)},"adjustChannel"),p4=qxt});var Xxt,Re,T$=R(()=>{"use strict";BS();Xxt=o((e,t)=>p4(e,"l",t),"lighten"),Re=Xxt});var jxt,Pe,k$=R(()=>{"use strict";BS();jxt=o((e,t)=>p4(e,"l",-t),"darken"),Pe=jxt});var Kxt,It,E$=R(()=>{"use strict";su();OS();Kxt=o((e,t)=>{let r=Ii.parse(e),n={};for(let i in t)t[i]&&(n[i]=r[i]+t[i]);return d4(e,n)},"adjust"),It=Kxt});var Qxt,C$,S$=R(()=>{"use strict";su();PS();Qxt=o((e,t,r=50)=>{let{r:n,g:i,b:a,a:s}=Ii.parse(e),{r:l,g:u,b:h,a:f}=Ii.parse(t),d=r/100,p=d*2-1,m=s-f,y=((p*m===-1?p:(p+m)/(1+p*m))+1)/2,v=1-y,x=n*y+l*v,b=i*y+u*v,w=a*y+h*v,S=s*d+f*(1-d);return Xs(x,b,w,S)},"mix"),C$=Qxt});var Zxt,ye,A$=R(()=>{"use strict";su();S$();Zxt=o((e,t=100)=>{let r=Ii.parse(e);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,C$(r,e,t)},"invert"),ye=Zxt});var _$=R(()=>{"use strict";PS();g$();w$();T$();k$();E$();A$()});var ul=R(()=>{"use strict";_$()});var ch,uh,sy=R(()=>{"use strict";ch="#ffffff",uh="#f2f2f2"});var ki,vp=R(()=>{"use strict";ul();ki=o((e,t)=>t?It(e,{s:-40,l:10}):It(e,{s:-40,l:-10}),"mkBorder")});var FS,D$,R$=R(()=>{"use strict";ul();sy();vp();FS=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||It(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||It(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||ki(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||ki(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||ki(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ye(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ye(this.tertiaryColor),this.lineColor=this.lineColor||ye(this.background),this.arrowheadColor=this.arrowheadColor||ye(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?Pe(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||Pe(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ye(this.lineColor),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||Re(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.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||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||It(this.primaryColor,{h:30}),this.cScale4=this.cScale4||It(this.primaryColor,{h:60}),this.cScale5=this.cScale5||It(this.primaryColor,{h:90}),this.cScale6=this.cScale6||It(this.primaryColor,{h:120}),this.cScale7=this.cScale7||It(this.primaryColor,{h:150}),this.cScale8=this.cScale8||It(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||It(this.primaryColor,{h:270}),this.cScale10=this.cScale10||It(this.primaryColor,{h:300}),this.cScale11=this.cScale11||It(this.primaryColor,{h:330}),this.darkMode)for(let r=0;r{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},D$=o(e=>{let t=new FS;return t.calculate(e),t},"getThemeVariables")});var zS,N$,M$=R(()=>{"use strict";ul();vp();zS=class{static{o(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Re(this.primaryColor,16),this.tertiaryColor=It(this.primaryColor,{h:-160}),this.primaryBorderColor=ye(this.background),this.secondaryBorderColor=ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ki(this.tertiaryColor,this.darkMode),this.primaryTextColor=ye(this.primaryColor),this.secondaryTextColor=ye(this.secondaryColor),this.tertiaryTextColor=ye(this.tertiaryColor),this.lineColor=ye(this.background),this.textColor=ye(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Re(ye("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=Xs(255,255,255,.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.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.sectionBkgColor=Pe("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=Pe(this.sectionBkgColor,10),this.taskBorderColor=Xs(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=Xs(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.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=Re(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=Re(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.altSectionBkgColor=this.background,this.taskBkgColor=Re(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=this.darkTextColor,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=It(this.primaryColor,{h:64}),this.fillType3=It(this.secondaryColor,{h:64}),this.fillType4=It(this.primaryColor,{h:-64}),this.fillType5=It(this.secondaryColor,{h:-64}),this.fillType6=It(this.primaryColor,{h:128}),this.fillType7=It(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||It(this.primaryColor,{h:30}),this.cScale4=this.cScale4||It(this.primaryColor,{h:60}),this.cScale5=this.cScale5||It(this.primaryColor,{h:90}),this.cScale6=this.cScale6||It(this.primaryColor,{h:120}),this.cScale7=this.cScale7||It(this.primaryColor,{h:150}),this.cScale8=this.cScale8||It(this.primaryColor,{h:210}),this.cScale9=this.cScale9||It(this.primaryColor,{h:270}),this.cScale10=this.cScale10||It(this.primaryColor,{h:300}),this.cScale11=this.cScale11||It(this.primaryColor,{h:330});for(let t=0;t{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},N$=o(e=>{let t=new zS;return t.calculate(e),t},"getThemeVariables")});var $S,xp,m4=R(()=>{"use strict";ul();vp();sy();$S=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=It(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=It(this.primaryColor,{h:-160}),this.primaryBorderColor=ki(this.primaryColor,this.darkMode),this.secondaryBorderColor=ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ki(this.tertiaryColor,this.darkMode),this.primaryTextColor=ye(this.primaryColor),this.secondaryTextColor=ye(this.secondaryColor),this.tertiaryTextColor=ye(this.tertiaryColor),this.lineColor=ye(this.background),this.textColor=ye(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",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.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.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.sectionBkgColor=Xs(102,102,255,.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.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",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||It(this.primaryColor,{h:30}),this.cScale4=this.cScale4||It(this.primaryColor,{h:60}),this.cScale5=this.cScale5||It(this.primaryColor,{h:90}),this.cScale6=this.cScale6||It(this.primaryColor,{h:120}),this.cScale7=this.cScale7||It(this.primaryColor,{h:150}),this.cScale8=this.cScale8||It(this.primaryColor,{h:210}),this.cScale9=this.cScale9||It(this.primaryColor,{h:270}),this.cScale10=this.cScale10||It(this.primaryColor,{h:300}),this.cScale11=this.cScale11||It(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Pe(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Pe(this.tertiaryColor,40);for(let t=0;t{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},xp=o(e=>{let t=new $S;return t.calculate(e),t},"getThemeVariables")});var GS,I$,O$=R(()=>{"use strict";ul();sy();vp();GS=class{static{o(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=Re("#cde498",10),this.primaryBorderColor=ki(this.primaryColor,this.darkMode),this.secondaryBorderColor=ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ki(this.tertiaryColor,this.darkMode),this.primaryTextColor=ye(this.primaryColor),this.secondaryTextColor=ye(this.secondaryColor),this.tertiaryTextColor=ye(this.primaryColor),this.lineColor=ye(this.background),this.textColor=ye(this.background),this.THEME_COLOR_LIMIT=12,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.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=Pe(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.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||It(this.primaryColor,{h:30}),this.cScale4=this.cScale4||It(this.primaryColor,{h:60}),this.cScale5=this.cScale5||It(this.primaryColor,{h:90}),this.cScale6=this.cScale6||It(this.primaryColor,{h:120}),this.cScale7=this.cScale7||It(this.primaryColor,{h:150}),this.cScale8=this.cScale8||It(this.primaryColor,{h:210}),this.cScale9=this.cScale9||It(this.primaryColor,{h:270}),this.cScale10=this.cScale10||It(this.primaryColor,{h:300}),this.cScale11=this.cScale11||It(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Pe(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Pe(this.tertiaryColor,40);for(let t=0;t{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},I$=o(e=>{let t=new GS;return t.calculate(e),t},"getThemeVariables")});var VS,P$,B$=R(()=>{"use strict";ul();vp();sy();VS=class{static{o(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Re(this.contrast,55),this.background="#ffffff",this.tertiaryColor=It(this.primaryColor,{h:-160}),this.primaryBorderColor=ki(this.primaryColor,this.darkMode),this.secondaryBorderColor=ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ki(this.tertiaryColor,this.darkMode),this.primaryTextColor=ye(this.primaryColor),this.secondaryTextColor=ye(this.secondaryColor),this.tertiaryTextColor=ye(this.tertiaryColor),this.lineColor=ye(this.background),this.textColor=ye(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.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.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=Re(this.contrast,55),this.border2=this.contrast,this.actorBorder=Re(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,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 t=0;t{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},P$=o(e=>{let t=new VS;return t.calculate(e),t},"getThemeVariables")});var _o,g4=R(()=>{"use strict";R$();M$();m4();O$();B$();_o={base:{getThemeVariables:D$},dark:{getThemeVariables:N$},default:{getThemeVariables:xp},forest:{getThemeVariables:I$},neutral:{getThemeVariables:P$}}});var ou,F$=R(()=>{"use strict";ou={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},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,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"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1},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,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},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,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},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},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},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:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,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}});var z$,$$,G$,Er,hl=R(()=>{"use strict";g4();F$();z$={...ou,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF"},themeCSS:void 0,themeVariables:_o.default.getThemeVariables(),sequence:{...ou.sequence,messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:o(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:o(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")},gantt:{...ou.gantt,tickInterval:void 0,useWidth:void 0},c4:{...ou.c4,useWidth:void 0,personFont:o(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),external_personFont:o(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:o(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:o(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:o(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:o(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:o(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:o(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:o(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:o(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:o(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:o(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:o(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:o(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:o(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:o(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:o(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:o(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:o(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:o(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:o(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")},pie:{...ou.pie,useWidth:984},xyChart:{...ou.xyChart,useWidth:void 0},requirement:{...ou.requirement,useWidth:void 0},packet:{...ou.packet}},$$=o((e,t="")=>Object.keys(e).reduce((r,n)=>Array.isArray(e[n])?r:typeof e[n]=="object"&&e[n]!==null?[...r,t+n,...$$(e[n],"")]:[...r,t+n],[]),"keyify"),G$=new Set($$(z$,"")),Er=z$});var bp,Jxt,US=R(()=>{"use strict";hl();ce();bp=o(e=>{if(V.debug("sanitizeDirective called with",e),!(typeof e!="object"||e==null)){if(Array.isArray(e)){e.forEach(t=>bp(t));return}for(let t of Object.keys(e)){if(V.debug("Checking key",t),t.startsWith("__")||t.includes("proto")||t.includes("constr")||!G$.has(t)||e[t]==null){V.debug("sanitize deleting key: ",t),delete e[t];continue}if(typeof e[t]=="object"){V.debug("sanitizing object",t),bp(e[t]);continue}let r=["themeCSS","fontFamily","altFontFamily"];for(let n of r)t.includes(n)&&(V.debug("sanitizing css option",t),e[t]=Jxt(e[t]))}if(e.themeVariables)for(let t of Object.keys(e.themeVariables)){let r=e.themeVariables[t];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(e.themeVariables[t]="")}V.debug("After sanitization",e)}},"sanitizeDirective"),Jxt=o(e=>{let t=0,r=0;for(let n of e){if(t{"use strict";yp();ce();g4();hl();US();hh=Object.freeze(Er),gs=Vn({},hh),wp=[],oy=Vn({},hh),y4=o((e,t)=>{let r=Vn({},e),n={};for(let i of t)Y$(i),n=Vn(n,i);if(r=Vn(r,n),n.theme&&n.theme in _o){let i=Vn({},U$),a=Vn(i.themeVariables||{},n.themeVariables);r.theme&&r.theme in _o&&(r.themeVariables=_o[r.theme].getThemeVariables(a))}return oy=r,X$(oy),oy},"updateCurrentConfig"),HS=o(e=>(gs=Vn({},hh),gs=Vn(gs,e),e.theme&&_o[e.theme]&&(gs.themeVariables=_o[e.theme].getThemeVariables(e.themeVariables)),y4(gs,wp),gs),"setSiteConfig"),H$=o(e=>{U$=Vn({},e)},"saveConfigFromInitialize"),W$=o(e=>(gs=Vn(gs,e),y4(gs,wp),gs),"updateSiteConfig"),WS=o(()=>Vn({},gs),"getSiteConfig"),v4=o(e=>(X$(e),Vn(oy,e),Nr()),"setConfig"),Nr=o(()=>Vn({},oy),"getConfig"),Y$=o(e=>{e&&(["secure",...gs.secure??[]].forEach(t=>{Object.hasOwn(e,t)&&(V.debug(`Denied attempt to modify a secure key ${t}`,e[t]),delete e[t])}),Object.keys(e).forEach(t=>{t.startsWith("__")&&delete e[t]}),Object.keys(e).forEach(t=>{typeof e[t]=="string"&&(e[t].includes("<")||e[t].includes(">")||e[t].includes("url(data:"))&&delete e[t],typeof e[t]=="object"&&Y$(e[t])}))},"sanitize"),q$=o(e=>{bp(e),e.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables={...e.themeVariables,fontFamily:e.fontFamily}),wp.push(e),y4(gs,wp)},"addDirective"),ly=o((e=gs)=>{wp=[],y4(e,wp)},"reset"),tbt={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},V$={},ebt=o(e=>{V$[e]||(V.warn(tbt[e]),V$[e]=!0)},"issueWarning"),X$=o(e=>{e&&(e.lazyLoadedDiagrams||e.loadExternalDiagramsAtStartup)&&ebt("LAZY_LOAD_DEPRECATED")},"checkConfig")});var XS=Ti((YS,qS)=>{"use strict";(function(e,t){typeof YS=="object"&&typeof qS<"u"?qS.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.DOMPurify=t())})(YS,function(){"use strict";let{entries:e,setPrototypeOf:t,isFrozen:r,getPrototypeOf:n,getOwnPropertyDescriptor:i}=Object,{freeze:a,seal:s,create:l}=Object,{apply:u,construct:h}=typeof Reflect<"u"&&Reflect;a||(a=o(function(St){return St},"freeze")),s||(s=o(function(St){return St},"seal")),u||(u=o(function(St,Vt,Pt){return St.apply(Vt,Pt)},"apply")),h||(h=o(function(St,Vt){return new St(...Vt)},"construct"));let f=E(Array.prototype.forEach),d=E(Array.prototype.pop),p=E(Array.prototype.push),m=E(String.prototype.toLowerCase),g=E(String.prototype.toString),y=E(String.prototype.match),v=E(String.prototype.replace),x=E(String.prototype.indexOf),b=E(String.prototype.trim),w=E(Object.prototype.hasOwnProperty),S=E(RegExp.prototype.test),T=_(TypeError);function E(Ot){return function(St){for(var Vt=arguments.length,Pt=new Array(Vt>1?Vt-1:0),_t=1;_t2&&arguments[2]!==void 0?arguments[2]:m;t&&t(Ot,null);let Pt=St.length;for(;Pt--;){let _t=St[Pt];if(typeof _t=="string"){let dt=Vt(_t);dt!==_t&&(r(St)||(St[Pt]=dt),_t=dt)}Ot[_t]=!0}return Ot}o(A,"addToSet");function L(Ot){for(let St=0;St/gm),at=s(/\${[\w\W]*}/gm),X=s(/^data-[\-\w.\u00B7-\uFFFF]/),J=s(/^aria-[\-\w]+$/),Z=s(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),H=s(/^(?:\w+script|data):/i),q=s(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),K=s(/^html$/i),ot=s(/^[a-z][.\w]*(-[.\w]+)+$/i);var ct=Object.freeze({__proto__:null,MUSTACHE_EXPR:Q,ERB_EXPR:j,TMPLIT_EXPR:at,DATA_ATTR:X,ARIA_ATTR:J,IS_ALLOWED_URI:Z,IS_SCRIPT_OR_DATA:H,ATTR_WHITESPACE:q,DOCTYPE_NAME:K,CUSTOM_ELEMENT:ot});let ut={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},et=o(function(){return typeof window>"u"?null:window},"getGlobal"),Mt=o(function(St,Vt){if(typeof St!="object"||typeof St.createPolicy!="function")return null;let Pt=null,_t="data-tt-policy-suffix";Vt&&Vt.hasAttribute(_t)&&(Pt=Vt.getAttribute(_t));let dt="dompurify"+(Pt?"#"+Pt:"");try{return St.createPolicy(dt,{createHTML(Y){return Y},createScriptURL(Y){return Y}})}catch{return console.warn("TrustedTypes policy "+dt+" could not be created."),null}},"_createTrustedTypesPolicy");function it(){let Ot=arguments.length>0&&arguments[0]!==void 0?arguments[0]:et(),St=o(Xe=>it(Xe),"DOMPurify");if(St.version="3.1.6",St.removed=[],!Ot||!Ot.document||Ot.document.nodeType!==ut.document)return St.isSupported=!1,St;let{document:Vt}=Ot,Pt=Vt,_t=Pt.currentScript,{DocumentFragment:dt,HTMLTemplateElement:Y,Node:ft,Element:mt,NodeFilter:rt,NamedNodeMap:ht=Ot.NamedNodeMap||Ot.MozNamedAttrMap,HTMLFormElement:nt,DOMParser:st,trustedTypes:Tt}=Ot,kt=mt.prototype,Ct=N(kt,"cloneNode"),At=N(kt,"remove"),$t=N(kt,"nextSibling"),Nt=N(kt,"childNodes"),yt=N(kt,"parentNode");if(typeof Y=="function"){let Xe=Vt.createElement("template");Xe.content&&Xe.content.ownerDocument&&(Vt=Xe.content.ownerDocument)}let Ut,zt="",{implementation:ae,createNodeIterator:ke,createDocumentFragment:Ee,getElementsByTagName:le}=Vt,{importNode:Zt}=Pt,me={};St.isSupported=typeof e=="function"&&typeof yt=="function"&&ae&&ae.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:Ht,ERB_EXPR:ne,TMPLIT_EXPR:xe,DATA_ATTR:Se,ARIA_ATTR:Ye,IS_SCRIPT_OR_DATA:fe,ATTR_WHITESPACE:ee,CUSTOM_ELEMENT:pe}=ct,{IS_ALLOWED_URI:Me}=ct,oe=null,qe=A({},[...k,...I,...C,...D,...F]),Cr=null,En=A({},[...B,...G,...z,...W]),or=Object.seal(l(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}})),ln=null,Ir=null,ii=!0,mn=!0,Pn=!1,Sr=!0,pi=!1,ps=!0,Bn=!1,Eo=!1,cl=!1,Fn=!1,wi=!1,Ae=!1,Ie=!0,we=!1,Wt="user-content-",Fe=!0,gt=!1,gn={},vt=null,qa=A({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),W1=null,Y1=A({},["audio","video","img","source","image","track"]),q1=null,X1=A({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),lp="http://www.w3.org/1998/Math/MathML",jn="http://www.w3.org/2000/svg",ca="http://www.w3.org/1999/xhtml",Zl=ca,Vf=!1,j1=null,mz=A({},[lp,jn,ca],g),Uf=null,ua=["application/xhtml+xml","text/html"],K1="text/html",Cn=null,Ni=null,gz=Vt.createElement("form"),cp=o(function(Dt){return Dt instanceof RegExp||Dt instanceof Function},"isRegexOrFunction"),Jl=o(function(){let Dt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Ni&&Ni===Dt)){if((!Dt||typeof Dt!="object")&&(Dt={}),Dt=M(Dt),Uf=ua.indexOf(Dt.PARSER_MEDIA_TYPE)===-1?K1:Dt.PARSER_MEDIA_TYPE,Cn=Uf==="application/xhtml+xml"?g:m,oe=w(Dt,"ALLOWED_TAGS")?A({},Dt.ALLOWED_TAGS,Cn):qe,Cr=w(Dt,"ALLOWED_ATTR")?A({},Dt.ALLOWED_ATTR,Cn):En,j1=w(Dt,"ALLOWED_NAMESPACES")?A({},Dt.ALLOWED_NAMESPACES,g):mz,q1=w(Dt,"ADD_URI_SAFE_ATTR")?A(M(X1),Dt.ADD_URI_SAFE_ATTR,Cn):X1,W1=w(Dt,"ADD_DATA_URI_TAGS")?A(M(Y1),Dt.ADD_DATA_URI_TAGS,Cn):Y1,vt=w(Dt,"FORBID_CONTENTS")?A({},Dt.FORBID_CONTENTS,Cn):qa,ln=w(Dt,"FORBID_TAGS")?A({},Dt.FORBID_TAGS,Cn):{},Ir=w(Dt,"FORBID_ATTR")?A({},Dt.FORBID_ATTR,Cn):{},gn=w(Dt,"USE_PROFILES")?Dt.USE_PROFILES:!1,ii=Dt.ALLOW_ARIA_ATTR!==!1,mn=Dt.ALLOW_DATA_ATTR!==!1,Pn=Dt.ALLOW_UNKNOWN_PROTOCOLS||!1,Sr=Dt.ALLOW_SELF_CLOSE_IN_ATTR!==!1,pi=Dt.SAFE_FOR_TEMPLATES||!1,ps=Dt.SAFE_FOR_XML!==!1,Bn=Dt.WHOLE_DOCUMENT||!1,Fn=Dt.RETURN_DOM||!1,wi=Dt.RETURN_DOM_FRAGMENT||!1,Ae=Dt.RETURN_TRUSTED_TYPE||!1,cl=Dt.FORCE_BODY||!1,Ie=Dt.SANITIZE_DOM!==!1,we=Dt.SANITIZE_NAMED_PROPS||!1,Fe=Dt.KEEP_CONTENT!==!1,gt=Dt.IN_PLACE||!1,Me=Dt.ALLOWED_URI_REGEXP||Z,Zl=Dt.NAMESPACE||ca,or=Dt.CUSTOM_ELEMENT_HANDLING||{},Dt.CUSTOM_ELEMENT_HANDLING&&cp(Dt.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(or.tagNameCheck=Dt.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Dt.CUSTOM_ELEMENT_HANDLING&&cp(Dt.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(or.attributeNameCheck=Dt.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Dt.CUSTOM_ELEMENT_HANDLING&&typeof Dt.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(or.allowCustomizedBuiltInElements=Dt.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),pi&&(mn=!1),wi&&(Fn=!0),gn&&(oe=A({},F),Cr=[],gn.html===!0&&(A(oe,k),A(Cr,B)),gn.svg===!0&&(A(oe,I),A(Cr,G),A(Cr,W)),gn.svgFilters===!0&&(A(oe,C),A(Cr,G),A(Cr,W)),gn.mathMl===!0&&(A(oe,D),A(Cr,z),A(Cr,W))),Dt.ADD_TAGS&&(oe===qe&&(oe=M(oe)),A(oe,Dt.ADD_TAGS,Cn)),Dt.ADD_ATTR&&(Cr===En&&(Cr=M(Cr)),A(Cr,Dt.ADD_ATTR,Cn)),Dt.ADD_URI_SAFE_ATTR&&A(q1,Dt.ADD_URI_SAFE_ATTR,Cn),Dt.FORBID_CONTENTS&&(vt===qa&&(vt=M(vt)),A(vt,Dt.FORBID_CONTENTS,Cn)),Fe&&(oe["#text"]=!0),Bn&&A(oe,["html","head","body"]),oe.table&&(A(oe,["tbody"]),delete ln.tbody),Dt.TRUSTED_TYPES_POLICY){if(typeof Dt.TRUSTED_TYPES_POLICY.createHTML!="function")throw T('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Dt.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw T('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');Ut=Dt.TRUSTED_TYPES_POLICY,zt=Ut.createHTML("")}else Ut===void 0&&(Ut=Mt(Tt,_t)),Ut!==null&&typeof zt=="string"&&(zt=Ut.createHTML(""));a&&a(Dt),Ni=Dt}},"_parseConfig"),Hf=A({},["mi","mo","mn","ms","mtext"]),Co=A({},["foreignobject","annotation-xml"]),Kb=A({},["title","style","font","a","script"]),Wf=A({},[...I,...C,...O]),up=A({},[...D,...P]),Xa=o(function(Dt){let ge=yt(Dt);(!ge||!ge.tagName)&&(ge={namespaceURI:Zl,tagName:"template"});let ze=m(Dt.tagName),Sn=m(ge.tagName);return j1[Dt.namespaceURI]?Dt.namespaceURI===jn?ge.namespaceURI===ca?ze==="svg":ge.namespaceURI===lp?ze==="svg"&&(Sn==="annotation-xml"||Hf[Sn]):!!Wf[ze]:Dt.namespaceURI===lp?ge.namespaceURI===ca?ze==="math":ge.namespaceURI===jn?ze==="math"&&Co[Sn]:!!up[ze]:Dt.namespaceURI===ca?ge.namespaceURI===jn&&!Co[Sn]||ge.namespaceURI===lp&&!Hf[Sn]?!1:!up[ze]&&(Kb[ze]||!Wf[ze]):!!(Uf==="application/xhtml+xml"&&j1[Dt.namespaceURI]):!1},"_checkValidNamespace"),tc=o(function(Dt){p(St.removed,{element:Dt});try{yt(Dt).removeChild(Dt)}catch{At(Dt)}},"_forceRemove"),Qb=o(function(Dt,ge){try{p(St.removed,{attribute:ge.getAttributeNode(Dt),from:ge})}catch{p(St.removed,{attribute:null,from:ge})}if(ge.removeAttribute(Dt),Dt==="is"&&!Cr[Dt])if(Fn||wi)try{tc(ge)}catch{}else try{ge.setAttribute(Dt,"")}catch{}},"_removeAttribute"),yz=o(function(Dt){let ge=null,ze=null;if(cl)Dt=""+Dt;else{let ha=y(Dt,/^[\r\n\t ]+/);ze=ha&&ha[0]}Uf==="application/xhtml+xml"&&Zl===ca&&(Dt=''+Dt+"");let Sn=Ut?Ut.createHTML(Dt):Dt;if(Zl===ca)try{ge=new st().parseFromString(Sn,Uf)}catch{}if(!ge||!ge.documentElement){ge=ae.createDocument(Zl,"template",null);try{ge.documentElement.innerHTML=Vf?zt:Sn}catch{}}let Na=ge.body||ge.documentElement;return Dt&&ze&&Na.insertBefore(Vt.createTextNode(ze),Na.childNodes[0]||null),Zl===ca?le.call(ge,Bn?"html":"body")[0]:Bn?ge.documentElement:Na},"_initDocument"),vz=o(function(Dt){return ke.call(Dt.ownerDocument||Dt,Dt,rt.SHOW_ELEMENT|rt.SHOW_COMMENT|rt.SHOW_TEXT|rt.SHOW_PROCESSING_INSTRUCTION|rt.SHOW_CDATA_SECTION,null)},"_createNodeIterator"),xz=o(function(Dt){return Dt instanceof nt&&(typeof Dt.nodeName!="string"||typeof Dt.textContent!="string"||typeof Dt.removeChild!="function"||!(Dt.attributes instanceof ht)||typeof Dt.removeAttribute!="function"||typeof Dt.setAttribute!="function"||typeof Dt.namespaceURI!="string"||typeof Dt.insertBefore!="function"||typeof Dt.hasChildNodes!="function")},"_isClobbered"),bz=o(function(Dt){return typeof ft=="function"&&Dt instanceof ft},"_isNode"),ru=o(function(Dt,ge,ze){me[Dt]&&f(me[Dt],Sn=>{Sn.call(St,ge,ze,Ni)})},"_executeHook"),wz=o(function(Dt){let ge=null;if(ru("beforeSanitizeElements",Dt,null),xz(Dt))return tc(Dt),!0;let ze=Cn(Dt.nodeName);if(ru("uponSanitizeElement",Dt,{tagName:ze,allowedTags:oe}),Dt.hasChildNodes()&&!bz(Dt.firstElementChild)&&S(/<[/\w]/g,Dt.innerHTML)&&S(/<[/\w]/g,Dt.textContent)||Dt.nodeType===ut.progressingInstruction||ps&&Dt.nodeType===ut.comment&&S(/<[/\w]/g,Dt.data))return tc(Dt),!0;if(!oe[ze]||ln[ze]){if(!ln[ze]&&kz(ze)&&(or.tagNameCheck instanceof RegExp&&S(or.tagNameCheck,ze)||or.tagNameCheck instanceof Function&&or.tagNameCheck(ze)))return!1;if(Fe&&!vt[ze]){let Sn=yt(Dt)||Dt.parentNode,Na=Nt(Dt)||Dt.childNodes;if(Na&&Sn){let ha=Na.length;for(let ms=ha-1;ms>=0;--ms){let ec=Ct(Na[ms],!0);ec.__removalCount=(Dt.__removalCount||0)+1,Sn.insertBefore(ec,$t(Dt))}}}return tc(Dt),!0}return Dt instanceof mt&&!Xa(Dt)||(ze==="noscript"||ze==="noembed"||ze==="noframes")&&S(/<\/no(script|embed|frames)/i,Dt.innerHTML)?(tc(Dt),!0):(pi&&Dt.nodeType===ut.text&&(ge=Dt.textContent,f([Ht,ne,xe],Sn=>{ge=v(ge,Sn," ")}),Dt.textContent!==ge&&(p(St.removed,{element:Dt.cloneNode()}),Dt.textContent=ge)),ru("afterSanitizeElements",Dt,null),!1)},"_sanitizeElements"),Tz=o(function(Dt,ge,ze){if(Ie&&(ge==="id"||ge==="name")&&(ze in Vt||ze in gz))return!1;if(!(mn&&!Ir[ge]&&S(Se,ge))){if(!(ii&&S(Ye,ge))){if(!Cr[ge]||Ir[ge]){if(!(kz(Dt)&&(or.tagNameCheck instanceof RegExp&&S(or.tagNameCheck,Dt)||or.tagNameCheck instanceof Function&&or.tagNameCheck(Dt))&&(or.attributeNameCheck instanceof RegExp&&S(or.attributeNameCheck,ge)||or.attributeNameCheck instanceof Function&&or.attributeNameCheck(ge))||ge==="is"&&or.allowCustomizedBuiltInElements&&(or.tagNameCheck instanceof RegExp&&S(or.tagNameCheck,ze)||or.tagNameCheck instanceof Function&&or.tagNameCheck(ze))))return!1}else if(!q1[ge]){if(!S(Me,v(ze,ee,""))){if(!((ge==="src"||ge==="xlink:href"||ge==="href")&&Dt!=="script"&&x(ze,"data:")===0&&W1[Dt])){if(!(Pn&&!S(fe,v(ze,ee,"")))){if(ze)return!1}}}}}}return!0},"_isValidAttribute"),kz=o(function(Dt){return Dt!=="annotation-xml"&&y(Dt,pe)},"_isBasicCustomElement"),Ez=o(function(Dt){ru("beforeSanitizeAttributes",Dt,null);let{attributes:ge}=Dt;if(!ge)return;let ze={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Cr},Sn=ge.length;for(;Sn--;){let Na=ge[Sn],{name:ha,namespaceURI:ms,value:ec}=Na,Q1=Cn(ha),ja=ha==="value"?ec:b(ec);if(ze.attrName=Q1,ze.attrValue=ja,ze.keepAttr=!0,ze.forceKeepAttr=void 0,ru("uponSanitizeAttribute",Dt,ze),ja=ze.attrValue,ps&&S(/((--!?|])>)|<\/(style|title)/i,ja)){Qb(ha,Dt);continue}if(ze.forceKeepAttr||(Qb(ha,Dt),!ze.keepAttr))continue;if(!Sr&&S(/\/>/i,ja)){Qb(ha,Dt);continue}pi&&f([Ht,ne,xe],Sz=>{ja=v(ja,Sz," ")});let Cz=Cn(Dt.nodeName);if(Tz(Cz,Q1,ja)){if(we&&(Q1==="id"||Q1==="name")&&(Qb(ha,Dt),ja=Wt+ja),Ut&&typeof Tt=="object"&&typeof Tt.getAttributeType=="function"&&!ms)switch(Tt.getAttributeType(Cz,Q1)){case"TrustedHTML":{ja=Ut.createHTML(ja);break}case"TrustedScriptURL":{ja=Ut.createScriptURL(ja);break}}try{ms?Dt.setAttributeNS(ms,ha,ja):Dt.setAttribute(ha,ja),xz(Dt)?tc(Dt):d(St.removed)}catch{}}}ru("afterSanitizeAttributes",Dt,null)},"_sanitizeAttributes"),sxt=o(function Xe(Dt){let ge=null,ze=vz(Dt);for(ru("beforeSanitizeShadowDOM",Dt,null);ge=ze.nextNode();)ru("uponSanitizeShadowNode",ge,null),!wz(ge)&&(ge.content instanceof dt&&Xe(ge.content),Ez(ge));ru("afterSanitizeShadowDOM",Dt,null)},"_sanitizeShadowDOM");return St.sanitize=function(Xe){let Dt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ge=null,ze=null,Sn=null,Na=null;if(Vf=!Xe,Vf&&(Xe=""),typeof Xe!="string"&&!bz(Xe))if(typeof Xe.toString=="function"){if(Xe=Xe.toString(),typeof Xe!="string")throw T("dirty is not a string, aborting")}else throw T("toString is not a function");if(!St.isSupported)return Xe;if(Eo||Jl(Dt),St.removed=[],typeof Xe=="string"&&(gt=!1),gt){if(Xe.nodeName){let ec=Cn(Xe.nodeName);if(!oe[ec]||ln[ec])throw T("root node is forbidden and cannot be sanitized in-place")}}else if(Xe instanceof ft)ge=yz(""),ze=ge.ownerDocument.importNode(Xe,!0),ze.nodeType===ut.element&&ze.nodeName==="BODY"||ze.nodeName==="HTML"?ge=ze:ge.appendChild(ze);else{if(!Fn&&!pi&&!Bn&&Xe.indexOf("<")===-1)return Ut&&Ae?Ut.createHTML(Xe):Xe;if(ge=yz(Xe),!ge)return Fn?null:Ae?zt:""}ge&&cl&&tc(ge.firstChild);let ha=vz(gt?Xe:ge);for(;Sn=ha.nextNode();)wz(Sn)||(Sn.content instanceof dt&&sxt(Sn.content),Ez(Sn));if(gt)return Xe;if(Fn){if(wi)for(Na=Ee.call(ge.ownerDocument);ge.firstChild;)Na.appendChild(ge.firstChild);else Na=ge;return(Cr.shadowroot||Cr.shadowrootmode)&&(Na=Zt.call(Pt,Na,!0)),Na}let ms=Bn?ge.outerHTML:ge.innerHTML;return Bn&&oe["!doctype"]&&ge.ownerDocument&&ge.ownerDocument.doctype&&ge.ownerDocument.doctype.name&&S(K,ge.ownerDocument.doctype.name)&&(ms=" `+ms),pi&&f([Ht,ne,xe],ec=>{ms=v(ms,ec," ")}),Ut&&Ae?Ut.createHTML(ms):ms},St.setConfig=function(){let Xe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Jl(Xe),Eo=!0},St.clearConfig=function(){Ni=null,Eo=!1},St.isValidAttribute=function(Xe,Dt,ge){Ni||Jl({});let ze=Cn(Xe),Sn=Cn(Dt);return Tz(ze,Sn,ge)},St.addHook=function(Xe,Dt){typeof Dt=="function"&&(me[Xe]=me[Xe]||[],p(me[Xe],Dt))},St.removeHook=function(Xe){if(me[Xe])return d(me[Xe])},St.removeHooks=function(Xe){me[Xe]&&(me[Xe]=[])},St.removeAllHooks=function(){me={}},St}o(it,"createDOMPurify");var wt=it();return wt})});var wV={};xr(wV,{default:()=>j4t});function lbt(e){return String(e).replace(obt,t=>sbt[t])}function fbt(e){if(e.default)return e.default;var t=e.type,r=Array.isArray(t)?t[0]:t;if(typeof r!="string")return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}function xbt(e){for(var t=0;t=i[0]&&e<=i[1])return r.name}return null}function AG(e){for(var t=0;t=R4[t]&&e<=R4[t+1])return!0;return!1}function Dbt(e,t){ac[e]=t}function b7(e,t,r){if(!ac[t])throw new Error("Font metrics not found for font: "+t+".");var n=e.charCodeAt(0),i=ac[t][n];if(!i&&e[0]in K$&&(n=K$[e[0]].charCodeAt(0),i=ac[t][n]),!i&&r==="text"&&AG(n)&&(i=ac[t][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function Rbt(e){var t;if(e>=5?t=0:e>=3?t=1:t=2,!jS[t]){var r=jS[t]={cssEmPerMu:x4.quad[t]/18};for(var n in x4)x4.hasOwnProperty(n)&&(r[n]=x4[n][t])}return jS[t]}function J$(e){if(e instanceof xs)return e;throw new Error("Expected symbolNode but got "+String(e)+".")}function Obt(e){if(e instanceof td)return e;throw new Error("Expected span but got "+String(e)+".")}function $(e,t,r,n,i,a){An[e][i]={font:t,group:r,replace:n},a&&n&&(An[e][n]=An[e][i])}function Ce(e){for(var{type:t,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=e,l={type:t,numArgs:n.numArgs,argTypes:n.argTypes,allowedInArgument:!!n.allowedInArgument,allowedInText:!!n.allowedInText,allowedInMath:n.allowedInMath===void 0?!0:n.allowedInMath,numOptionalArgs:n.numOptionalArgs||0,infix:!!n.infix,primitive:!!n.primitive,handler:i},u=0;u0&&(a.push(S4(s,t)),s=[]),a.push(n[l]));s.length>0&&a.push(S4(s,t));var h;r?(h=S4(Oi(r,t,!0)),h.classes=["tag"],a.push(h)):i&&a.push(i);var f=fu(["katex-html"],a);if(f.setAttribute("aria-hidden","true"),h){var d=h.children[0];d.style.height=ve(f.height+f.depth),f.depth&&(d.style.verticalAlign=ve(-f.depth))}return f}function zG(e){return new Jf(e)}function iG(e,t,r,n,i){var a=bs(e,r),s;a.length===1&&a[0]instanceof vs&&tr.contains(["mrow","mtable"],a[0].type)?s=a[0]:s=new se.MathNode("mrow",a);var l=new se.MathNode("annotation",[new se.TextNode(t)]);l.setAttribute("encoding","application/x-tex");var u=new se.MathNode("semantics",[s,l]),h=new se.MathNode("math",[u]);h.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&h.setAttribute("display","block");var f=i?"katex":"katex-mathml";return Bt.makeSpan([f],[h])}function mr(e,t){if(!e||e.type!==t)throw new Error("Expected node of type "+t+", but got "+(e?"node of type "+e.type:String(e)));return e}function E7(e){var t=V4(e);if(!t)throw new Error("Expected node of symbol group type, but got "+(e?"node of type "+e.type:String(e)));return t}function V4(e){return e&&(e.type==="atom"||Bbt.hasOwnProperty(e.type))?e:null}function UG(e,t){var r=Oi(e.body,t,!0);return d4t([e.mclass],r,t)}function HG(e,t){var r,n=bs(e.body,t);return e.mclass==="minner"?r=new se.MathNode("mpadded",n):e.mclass==="mord"?e.isCharacterBox?(r=n[0],r.type="mi"):r=new se.MathNode("mi",n):(e.isCharacterBox?(r=n[0],r.type="mo"):r=new se.MathNode("mo",n),e.mclass==="mbin"?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):e.mclass==="mpunct"?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):e.mclass==="mopen"||e.mclass==="mclose"?(r.attributes.lspace="0em",r.attributes.rspace="0em"):e.mclass==="minner"&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}function g4t(e,t,r){var n=p4t[e];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[t[0]],[t[1]]);case"\\uparrow":case"\\downarrow":{var i=r.callFunction("\\\\cdleft",[t[0]],[]),a={type:"atom",text:n,mode:"math",family:"rel"},s=r.callFunction("\\Big",[a],[]),l=r.callFunction("\\\\cdright",[t[1]],[]),u={type:"ordgroup",mode:"math",body:[i,s,l]};return r.callFunction("\\\\cdparent",[u],[])}case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var h={type:"textord",text:"\\Vert",mode:"math"};return r.callFunction("\\Big",[h],[])}default:return{type:"textord",text:" ",mode:"math"}}}function y4t(e){var t=[];for(e.gullet.beginGroup(),e.gullet.macros.set("\\cr","\\\\\\relax"),e.gullet.beginGroup();;){t.push(e.parseExpression(!1,"\\\\")),e.gullet.endGroup(),e.gullet.beginGroup();var r=e.fetch().text;if(r==="&"||r==="\\\\")e.consume();else if(r==="\\end"){t[t.length-1].length===0&&t.pop();break}else throw new ue("Expected \\\\ or \\cr or \\end",e.nextToken)}for(var n=[],i=[n],a=0;a-1))if("<>AV".indexOf(h)>-1)for(var d=0;d<2;d++){for(var p=!0,m=u+1;mAV=|." after @',s[u]);var g=g4t(h,f,e),y={type:"styling",body:[g],mode:"math",style:"display"};n.push(y),l=aG()}a%2===0?n.push(l):n.shift(),n=[],i.push(n)}e.gullet.endGroup(),e.gullet.endGroup();var v=new Array(i[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25});return{type:"array",mode:"math",body:i,arraystretch:1,addJot:!0,rowGaps:[null],cols:v,colSeparationType:"CD",hLinesBeforeRow:new Array(i.length+1).fill([])}}function H4(e,t){var r=V4(e);if(r&&tr.contains(D4t,r.text))return r;throw r?new ue("Invalid delimiter '"+r.text+"' after '"+t.funcName+"'",e):new ue("Invalid delimiter type '"+e.type+"'",e)}function lG(e){if(!e.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}function oc(e){for(var{type:t,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=e,l={type:t,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i},u=0;u1||!f)&&y.pop(),x.length{"use strict";Ks=class e{static{o(this,"SourceLocation")}constructor(t,r,n){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=t,this.start=r,this.end=n}static range(t,r){return r?!t||!t.loc||!r.loc||t.loc.lexer!==r.loc.lexer?null:new e(t.loc.lexer,t.loc.start,r.loc.end):t&&t.loc}},Do=class e{static{o(this,"Token")}constructor(t,r){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=t,this.loc=r}range(t,r){return new e(r,Ks.range(this,t))}},ue=class e{static{o(this,"ParseError")}constructor(t,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n="KaTeX parse error: "+t,i,a,s=r&&r.loc;if(s&&s.start<=s.end){var l=s.lexer.input;i=s.start,a=s.end,i===l.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var u=l.slice(i,a).replace(/[^]/g,"$&\u0332"),h;i>15?h="\u2026"+l.slice(i-15,i):h=l.slice(0,i);var f;a+15":">","<":"<",'"':""","'":"'"},obt=/[&><"']/g;o(lbt,"escape");SG=o(function e(t){return t.type==="ordgroup"||t.type==="color"?t.body.length===1?e(t.body[0]):t:t.type==="font"?e(t.body):t},"getBaseElem"),cbt=o(function(t){var r=SG(t);return r.type==="mathord"||r.type==="textord"||r.type==="atom"},"isCharacterBox"),ubt=o(function(t){if(!t)throw new Error("Expected non-null, but got "+String(t));return t},"assert"),hbt=o(function(t){var r=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(t);return r?r[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(r[1])?null:r[1].toLowerCase():"_relative"},"protocolFromUrl"),tr={contains:rbt,deflt:nbt,escape:lbt,hyphenate:abt,getBaseElem:SG,isCharacterBox:cbt,protocolFromUrl:hbt},D4={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 "},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 ",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:o(e=>"#"+e,"cliProcessor")},macros:{type:"object",cli:"-m, --macro ",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:o((e,t)=>(t.push(e),t),"cliProcessor")},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:o(e=>Math.max(0,e),"processor"),cli:"--min-rule-thickness ",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:o(e=>Math.max(0,e),"processor"),cli:"-s, --max-size ",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,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:o(e=>Math.max(0,e),"processor"),cli:"-e, --max-expand ",cliProcessor:o(e=>e==="Infinity"?1/0:parseInt(e),"cliProcessor")},globalGroup:{type:"boolean",cli:!1}};o(fbt,"getDefaultValue");dy=class{static{o(this,"Settings")}constructor(t){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,t=t||{};for(var r in D4)if(D4.hasOwnProperty(r)){var n=D4[r];this[r]=t[r]!==void 0?n.processor?n.processor(t[r]):t[r]:fbt(n)}}reportNonstrict(t,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(t,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new ue("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+t+"]"),n);i==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+t+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+t+"]"))}}useStrictBehavior(t,r,n){var i=this.strict;if(typeof i=="function")try{i=i(t,r,n)}catch{i="error"}return!i||i==="ignore"?!1:i===!0||i==="error"?!0:i==="warn"?(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+t+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+t+"]")),!1)}isTrusted(t){if(t.url&&!t.protocol){var r=tr.protocolFromUrl(t.url);if(r==null)return!1;t.protocol=r}var n=typeof this.trust=="function"?this.trust(t):this.trust;return!!n}},nc=class{static{o(this,"Style")}constructor(t,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=t,this.size=r,this.cramped=n}sup(){return ic[dbt[this.id]]}sub(){return ic[pbt[this.id]]}fracNum(){return ic[mbt[this.id]]}fracDen(){return ic[gbt[this.id]]}cramp(){return ic[ybt[this.id]]}text(){return ic[vbt[this.id]]}isTight(){return this.size>=2}},x7=0,N4=1,Ep=2,uu=3,py=4,Lo=5,Cp=6,Qa=7,ic=[new nc(x7,0,!1),new nc(N4,0,!0),new nc(Ep,1,!1),new nc(uu,1,!0),new nc(py,2,!1),new nc(Lo,2,!0),new nc(Cp,3,!1),new nc(Qa,3,!0)],dbt=[py,Lo,py,Lo,Cp,Qa,Cp,Qa],pbt=[Lo,Lo,Lo,Lo,Qa,Qa,Qa,Qa],mbt=[Ep,uu,py,Lo,Cp,Qa,Cp,Qa],gbt=[uu,uu,Lo,Lo,Qa,Qa,Qa,Qa],ybt=[N4,N4,uu,uu,Lo,Lo,Qa,Qa],vbt=[x7,N4,Ep,uu,Ep,uu,Ep,uu],rr={DISPLAY:ic[x7],TEXT:ic[Ep],SCRIPT:ic[py],SCRIPTSCRIPT:ic[Cp]},o7=[{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]]}];o(xbt,"scriptFromCodepoint");R4=[];o7.forEach(e=>e.blocks.forEach(t=>R4.push(...t)));o(AG,"supportedCodepoint");kp=80,bbt=o(function(t,r){return"M95,"+(622+t+r)+` 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`+t/2.075+" -"+t+` c5.3,-9.3,12,-14,20,-14 H400000v`+(40+t)+`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+t)+" "+r+"h400000v"+(40+t)+"h-400000z"},"sqrtMain"),wbt=o(function(t,r){return"M263,"+(601+t+r)+`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`+t/2.084+" -"+t+` c4.7,-7.3,11,-11,19,-11 H40000v`+(40+t)+`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+t)+" "+r+"h400000v"+(40+t)+"h-400000z"},"sqrtSize1"),Tbt=o(function(t,r){return"M983 "+(10+t+r)+` l`+t/3.13+" -"+t+` c4,-6.7,10,-10,18,-10 H400000v`+(40+t)+` 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+t)+" "+r+"h400000v"+(40+t)+"h-400000z"},"sqrtSize2"),kbt=o(function(t,r){return"M424,"+(2398+t+r)+` 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`+t/4.223+" -"+t+`c4,-6.7,10,-10,18,-10 H400000 v`+(40+t)+`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+t)+" "+r+` h400000v`+(40+t)+"h-400000z"},"sqrtSize3"),Ebt=o(function(t,r){return"M473,"+(2713+t+r)+` c339.3,-1799.3,509.3,-2700,510,-2702 l`+t/5.298+" -"+t+` c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+t)+`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+t)+" "+r+"h400000v"+(40+t)+"H1017.7z"},"sqrtSize4"),Cbt=o(function(t){var r=t/2;return"M400000 "+t+" H0 L"+r+" 0 l65 45 L145 "+(t-80)+" H400000z"},"phasePath"),Sbt=o(function(t,r,n){var i=n-54-r-t;return"M702 "+(t+r)+"H400000"+(40+t)+` H742v`+i+`l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1 h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170 c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667 219 661 l218 661zM702 `+r+"H400000v"+(40+t)+"H742z"},"sqrtTall"),Abt=o(function(t,r,n){r=1e3*r;var i="";switch(t){case"sqrtMain":i=bbt(r,kp);break;case"sqrtSize1":i=wbt(r,kp);break;case"sqrtSize2":i=Tbt(r,kp);break;case"sqrtSize3":i=kbt(r,kp);break;case"sqrtSize4":i=Ebt(r,kp);break;case"sqrtTall":i=Sbt(r,kp,n)}return i},"sqrtPath"),_bt=o(function(t,r){switch(t){case"\u239C":return"M291 0 H417 V"+r+" H291z M291 0 H417 V"+r+" H291z";case"\u2223":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z";case"\u2225":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z"+("M367 0 H410 V"+r+" H367z M367 0 H410 V"+r+" H367z");case"\u239F":return"M457 0 H583 V"+r+" H457z M457 0 H583 V"+r+" H457z";case"\u23A2":return"M319 0 H403 V"+r+" H319z M319 0 H403 V"+r+" H319z";case"\u23A5":return"M263 0 H347 V"+r+" H263z M263 0 H347 V"+r+" H263z";case"\u23AA":return"M384 0 H504 V"+r+" H384z M384 0 H504 V"+r+" H384z";case"\u23D0":return"M312 0 H355 V"+r+" H312z M312 0 H355 V"+r+" H312z";case"\u2016":return"M257 0 H300 V"+r+" H257z M257 0 H300 V"+r+" H257z"+("M478 0 H521 V"+r+" H478z M478 0 H521 V"+r+" H478z");default:return""}},"innerPath"),j$={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:`M40 281 V428 H0 V94 H40 V241 H400000 v40z M40 281 V428 H0 V94 H40 V241 H400000 v40z`,leftmapsto:`M40 281 V448H0V74H40V241H400000v40z 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:`M0 50 h400000 v40H0z m0 194h40000v40H0z 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:`M399960 241 V94 h40 V428 h-40 V281 H0 v-40z M399960 241 V94 h40 V428 h-40 V281 H0 v-40z`,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`},Lbt=o(function(t,r){switch(t){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v1759 h347 v-84 H403z M403 1759 V0 H319 V1759 v`+r+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v1759 H0 v84 H347z M347 1759 V0 H263 V1759 v`+r+" v1759 h84z";case"vert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15 c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+" v585 h43z";case"doublevert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15 c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+` v585 h43z M367 15 v585 v`+r+` v585 c2.667,10,9.667,15,21,15 c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+r+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+r+` v1715 h263 v84 H319z MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+r+` v1799 H0 v-84 H319z MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v602 h84z M403 1759 V0 H319 V1759 v`+r+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v602 h84z M347 1759 V0 h-84 V1759 v`+r+" 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,`+(r+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,-`+(r+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,`+(r+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,-`+(r+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 new Error("Unknown stretchy delimiter.")}},"tallDelim"),Jf=class{static{o(this,"DocumentFragment")}constructor(t){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=t,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(t){return tr.contains(this.classes,t)}toNode(){for(var t=document.createDocumentFragment(),r=0;rr.toText(),"toText");return this.children.map(t).join("")}},ac={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},x4={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},K$={\u00C5:"A",\u00D0:"D",\u00DE:"o",\u00E5:"a",\u00F0:"d",\u00FE:"o",\u0410:"A",\u0411:"B",\u0412:"B",\u0413:"F",\u0414:"A",\u0415:"E",\u0416:"K",\u0417:"3",\u0418:"N",\u0419:"N",\u041A:"K",\u041B:"N",\u041C:"M",\u041D:"H",\u041E:"O",\u041F:"N",\u0420:"P",\u0421:"C",\u0422:"T",\u0423:"y",\u0424:"O",\u0425:"X",\u0426:"U",\u0427:"h",\u0428:"W",\u0429:"W",\u042A:"B",\u042B:"X",\u042C:"B",\u042D:"3",\u042E:"X",\u042F:"R",\u0430:"a",\u0431:"b",\u0432:"a",\u0433:"r",\u0434:"y",\u0435:"e",\u0436:"m",\u0437:"e",\u0438:"n",\u0439:"n",\u043A:"n",\u043B:"n",\u043C:"m",\u043D:"n",\u043E:"o",\u043F:"n",\u0440:"p",\u0441:"c",\u0442:"o",\u0443:"y",\u0444:"b",\u0445:"x",\u0446:"n",\u0447:"n",\u0448:"w",\u0449:"w",\u044A:"a",\u044B:"m",\u044C:"a",\u044D:"e",\u044E:"m",\u044F:"r"};o(Dbt,"setFontMetrics");o(b7,"getCharacterMetrics");jS={};o(Rbt,"getGlobalMetrics");Nbt=[[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]],Q$=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],Z$=o(function(t,r){return r.size<2?t:Nbt[t-1][r.size-1]},"sizeAtStyle"),M4=class e{static{o(this,"Options")}constructor(t){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=t.style,this.color=t.color,this.size=t.size||e.BASESIZE,this.textSize=t.textSize||this.size,this.phantom=!!t.phantom,this.font=t.font||"",this.fontFamily=t.fontFamily||"",this.fontWeight=t.fontWeight||"",this.fontShape=t.fontShape||"",this.sizeMultiplier=Q$[this.size-1],this.maxSize=t.maxSize,this.minRuleThickness=t.minRuleThickness,this._fontMetrics=void 0}extend(t){var r={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};for(var n in t)t.hasOwnProperty(n)&&(r[n]=t[n]);return new e(r)}havingStyle(t){return this.style===t?this:this.extend({style:t,size:Z$(this.textSize,t)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(t){return this.size===t&&this.textSize===t?this:this.extend({style:this.style.text(),size:t,textSize:t,sizeMultiplier:Q$[t-1]})}havingBaseStyle(t){t=t||this.style.text();var r=Z$(e.BASESIZE,t);return this.size===r&&this.textSize===e.BASESIZE&&this.style===t?this:this.extend({style:t,size:r})}havingBaseSizing(){var t;switch(this.style.id){case 4:case 5:t=3;break;case 6:case 7:t=1;break;default:t=6}return this.extend({style:this.style.text(),size:t})}withColor(t){return this.extend({color:t})}withPhantom(){return this.extend({phantom:!0})}withFont(t){return this.extend({font:t})}withTextFontFamily(t){return this.extend({fontFamily:t,font:""})}withTextFontWeight(t){return this.extend({fontWeight:t,font:""})}withTextFontShape(t){return this.extend({fontShape:t,font:""})}sizingClasses(t){return t.size!==this.size?["sizing","reset-size"+t.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==e.BASESIZE?["sizing","reset-size"+this.size,"size"+e.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=Rbt(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}};M4.BASESIZE=6;l7={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:803/800,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:803/800},Mbt={ex:!0,em:!0,mu:!0},_G=o(function(t){return typeof t!="string"&&(t=t.unit),t in l7||t in Mbt||t==="ex"},"validUnit"),Zn=o(function(t,r){var n;if(t.unit in l7)n=l7[t.unit]/r.fontMetrics().ptPerEm/r.sizeMultiplier;else if(t.unit==="mu")n=r.fontMetrics().cssEmPerMu;else{var i;if(r.style.isTight()?i=r.havingStyle(r.style.text()):i=r,t.unit==="ex")n=i.fontMetrics().xHeight;else if(t.unit==="em")n=i.fontMetrics().quad;else throw new ue("Invalid unit: '"+t.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(t.number*n,r.maxSize)},"calculateSize"),ve=o(function(t){return+t.toFixed(4)+"em"},"makeEm"),ph=o(function(t){return t.filter(r=>r).join(" ")},"createClass"),LG=o(function(t,r,n){if(this.classes=t||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=n||{},r){r.style.isTight()&&this.classes.push("mtight");var i=r.getColor();i&&(this.style.color=i)}},"initNode"),DG=o(function(t){var r=document.createElement(t);r.className=ph(this.classes);for(var n in this.style)this.style.hasOwnProperty(n)&&(r.style[n]=this.style[n]);for(var i in this.attributes)this.attributes.hasOwnProperty(i)&&r.setAttribute(i,this.attributes[i]);for(var a=0;a",r},"toMarkup"),td=class{static{o(this,"Span")}constructor(t,r,n,i){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,LG.call(this,t,n,i),this.children=r||[]}setAttribute(t,r){this.attributes[t]=r}hasClass(t){return tr.contains(this.classes,t)}toNode(){return DG.call(this,"span")}toMarkup(){return RG.call(this,"span")}},my=class{static{o(this,"Anchor")}constructor(t,r,n,i){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,LG.call(this,r,i),this.children=n||[],this.setAttribute("href",t)}setAttribute(t,r){this.attributes[t]=r}hasClass(t){return tr.contains(this.classes,t)}toNode(){return DG.call(this,"a")}toMarkup(){return RG.call(this,"a")}},c7=class{static{o(this,"Img")}constructor(t,r,n){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=r,this.src=t,this.classes=["mord"],this.style=n}hasClass(t){return tr.contains(this.classes,t)}toNode(){var t=document.createElement("img");t.src=this.src,t.alt=this.alt,t.className="mord";for(var r in this.style)this.style.hasOwnProperty(r)&&(t.style[r]=this.style[r]);return t}toMarkup(){var t=''+tr.escape(this.alt)+'0&&(r=document.createElement("span"),r.style.marginRight=ve(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=ph(this.classes));for(var n in this.style)this.style.hasOwnProperty(n)&&(r=r||document.createElement("span"),r.style[n]=this.style[n]);return r?(r.appendChild(t),r):t}toMarkup(){var t=!1,r="0&&(n+="margin-right:"+this.italic+"em;");for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=tr.hyphenate(i)+":"+this.style[i]+";");n&&(t=!0,r+=' style="'+tr.escape(n)+'"');var a=tr.escape(this.text);return t?(r+=">",r+=a,r+="",r):a}},dl=class{static{o(this,"SvgNode")}constructor(t,r){this.children=void 0,this.attributes=void 0,this.children=t||[],this.attributes=r||{}}toNode(){var t="http://www.w3.org/2000/svg",r=document.createElementNS(t,"svg");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);for(var i=0;i':''}},gy=class{static{o(this,"LineNode")}constructor(t){this.attributes=void 0,this.attributes=t||{}}toNode(){var t="http://www.w3.org/2000/svg",r=document.createElementNS(t,"line");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);return r}toMarkup(){var t="","\\gt",!0);$(U,tt,bt,"\u2208","\\in",!0);$(U,tt,bt,"\uE020","\\@not");$(U,tt,bt,"\u2282","\\subset",!0);$(U,tt,bt,"\u2283","\\supset",!0);$(U,tt,bt,"\u2286","\\subseteq",!0);$(U,tt,bt,"\u2287","\\supseteq",!0);$(U,xt,bt,"\u2288","\\nsubseteq",!0);$(U,xt,bt,"\u2289","\\nsupseteq",!0);$(U,tt,bt,"\u22A8","\\models");$(U,tt,bt,"\u2190","\\leftarrow",!0);$(U,tt,bt,"\u2264","\\le");$(U,tt,bt,"\u2264","\\leq",!0);$(U,tt,bt,"<","\\lt",!0);$(U,tt,bt,"\u2192","\\rightarrow",!0);$(U,tt,bt,"\u2192","\\to");$(U,xt,bt,"\u2271","\\ngeq",!0);$(U,xt,bt,"\u2270","\\nleq",!0);$(U,tt,pu,"\xA0","\\ ");$(U,tt,pu,"\xA0","\\space");$(U,tt,pu,"\xA0","\\nobreakspace");$(ie,tt,pu,"\xA0","\\ ");$(ie,tt,pu,"\xA0"," ");$(ie,tt,pu,"\xA0","\\space");$(ie,tt,pu,"\xA0","\\nobreakspace");$(U,tt,pu,null,"\\nobreak");$(U,tt,pu,null,"\\allowbreak");$(U,tt,$4,",",",");$(U,tt,$4,";",";");$(U,xt,_e,"\u22BC","\\barwedge",!0);$(U,xt,_e,"\u22BB","\\veebar",!0);$(U,tt,_e,"\u2299","\\odot",!0);$(U,tt,_e,"\u2295","\\oplus",!0);$(U,tt,_e,"\u2297","\\otimes",!0);$(U,tt,Lt,"\u2202","\\partial",!0);$(U,tt,_e,"\u2298","\\oslash",!0);$(U,xt,_e,"\u229A","\\circledcirc",!0);$(U,xt,_e,"\u22A1","\\boxdot",!0);$(U,tt,_e,"\u25B3","\\bigtriangleup");$(U,tt,_e,"\u25BD","\\bigtriangledown");$(U,tt,_e,"\u2020","\\dagger");$(U,tt,_e,"\u22C4","\\diamond");$(U,tt,_e,"\u22C6","\\star");$(U,tt,_e,"\u25C3","\\triangleleft");$(U,tt,_e,"\u25B9","\\triangleright");$(U,tt,Qs,"{","\\{");$(ie,tt,Lt,"{","\\{");$(ie,tt,Lt,"{","\\textbraceleft");$(U,tt,Za,"}","\\}");$(ie,tt,Lt,"}","\\}");$(ie,tt,Lt,"}","\\textbraceright");$(U,tt,Qs,"{","\\lbrace");$(U,tt,Za,"}","\\rbrace");$(U,tt,Qs,"[","\\lbrack",!0);$(ie,tt,Lt,"[","\\lbrack",!0);$(U,tt,Za,"]","\\rbrack",!0);$(ie,tt,Lt,"]","\\rbrack",!0);$(U,tt,Qs,"(","\\lparen",!0);$(U,tt,Za,")","\\rparen",!0);$(ie,tt,Lt,"<","\\textless",!0);$(ie,tt,Lt,">","\\textgreater",!0);$(U,tt,Qs,"\u230A","\\lfloor",!0);$(U,tt,Za,"\u230B","\\rfloor",!0);$(U,tt,Qs,"\u2308","\\lceil",!0);$(U,tt,Za,"\u2309","\\rceil",!0);$(U,tt,Lt,"\\","\\backslash");$(U,tt,Lt,"\u2223","|");$(U,tt,Lt,"\u2223","\\vert");$(ie,tt,Lt,"|","\\textbar",!0);$(U,tt,Lt,"\u2225","\\|");$(U,tt,Lt,"\u2225","\\Vert");$(ie,tt,Lt,"\u2225","\\textbardbl");$(ie,tt,Lt,"~","\\textasciitilde");$(ie,tt,Lt,"\\","\\textbackslash");$(ie,tt,Lt,"^","\\textasciicircum");$(U,tt,bt,"\u2191","\\uparrow",!0);$(U,tt,bt,"\u21D1","\\Uparrow",!0);$(U,tt,bt,"\u2193","\\downarrow",!0);$(U,tt,bt,"\u21D3","\\Downarrow",!0);$(U,tt,bt,"\u2195","\\updownarrow",!0);$(U,tt,bt,"\u21D5","\\Updownarrow",!0);$(U,tt,Ei,"\u2210","\\coprod");$(U,tt,Ei,"\u22C1","\\bigvee");$(U,tt,Ei,"\u22C0","\\bigwedge");$(U,tt,Ei,"\u2A04","\\biguplus");$(U,tt,Ei,"\u22C2","\\bigcap");$(U,tt,Ei,"\u22C3","\\bigcup");$(U,tt,Ei,"\u222B","\\int");$(U,tt,Ei,"\u222B","\\intop");$(U,tt,Ei,"\u222C","\\iint");$(U,tt,Ei,"\u222D","\\iiint");$(U,tt,Ei,"\u220F","\\prod");$(U,tt,Ei,"\u2211","\\sum");$(U,tt,Ei,"\u2A02","\\bigotimes");$(U,tt,Ei,"\u2A01","\\bigoplus");$(U,tt,Ei,"\u2A00","\\bigodot");$(U,tt,Ei,"\u222E","\\oint");$(U,tt,Ei,"\u222F","\\oiint");$(U,tt,Ei,"\u2230","\\oiiint");$(U,tt,Ei,"\u2A06","\\bigsqcup");$(U,tt,Ei,"\u222B","\\smallint");$(ie,tt,Sp,"\u2026","\\textellipsis");$(U,tt,Sp,"\u2026","\\mathellipsis");$(ie,tt,Sp,"\u2026","\\ldots",!0);$(U,tt,Sp,"\u2026","\\ldots",!0);$(U,tt,Sp,"\u22EF","\\@cdots",!0);$(U,tt,Sp,"\u22F1","\\ddots",!0);$(U,tt,Lt,"\u22EE","\\varvdots");$(U,tt,Un,"\u02CA","\\acute");$(U,tt,Un,"\u02CB","\\grave");$(U,tt,Un,"\xA8","\\ddot");$(U,tt,Un,"~","\\tilde");$(U,tt,Un,"\u02C9","\\bar");$(U,tt,Un,"\u02D8","\\breve");$(U,tt,Un,"\u02C7","\\check");$(U,tt,Un,"^","\\hat");$(U,tt,Un,"\u20D7","\\vec");$(U,tt,Un,"\u02D9","\\dot");$(U,tt,Un,"\u02DA","\\mathring");$(U,tt,er,"\uE131","\\@imath");$(U,tt,er,"\uE237","\\@jmath");$(U,tt,Lt,"\u0131","\u0131");$(U,tt,Lt,"\u0237","\u0237");$(ie,tt,Lt,"\u0131","\\i",!0);$(ie,tt,Lt,"\u0237","\\j",!0);$(ie,tt,Lt,"\xDF","\\ss",!0);$(ie,tt,Lt,"\xE6","\\ae",!0);$(ie,tt,Lt,"\u0153","\\oe",!0);$(ie,tt,Lt,"\xF8","\\o",!0);$(ie,tt,Lt,"\xC6","\\AE",!0);$(ie,tt,Lt,"\u0152","\\OE",!0);$(ie,tt,Lt,"\xD8","\\O",!0);$(ie,tt,Un,"\u02CA","\\'");$(ie,tt,Un,"\u02CB","\\`");$(ie,tt,Un,"\u02C6","\\^");$(ie,tt,Un,"\u02DC","\\~");$(ie,tt,Un,"\u02C9","\\=");$(ie,tt,Un,"\u02D8","\\u");$(ie,tt,Un,"\u02D9","\\.");$(ie,tt,Un,"\xB8","\\c");$(ie,tt,Un,"\u02DA","\\r");$(ie,tt,Un,"\u02C7","\\v");$(ie,tt,Un,"\xA8",'\\"');$(ie,tt,Un,"\u02DD","\\H");$(ie,tt,Un,"\u25EF","\\textcircled");NG={"--":!0,"---":!0,"``":!0,"''":!0};$(ie,tt,Lt,"\u2013","--",!0);$(ie,tt,Lt,"\u2013","\\textendash");$(ie,tt,Lt,"\u2014","---",!0);$(ie,tt,Lt,"\u2014","\\textemdash");$(ie,tt,Lt,"\u2018","`",!0);$(ie,tt,Lt,"\u2018","\\textquoteleft");$(ie,tt,Lt,"\u2019","'",!0);$(ie,tt,Lt,"\u2019","\\textquoteright");$(ie,tt,Lt,"\u201C","``",!0);$(ie,tt,Lt,"\u201C","\\textquotedblleft");$(ie,tt,Lt,"\u201D","''",!0);$(ie,tt,Lt,"\u201D","\\textquotedblright");$(U,tt,Lt,"\xB0","\\degree",!0);$(ie,tt,Lt,"\xB0","\\degree");$(ie,tt,Lt,"\xB0","\\textdegree",!0);$(U,tt,Lt,"\xA3","\\pounds");$(U,tt,Lt,"\xA3","\\mathsterling",!0);$(ie,tt,Lt,"\xA3","\\pounds");$(ie,tt,Lt,"\xA3","\\textsterling",!0);$(U,xt,Lt,"\u2720","\\maltese");$(ie,xt,Lt,"\u2720","\\maltese");tG='0123456789/@."';for(b4=0;b40)return fl(a,h,i,r,s.concat(f));if(u){var d,p;if(u==="boldsymbol"){var m=$bt(a,i,r,s,n);d=m.fontName,p=[m.fontClass]}else l?(d=OG[u].fontName,p=[u]):(d=C4(u,r.fontWeight,r.fontShape),p=[u,r.fontWeight,r.fontShape]);if(G4(a,d,i).metrics)return fl(a,d,i,r,s.concat(p));if(NG.hasOwnProperty(a)&&d.slice(0,10)==="Typewriter"){for(var g=[],y=0;y{if(ph(e.classes)!==ph(t.classes)||e.skew!==t.skew||e.maxFontSize!==t.maxFontSize)return!1;if(e.classes.length===1){var r=e.classes[0];if(r==="mbin"||r==="mord")return!1}for(var n in e.style)if(e.style.hasOwnProperty(n)&&e.style[n]!==t.style[n])return!1;for(var i in t.style)if(t.style.hasOwnProperty(i)&&e.style[i]!==t.style[i])return!1;return!0},"canCombine"),Ubt=o(e=>{for(var t=0;tr&&(r=s.height),s.depth>n&&(n=s.depth),s.maxFontSize>i&&(i=s.maxFontSize)}t.height=r,t.depth=n,t.maxFontSize=i},"sizeElementFromChildren"),ys=o(function(t,r,n,i){var a=new td(t,r,n,i);return w7(a),a},"makeSpan"),MG=o((e,t,r,n)=>new td(e,t,r,n),"makeSvgSpan"),Hbt=o(function(t,r,n){var i=ys([t],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=ve(i.height),i.maxFontSize=1,i},"makeLineSpan"),Wbt=o(function(t,r,n,i){var a=new my(t,r,n,i);return w7(a),a},"makeAnchor"),IG=o(function(t){var r=new Jf(t);return w7(r),r},"makeFragment"),Ybt=o(function(t,r){return t instanceof Jf?ys([],[t],r):t},"wrapFragment"),qbt=o(function(t){if(t.positionType==="individualShift"){for(var r=t.children,n=[r[0]],i=-r[0].shift-r[0].elem.depth,a=i,s=1;s{var r=ys(["mspace"],[],t),n=Zn(e,t);return r.style.marginRight=ve(n),r},"makeGlue"),C4=o(function(t,r,n){var i="";switch(t){case"amsrm":i="AMS";break;case"textrm":i="Main";break;case"textsf":i="SansSerif";break;case"texttt":i="Typewriter";break;default:i=t}var a;return r==="textbf"&&n==="textit"?a="BoldItalic":r==="textbf"?a="Bold":r==="textit"?a="Italic":a="Regular",i+"-"+a},"retrieveTextFontName"),OG={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"},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"}},PG={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},Kbt=o(function(t,r){var[n,i,a]=PG[t],s=new sc(n),l=new dl([s],{width:ve(i),height:ve(a),style:"width:"+ve(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),u=MG(["overlay"],[l],r);return u.height=a,u.style.height=ve(a),u.style.width=ve(i),u},"staticSvg"),Bt={fontMap:OG,makeSymbol:fl,mathsym:zbt,makeSpan:ys,makeSvgSpan:MG,makeLineSpan:Hbt,makeAnchor:Wbt,makeFragment:IG,wrapFragment:Ybt,makeVList:Xbt,makeOrd:Gbt,makeGlue:jbt,staticSvg:Kbt,svgData:PG,tryCombineChars:Ubt},Qn={number:3,unit:"mu"},Qf={number:4,unit:"mu"},cu={number:5,unit:"mu"},Qbt={mord:{mop:Qn,mbin:Qf,mrel:cu,minner:Qn},mop:{mord:Qn,mop:Qn,mrel:cu,minner:Qn},mbin:{mord:Qf,mop:Qf,mopen:Qf,minner:Qf},mrel:{mord:cu,mop:cu,mopen:cu,minner:cu},mopen:{},mclose:{mop:Qn,mbin:Qf,mrel:cu,minner:Qn},mpunct:{mord:Qn,mop:Qn,mrel:cu,mopen:Qn,mclose:Qn,mpunct:Qn,minner:Qn},minner:{mord:Qn,mop:Qn,mbin:Qf,mrel:cu,mopen:Qn,mpunct:Qn,minner:Qn}},Zbt={mord:{mop:Qn},mop:{mord:Qn,mop:Qn},mbin:{},mrel:{},mopen:{},mclose:{mop:Qn},mpunct:{},minner:{mop:Qn}},BG={},O4={},P4={};o(Ce,"defineFunction");o(ed,"defineFunctionBuilders");B4=o(function(t){return t.type==="ordgroup"&&t.body.length===1?t.body[0]:t},"normalizeArgument"),mi=o(function(t){return t.type==="ordgroup"?t.body:[t]},"ordargument"),fu=Bt.makeSpan,Jbt=["leftmost","mbin","mopen","mrel","mop","mpunct"],t4t=["rightmost","mrel","mclose","mpunct"],e4t={display:rr.DISPLAY,text:rr.TEXT,script:rr.SCRIPT,scriptscript:rr.SCRIPTSCRIPT},r4t={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},Oi=o(function(t,r,n,i){i===void 0&&(i=[null,null]);for(var a=[],s=0;s{var v=y.classes[0],x=g.classes[0];v==="mbin"&&tr.contains(t4t,x)?y.classes[0]="mord":x==="mbin"&&tr.contains(Jbt,v)&&(g.classes[0]="mord")},{node:d},p,m),nG(a,(g,y)=>{var v=h7(y),x=h7(g),b=v&&x?g.hasClass("mtight")?Zbt[v][x]:Qbt[v][x]:null;if(b)return Bt.makeGlue(b,h)},{node:d},p,m),a},"buildExpression"),nG=o(function e(t,r,n,i,a){i&&t.push(i);for(var s=0;sp=>{t.splice(d+1,0,p),s++})(s)}i&&t.pop()},"traverseNonSpaceNodes"),FG=o(function(t){return t instanceof Jf||t instanceof my||t instanceof td&&t.hasClass("enclosing")?t:null},"checkPartialGroup"),n4t=o(function e(t,r){var n=FG(t);if(n){var i=n.children;if(i.length){if(r==="right")return e(i[i.length-1],"right");if(r==="left")return e(i[0],"left")}}return t},"getOutermostNode"),h7=o(function(t,r){return t?(r&&(t=n4t(t,r)),r4t[t.classes[0]]||null):null},"getTypeOfDomTree"),yy=o(function(t,r){var n=["nulldelimiter"].concat(t.baseSizingClasses());return fu(r.concat(n))},"makeNullDelimiter"),Or=o(function(t,r,n){if(!t)return fu();if(O4[t.type]){var i=O4[t.type](t,r);if(n&&r.size!==n.size){i=fu(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new ue("Got group of unknown type: '"+t.type+"'")},"buildGroup");o(S4,"buildHTMLUnbreakable");o(f7,"buildHTML");o(zG,"newDocumentFragment");vs=class{static{o(this,"MathNode")}constructor(t,r,n){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=t,this.attributes={},this.children=r||[],this.classes=n||[]}setAttribute(t,r){this.attributes[t]=r}getAttribute(t){return this.attributes[t]}toNode(){var t=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&t.setAttribute(r,this.attributes[r]);this.classes.length>0&&(t.className=ph(this.classes));for(var n=0;n0&&(t+=' class ="'+tr.escape(ph(this.classes))+'"'),t+=">";for(var n=0;n",t}toText(){return this.children.map(t=>t.toText()).join("")}},Zf=class{static{o(this,"TextNode")}constructor(t){this.text=void 0,this.text=t}toNode(){return document.createTextNode(this.text)}toMarkup(){return tr.escape(this.toText())}toText(){return this.text}},d7=class{static{o(this,"SpaceNode")}constructor(t){this.width=void 0,this.character=void 0,this.width=t,t>=.05555&&t<=.05556?this.character="\u200A":t>=.1666&&t<=.1667?this.character="\u2009":t>=.2222&&t<=.2223?this.character="\u2005":t>=.2777&&t<=.2778?this.character="\u2005\u200A":t>=-.05556&&t<=-.05555?this.character="\u200A\u2063":t>=-.1667&&t<=-.1666?this.character="\u2009\u2063":t>=-.2223&&t<=-.2222?this.character="\u205F\u2063":t>=-.2778&&t<=-.2777?this.character="\u2005\u2063":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var t=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return t.setAttribute("width",ve(this.width)),t}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}},se={MathNode:vs,TextNode:Zf,SpaceNode:d7,newDocumentFragment:zG},Ro=o(function(t,r,n){return An[r][t]&&An[r][t].replace&&t.charCodeAt(0)!==55349&&!(NG.hasOwnProperty(t)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(t=An[r][t].replace),new se.TextNode(t)},"makeText"),T7=o(function(t){return t.length===1?t[0]:new se.MathNode("mrow",t)},"makeRow"),k7=o(function(t,r){if(r.fontFamily==="texttt")return"monospace";if(r.fontFamily==="textsf")return r.fontShape==="textit"&&r.fontWeight==="textbf"?"sans-serif-bold-italic":r.fontShape==="textit"?"sans-serif-italic":r.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(r.fontShape==="textit"&&r.fontWeight==="textbf")return"bold-italic";if(r.fontShape==="textit")return"italic";if(r.fontWeight==="textbf")return"bold";var n=r.font;if(!n||n==="mathnormal")return null;var i=t.mode;if(n==="mathit")return"italic";if(n==="boldsymbol")return t.type==="textord"?"bold":"bold-italic";if(n==="mathbf")return"bold";if(n==="mathbb")return"double-struck";if(n==="mathfrak")return"fraktur";if(n==="mathscr"||n==="mathcal")return"script";if(n==="mathsf")return"sans-serif";if(n==="mathtt")return"monospace";var a=t.text;if(tr.contains(["\\imath","\\jmath"],a))return null;An[i][a]&&An[i][a].replace&&(a=An[i][a].replace);var s=Bt.fontMap[n].fontName;return b7(a,s,i)?Bt.fontMap[n].variant:null},"getVariant"),bs=o(function(t,r,n){if(t.length===1){var i=yn(t[0],r);return n&&i instanceof vs&&i.type==="mo"&&(i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em")),[i]}for(var a=[],s,l=0;l0&&(d.text=d.text.slice(0,1)+"\u0338"+d.text.slice(1),a.pop())}}}a.push(u),s=u}return a},"buildExpression"),mh=o(function(t,r,n){return T7(bs(t,r,n))},"buildExpressionRow"),yn=o(function(t,r){if(!t)return new se.MathNode("mrow");if(P4[t.type]){var n=P4[t.type](t,r);return n}else throw new ue("Got group of unknown type: '"+t.type+"'")},"buildGroup");o(iG,"buildMathML");$G=o(function(t){return new M4({style:t.displayMode?rr.DISPLAY:rr.TEXT,maxSize:t.maxSize,minRuleThickness:t.minRuleThickness})},"optionsFromSettings"),GG=o(function(t,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),t=Bt.makeSpan(n,[t])}return t},"displayWrap"),i4t=o(function(t,r,n){var i=$G(n),a;if(n.output==="mathml")return iG(t,r,i,n.displayMode,!0);if(n.output==="html"){var s=f7(t,i);a=Bt.makeSpan(["katex"],[s])}else{var l=iG(t,r,i,n.displayMode,!1),u=f7(t,i);a=Bt.makeSpan(["katex"],[l,u])}return GG(a,n)},"buildTree"),a4t=o(function(t,r,n){var i=$G(n),a=f7(t,i),s=Bt.makeSpan(["katex"],[a]);return GG(s,n)},"buildHTMLTree"),s4t={widehat:"^",widecheck:"\u02C7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23DF",overbrace:"\u23DE",overgroup:"\u23E0",undergroup:"\u23E1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21D2",xRightarrow:"\u21D2",overleftharpoon:"\u21BC",xleftharpoonup:"\u21BC",overrightharpoon:"\u21C0",xrightharpoonup:"\u21C0",xLeftarrow:"\u21D0",xLeftrightarrow:"\u21D4",xhookleftarrow:"\u21A9",xhookrightarrow:"\u21AA",xmapsto:"\u21A6",xrightharpoondown:"\u21C1",xleftharpoondown:"\u21BD",xrightleftharpoons:"\u21CC",xleftrightharpoons:"\u21CB",xtwoheadleftarrow:"\u219E",xtwoheadrightarrow:"\u21A0",xlongequal:"=",xtofrom:"\u21C4",xrightleftarrows:"\u21C4",xrightequilibrium:"\u21CC",xleftequilibrium:"\u21CB","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},o4t=o(function(t){var r=new se.MathNode("mo",[new se.TextNode(s4t[t.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},"mathMLnode"),l4t={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.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"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.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"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.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]},c4t=o(function(t){return t.type==="ordgroup"?t.body.length:1},"groupLength"),u4t=o(function(t,r){function n(){var l=4e5,u=t.label.slice(1);if(tr.contains(["widehat","widecheck","widetilde","utilde"],u)){var h=t,f=c4t(h.base),d,p,m;if(f>5)u==="widehat"||u==="widecheck"?(d=420,l=2364,m=.42,p=u+"4"):(d=312,l=2340,m=.34,p="tilde4");else{var g=[1,1,2,2,3,3][f];u==="widehat"||u==="widecheck"?(l=[0,1062,2364,2364,2364][g],d=[0,239,300,360,420][g],m=[0,.24,.3,.3,.36,.42][g],p=u+g):(l=[0,600,1033,2339,2340][g],d=[0,260,286,306,312][g],m=[0,.26,.286,.3,.306,.34][g],p="tilde"+g)}var y=new sc(p),v=new dl([y],{width:"100%",height:ve(m),viewBox:"0 0 "+l+" "+d,preserveAspectRatio:"none"});return{span:Bt.makeSvgSpan([],[v],r),minWidth:0,height:m}}else{var x=[],b=l4t[u],[w,S,T]=b,E=T/1e3,_=w.length,A,L;if(_===1){var M=b[3];A=["hide-tail"],L=[M]}else if(_===2)A=["halfarrow-left","halfarrow-right"],L=["xMinYMin","xMaxYMin"];else if(_===3)A=["brace-left","brace-center","brace-right"],L=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support `+_+" children.");for(var N=0;N<_;N++){var k=new sc(w[N]),I=new dl([k],{width:"400em",height:ve(E),viewBox:"0 0 "+l+" "+T,preserveAspectRatio:L[N]+" slice"}),C=Bt.makeSvgSpan([A[N]],[I],r);if(_===1)return{span:C,minWidth:S,height:E};C.style.height=ve(E),x.push(C)}return{span:Bt.makeSpan(["stretchy"],x,r),minWidth:S,height:E}}}o(n,"buildSvgSpan_");var{span:i,minWidth:a,height:s}=n();return i.height=s,i.style.height=ve(s),a>0&&(i.style.minWidth=ve(a)),i},"svgSpan"),h4t=o(function(t,r,n,i,a){var s,l=t.height+t.depth+n+i;if(/fbox|color|angl/.test(r)){if(s=Bt.makeSpan(["stretchy",r],[],a),r==="fbox"){var u=a.color&&a.getColor();u&&(s.style.borderColor=u)}}else{var h=[];/^[bx]cancel$/.test(r)&&h.push(new gy({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(r)&&h.push(new gy({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var f=new dl(h,{width:"100%",height:ve(l)});s=Bt.makeSvgSpan([],[f],a)}return s.height=l,s.style.height=ve(l),s},"encloseSpan"),du={encloseSpan:h4t,mathMLnode:o4t,svgSpan:u4t};o(mr,"assertNodeType");o(E7,"assertSymbolNodeType");o(V4,"checkSymbolNodeType");C7=o((e,t)=>{var r,n,i;e&&e.type==="supsub"?(n=mr(e.base,"accent"),r=n.base,e.base=r,i=Obt(Or(e,t)),e.base=n):(n=mr(e,"accent"),r=n.base);var a=Or(r,t.havingCrampedStyle()),s=n.isShifty&&tr.isCharacterBox(r),l=0;if(s){var u=tr.getBaseElem(r),h=Or(u,t.havingCrampedStyle());l=J$(h).skew}var f=n.label==="\\c",d=f?a.height+a.depth:Math.min(a.height,t.fontMetrics().xHeight),p;if(n.isStretchy)p=du.svgSpan(n,t),p=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:p,wrapperClasses:["svg-align"],wrapperStyle:l>0?{width:"calc(100% - "+ve(2*l)+")",marginLeft:ve(2*l)}:void 0}]},t);else{var m,g;n.label==="\\vec"?(m=Bt.staticSvg("vec",t),g=Bt.svgData.vec[1]):(m=Bt.makeOrd({mode:n.mode,text:n.label},t,"textord"),m=J$(m),m.italic=0,g=m.width,f&&(d+=m.depth)),p=Bt.makeSpan(["accent-body"],[m]);var y=n.label==="\\textcircled";y&&(p.classes.push("accent-full"),d=a.height);var v=l;y||(v-=g/2),p.style.left=ve(v),n.label==="\\textcircled"&&(p.style.top=".2em"),p=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-d},{type:"elem",elem:p}]},t)}var x=Bt.makeSpan(["mord","accent"],[p],t);return i?(i.children[0]=x,i.height=Math.max(x.height,i.height),i.classes[0]="mord",i):x},"htmlBuilder$a"),VG=o((e,t)=>{var r=e.isStretchy?du.mathMLnode(e.label):new se.MathNode("mo",[Ro(e.label,e.mode)]),n=new se.MathNode("mover",[yn(e.base,t),r]);return n.setAttribute("accent","true"),n},"mathmlBuilder$9"),f4t=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(e=>"\\"+e).join("|"));Ce({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:o((e,t)=>{var r=B4(t[0]),n=!f4t.test(e.funcName),i=!n||e.funcName==="\\widehat"||e.funcName==="\\widetilde"||e.funcName==="\\widecheck";return{type:"accent",mode:e.parser.mode,label:e.funcName,isStretchy:n,isShifty:i,base:r}},"handler"),htmlBuilder:C7,mathmlBuilder:VG});Ce({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:o((e,t)=>{var r=t[0],n=e.parser.mode;return n==="math"&&(e.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+e.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:e.funcName,isStretchy:!1,isShifty:!0,base:r}},"handler"),htmlBuilder:C7,mathmlBuilder:VG});Ce({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0];return{type:"accentUnder",mode:r.mode,label:n,base:i}},"handler"),htmlBuilder:o((e,t)=>{var r=Or(e.base,t),n=du.svgSpan(e,t),i=e.label==="\\utilde"?.12:0,a=Bt.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]},t);return Bt.makeSpan(["mord","accentunder"],[a],t)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=du.mathMLnode(e.label),n=new se.MathNode("munder",[yn(e.base,t),r]);return n.setAttribute("accentunder","true"),n},"mathmlBuilder")});A4=o(e=>{var t=new se.MathNode("mpadded",e?[e]:[]);return t.setAttribute("width","+0.6em"),t.setAttribute("lspace","0.3em"),t},"paddedNode");Ce({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(e,t,r){var{parser:n,funcName:i}=e;return{type:"xArrow",mode:n.mode,label:i,body:t[0],below:r[0]}},htmlBuilder(e,t){var r=t.style,n=t.havingStyle(r.sup()),i=Bt.wrapFragment(Or(e.body,n,t),t),a=e.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(a+"-arrow-pad");var s;e.below&&(n=t.havingStyle(r.sub()),s=Bt.wrapFragment(Or(e.below,n,t),t),s.classes.push(a+"-arrow-pad"));var l=du.svgSpan(e,t),u=-t.fontMetrics().axisHeight+.5*l.height,h=-t.fontMetrics().axisHeight-.5*l.height-.111;(i.depth>.25||e.label==="\\xleftequilibrium")&&(h-=i.depth);var f;if(s){var d=-t.fontMetrics().axisHeight+s.height+.5*l.height+.111;f=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u},{type:"elem",elem:s,shift:d}]},t)}else f=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u}]},t);return f.children[0].children[0].children[1].classes.push("svg-align"),Bt.makeSpan(["mrel","x-arrow"],[f],t)},mathmlBuilder(e,t){var r=du.mathMLnode(e.label);r.setAttribute("minsize",e.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(e.body){var i=A4(yn(e.body,t));if(e.below){var a=A4(yn(e.below,t));n=new se.MathNode("munderover",[r,a,i])}else n=new se.MathNode("mover",[r,i])}else if(e.below){var s=A4(yn(e.below,t));n=new se.MathNode("munder",[r,s])}else n=A4(),n=new se.MathNode("mover",[r,n]);return n}});d4t=Bt.makeSpan;o(UG,"htmlBuilder$9");o(HG,"mathmlBuilder$8");Ce({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(e,t){var{parser:r,funcName:n}=e,i=t[0];return{type:"mclass",mode:r.mode,mclass:"m"+n.slice(5),body:mi(i),isCharacterBox:tr.isCharacterBox(i)}},htmlBuilder:UG,mathmlBuilder:HG});U4=o(e=>{var t=e.type==="ordgroup"&&e.body.length?e.body[0]:e;return t.type==="atom"&&(t.family==="bin"||t.family==="rel")?"m"+t.family:"mord"},"binrelClass");Ce({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(e,t){var{parser:r}=e;return{type:"mclass",mode:r.mode,mclass:U4(t[0]),body:mi(t[1]),isCharacterBox:tr.isCharacterBox(t[1])}}});Ce({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(e,t){var{parser:r,funcName:n}=e,i=t[1],a=t[0],s;n!=="\\stackrel"?s=U4(i):s="mrel";var l={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:mi(i)},u={type:"supsub",mode:a.mode,base:l,sup:n==="\\underset"?null:a,sub:n==="\\underset"?a:null};return{type:"mclass",mode:r.mode,mclass:s,body:[u],isCharacterBox:tr.isCharacterBox(u)}},htmlBuilder:UG,mathmlBuilder:HG});Ce({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(e,t){var{parser:r}=e;return{type:"pmb",mode:r.mode,mclass:U4(t[0]),body:mi(t[0])}},htmlBuilder(e,t){var r=Oi(e.body,t,!0),n=Bt.makeSpan([e.mclass],r,t);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(e,t){var r=bs(e.body,t),n=new se.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});p4t={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},aG=o(()=>({type:"styling",body:[],mode:"math",style:"display"}),"newCell"),sG=o(e=>e.type==="textord"&&e.text==="@","isStartOfArrow"),m4t=o((e,t)=>(e.type==="mathord"||e.type==="atom")&&e.text===t,"isLabelEnd");o(g4t,"cdArrow");o(y4t,"parseCD");Ce({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(e,t){var{parser:r,funcName:n}=e;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:t[0]}},htmlBuilder(e,t){var r=t.havingStyle(t.style.sup()),n=Bt.wrapFragment(Or(e.label,r,t),t);return n.classes.push("cd-label-"+e.side),n.style.bottom=ve(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(e,t){var r=new se.MathNode("mrow",[yn(e.label,t)]);return r=new se.MathNode("mpadded",[r]),r.setAttribute("width","0"),e.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new se.MathNode("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}});Ce({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(e,t){var{parser:r}=e;return{type:"cdlabelparent",mode:r.mode,fragment:t[0]}},htmlBuilder(e,t){var r=Bt.wrapFragment(Or(e.fragment,t),t);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(e,t){return new se.MathNode("mrow",[yn(e.fragment,t)])}});Ce({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(e,t){for(var{parser:r}=e,n=mr(t[0],"ordgroup"),i=n.body,a="",s=0;s=1114111)throw new ue("\\@char with invalid code point "+a);return u<=65535?h=String.fromCharCode(u):(u-=65536,h=String.fromCharCode((u>>10)+55296,(u&1023)+56320)),{type:"textord",mode:r.mode,text:h}}});WG=o((e,t)=>{var r=Oi(e.body,t.withColor(e.color),!1);return Bt.makeFragment(r)},"htmlBuilder$8"),YG=o((e,t)=>{var r=bs(e.body,t.withColor(e.color)),n=new se.MathNode("mstyle",r);return n.setAttribute("mathcolor",e.color),n},"mathmlBuilder$7");Ce({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(e,t){var{parser:r}=e,n=mr(t[0],"color-token").color,i=t[1];return{type:"color",mode:r.mode,color:n,body:mi(i)}},htmlBuilder:WG,mathmlBuilder:YG});Ce({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(e,t){var{parser:r,breakOnTokenText:n}=e,i=mr(t[0],"color-token").color;r.gullet.macros.set("\\current@color",i);var a=r.parseExpression(!0,n);return{type:"color",mode:r.mode,color:i,body:a}},htmlBuilder:WG,mathmlBuilder:YG});Ce({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(e,t,r){var{parser:n}=e,i=n.gullet.future().text==="["?n.parseSizeGroup(!0):null,a=!n.settings.displayMode||!n.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:n.mode,newLine:a,size:i&&mr(i,"size").value}},htmlBuilder(e,t){var r=Bt.makeSpan(["mspace"],[],t);return e.newLine&&(r.classes.push("newline"),e.size&&(r.style.marginTop=ve(Zn(e.size,t)))),r},mathmlBuilder(e,t){var r=new se.MathNode("mspace");return e.newLine&&(r.setAttribute("linebreak","newline"),e.size&&r.setAttribute("height",ve(Zn(e.size,t)))),r}});p7={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},qG=o(e=>{var t=e.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(t))throw new ue("Expected a control sequence",e);return t},"checkControlSequence"),v4t=o(e=>{var t=e.gullet.popToken();return t.text==="="&&(t=e.gullet.popToken(),t.text===" "&&(t=e.gullet.popToken())),t},"getRHS"),XG=o((e,t,r,n)=>{var i=e.gullet.macros.get(r.text);i==null&&(r.noexpand=!0,i={tokens:[r],numArgs:0,unexpandable:!e.gullet.isExpandable(r.text)}),e.gullet.macros.set(t,i,n)},"letCommand");Ce({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(e){var{parser:t,funcName:r}=e;t.consumeSpaces();var n=t.fetch();if(p7[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=p7[n.text]),mr(t.parseFunction(),"internal");throw new ue("Invalid token after macro prefix",n)}});Ce({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:r}=e,n=t.gullet.popToken(),i=n.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new ue("Expected a control sequence",n);for(var a=0,s,l=[[]];t.gullet.future().text!=="{";)if(n=t.gullet.popToken(),n.text==="#"){if(t.gullet.future().text==="{"){s=t.gullet.future(),l[a].push("{");break}if(n=t.gullet.popToken(),!/^[1-9]$/.test(n.text))throw new ue('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new ue('Argument number "'+n.text+'" out of order');a++,l.push([])}else{if(n.text==="EOF")throw new ue("Expected a macro definition");l[a].push(n.text)}var{tokens:u}=t.gullet.consumeArg();return s&&u.unshift(s),(r==="\\edef"||r==="\\xdef")&&(u=t.gullet.expandTokens(u),u.reverse()),t.gullet.macros.set(i,{tokens:u,numArgs:a,delimiters:l},r===p7[r]),{type:"internal",mode:t.mode}}});Ce({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:r}=e,n=qG(t.gullet.popToken());t.gullet.consumeSpaces();var i=v4t(t);return XG(t,n,i,r==="\\\\globallet"),{type:"internal",mode:t.mode}}});Ce({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:r}=e,n=qG(t.gullet.popToken()),i=t.gullet.popToken(),a=t.gullet.popToken();return XG(t,n,a,r==="\\\\globalfuture"),t.gullet.pushToken(a),t.gullet.pushToken(i),{type:"internal",mode:t.mode}}});hy=o(function(t,r,n){var i=An.math[t]&&An.math[t].replace,a=b7(i||t,r,n);if(!a)throw new Error("Unsupported symbol "+t+" and font size "+r+".");return a},"getMetrics"),S7=o(function(t,r,n,i){var a=n.havingBaseStyle(r),s=Bt.makeSpan(i.concat(a.sizingClasses(n)),[t],n),l=a.sizeMultiplier/n.sizeMultiplier;return s.height*=l,s.depth*=l,s.maxFontSize=a.sizeMultiplier,s},"styleWrap"),jG=o(function(t,r,n){var i=r.havingBaseStyle(n),a=(1-r.sizeMultiplier/i.sizeMultiplier)*r.fontMetrics().axisHeight;t.classes.push("delimcenter"),t.style.top=ve(a),t.height-=a,t.depth+=a},"centerSpan"),x4t=o(function(t,r,n,i,a,s){var l=Bt.makeSymbol(t,"Main-Regular",a,i),u=S7(l,r,i,s);return n&&jG(u,i,r),u},"makeSmallDelim"),b4t=o(function(t,r,n,i){return Bt.makeSymbol(t,"Size"+r+"-Regular",n,i)},"mathrmSize"),KG=o(function(t,r,n,i,a,s){var l=b4t(t,r,a,i),u=S7(Bt.makeSpan(["delimsizing","size"+r],[l],i),rr.TEXT,i,s);return n&&jG(u,i,rr.TEXT),u},"makeLargeDelim"),ZS=o(function(t,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=Bt.makeSpan(["delimsizinginner",i],[Bt.makeSpan([],[Bt.makeSymbol(t,r,n)])]);return{type:"elem",elem:a}},"makeGlyphSpan"),JS=o(function(t,r,n){var i=ac["Size4-Regular"][t.charCodeAt(0)]?ac["Size4-Regular"][t.charCodeAt(0)][4]:ac["Size1-Regular"][t.charCodeAt(0)][4],a=new sc("inner",_bt(t,Math.round(1e3*r))),s=new dl([a],{width:ve(i),height:ve(r),style:"width:"+ve(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),l=Bt.makeSvgSpan([],[s],n);return l.height=r,l.style.height=ve(r),l.style.width=ve(i),{type:"elem",elem:l}},"makeInner"),m7=.008,_4={type:"kern",size:-1*m7},w4t=["|","\\lvert","\\rvert","\\vert"],T4t=["\\|","\\lVert","\\rVert","\\Vert"],QG=o(function(t,r,n,i,a,s){var l,u,h,f,d="",p=0;l=h=f=t,u=null;var m="Size1-Regular";t==="\\uparrow"?h=f="\u23D0":t==="\\Uparrow"?h=f="\u2016":t==="\\downarrow"?l=h="\u23D0":t==="\\Downarrow"?l=h="\u2016":t==="\\updownarrow"?(l="\\uparrow",h="\u23D0",f="\\downarrow"):t==="\\Updownarrow"?(l="\\Uparrow",h="\u2016",f="\\Downarrow"):tr.contains(w4t,t)?(h="\u2223",d="vert",p=333):tr.contains(T4t,t)?(h="\u2225",d="doublevert",p=556):t==="["||t==="\\lbrack"?(l="\u23A1",h="\u23A2",f="\u23A3",m="Size4-Regular",d="lbrack",p=667):t==="]"||t==="\\rbrack"?(l="\u23A4",h="\u23A5",f="\u23A6",m="Size4-Regular",d="rbrack",p=667):t==="\\lfloor"||t==="\u230A"?(h=l="\u23A2",f="\u23A3",m="Size4-Regular",d="lfloor",p=667):t==="\\lceil"||t==="\u2308"?(l="\u23A1",h=f="\u23A2",m="Size4-Regular",d="lceil",p=667):t==="\\rfloor"||t==="\u230B"?(h=l="\u23A5",f="\u23A6",m="Size4-Regular",d="rfloor",p=667):t==="\\rceil"||t==="\u2309"?(l="\u23A4",h=f="\u23A5",m="Size4-Regular",d="rceil",p=667):t==="("||t==="\\lparen"?(l="\u239B",h="\u239C",f="\u239D",m="Size4-Regular",d="lparen",p=875):t===")"||t==="\\rparen"?(l="\u239E",h="\u239F",f="\u23A0",m="Size4-Regular",d="rparen",p=875):t==="\\{"||t==="\\lbrace"?(l="\u23A7",u="\u23A8",f="\u23A9",h="\u23AA",m="Size4-Regular"):t==="\\}"||t==="\\rbrace"?(l="\u23AB",u="\u23AC",f="\u23AD",h="\u23AA",m="Size4-Regular"):t==="\\lgroup"||t==="\u27EE"?(l="\u23A7",f="\u23A9",h="\u23AA",m="Size4-Regular"):t==="\\rgroup"||t==="\u27EF"?(l="\u23AB",f="\u23AD",h="\u23AA",m="Size4-Regular"):t==="\\lmoustache"||t==="\u23B0"?(l="\u23A7",f="\u23AD",h="\u23AA",m="Size4-Regular"):(t==="\\rmoustache"||t==="\u23B1")&&(l="\u23AB",f="\u23A9",h="\u23AA",m="Size4-Regular");var g=hy(l,m,a),y=g.height+g.depth,v=hy(h,m,a),x=v.height+v.depth,b=hy(f,m,a),w=b.height+b.depth,S=0,T=1;if(u!==null){var E=hy(u,m,a);S=E.height+E.depth,T=2}var _=y+w+S,A=Math.max(0,Math.ceil((r-_)/(T*x))),L=_+A*T*x,M=i.fontMetrics().axisHeight;n&&(M*=i.sizeMultiplier);var N=L/2-M,k=[];if(d.length>0){var I=L-y-w,C=Math.round(L*1e3),O=Lbt(d,Math.round(I*1e3)),D=new sc(d,O),P=(p/1e3).toFixed(3)+"em",F=(C/1e3).toFixed(3)+"em",B=new dl([D],{width:P,height:F,viewBox:"0 0 "+p+" "+C}),G=Bt.makeSvgSpan([],[B],i);G.height=C/1e3,G.style.width=P,G.style.height=F,k.push({type:"elem",elem:G})}else{if(k.push(ZS(f,m,a)),k.push(_4),u===null){var z=L-y-w+2*m7;k.push(JS(h,z,i))}else{var W=(L-y-w-S)/2+2*m7;k.push(JS(h,W,i)),k.push(_4),k.push(ZS(u,m,a)),k.push(_4),k.push(JS(h,W,i))}k.push(_4),k.push(ZS(l,m,a))}var Q=i.havingBaseStyle(rr.TEXT),j=Bt.makeVList({positionType:"bottom",positionData:N,children:k},Q);return S7(Bt.makeSpan(["delimsizing","mult"],[j],Q),rr.TEXT,i,s)},"makeStackedDelim"),t7=80,e7=.08,r7=o(function(t,r,n,i,a){var s=Abt(t,i,n),l=new sc(t,s),u=new dl([l],{width:"400em",height:ve(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return Bt.makeSvgSpan(["hide-tail"],[u],a)},"sqrtSvg"),k4t=o(function(t,r){var n=r.havingBaseSizing(),i=eV("\\surd",t*n.sizeMultiplier,tV,n),a=n.sizeMultiplier,s=Math.max(0,r.minRuleThickness-r.fontMetrics().sqrtRuleThickness),l,u=0,h=0,f=0,d;return i.type==="small"?(f=1e3+1e3*s+t7,t<1?a=1:t<1.4&&(a=.7),u=(1+s+e7)/a,h=(1+s)/a,l=r7("sqrtMain",u,f,s,r),l.style.minWidth="0.853em",d=.833/a):i.type==="large"?(f=(1e3+t7)*fy[i.size],h=(fy[i.size]+s)/a,u=(fy[i.size]+s+e7)/a,l=r7("sqrtSize"+i.size,u,f,s,r),l.style.minWidth="1.02em",d=1/a):(u=t+s+e7,h=t+s,f=Math.floor(1e3*t+s)+t7,l=r7("sqrtTall",u,f,s,r),l.style.minWidth="0.742em",d=1.056),l.height=h,l.style.height=ve(u),{span:l,advanceWidth:d,ruleWidth:(r.fontMetrics().sqrtRuleThickness+s)*a}},"makeSqrtImage"),ZG=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","\\surd"],E4t=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1"],JG=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],fy=[0,1.2,1.8,2.4,3],C4t=o(function(t,r,n,i,a){if(t==="<"||t==="\\lt"||t==="\u27E8"?t="\\langle":(t===">"||t==="\\gt"||t==="\u27E9")&&(t="\\rangle"),tr.contains(ZG,t)||tr.contains(JG,t))return KG(t,r,!1,n,i,a);if(tr.contains(E4t,t))return QG(t,fy[r],!1,n,i,a);throw new ue("Illegal delimiter: '"+t+"'")},"makeSizedDelim"),S4t=[{type:"small",style:rr.SCRIPTSCRIPT},{type:"small",style:rr.SCRIPT},{type:"small",style:rr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],A4t=[{type:"small",style:rr.SCRIPTSCRIPT},{type:"small",style:rr.SCRIPT},{type:"small",style:rr.TEXT},{type:"stack"}],tV=[{type:"small",style:rr.SCRIPTSCRIPT},{type:"small",style:rr.SCRIPT},{type:"small",style:rr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],_4t=o(function(t){if(t.type==="small")return"Main-Regular";if(t.type==="large")return"Size"+t.size+"-Regular";if(t.type==="stack")return"Size4-Regular";throw new Error("Add support for delim type '"+t.type+"' here.")},"delimTypeToFont"),eV=o(function(t,r,n,i){for(var a=Math.min(2,3-i.style.size),s=a;sr)return n[s]}return n[n.length-1]},"traverseSequence"),rV=o(function(t,r,n,i,a,s){t==="<"||t==="\\lt"||t==="\u27E8"?t="\\langle":(t===">"||t==="\\gt"||t==="\u27E9")&&(t="\\rangle");var l;tr.contains(JG,t)?l=S4t:tr.contains(ZG,t)?l=tV:l=A4t;var u=eV(t,r,l,i);return u.type==="small"?x4t(t,u.style,n,i,a,s):u.type==="large"?KG(t,u.size,n,i,a,s):QG(t,r,n,i,a,s)},"makeCustomSizedDelim"),L4t=o(function(t,r,n,i,a,s){var l=i.fontMetrics().axisHeight*i.sizeMultiplier,u=901,h=5/i.fontMetrics().ptPerEm,f=Math.max(r-l,n+l),d=Math.max(f/500*u,2*f-h);return rV(t,d,!0,i,a,s)},"makeLeftRightDelim"),hu={sqrtImage:k4t,sizedDelim:C4t,sizeToMaxHeight:fy,customSizedDelim:rV,leftRightDelim:L4t},oG={"\\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}},D4t=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27E8","\\rangle","\u27E9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];o(H4,"checkDelimiter");Ce({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:o((e,t)=>{var r=H4(t[0],e);return{type:"delimsizing",mode:e.parser.mode,size:oG[e.funcName].size,mclass:oG[e.funcName].mclass,delim:r.text}},"handler"),htmlBuilder:o((e,t)=>e.delim==="."?Bt.makeSpan([e.mclass]):hu.sizedDelim(e.delim,e.size,t,e.mode,[e.mclass]),"htmlBuilder"),mathmlBuilder:o(e=>{var t=[];e.delim!=="."&&t.push(Ro(e.delim,e.mode));var r=new se.MathNode("mo",t);e.mclass==="mopen"||e.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=ve(hu.sizeToMaxHeight[e.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r},"mathmlBuilder")});o(lG,"assertParsed");Ce({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:o((e,t)=>{var r=e.parser.gullet.macros.get("\\current@color");if(r&&typeof r!="string")throw new ue("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:e.parser.mode,delim:H4(t[0],e).text,color:r}},"handler")});Ce({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:o((e,t)=>{var r=H4(t[0],e),n=e.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=mr(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:i,left:r.text,right:a.delim,rightColor:a.color}},"handler"),htmlBuilder:o((e,t)=>{lG(e);for(var r=Oi(e.body,t,!0,["mopen","mclose"]),n=0,i=0,a=!1,s=0;s{lG(e);var r=bs(e.body,t);if(e.left!=="."){var n=new se.MathNode("mo",[Ro(e.left,e.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(e.right!=="."){var i=new se.MathNode("mo",[Ro(e.right,e.mode)]);i.setAttribute("fence","true"),e.rightColor&&i.setAttribute("mathcolor",e.rightColor),r.push(i)}return T7(r)},"mathmlBuilder")});Ce({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:o((e,t)=>{var r=H4(t[0],e);if(!e.parser.leftrightDepth)throw new ue("\\middle without preceding \\left",r);return{type:"middle",mode:e.parser.mode,delim:r.text}},"handler"),htmlBuilder:o((e,t)=>{var r;if(e.delim===".")r=yy(t,[]);else{r=hu.sizedDelim(e.delim,1,t,e.mode,[]);var n={delim:e.delim,options:t};r.isMiddle=n}return r},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=e.delim==="\\vert"||e.delim==="|"?Ro("|","text"):Ro(e.delim,e.mode),n=new se.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n},"mathmlBuilder")});A7=o((e,t)=>{var r=Bt.wrapFragment(Or(e.body,t),t),n=e.label.slice(1),i=t.sizeMultiplier,a,s=0,l=tr.isCharacterBox(e.body);if(n==="sout")a=Bt.makeSpan(["stretchy","sout"]),a.height=t.fontMetrics().defaultRuleThickness/i,s=-.5*t.fontMetrics().xHeight;else if(n==="phase"){var u=Zn({number:.6,unit:"pt"},t),h=Zn({number:.35,unit:"ex"},t),f=t.havingBaseSizing();i=i/f.sizeMultiplier;var d=r.height+r.depth+u+h;r.style.paddingLeft=ve(d/2+u);var p=Math.floor(1e3*d*i),m=Cbt(p),g=new dl([new sc("phase",m)],{width:"400em",height:ve(p/1e3),viewBox:"0 0 400000 "+p,preserveAspectRatio:"xMinYMin slice"});a=Bt.makeSvgSpan(["hide-tail"],[g],t),a.style.height=ve(d),s=r.depth+u+h}else{/cancel/.test(n)?l||r.classes.push("cancel-pad"):n==="angl"?r.classes.push("anglpad"):r.classes.push("boxpad");var y=0,v=0,x=0;/box/.test(n)?(x=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness),y=t.fontMetrics().fboxsep+(n==="colorbox"?0:x),v=y):n==="angl"?(x=Math.max(t.fontMetrics().defaultRuleThickness,t.minRuleThickness),y=4*x,v=Math.max(0,.25-r.depth)):(y=l?.2:0,v=y),a=du.encloseSpan(r,n,y,v,t),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=ve(x)):n==="angl"&&x!==.049&&(a.style.borderTopWidth=ve(x),a.style.borderRightWidth=ve(x)),s=r.depth+v,e.backgroundColor&&(a.style.backgroundColor=e.backgroundColor,e.borderColor&&(a.style.borderColor=e.borderColor))}var b;if(e.backgroundColor)b=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:a,shift:s},{type:"elem",elem:r,shift:0}]},t);else{var w=/cancel|phase/.test(n)?["svg-align"]:[];b=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:0},{type:"elem",elem:a,shift:s,wrapperClasses:w}]},t)}return/cancel/.test(n)&&(b.height=r.height,b.depth=r.depth),/cancel/.test(n)&&!l?Bt.makeSpan(["mord","cancel-lap"],[b],t):Bt.makeSpan(["mord"],[b],t)},"htmlBuilder$7"),_7=o((e,t)=>{var r=0,n=new se.MathNode(e.label.indexOf("colorbox")>-1?"mpadded":"menclose",[yn(e.body,t)]);switch(e.label){case"\\cancel":n.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":n.setAttribute("notation","downdiagonalstrike");break;case"\\phase":n.setAttribute("notation","phasorangle");break;case"\\sout":n.setAttribute("notation","horizontalstrike");break;case"\\fbox":n.setAttribute("notation","box");break;case"\\angl":n.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=t.fontMetrics().fboxsep*t.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),e.label==="\\fcolorbox"){var i=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness);n.setAttribute("style","border: "+i+"em solid "+String(e.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return e.backgroundColor&&n.setAttribute("mathbackground",e.backgroundColor),n},"mathmlBuilder$6");Ce({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(e,t,r){var{parser:n,funcName:i}=e,a=mr(t[0],"color-token").color,s=t[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:s}},htmlBuilder:A7,mathmlBuilder:_7});Ce({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(e,t,r){var{parser:n,funcName:i}=e,a=mr(t[0],"color-token").color,s=mr(t[1],"color-token").color,l=t[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:s,borderColor:a,body:l}},htmlBuilder:A7,mathmlBuilder:_7});Ce({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(e,t){var{parser:r}=e;return{type:"enclose",mode:r.mode,label:"\\fbox",body:t[0]}}});Ce({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(e,t){var{parser:r,funcName:n}=e,i=t[0];return{type:"enclose",mode:r.mode,label:n,body:i}},htmlBuilder:A7,mathmlBuilder:_7});Ce({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(e,t){var{parser:r}=e;return{type:"enclose",mode:r.mode,label:"\\angl",body:t[0]}}});nV={};o(oc,"defineEnvironment");iV={};o(lt,"defineMacro");o(cG,"getHLines");W4=o(e=>{var t=e.parser.settings;if(!t.displayMode)throw new ue("{"+e.envName+"} can be used only in display mode.")},"validateAmsEnvironmentContext");o(L7,"getAutoTag");o(gh,"parseArray");o(D7,"dCellStyle");lc=o(function(t,r){var n,i,a=t.body.length,s=t.hLinesBeforeRow,l=0,u=new Array(a),h=[],f=Math.max(r.fontMetrics().arrayRuleWidth,r.minRuleThickness),d=1/r.fontMetrics().ptPerEm,p=5*d;if(t.colSeparationType&&t.colSeparationType==="small"){var m=r.havingStyle(rr.SCRIPT).sizeMultiplier;p=.2778*(m/r.sizeMultiplier)}var g=t.colSeparationType==="CD"?Zn({number:3,unit:"ex"},r):12*d,y=3*d,v=t.arraystretch*g,x=.7*v,b=.3*v,w=0;function S(wt){for(var Ot=0;Ot0&&(w+=.25),h.push({pos:w,isDashed:wt[Ot]})}for(o(S,"setHLinePos"),S(s[0]),n=0;n0&&(N+=b,_wt))for(n=0;n=l)){var J=void 0;(i>0||t.hskipBeforeAndAfter)&&(J=tr.deflt(W.pregap,p),J!==0&&(O=Bt.makeSpan(["arraycolsep"],[]),O.style.width=ve(J),C.push(O)));var Z=[];for(n=0;n0){for(var ot=Bt.makeLineSpan("hline",r,f),ct=Bt.makeLineSpan("hdashline",r,f),ut=[{type:"elem",elem:u,shift:0}];h.length>0;){var et=h.pop(),Mt=et.pos-k;et.isDashed?ut.push({type:"elem",elem:ct,shift:Mt}):ut.push({type:"elem",elem:ot,shift:Mt})}u=Bt.makeVList({positionType:"individualShift",children:ut},r)}if(P.length===0)return Bt.makeSpan(["mord"],[u],r);var it=Bt.makeVList({positionType:"individualShift",children:P},r);return it=Bt.makeSpan(["tag"],[it],r),Bt.makeFragment([u,it])},"htmlBuilder"),R4t={c:"center ",l:"left ",r:"right "},cc=o(function(t,r){for(var n=[],i=new se.MathNode("mtd",[],["mtr-glue"]),a=new se.MathNode("mtd",[],["mml-eqn-num"]),s=0;s0){var g=t.cols,y="",v=!1,x=0,b=g.length;g[0].type==="separator"&&(p+="top ",x=1),g[g.length-1].type==="separator"&&(p+="bottom ",b-=1);for(var w=x;w0?"left ":"",p+=A[A.length-1].length>0?"right ":"";for(var L=1;L-1?"alignat":"align",a=t.envName==="split",s=gh(t.parser,{cols:n,addJot:!0,autoTag:a?void 0:L7(t.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:a?2:void 0,leqno:t.parser.settings.leqno},"display"),l,u=0,h={type:"ordgroup",mode:t.mode,body:[]};if(r[0]&&r[0].type==="ordgroup"){for(var f="",d=0;d0&&m&&(v=1),n[g]={type:"align",align:y,pregap:v,postgap:0}}return s.colSeparationType=m?"align":"alignat",s},"alignedHandler");oc({type:"array",names:["array","darray"],props:{numArgs:1},handler(e,t){var r=V4(t[0]),n=r?[t[0]]:mr(t[0],"ordgroup").body,i=n.map(function(s){var l=E7(s),u=l.text;if("lcr".indexOf(u)!==-1)return{type:"align",align:u};if(u==="|")return{type:"separator",separator:"|"};if(u===":")return{type:"separator",separator:":"};throw new ue("Unknown column alignment: "+u,s)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return gh(e.parser,a,D7(e.envName))},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(e){var t={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[e.envName.replace("*","")],r="c",n={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if(e.envName.charAt(e.envName.length-1)==="*"){var i=e.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,"lcr".indexOf(r)===-1)throw new ue("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=gh(e.parser,n,D7(e.envName)),s=Math.max(0,...a.body.map(l=>l.length));return a.cols=new Array(s).fill({type:"align",align:r}),t?{type:"leftright",mode:e.mode,body:[a],left:t[0],right:t[1],rightColor:void 0}:a},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(e){var t={arraystretch:.5},r=gh(e.parser,t,"script");return r.colSeparationType="small",r},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["subarray"],props:{numArgs:1},handler(e,t){var r=V4(t[0]),n=r?[t[0]]:mr(t[0],"ordgroup").body,i=n.map(function(s){var l=E7(s),u=l.text;if("lc".indexOf(u)!==-1)return{type:"align",align:u};throw new ue("Unknown column alignment: "+u,s)});if(i.length>1)throw new ue("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5};if(a=gh(e.parser,a,"script"),a.body.length>0&&a.body[0].length>1)throw new ue("{subarray} can contain only one column");return a},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(e){var t={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},r=gh(e.parser,t,D7(e.envName));return{type:"leftright",mode:e.mode,body:[r],left:e.envName.indexOf("r")>-1?".":"\\{",right:e.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:aV,htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(e){tr.contains(["gather","gather*"],e.envName)&&W4(e);var t={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:L7(e.envName),emptySingleRow:!0,leqno:e.parser.settings.leqno};return gh(e.parser,t,"display")},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:aV,htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(e){W4(e);var t={autoTag:L7(e.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:e.parser.settings.leqno};return gh(e.parser,t,"display")},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["CD"],props:{numArgs:0},handler(e){return W4(e),y4t(e.parser)},htmlBuilder:lc,mathmlBuilder:cc});lt("\\nonumber","\\gdef\\@eqnsw{0}");lt("\\notag","\\nonumber");Ce({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(e,t){throw new ue(e.funcName+" valid only within array environment")}});uG=nV;Ce({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(e,t){var{parser:r,funcName:n}=e,i=t[0];if(i.type!=="ordgroup")throw new ue("Invalid environment name",i);for(var a="",s=0;s{var r=e.font,n=t.withFont(r);return Or(e.body,n)},"htmlBuilder$5"),oV=o((e,t)=>{var r=e.font,n=t.withFont(r);return yn(e.body,n)},"mathmlBuilder$4"),hG={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};Ce({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=B4(t[0]),a=n;return a in hG&&(a=hG[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},"handler"),htmlBuilder:sV,mathmlBuilder:oV});Ce({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:o((e,t)=>{var{parser:r}=e,n=t[0],i=tr.isCharacterBox(n);return{type:"mclass",mode:r.mode,mclass:U4(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:i}},"handler")});Ce({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:o((e,t)=>{var{parser:r,funcName:n,breakOnTokenText:i}=e,{mode:a}=r,s=r.parseExpression(!0,i),l="math"+n.slice(1);return{type:"font",mode:a,font:l,body:{type:"ordgroup",mode:r.mode,body:s}}},"handler"),htmlBuilder:sV,mathmlBuilder:oV});lV=o((e,t)=>{var r=t;return e==="display"?r=r.id>=rr.SCRIPT.id?r.text():rr.DISPLAY:e==="text"&&r.size===rr.DISPLAY.size?r=rr.TEXT:e==="script"?r=rr.SCRIPT:e==="scriptscript"&&(r=rr.SCRIPTSCRIPT),r},"adjustStyle"),R7=o((e,t)=>{var r=lV(e.size,t.style),n=r.fracNum(),i=r.fracDen(),a;a=t.havingStyle(n);var s=Or(e.numer,a,t);if(e.continued){var l=8.5/t.fontMetrics().ptPerEm,u=3.5/t.fontMetrics().ptPerEm;s.height=s.height0?g=3*p:g=7*p,y=t.fontMetrics().denom1):(d>0?(m=t.fontMetrics().num2,g=p):(m=t.fontMetrics().num3,g=3*p),y=t.fontMetrics().denom2);var v;if(f){var b=t.fontMetrics().axisHeight;m-s.depth-(b+.5*d){var r=new se.MathNode("mfrac",[yn(e.numer,t),yn(e.denom,t)]);if(!e.hasBarLine)r.setAttribute("linethickness","0px");else if(e.barSize){var n=Zn(e.barSize,t);r.setAttribute("linethickness",ve(n))}var i=lV(e.size,t.style);if(i.size!==t.style.size){r=new se.MathNode("mstyle",[r]);var a=i.size===rr.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",a),r.setAttribute("scriptlevel","0")}if(e.leftDelim!=null||e.rightDelim!=null){var s=[];if(e.leftDelim!=null){var l=new se.MathNode("mo",[new se.TextNode(e.leftDelim.replace("\\",""))]);l.setAttribute("fence","true"),s.push(l)}if(s.push(r),e.rightDelim!=null){var u=new se.MathNode("mo",[new se.TextNode(e.rightDelim.replace("\\",""))]);u.setAttribute("fence","true"),s.push(u)}return T7(s)}return r},"mathmlBuilder$3");Ce({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0],a=t[1],s,l=null,u=null,h="auto";switch(n){case"\\dfrac":case"\\frac":case"\\tfrac":s=!0;break;case"\\\\atopfrac":s=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":s=!1,l="(",u=")";break;case"\\\\bracefrac":s=!1,l="\\{",u="\\}";break;case"\\\\brackfrac":s=!1,l="[",u="]";break;default:throw new Error("Unrecognized genfrac command")}switch(n){case"\\dfrac":case"\\dbinom":h="display";break;case"\\tfrac":case"\\tbinom":h="text";break}return{type:"genfrac",mode:r.mode,continued:!1,numer:i,denom:a,hasBarLine:s,leftDelim:l,rightDelim:u,size:h,barSize:null}},"handler"),htmlBuilder:R7,mathmlBuilder:N7});Ce({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0],a=t[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:i,denom:a,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}},"handler")});Ce({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(e){var{parser:t,funcName:r,token:n}=e,i;switch(r){case"\\over":i="\\frac";break;case"\\choose":i="\\binom";break;case"\\atop":i="\\\\atopfrac";break;case"\\brace":i="\\\\bracefrac";break;case"\\brack":i="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:t.mode,replaceWith:i,token:n}}});fG=["display","text","script","scriptscript"],dG=o(function(t){var r=null;return t.length>0&&(r=t,r=r==="."?null:r),r},"delimFromValue");Ce({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(e,t){var{parser:r}=e,n=t[4],i=t[5],a=B4(t[0]),s=a.type==="atom"&&a.family==="open"?dG(a.text):null,l=B4(t[1]),u=l.type==="atom"&&l.family==="close"?dG(l.text):null,h=mr(t[2],"size"),f,d=null;h.isBlank?f=!0:(d=h.value,f=d.number>0);var p="auto",m=t[3];if(m.type==="ordgroup"){if(m.body.length>0){var g=mr(m.body[0],"textord");p=fG[Number(g.text)]}}else m=mr(m,"textord"),p=fG[Number(m.text)];return{type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:f,barSize:d,leftDelim:s,rightDelim:u,size:p}},htmlBuilder:R7,mathmlBuilder:N7});Ce({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(e,t){var{parser:r,funcName:n,token:i}=e;return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:mr(t[0],"size").value,token:i}}});Ce({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0],a=ubt(mr(t[1],"infix").size),s=t[2],l=a.number>0;return{type:"genfrac",mode:r.mode,numer:i,denom:s,continued:!1,hasBarLine:l,barSize:a,leftDelim:null,rightDelim:null,size:"auto"}},"handler"),htmlBuilder:R7,mathmlBuilder:N7});cV=o((e,t)=>{var r=t.style,n,i;e.type==="supsub"?(n=e.sup?Or(e.sup,t.havingStyle(r.sup()),t):Or(e.sub,t.havingStyle(r.sub()),t),i=mr(e.base,"horizBrace")):i=mr(e,"horizBrace");var a=Or(i.base,t.havingBaseStyle(rr.DISPLAY)),s=du.svgSpan(i,t),l;if(i.isOver?(l=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:.1},{type:"elem",elem:s}]},t),l.children[0].children[0].children[1].classes.push("svg-align")):(l=Bt.makeVList({positionType:"bottom",positionData:a.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:a}]},t),l.children[0].children[0].children[0].classes.push("svg-align")),n){var u=Bt.makeSpan(["mord",i.isOver?"mover":"munder"],[l],t);i.isOver?l=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:.2},{type:"elem",elem:n}]},t):l=Bt.makeVList({positionType:"bottom",positionData:u.depth+.2+n.height+n.depth,children:[{type:"elem",elem:n},{type:"kern",size:.2},{type:"elem",elem:u}]},t)}return Bt.makeSpan(["mord",i.isOver?"mover":"munder"],[l],t)},"htmlBuilder$3"),N4t=o((e,t)=>{var r=du.mathMLnode(e.label);return new se.MathNode(e.isOver?"mover":"munder",[yn(e.base,t),r])},"mathmlBuilder$2");Ce({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(e,t){var{parser:r,funcName:n}=e;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:t[0]}},htmlBuilder:cV,mathmlBuilder:N4t});Ce({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[1],i=mr(t[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:mi(n)}:r.formatUnsupportedCmd("\\href")},"handler"),htmlBuilder:o((e,t)=>{var r=Oi(e.body,t,!1);return Bt.makeAnchor(e.href,[],r,t)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=mh(e.body,t);return r instanceof vs||(r=new vs("mrow",[r])),r.setAttribute("href",e.href),r},"mathmlBuilder")});Ce({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=mr(t[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var i=[],a=0;a{var{parser:r,funcName:n,token:i}=e,a=mr(t[0],"raw").string,s=t[1];r.settings.strict&&r.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var l,u={};switch(n){case"\\htmlClass":u.class=a,l={command:"\\htmlClass",class:a};break;case"\\htmlId":u.id=a,l={command:"\\htmlId",id:a};break;case"\\htmlStyle":u.style=a,l={command:"\\htmlStyle",style:a};break;case"\\htmlData":{for(var h=a.split(","),f=0;f{var r=Oi(e.body,t,!1),n=["enclosing"];e.attributes.class&&n.push(...e.attributes.class.trim().split(/\s+/));var i=Bt.makeSpan(n,r,t);for(var a in e.attributes)a!=="class"&&e.attributes.hasOwnProperty(a)&&i.setAttribute(a,e.attributes[a]);return i},"htmlBuilder"),mathmlBuilder:o((e,t)=>mh(e.body,t),"mathmlBuilder")});Ce({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e;return{type:"htmlmathml",mode:r.mode,html:mi(t[0]),mathml:mi(t[1])}},"handler"),htmlBuilder:o((e,t)=>{var r=Oi(e.html,t,!1);return Bt.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((e,t)=>mh(e.mathml,t),"mathmlBuilder")});n7=o(function(t){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(t))return{number:+t,unit:"bp"};var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(t);if(!r)throw new ue("Invalid size: '"+t+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!_G(n))throw new ue("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n},"sizeData");Ce({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:o((e,t,r)=>{var{parser:n}=e,i={number:0,unit:"em"},a={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(r[0])for(var u=mr(r[0],"raw").string,h=u.split(","),f=0;f{var r=Zn(e.height,t),n=0;e.totalheight.number>0&&(n=Zn(e.totalheight,t)-r);var i=0;e.width.number>0&&(i=Zn(e.width,t));var a={height:ve(r+n)};i>0&&(a.width=ve(i)),n>0&&(a.verticalAlign=ve(-n));var s=new c7(e.src,e.alt,a);return s.height=r,s.depth=n,s},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=new se.MathNode("mglyph",[]);r.setAttribute("alt",e.alt);var n=Zn(e.height,t),i=0;if(e.totalheight.number>0&&(i=Zn(e.totalheight,t)-n,r.setAttribute("valign",ve(-i))),r.setAttribute("height",ve(n+i)),e.width.number>0){var a=Zn(e.width,t);r.setAttribute("width",ve(a))}return r.setAttribute("src",e.src),r},"mathmlBuilder")});Ce({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(e,t){var{parser:r,funcName:n}=e,i=mr(t[0],"size");if(r.settings.strict){var a=n[1]==="m",s=i.value.unit==="mu";a?(s||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" supports only mu units, "+("not "+i.value.unit+" units")),r.mode!=="math"&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" works only in math mode")):s&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:i.value}},htmlBuilder(e,t){return Bt.makeGlue(e.dimension,t)},mathmlBuilder(e,t){var r=Zn(e.dimension,t);return new se.SpaceNode(r)}});Ce({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:i}},"handler"),htmlBuilder:o((e,t)=>{var r;e.alignment==="clap"?(r=Bt.makeSpan([],[Or(e.body,t)]),r=Bt.makeSpan(["inner"],[r],t)):r=Bt.makeSpan(["inner"],[Or(e.body,t)]);var n=Bt.makeSpan(["fix"],[]),i=Bt.makeSpan([e.alignment],[r,n],t),a=Bt.makeSpan(["strut"]);return a.style.height=ve(i.height+i.depth),i.depth&&(a.style.verticalAlign=ve(-i.depth)),i.children.unshift(a),i=Bt.makeSpan(["thinbox"],[i],t),Bt.makeSpan(["mord","vbox"],[i],t)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=new se.MathNode("mpadded",[yn(e.body,t)]);if(e.alignment!=="rlap"){var n=e.alignment==="llap"?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r},"mathmlBuilder")});Ce({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(e,t){var{funcName:r,parser:n}=e,i=n.mode;n.switchMode("math");var a=r==="\\("?"\\)":"$",s=n.parseExpression(!1,a);return n.expect(a),n.switchMode(i),{type:"styling",mode:n.mode,style:"text",body:s}}});Ce({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(e,t){throw new ue("Mismatched "+e.funcName)}});pG=o((e,t)=>{switch(t.style.size){case rr.DISPLAY.size:return e.display;case rr.TEXT.size:return e.text;case rr.SCRIPT.size:return e.script;case rr.SCRIPTSCRIPT.size:return e.scriptscript;default:return e.text}},"chooseMathStyle");Ce({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:o((e,t)=>{var{parser:r}=e;return{type:"mathchoice",mode:r.mode,display:mi(t[0]),text:mi(t[1]),script:mi(t[2]),scriptscript:mi(t[3])}},"handler"),htmlBuilder:o((e,t)=>{var r=pG(e,t),n=Oi(r,t,!1);return Bt.makeFragment(n)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=pG(e,t);return mh(r,t)},"mathmlBuilder")});uV=o((e,t,r,n,i,a,s)=>{e=Bt.makeSpan([],[e]);var l=r&&tr.isCharacterBox(r),u,h;if(t){var f=Or(t,n.havingStyle(i.sup()),n);h={elem:f,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-f.depth)}}if(r){var d=Or(r,n.havingStyle(i.sub()),n);u={elem:d,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-d.height)}}var p;if(h&&u){var m=n.fontMetrics().bigOpSpacing5+u.elem.height+u.elem.depth+u.kern+e.depth+s;p=Bt.makeVList({positionType:"bottom",positionData:m,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:ve(-a)},{type:"kern",size:u.kern},{type:"elem",elem:e},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:ve(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(u){var g=e.height-s;p=Bt.makeVList({positionType:"top",positionData:g,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:ve(-a)},{type:"kern",size:u.kern},{type:"elem",elem:e}]},n)}else if(h){var y=e.depth+s;p=Bt.makeVList({positionType:"bottom",positionData:y,children:[{type:"elem",elem:e},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:ve(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else return e;var v=[p];if(u&&a!==0&&!l){var x=Bt.makeSpan(["mspace"],[],n);x.style.marginRight=ve(a),v.unshift(x)}return Bt.makeSpan(["mop","op-limits"],v,n)},"assembleSupSub"),hV=["\\smallint"],Ap=o((e,t)=>{var r,n,i=!1,a;e.type==="supsub"?(r=e.sup,n=e.sub,a=mr(e.base,"op"),i=!0):a=mr(e,"op");var s=t.style,l=!1;s.size===rr.DISPLAY.size&&a.symbol&&!tr.contains(hV,a.name)&&(l=!0);var u;if(a.symbol){var h=l?"Size2-Regular":"Size1-Regular",f="";if((a.name==="\\oiint"||a.name==="\\oiiint")&&(f=a.name.slice(1),a.name=f==="oiint"?"\\iint":"\\iiint"),u=Bt.makeSymbol(a.name,h,"math",t,["mop","op-symbol",l?"large-op":"small-op"]),f.length>0){var d=u.italic,p=Bt.staticSvg(f+"Size"+(l?"2":"1"),t);u=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:u,shift:0},{type:"elem",elem:p,shift:l?.08:0}]},t),a.name="\\"+f,u.classes.unshift("mop"),u.italic=d}}else if(a.body){var m=Oi(a.body,t,!0);m.length===1&&m[0]instanceof xs?(u=m[0],u.classes[0]="mop"):u=Bt.makeSpan(["mop"],m,t)}else{for(var g=[],y=1;y{var r;if(e.symbol)r=new vs("mo",[Ro(e.name,e.mode)]),tr.contains(hV,e.name)&&r.setAttribute("largeop","false");else if(e.body)r=new vs("mo",bs(e.body,t));else{r=new vs("mi",[new Zf(e.name.slice(1))]);var n=new vs("mo",[Ro("\u2061","text")]);e.parentIsSupSub?r=new vs("mrow",[r,n]):r=zG([r,n])}return r},"mathmlBuilder$1"),M4t={"\u220F":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22C0":"\\bigwedge","\u22C1":"\\bigvee","\u22C2":"\\bigcap","\u22C3":"\\bigcup","\u2A00":"\\bigodot","\u2A01":"\\bigoplus","\u2A02":"\\bigotimes","\u2A04":"\\biguplus","\u2A06":"\\bigsqcup"};Ce({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","\u220F","\u2210","\u2211","\u22C0","\u22C1","\u22C2","\u22C3","\u2A00","\u2A01","\u2A02","\u2A04","\u2A06"],props:{numArgs:0},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=n;return i.length===1&&(i=M4t[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},"handler"),htmlBuilder:Ap,mathmlBuilder:vy});Ce({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:mi(n)}},"handler"),htmlBuilder:Ap,mathmlBuilder:vy});I4t={"\u222B":"\\int","\u222C":"\\iint","\u222D":"\\iiint","\u222E":"\\oint","\u222F":"\\oiint","\u2230":"\\oiiint"};Ce({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(e){var{parser:t,funcName:r}=e;return{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:Ap,mathmlBuilder:vy});Ce({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(e){var{parser:t,funcName:r}=e;return{type:"op",mode:t.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:Ap,mathmlBuilder:vy});Ce({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222B","\u222C","\u222D","\u222E","\u222F","\u2230"],props:{numArgs:0},handler(e){var{parser:t,funcName:r}=e,n=r;return n.length===1&&(n=I4t[n]),{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:Ap,mathmlBuilder:vy});fV=o((e,t)=>{var r,n,i=!1,a;e.type==="supsub"?(r=e.sup,n=e.sub,a=mr(e.base,"operatorname"),i=!0):a=mr(e,"operatorname");var s;if(a.body.length>0){for(var l=a.body.map(d=>{var p=d.text;return typeof p=="string"?{type:"textord",mode:d.mode,text:p}:d}),u=Oi(l,t.withFont("mathrm"),!0),h=0;h{for(var r=bs(e.body,t.withFont("mathrm")),n=!0,i=0;if.toText()).join("");r=[new se.TextNode(l)]}var u=new se.MathNode("mi",r);u.setAttribute("mathvariant","normal");var h=new se.MathNode("mo",[Ro("\u2061","text")]);return e.parentIsSupSub?new se.MathNode("mrow",[u,h]):se.newDocumentFragment([u,h])},"mathmlBuilder");Ce({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0];return{type:"operatorname",mode:r.mode,body:mi(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},"handler"),htmlBuilder:fV,mathmlBuilder:O4t});lt("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");ed({type:"ordgroup",htmlBuilder(e,t){return e.semisimple?Bt.makeFragment(Oi(e.body,t,!1)):Bt.makeSpan(["mord"],Oi(e.body,t,!0),t)},mathmlBuilder(e,t){return mh(e.body,t,!0)}});Ce({type:"overline",names:["\\overline"],props:{numArgs:1},handler(e,t){var{parser:r}=e,n=t[0];return{type:"overline",mode:r.mode,body:n}},htmlBuilder(e,t){var r=Or(e.body,t.havingCrampedStyle()),n=Bt.makeLineSpan("overline-line",t),i=t.fontMetrics().defaultRuleThickness,a=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]},t);return Bt.makeSpan(["mord","overline"],[a],t)},mathmlBuilder(e,t){var r=new se.MathNode("mo",[new se.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new se.MathNode("mover",[yn(e.body,t),r]);return n.setAttribute("accent","true"),n}});Ce({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[0];return{type:"phantom",mode:r.mode,body:mi(n)}},"handler"),htmlBuilder:o((e,t)=>{var r=Oi(e.body,t.withPhantom(),!1);return Bt.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=bs(e.body,t);return new se.MathNode("mphantom",r)},"mathmlBuilder")});Ce({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[0];return{type:"hphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((e,t)=>{var r=Bt.makeSpan([],[Or(e.body,t.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n{var r=bs(mi(e.body),t),n=new se.MathNode("mphantom",r),i=new se.MathNode("mpadded",[n]);return i.setAttribute("height","0px"),i.setAttribute("depth","0px"),i},"mathmlBuilder")});Ce({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[0];return{type:"vphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((e,t)=>{var r=Bt.makeSpan(["inner"],[Or(e.body,t.withPhantom())]),n=Bt.makeSpan(["fix"],[]);return Bt.makeSpan(["mord","rlap"],[r,n],t)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=bs(mi(e.body),t),n=new se.MathNode("mphantom",r),i=new se.MathNode("mpadded",[n]);return i.setAttribute("width","0px"),i},"mathmlBuilder")});Ce({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(e,t){var{parser:r}=e,n=mr(t[0],"size").value,i=t[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(e,t){var r=Or(e.body,t),n=Zn(e.dy,t);return Bt.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},t)},mathmlBuilder(e,t){var r=new se.MathNode("mpadded",[yn(e.body,t)]),n=e.dy.number+e.dy.unit;return r.setAttribute("voffset",n),r}});Ce({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler(e){var{parser:t}=e;return{type:"internal",mode:t.mode}}});Ce({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,argTypes:["size","size","size"]},handler(e,t,r){var{parser:n}=e,i=r[0],a=mr(t[0],"size"),s=mr(t[1],"size");return{type:"rule",mode:n.mode,shift:i&&mr(i,"size").value,width:a.value,height:s.value}},htmlBuilder(e,t){var r=Bt.makeSpan(["mord","rule"],[],t),n=Zn(e.width,t),i=Zn(e.height,t),a=e.shift?Zn(e.shift,t):0;return r.style.borderRightWidth=ve(n),r.style.borderTopWidth=ve(i),r.style.bottom=ve(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*t.sizeMultiplier,r},mathmlBuilder(e,t){var r=Zn(e.width,t),n=Zn(e.height,t),i=e.shift?Zn(e.shift,t):0,a=t.color&&t.getColor()||"black",s=new se.MathNode("mspace");s.setAttribute("mathbackground",a),s.setAttribute("width",ve(r)),s.setAttribute("height",ve(n));var l=new se.MathNode("mpadded",[s]);return i>=0?l.setAttribute("height",ve(i)):(l.setAttribute("height",ve(i)),l.setAttribute("depth",ve(-i))),l.setAttribute("voffset",ve(i)),l}});o(dV,"sizingGroup");mG=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],P4t=o((e,t)=>{var r=t.havingSize(e.size);return dV(e.body,r,t)},"htmlBuilder");Ce({type:"sizing",names:mG,props:{numArgs:0,allowedInText:!0},handler:o((e,t)=>{var{breakOnTokenText:r,funcName:n,parser:i}=e,a=i.parseExpression(!1,r);return{type:"sizing",mode:i.mode,size:mG.indexOf(n)+1,body:a}},"handler"),htmlBuilder:P4t,mathmlBuilder:o((e,t)=>{var r=t.havingSize(e.size),n=bs(e.body,r),i=new se.MathNode("mstyle",n);return i.setAttribute("mathsize",ve(r.sizeMultiplier)),i},"mathmlBuilder")});Ce({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:o((e,t,r)=>{var{parser:n}=e,i=!1,a=!1,s=r[0]&&mr(r[0],"ordgroup");if(s)for(var l="",u=0;u{var r=Bt.makeSpan([],[Or(e.body,t)]);if(!e.smashHeight&&!e.smashDepth)return r;if(e.smashHeight&&(r.height=0,r.children))for(var n=0;n{var r=new se.MathNode("mpadded",[yn(e.body,t)]);return e.smashHeight&&r.setAttribute("height","0px"),e.smashDepth&&r.setAttribute("depth","0px"),r},"mathmlBuilder")});Ce({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(e,t,r){var{parser:n}=e,i=r[0],a=t[0];return{type:"sqrt",mode:n.mode,body:a,index:i}},htmlBuilder(e,t){var r=Or(e.body,t.havingCrampedStyle());r.height===0&&(r.height=t.fontMetrics().xHeight),r=Bt.wrapFragment(r,t);var n=t.fontMetrics(),i=n.defaultRuleThickness,a=i;t.style.idr.height+r.depth+s&&(s=(s+d-r.height-r.depth)/2);var p=u.height-r.height-s-h;r.style.paddingLeft=ve(f);var m=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+p)},{type:"elem",elem:u},{type:"kern",size:h}]},t);if(e.index){var g=t.havingStyle(rr.SCRIPTSCRIPT),y=Or(e.index,g,t),v=.6*(m.height-m.depth),x=Bt.makeVList({positionType:"shift",positionData:-v,children:[{type:"elem",elem:y}]},t),b=Bt.makeSpan(["root"],[x]);return Bt.makeSpan(["mord","sqrt"],[b,m],t)}else return Bt.makeSpan(["mord","sqrt"],[m],t)},mathmlBuilder(e,t){var{body:r,index:n}=e;return n?new se.MathNode("mroot",[yn(r,t),yn(n,t)]):new se.MathNode("msqrt",[yn(r,t)])}});gG={display:rr.DISPLAY,text:rr.TEXT,script:rr.SCRIPT,scriptscript:rr.SCRIPTSCRIPT};Ce({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e,t){var{breakOnTokenText:r,funcName:n,parser:i}=e,a=i.parseExpression(!0,r),s=n.slice(1,n.length-5);return{type:"styling",mode:i.mode,style:s,body:a}},htmlBuilder(e,t){var r=gG[e.style],n=t.havingStyle(r).withFont("");return dV(e.body,n,t)},mathmlBuilder(e,t){var r=gG[e.style],n=t.havingStyle(r),i=bs(e.body,n),a=new se.MathNode("mstyle",i),s={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},l=s[e.style];return a.setAttribute("scriptlevel",l[0]),a.setAttribute("displaystyle",l[1]),a}});B4t=o(function(t,r){var n=t.base;if(n)if(n.type==="op"){var i=n.limits&&(r.style.size===rr.DISPLAY.size||n.alwaysHandleSupSub);return i?Ap:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===rr.DISPLAY.size||n.limits);return a?fV:null}else{if(n.type==="accent")return tr.isCharacterBox(n.base)?C7:null;if(n.type==="horizBrace"){var s=!t.sub;return s===n.isOver?cV:null}else return null}else return null},"htmlBuilderDelegate");ed({type:"supsub",htmlBuilder(e,t){var r=B4t(e,t);if(r)return r(e,t);var{base:n,sup:i,sub:a}=e,s=Or(n,t),l,u,h=t.fontMetrics(),f=0,d=0,p=n&&tr.isCharacterBox(n);if(i){var m=t.havingStyle(t.style.sup());l=Or(i,m,t),p||(f=s.height-m.fontMetrics().supDrop*m.sizeMultiplier/t.sizeMultiplier)}if(a){var g=t.havingStyle(t.style.sub());u=Or(a,g,t),p||(d=s.depth+g.fontMetrics().subDrop*g.sizeMultiplier/t.sizeMultiplier)}var y;t.style===rr.DISPLAY?y=h.sup1:t.style.cramped?y=h.sup3:y=h.sup2;var v=t.sizeMultiplier,x=ve(.5/h.ptPerEm/v),b=null;if(u){var w=e.base&&e.base.type==="op"&&e.base.name&&(e.base.name==="\\oiint"||e.base.name==="\\oiiint");(s instanceof xs||w)&&(b=ve(-s.italic))}var S;if(l&&u){f=Math.max(f,y,l.depth+.25*h.xHeight),d=Math.max(d,h.sub2);var T=h.defaultRuleThickness,E=4*T;if(f-l.depth-(u.height-d)0&&(f+=_,d-=_)}var A=[{type:"elem",elem:u,shift:d,marginRight:x,marginLeft:b},{type:"elem",elem:l,shift:-f,marginRight:x}];S=Bt.makeVList({positionType:"individualShift",children:A},t)}else if(u){d=Math.max(d,h.sub1,u.height-.8*h.xHeight);var L=[{type:"elem",elem:u,marginLeft:b,marginRight:x}];S=Bt.makeVList({positionType:"shift",positionData:d,children:L},t)}else if(l)f=Math.max(f,y,l.depth+.25*h.xHeight),S=Bt.makeVList({positionType:"shift",positionData:-f,children:[{type:"elem",elem:l,marginRight:x}]},t);else throw new Error("supsub must have either sup or sub.");var M=h7(s,"right")||"mord";return Bt.makeSpan([M],[s,Bt.makeSpan(["msupsub"],[S])],t)},mathmlBuilder(e,t){var r=!1,n,i;e.base&&e.base.type==="horizBrace"&&(i=!!e.sup,i===e.base.isOver&&(r=!0,n=e.base.isOver)),e.base&&(e.base.type==="op"||e.base.type==="operatorname")&&(e.base.parentIsSupSub=!0);var a=[yn(e.base,t)];e.sub&&a.push(yn(e.sub,t)),e.sup&&a.push(yn(e.sup,t));var s;if(r)s=n?"mover":"munder";else if(e.sub)if(e.sup){var h=e.base;h&&h.type==="op"&&h.limits&&t.style===rr.DISPLAY||h&&h.type==="operatorname"&&h.alwaysHandleSupSub&&(t.style===rr.DISPLAY||h.limits)?s="munderover":s="msubsup"}else{var u=e.base;u&&u.type==="op"&&u.limits&&(t.style===rr.DISPLAY||u.alwaysHandleSupSub)||u&&u.type==="operatorname"&&u.alwaysHandleSupSub&&(u.limits||t.style===rr.DISPLAY)?s="munder":s="msub"}else{var l=e.base;l&&l.type==="op"&&l.limits&&(t.style===rr.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||t.style===rr.DISPLAY)?s="mover":s="msup"}return new se.MathNode(s,a)}});ed({type:"atom",htmlBuilder(e,t){return Bt.mathsym(e.text,e.mode,t,["m"+e.family])},mathmlBuilder(e,t){var r=new se.MathNode("mo",[Ro(e.text,e.mode)]);if(e.family==="bin"){var n=k7(e,t);n==="bold-italic"&&r.setAttribute("mathvariant",n)}else e.family==="punct"?r.setAttribute("separator","true"):(e.family==="open"||e.family==="close")&&r.setAttribute("stretchy","false");return r}});pV={mi:"italic",mn:"normal",mtext:"normal"};ed({type:"mathord",htmlBuilder(e,t){return Bt.makeOrd(e,t,"mathord")},mathmlBuilder(e,t){var r=new se.MathNode("mi",[Ro(e.text,e.mode,t)]),n=k7(e,t)||"italic";return n!==pV[r.type]&&r.setAttribute("mathvariant",n),r}});ed({type:"textord",htmlBuilder(e,t){return Bt.makeOrd(e,t,"textord")},mathmlBuilder(e,t){var r=Ro(e.text,e.mode,t),n=k7(e,t)||"normal",i;return e.mode==="text"?i=new se.MathNode("mtext",[r]):/[0-9]/.test(e.text)?i=new se.MathNode("mn",[r]):e.text==="\\prime"?i=new se.MathNode("mo",[r]):i=new se.MathNode("mi",[r]),n!==pV[i.type]&&i.setAttribute("mathvariant",n),i}});i7={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},a7={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};ed({type:"spacing",htmlBuilder(e,t){if(a7.hasOwnProperty(e.text)){var r=a7[e.text].className||"";if(e.mode==="text"){var n=Bt.makeOrd(e,t,"textord");return n.classes.push(r),n}else return Bt.makeSpan(["mspace",r],[Bt.mathsym(e.text,e.mode,t)],t)}else{if(i7.hasOwnProperty(e.text))return Bt.makeSpan(["mspace",i7[e.text]],[],t);throw new ue('Unknown type of space "'+e.text+'"')}},mathmlBuilder(e,t){var r;if(a7.hasOwnProperty(e.text))r=new se.MathNode("mtext",[new se.TextNode("\xA0")]);else{if(i7.hasOwnProperty(e.text))return new se.MathNode("mspace");throw new ue('Unknown type of space "'+e.text+'"')}return r}});yG=o(()=>{var e=new se.MathNode("mtd",[]);return e.setAttribute("width","50%"),e},"pad");ed({type:"tag",mathmlBuilder(e,t){var r=new se.MathNode("mtable",[new se.MathNode("mtr",[yG(),new se.MathNode("mtd",[mh(e.body,t)]),yG(),new se.MathNode("mtd",[mh(e.tag,t)])])]);return r.setAttribute("width","100%"),r}});vG={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},xG={"\\textbf":"textbf","\\textmd":"textmd"},F4t={"\\textit":"textit","\\textup":"textup"},bG=o((e,t)=>{var r=e.font;if(r){if(vG[r])return t.withTextFontFamily(vG[r]);if(xG[r])return t.withTextFontWeight(xG[r]);if(r==="\\emph")return t.fontShape==="textit"?t.withTextFontShape("textup"):t.withTextFontShape("textit")}else return t;return t.withTextFontShape(F4t[r])},"optionsWithFont");Ce({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(e,t){var{parser:r,funcName:n}=e,i=t[0];return{type:"text",mode:r.mode,body:mi(i),font:n}},htmlBuilder(e,t){var r=bG(e,t),n=Oi(e.body,r,!0);return Bt.makeSpan(["mord","text"],n,r)},mathmlBuilder(e,t){var r=bG(e,t);return mh(e.body,r)}});Ce({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(e,t){var{parser:r}=e;return{type:"underline",mode:r.mode,body:t[0]}},htmlBuilder(e,t){var r=Or(e.body,t),n=Bt.makeLineSpan("underline-line",t),i=t.fontMetrics().defaultRuleThickness,a=Bt.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:i},{type:"elem",elem:n},{type:"kern",size:3*i},{type:"elem",elem:r}]},t);return Bt.makeSpan(["mord","underline"],[a],t)},mathmlBuilder(e,t){var r=new se.MathNode("mo",[new se.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new se.MathNode("munder",[yn(e.body,t),r]);return n.setAttribute("accentunder","true"),n}});Ce({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(e,t){var{parser:r}=e;return{type:"vcenter",mode:r.mode,body:t[0]}},htmlBuilder(e,t){var r=Or(e.body,t),n=t.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return Bt.makeVList({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]},t)},mathmlBuilder(e,t){return new se.MathNode("mpadded",[yn(e.body,t)],["vcenter"])}});Ce({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(e,t,r){throw new ue("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(e,t){for(var r=wG(e),n=[],i=t.havingStyle(t.style.text()),a=0;ae.body.replace(/ /g,e.star?"\u2423":"\xA0"),"makeVerb"),dh=BG,mV=`[ \r ]`,z4t="\\\\[a-zA-Z@]+",$4t="\\\\[^\uD800-\uDFFF]",G4t="("+z4t+")"+mV+"*",V4t=`\\\\( |[ \r ]+ ?)[ \r ]*`,g7="[\u0300-\u036F]",U4t=new RegExp(g7+"+$"),H4t="("+mV+"+)|"+(V4t+"|")+"([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]"+(g7+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(g7+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+G4t)+("|"+$4t+")"),F4=class{static{o(this,"Lexer")}constructor(t,r){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=t,this.settings=r,this.tokenRegex=new RegExp(H4t,"g"),this.catcodes={"%":14,"~":13}}setCatcode(t,r){this.catcodes[t]=r}lex(){var t=this.input,r=this.tokenRegex.lastIndex;if(r===t.length)return new Do("EOF",new Ks(this,r,r));var n=this.tokenRegex.exec(t);if(n===null||n.index!==r)throw new ue("Unexpected character: '"+t[r]+"'",new Do(t[r],new Ks(this,r,r+1)));var i=n[6]||n[3]||(n[2]?"\\ ":" ");if(this.catcodes[i]===14){var a=t.indexOf(` `,this.tokenRegex.lastIndex);return a===-1?(this.tokenRegex.lastIndex=t.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=a+1,this.lex()}return new Do(i,new Ks(this,r,this.tokenRegex.lastIndex))}},y7=class{static{o(this,"Namespace")}constructor(t,r){t===void 0&&(t={}),r===void 0&&(r={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=r,this.builtins=t,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new ue("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var t=this.undefStack.pop();for(var r in t)t.hasOwnProperty(r)&&(t[r]==null?delete this.current[r]:this.current[r]=t[r])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(t){return this.current.hasOwnProperty(t)||this.builtins.hasOwnProperty(t)}get(t){return this.current.hasOwnProperty(t)?this.current[t]:this.builtins[t]}set(t,r,n){if(n===void 0&&(n=!1),n){for(var i=0;i0&&(this.undefStack[this.undefStack.length-1][t]=r)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(t)&&(a[t]=this.current[t])}r==null?delete this.current[t]:this.current[t]=r}},W4t=iV;lt("\\noexpand",function(e){var t=e.popToken();return e.isExpandable(t.text)&&(t.noexpand=!0,t.treatAsRelax=!0),{tokens:[t],numArgs:0}});lt("\\expandafter",function(e){var t=e.popToken();return e.expandOnce(!0),{tokens:[t],numArgs:0}});lt("\\@firstoftwo",function(e){var t=e.consumeArgs(2);return{tokens:t[0],numArgs:0}});lt("\\@secondoftwo",function(e){var t=e.consumeArgs(2);return{tokens:t[1],numArgs:0}});lt("\\@ifnextchar",function(e){var t=e.consumeArgs(3);e.consumeSpaces();var r=e.future();return t[0].length===1&&t[0][0].text===r.text?{tokens:t[1],numArgs:0}:{tokens:t[2],numArgs:0}});lt("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");lt("\\TextOrMath",function(e){var t=e.consumeArgs(2);return e.mode==="text"?{tokens:t[0],numArgs:0}:{tokens:t[1],numArgs:0}});TG={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};lt("\\char",function(e){var t=e.popToken(),r,n="";if(t.text==="'")r=8,t=e.popToken();else if(t.text==='"')r=16,t=e.popToken();else if(t.text==="`")if(t=e.popToken(),t.text[0]==="\\")n=t.text.charCodeAt(1);else{if(t.text==="EOF")throw new ue("\\char` missing argument");n=t.text.charCodeAt(0)}else r=10;if(r){if(n=TG[t.text],n==null||n>=r)throw new ue("Invalid base-"+r+" digit "+t.text);for(var i;(i=TG[e.future().text])!=null&&i{var n=e.consumeArg().tokens;if(n.length!==1)throw new ue("\\newcommand's first argument must be a macro name");var i=n[0].text,a=e.isDefined(i);if(a&&!t)throw new ue("\\newcommand{"+i+"} attempting to redefine "+(i+"; use \\renewcommand"));if(!a&&!r)throw new ue("\\renewcommand{"+i+"} when command "+i+" does not yet exist; use \\newcommand");var s=0;if(n=e.consumeArg().tokens,n.length===1&&n[0].text==="["){for(var l="",u=e.expandNextToken();u.text!=="]"&&u.text!=="EOF";)l+=u.text,u=e.expandNextToken();if(!l.match(/^\s*[0-9]+\s*$/))throw new ue("Invalid number of arguments: "+l);s=parseInt(l),n=e.consumeArg().tokens}return e.macros.set(i,{tokens:n,numArgs:s}),""},"newcommand");lt("\\newcommand",e=>M7(e,!1,!0));lt("\\renewcommand",e=>M7(e,!0,!1));lt("\\providecommand",e=>M7(e,!0,!0));lt("\\message",e=>{var t=e.consumeArgs(1)[0];return console.log(t.reverse().map(r=>r.text).join("")),""});lt("\\errmessage",e=>{var t=e.consumeArgs(1)[0];return console.error(t.reverse().map(r=>r.text).join("")),""});lt("\\show",e=>{var t=e.popToken(),r=t.text;return console.log(t,e.macros.get(r),dh[r],An.math[r],An.text[r]),""});lt("\\bgroup","{");lt("\\egroup","}");lt("~","\\nobreakspace");lt("\\lq","`");lt("\\rq","'");lt("\\aa","\\r a");lt("\\AA","\\r A");lt("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xA9}");lt("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");lt("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xAE}");lt("\u212C","\\mathscr{B}");lt("\u2130","\\mathscr{E}");lt("\u2131","\\mathscr{F}");lt("\u210B","\\mathscr{H}");lt("\u2110","\\mathscr{I}");lt("\u2112","\\mathscr{L}");lt("\u2133","\\mathscr{M}");lt("\u211B","\\mathscr{R}");lt("\u212D","\\mathfrak{C}");lt("\u210C","\\mathfrak{H}");lt("\u2128","\\mathfrak{Z}");lt("\\Bbbk","\\Bbb{k}");lt("\xB7","\\cdotp");lt("\\llap","\\mathllap{\\textrm{#1}}");lt("\\rlap","\\mathrlap{\\textrm{#1}}");lt("\\clap","\\mathclap{\\textrm{#1}}");lt("\\mathstrut","\\vphantom{(}");lt("\\underbar","\\underline{\\text{#1}}");lt("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}');lt("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}");lt("\\ne","\\neq");lt("\u2260","\\neq");lt("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}");lt("\u2209","\\notin");lt("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}");lt("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}");lt("\u225A","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}");lt("\u225B","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225B}}");lt("\u225D","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225D}}");lt("\u225E","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225E}}");lt("\u225F","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}");lt("\u27C2","\\perp");lt("\u203C","\\mathclose{!\\mkern-0.8mu!}");lt("\u220C","\\notni");lt("\u231C","\\ulcorner");lt("\u231D","\\urcorner");lt("\u231E","\\llcorner");lt("\u231F","\\lrcorner");lt("\xA9","\\copyright");lt("\xAE","\\textregistered");lt("\uFE0F","\\textregistered");lt("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');lt("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');lt("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');lt("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');lt("\\vdots","\\mathord{\\varvdots\\rule{0pt}{15pt}}");lt("\u22EE","\\vdots");lt("\\varGamma","\\mathit{\\Gamma}");lt("\\varDelta","\\mathit{\\Delta}");lt("\\varTheta","\\mathit{\\Theta}");lt("\\varLambda","\\mathit{\\Lambda}");lt("\\varXi","\\mathit{\\Xi}");lt("\\varPi","\\mathit{\\Pi}");lt("\\varSigma","\\mathit{\\Sigma}");lt("\\varUpsilon","\\mathit{\\Upsilon}");lt("\\varPhi","\\mathit{\\Phi}");lt("\\varPsi","\\mathit{\\Psi}");lt("\\varOmega","\\mathit{\\Omega}");lt("\\substack","\\begin{subarray}{c}#1\\end{subarray}");lt("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");lt("\\boxed","\\fbox{$\\displaystyle{#1}$}");lt("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");lt("\\implies","\\DOTSB\\;\\Longrightarrow\\;");lt("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");kG={",":"\\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"};lt("\\dots",function(e){var t="\\dotso",r=e.expandAfterFuture().text;return r in kG?t=kG[r]:(r.slice(0,4)==="\\not"||r in An.math&&tr.contains(["bin","rel"],An.math[r].group))&&(t="\\dotsb"),t});I7={")":!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};lt("\\dotso",function(e){var t=e.future().text;return t in I7?"\\ldots\\,":"\\ldots"});lt("\\dotsc",function(e){var t=e.future().text;return t in I7&&t!==","?"\\ldots\\,":"\\ldots"});lt("\\cdots",function(e){var t=e.future().text;return t in I7?"\\@cdots\\,":"\\@cdots"});lt("\\dotsb","\\cdots");lt("\\dotsm","\\cdots");lt("\\dotsi","\\!\\cdots");lt("\\dotsx","\\ldots\\,");lt("\\DOTSI","\\relax");lt("\\DOTSB","\\relax");lt("\\DOTSX","\\relax");lt("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");lt("\\,","\\tmspace+{3mu}{.1667em}");lt("\\thinspace","\\,");lt("\\>","\\mskip{4mu}");lt("\\:","\\tmspace+{4mu}{.2222em}");lt("\\medspace","\\:");lt("\\;","\\tmspace+{5mu}{.2777em}");lt("\\thickspace","\\;");lt("\\!","\\tmspace-{3mu}{.1667em}");lt("\\negthinspace","\\!");lt("\\negmedspace","\\tmspace-{4mu}{.2222em}");lt("\\negthickspace","\\tmspace-{5mu}{.277em}");lt("\\enspace","\\kern.5em ");lt("\\enskip","\\hskip.5em\\relax");lt("\\quad","\\hskip1em\\relax");lt("\\qquad","\\hskip2em\\relax");lt("\\tag","\\@ifstar\\tag@literal\\tag@paren");lt("\\tag@paren","\\tag@literal{({#1})}");lt("\\tag@literal",e=>{if(e.macros.get("\\df@tag"))throw new ue("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});lt("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");lt("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");lt("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");lt("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");lt("\\newline","\\\\\\relax");lt("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");gV=ve(ac["Main-Regular"][84][1]-.7*ac["Main-Regular"][65][1]);lt("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+gV+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");lt("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+gV+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");lt("\\hspace","\\@ifstar\\@hspacer\\@hspace");lt("\\@hspace","\\hskip #1\\relax");lt("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");lt("\\ordinarycolon",":");lt("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");lt("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');lt("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');lt("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');lt("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');lt("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');lt("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');lt("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');lt("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');lt("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');lt("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');lt("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');lt("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');lt("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');lt("\u2237","\\dblcolon");lt("\u2239","\\eqcolon");lt("\u2254","\\coloneqq");lt("\u2255","\\eqqcolon");lt("\u2A74","\\Coloneqq");lt("\\ratio","\\vcentcolon");lt("\\coloncolon","\\dblcolon");lt("\\colonequals","\\coloneqq");lt("\\coloncolonequals","\\Coloneqq");lt("\\equalscolon","\\eqqcolon");lt("\\equalscoloncolon","\\Eqqcolon");lt("\\colonminus","\\coloneq");lt("\\coloncolonminus","\\Coloneq");lt("\\minuscolon","\\eqcolon");lt("\\minuscoloncolon","\\Eqcolon");lt("\\coloncolonapprox","\\Colonapprox");lt("\\coloncolonsim","\\Colonsim");lt("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");lt("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");lt("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");lt("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");lt("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}");lt("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");lt("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");lt("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");lt("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");lt("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");lt("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");lt("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");lt("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");lt("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}");lt("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}");lt("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}");lt("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}");lt("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}");lt("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}");lt("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}");lt("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}");lt("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}");lt("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}");lt("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228A}");lt("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2ACB}");lt("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228B}");lt("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2ACC}");lt("\\imath","\\html@mathml{\\@imath}{\u0131}");lt("\\jmath","\\html@mathml{\\@jmath}{\u0237}");lt("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27E6}}");lt("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27E7}}");lt("\u27E6","\\llbracket");lt("\u27E7","\\rrbracket");lt("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}");lt("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}");lt("\u2983","\\lBrace");lt("\u2984","\\rBrace");lt("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29B5}}");lt("\u29B5","\\minuso");lt("\\darr","\\downarrow");lt("\\dArr","\\Downarrow");lt("\\Darr","\\Downarrow");lt("\\lang","\\langle");lt("\\rang","\\rangle");lt("\\uarr","\\uparrow");lt("\\uArr","\\Uparrow");lt("\\Uarr","\\Uparrow");lt("\\N","\\mathbb{N}");lt("\\R","\\mathbb{R}");lt("\\Z","\\mathbb{Z}");lt("\\alef","\\aleph");lt("\\alefsym","\\aleph");lt("\\Alpha","\\mathrm{A}");lt("\\Beta","\\mathrm{B}");lt("\\bull","\\bullet");lt("\\Chi","\\mathrm{X}");lt("\\clubs","\\clubsuit");lt("\\cnums","\\mathbb{C}");lt("\\Complex","\\mathbb{C}");lt("\\Dagger","\\ddagger");lt("\\diamonds","\\diamondsuit");lt("\\empty","\\emptyset");lt("\\Epsilon","\\mathrm{E}");lt("\\Eta","\\mathrm{H}");lt("\\exist","\\exists");lt("\\harr","\\leftrightarrow");lt("\\hArr","\\Leftrightarrow");lt("\\Harr","\\Leftrightarrow");lt("\\hearts","\\heartsuit");lt("\\image","\\Im");lt("\\infin","\\infty");lt("\\Iota","\\mathrm{I}");lt("\\isin","\\in");lt("\\Kappa","\\mathrm{K}");lt("\\larr","\\leftarrow");lt("\\lArr","\\Leftarrow");lt("\\Larr","\\Leftarrow");lt("\\lrarr","\\leftrightarrow");lt("\\lrArr","\\Leftrightarrow");lt("\\Lrarr","\\Leftrightarrow");lt("\\Mu","\\mathrm{M}");lt("\\natnums","\\mathbb{N}");lt("\\Nu","\\mathrm{N}");lt("\\Omicron","\\mathrm{O}");lt("\\plusmn","\\pm");lt("\\rarr","\\rightarrow");lt("\\rArr","\\Rightarrow");lt("\\Rarr","\\Rightarrow");lt("\\real","\\Re");lt("\\reals","\\mathbb{R}");lt("\\Reals","\\mathbb{R}");lt("\\Rho","\\mathrm{P}");lt("\\sdot","\\cdot");lt("\\sect","\\S");lt("\\spades","\\spadesuit");lt("\\sub","\\subset");lt("\\sube","\\subseteq");lt("\\supe","\\supseteq");lt("\\Tau","\\mathrm{T}");lt("\\thetasym","\\vartheta");lt("\\weierp","\\wp");lt("\\Zeta","\\mathrm{Z}");lt("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");lt("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");lt("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");lt("\\bra","\\mathinner{\\langle{#1}|}");lt("\\ket","\\mathinner{|{#1}\\rangle}");lt("\\braket","\\mathinner{\\langle{#1}\\rangle}");lt("\\Bra","\\left\\langle#1\\right|");lt("\\Ket","\\left|#1\\right\\rangle");yV=o(e=>t=>{var r=t.consumeArg().tokens,n=t.consumeArg().tokens,i=t.consumeArg().tokens,a=t.consumeArg().tokens,s=t.macros.get("|"),l=t.macros.get("\\|");t.macros.beginGroup();var u=o(d=>p=>{e&&(p.macros.set("|",s),i.length&&p.macros.set("\\|",l));var m=d;if(!d&&i.length){var g=p.future();g.text==="|"&&(p.popToken(),m=!0)}return{tokens:m?i:n,numArgs:0}},"midMacro");t.macros.set("|",u(!1)),i.length&&t.macros.set("\\|",u(!0));var h=t.consumeArg().tokens,f=t.expandTokens([...a,...h,...r]);return t.macros.endGroup(),{tokens:f.reverse(),numArgs:0}},"braketHelper");lt("\\bra@ket",yV(!1));lt("\\bra@set",yV(!0));lt("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");lt("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");lt("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");lt("\\angln","{\\angl n}");lt("\\blue","\\textcolor{##6495ed}{#1}");lt("\\orange","\\textcolor{##ffa500}{#1}");lt("\\pink","\\textcolor{##ff00af}{#1}");lt("\\red","\\textcolor{##df0030}{#1}");lt("\\green","\\textcolor{##28ae7b}{#1}");lt("\\gray","\\textcolor{gray}{#1}");lt("\\purple","\\textcolor{##9d38bd}{#1}");lt("\\blueA","\\textcolor{##ccfaff}{#1}");lt("\\blueB","\\textcolor{##80f6ff}{#1}");lt("\\blueC","\\textcolor{##63d9ea}{#1}");lt("\\blueD","\\textcolor{##11accd}{#1}");lt("\\blueE","\\textcolor{##0c7f99}{#1}");lt("\\tealA","\\textcolor{##94fff5}{#1}");lt("\\tealB","\\textcolor{##26edd5}{#1}");lt("\\tealC","\\textcolor{##01d1c1}{#1}");lt("\\tealD","\\textcolor{##01a995}{#1}");lt("\\tealE","\\textcolor{##208170}{#1}");lt("\\greenA","\\textcolor{##b6ffb0}{#1}");lt("\\greenB","\\textcolor{##8af281}{#1}");lt("\\greenC","\\textcolor{##74cf70}{#1}");lt("\\greenD","\\textcolor{##1fab54}{#1}");lt("\\greenE","\\textcolor{##0d923f}{#1}");lt("\\goldA","\\textcolor{##ffd0a9}{#1}");lt("\\goldB","\\textcolor{##ffbb71}{#1}");lt("\\goldC","\\textcolor{##ff9c39}{#1}");lt("\\goldD","\\textcolor{##e07d10}{#1}");lt("\\goldE","\\textcolor{##a75a05}{#1}");lt("\\redA","\\textcolor{##fca9a9}{#1}");lt("\\redB","\\textcolor{##ff8482}{#1}");lt("\\redC","\\textcolor{##f9685d}{#1}");lt("\\redD","\\textcolor{##e84d39}{#1}");lt("\\redE","\\textcolor{##bc2612}{#1}");lt("\\maroonA","\\textcolor{##ffbde0}{#1}");lt("\\maroonB","\\textcolor{##ff92c6}{#1}");lt("\\maroonC","\\textcolor{##ed5fa6}{#1}");lt("\\maroonD","\\textcolor{##ca337c}{#1}");lt("\\maroonE","\\textcolor{##9e034e}{#1}");lt("\\purpleA","\\textcolor{##ddd7ff}{#1}");lt("\\purpleB","\\textcolor{##c6b9fc}{#1}");lt("\\purpleC","\\textcolor{##aa87ff}{#1}");lt("\\purpleD","\\textcolor{##7854ab}{#1}");lt("\\purpleE","\\textcolor{##543b78}{#1}");lt("\\mintA","\\textcolor{##f5f9e8}{#1}");lt("\\mintB","\\textcolor{##edf2df}{#1}");lt("\\mintC","\\textcolor{##e0e5cc}{#1}");lt("\\grayA","\\textcolor{##f6f7f7}{#1}");lt("\\grayB","\\textcolor{##f0f1f2}{#1}");lt("\\grayC","\\textcolor{##e3e5e6}{#1}");lt("\\grayD","\\textcolor{##d6d8da}{#1}");lt("\\grayE","\\textcolor{##babec2}{#1}");lt("\\grayF","\\textcolor{##888d93}{#1}");lt("\\grayG","\\textcolor{##626569}{#1}");lt("\\grayH","\\textcolor{##3b3e40}{#1}");lt("\\grayI","\\textcolor{##21242c}{#1}");lt("\\kaBlue","\\textcolor{##314453}{#1}");lt("\\kaGreen","\\textcolor{##71B307}{#1}");vV={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},v7=class{static{o(this,"MacroExpander")}constructor(t,r,n){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=r,this.expansionCount=0,this.feed(t),this.macros=new y7(W4t,r.macros),this.mode=n,this.stack=[]}feed(t){this.lexer=new F4(t,this.settings)}switchMode(t){this.mode=t}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return this.stack.length===0&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(t){this.stack.push(t)}pushTokens(t){this.stack.push(...t)}scanArgument(t){var r,n,i;if(t){if(this.consumeSpaces(),this.future().text!=="[")return null;r=this.popToken(),{tokens:i,end:n}=this.consumeArg(["]"])}else({tokens:i,start:r,end:n}=this.consumeArg());return this.pushToken(new Do("EOF",n.loc)),this.pushTokens(i),r.range(n,"")}consumeSpaces(){for(;;){var t=this.future();if(t.text===" ")this.stack.pop();else break}}consumeArg(t){var r=[],n=t&&t.length>0;n||this.consumeSpaces();var i=this.future(),a,s=0,l=0;do{if(a=this.popToken(),r.push(a),a.text==="{")++s;else if(a.text==="}"){if(--s,s===-1)throw new ue("Extra }",a)}else if(a.text==="EOF")throw new ue("Unexpected end of input in a macro argument, expected '"+(t&&n?t[l]:"}")+"'",a);if(t&&n)if((s===0||s===1&&t[l]==="{")&&a.text===t[l]){if(++l,l===t.length){r.splice(-l,l);break}}else l=0}while(s!==0||n);return i.text==="{"&&r[r.length-1].text==="}"&&(r.pop(),r.shift()),r.reverse(),{tokens:r,start:i,end:a}}consumeArgs(t,r){if(r){if(r.length!==t+1)throw new ue("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;ithis.settings.maxExpand)throw new ue("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(t){var r=this.popToken(),n=r.text,i=r.noexpand?null:this._getExpansion(n);if(i==null||t&&i.unexpandable){if(t&&i==null&&n[0]==="\\"&&!this.isDefined(n))throw new ue("Undefined control sequence: "+n);return this.pushToken(r),!1}this.countExpansion(1);var a=i.tokens,s=this.consumeArgs(i.numArgs,i.delimiters);if(i.numArgs){a=a.slice();for(var l=a.length-1;l>=0;--l){var u=a[l];if(u.text==="#"){if(l===0)throw new ue("Incomplete placeholder at end of macro body",u);if(u=a[--l],u.text==="#")a.splice(l+1,1);else if(/^[1-9]$/.test(u.text))a.splice(l,2,...s[+u.text-1]);else throw new ue("Not a valid argument number",u)}}}return this.pushTokens(a),a.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var t=this.stack.pop();return t.treatAsRelax&&(t.text="\\relax"),t}throw new Error}expandMacro(t){return this.macros.has(t)?this.expandTokens([new Do(t)]):void 0}expandTokens(t){var r=[],n=this.stack.length;for(this.pushTokens(t);this.stack.length>n;)if(this.expandOnce(!0)===!1){var i=this.stack.pop();i.treatAsRelax&&(i.noexpand=!1,i.treatAsRelax=!1),r.push(i)}return this.countExpansion(r.length),r}expandMacroAsText(t){var r=this.expandMacro(t);return r&&r.map(n=>n.text).join("")}_getExpansion(t){var r=this.macros.get(t);if(r==null)return r;if(t.length===1){var n=this.lexer.catcodes[t];if(n!=null&&n!==13)return}var i=typeof r=="function"?r(this):r;if(typeof i=="string"){var a=0;if(i.indexOf("#")!==-1)for(var s=i.replace(/##/g,"");s.indexOf("#"+(a+1))!==-1;)++a;for(var l=new F4(i,this.settings),u=[],h=l.lex();h.text!=="EOF";)u.push(h),h=l.lex();u.reverse();var f={tokens:u,numArgs:a};return f}return i}isDefined(t){return this.macros.has(t)||dh.hasOwnProperty(t)||An.math.hasOwnProperty(t)||An.text.hasOwnProperty(t)||vV.hasOwnProperty(t)}isExpandable(t){var r=this.macros.get(t);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:dh.hasOwnProperty(t)&&!dh[t].primitive}},EG=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,L4=Object.freeze({"\u208A":"+","\u208B":"-","\u208C":"=","\u208D":"(","\u208E":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1D62":"i","\u2C7C":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209A":"p","\u1D63":"r","\u209B":"s","\u209C":"t","\u1D64":"u","\u1D65":"v","\u2093":"x","\u1D66":"\u03B2","\u1D67":"\u03B3","\u1D68":"\u03C1","\u1D69":"\u03D5","\u1D6A":"\u03C7","\u207A":"+","\u207B":"-","\u207C":"=","\u207D":"(","\u207E":")","\u2070":"0","\xB9":"1","\xB2":"2","\xB3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1D2C":"A","\u1D2E":"B","\u1D30":"D","\u1D31":"E","\u1D33":"G","\u1D34":"H","\u1D35":"I","\u1D36":"J","\u1D37":"K","\u1D38":"L","\u1D39":"M","\u1D3A":"N","\u1D3C":"O","\u1D3E":"P","\u1D3F":"R","\u1D40":"T","\u1D41":"U","\u2C7D":"V","\u1D42":"W","\u1D43":"a","\u1D47":"b","\u1D9C":"c","\u1D48":"d","\u1D49":"e","\u1DA0":"f","\u1D4D":"g",\u02B0:"h","\u2071":"i",\u02B2:"j","\u1D4F":"k",\u02E1:"l","\u1D50":"m",\u207F:"n","\u1D52":"o","\u1D56":"p",\u02B3:"r",\u02E2:"s","\u1D57":"t","\u1D58":"u","\u1D5B":"v",\u02B7:"w",\u02E3:"x",\u02B8:"y","\u1DBB":"z","\u1D5D":"\u03B2","\u1D5E":"\u03B3","\u1D5F":"\u03B4","\u1D60":"\u03D5","\u1D61":"\u03C7","\u1DBF":"\u03B8"}),s7={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030C":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030A":{text:"\\r",math:"\\mathring"},"\u030B":{text:"\\H"},"\u0327":{text:"\\c"}},CG={\u00E1:"a\u0301",\u00E0:"a\u0300",\u00E4:"a\u0308",\u01DF:"a\u0308\u0304",\u00E3:"a\u0303",\u0101:"a\u0304",\u0103:"a\u0306",\u1EAF:"a\u0306\u0301",\u1EB1:"a\u0306\u0300",\u1EB5:"a\u0306\u0303",\u01CE:"a\u030C",\u00E2:"a\u0302",\u1EA5:"a\u0302\u0301",\u1EA7:"a\u0302\u0300",\u1EAB:"a\u0302\u0303",\u0227:"a\u0307",\u01E1:"a\u0307\u0304",\u00E5:"a\u030A",\u01FB:"a\u030A\u0301",\u1E03:"b\u0307",\u0107:"c\u0301",\u1E09:"c\u0327\u0301",\u010D:"c\u030C",\u0109:"c\u0302",\u010B:"c\u0307",\u00E7:"c\u0327",\u010F:"d\u030C",\u1E0B:"d\u0307",\u1E11:"d\u0327",\u00E9:"e\u0301",\u00E8:"e\u0300",\u00EB:"e\u0308",\u1EBD:"e\u0303",\u0113:"e\u0304",\u1E17:"e\u0304\u0301",\u1E15:"e\u0304\u0300",\u0115:"e\u0306",\u1E1D:"e\u0327\u0306",\u011B:"e\u030C",\u00EA:"e\u0302",\u1EBF:"e\u0302\u0301",\u1EC1:"e\u0302\u0300",\u1EC5:"e\u0302\u0303",\u0117:"e\u0307",\u0229:"e\u0327",\u1E1F:"f\u0307",\u01F5:"g\u0301",\u1E21:"g\u0304",\u011F:"g\u0306",\u01E7:"g\u030C",\u011D:"g\u0302",\u0121:"g\u0307",\u0123:"g\u0327",\u1E27:"h\u0308",\u021F:"h\u030C",\u0125:"h\u0302",\u1E23:"h\u0307",\u1E29:"h\u0327",\u00ED:"i\u0301",\u00EC:"i\u0300",\u00EF:"i\u0308",\u1E2F:"i\u0308\u0301",\u0129:"i\u0303",\u012B:"i\u0304",\u012D:"i\u0306",\u01D0:"i\u030C",\u00EE:"i\u0302",\u01F0:"j\u030C",\u0135:"j\u0302",\u1E31:"k\u0301",\u01E9:"k\u030C",\u0137:"k\u0327",\u013A:"l\u0301",\u013E:"l\u030C",\u013C:"l\u0327",\u1E3F:"m\u0301",\u1E41:"m\u0307",\u0144:"n\u0301",\u01F9:"n\u0300",\u00F1:"n\u0303",\u0148:"n\u030C",\u1E45:"n\u0307",\u0146:"n\u0327",\u00F3:"o\u0301",\u00F2:"o\u0300",\u00F6:"o\u0308",\u022B:"o\u0308\u0304",\u00F5:"o\u0303",\u1E4D:"o\u0303\u0301",\u1E4F:"o\u0303\u0308",\u022D:"o\u0303\u0304",\u014D:"o\u0304",\u1E53:"o\u0304\u0301",\u1E51:"o\u0304\u0300",\u014F:"o\u0306",\u01D2:"o\u030C",\u00F4:"o\u0302",\u1ED1:"o\u0302\u0301",\u1ED3:"o\u0302\u0300",\u1ED7:"o\u0302\u0303",\u022F:"o\u0307",\u0231:"o\u0307\u0304",\u0151:"o\u030B",\u1E55:"p\u0301",\u1E57:"p\u0307",\u0155:"r\u0301",\u0159:"r\u030C",\u1E59:"r\u0307",\u0157:"r\u0327",\u015B:"s\u0301",\u1E65:"s\u0301\u0307",\u0161:"s\u030C",\u1E67:"s\u030C\u0307",\u015D:"s\u0302",\u1E61:"s\u0307",\u015F:"s\u0327",\u1E97:"t\u0308",\u0165:"t\u030C",\u1E6B:"t\u0307",\u0163:"t\u0327",\u00FA:"u\u0301",\u00F9:"u\u0300",\u00FC:"u\u0308",\u01D8:"u\u0308\u0301",\u01DC:"u\u0308\u0300",\u01D6:"u\u0308\u0304",\u01DA:"u\u0308\u030C",\u0169:"u\u0303",\u1E79:"u\u0303\u0301",\u016B:"u\u0304",\u1E7B:"u\u0304\u0308",\u016D:"u\u0306",\u01D4:"u\u030C",\u00FB:"u\u0302",\u016F:"u\u030A",\u0171:"u\u030B",\u1E7D:"v\u0303",\u1E83:"w\u0301",\u1E81:"w\u0300",\u1E85:"w\u0308",\u0175:"w\u0302",\u1E87:"w\u0307",\u1E98:"w\u030A",\u1E8D:"x\u0308",\u1E8B:"x\u0307",\u00FD:"y\u0301",\u1EF3:"y\u0300",\u00FF:"y\u0308",\u1EF9:"y\u0303",\u0233:"y\u0304",\u0177:"y\u0302",\u1E8F:"y\u0307",\u1E99:"y\u030A",\u017A:"z\u0301",\u017E:"z\u030C",\u1E91:"z\u0302",\u017C:"z\u0307",\u00C1:"A\u0301",\u00C0:"A\u0300",\u00C4:"A\u0308",\u01DE:"A\u0308\u0304",\u00C3:"A\u0303",\u0100:"A\u0304",\u0102:"A\u0306",\u1EAE:"A\u0306\u0301",\u1EB0:"A\u0306\u0300",\u1EB4:"A\u0306\u0303",\u01CD:"A\u030C",\u00C2:"A\u0302",\u1EA4:"A\u0302\u0301",\u1EA6:"A\u0302\u0300",\u1EAA:"A\u0302\u0303",\u0226:"A\u0307",\u01E0:"A\u0307\u0304",\u00C5:"A\u030A",\u01FA:"A\u030A\u0301",\u1E02:"B\u0307",\u0106:"C\u0301",\u1E08:"C\u0327\u0301",\u010C:"C\u030C",\u0108:"C\u0302",\u010A:"C\u0307",\u00C7:"C\u0327",\u010E:"D\u030C",\u1E0A:"D\u0307",\u1E10:"D\u0327",\u00C9:"E\u0301",\u00C8:"E\u0300",\u00CB:"E\u0308",\u1EBC:"E\u0303",\u0112:"E\u0304",\u1E16:"E\u0304\u0301",\u1E14:"E\u0304\u0300",\u0114:"E\u0306",\u1E1C:"E\u0327\u0306",\u011A:"E\u030C",\u00CA:"E\u0302",\u1EBE:"E\u0302\u0301",\u1EC0:"E\u0302\u0300",\u1EC4:"E\u0302\u0303",\u0116:"E\u0307",\u0228:"E\u0327",\u1E1E:"F\u0307",\u01F4:"G\u0301",\u1E20:"G\u0304",\u011E:"G\u0306",\u01E6:"G\u030C",\u011C:"G\u0302",\u0120:"G\u0307",\u0122:"G\u0327",\u1E26:"H\u0308",\u021E:"H\u030C",\u0124:"H\u0302",\u1E22:"H\u0307",\u1E28:"H\u0327",\u00CD:"I\u0301",\u00CC:"I\u0300",\u00CF:"I\u0308",\u1E2E:"I\u0308\u0301",\u0128:"I\u0303",\u012A:"I\u0304",\u012C:"I\u0306",\u01CF:"I\u030C",\u00CE:"I\u0302",\u0130:"I\u0307",\u0134:"J\u0302",\u1E30:"K\u0301",\u01E8:"K\u030C",\u0136:"K\u0327",\u0139:"L\u0301",\u013D:"L\u030C",\u013B:"L\u0327",\u1E3E:"M\u0301",\u1E40:"M\u0307",\u0143:"N\u0301",\u01F8:"N\u0300",\u00D1:"N\u0303",\u0147:"N\u030C",\u1E44:"N\u0307",\u0145:"N\u0327",\u00D3:"O\u0301",\u00D2:"O\u0300",\u00D6:"O\u0308",\u022A:"O\u0308\u0304",\u00D5:"O\u0303",\u1E4C:"O\u0303\u0301",\u1E4E:"O\u0303\u0308",\u022C:"O\u0303\u0304",\u014C:"O\u0304",\u1E52:"O\u0304\u0301",\u1E50:"O\u0304\u0300",\u014E:"O\u0306",\u01D1:"O\u030C",\u00D4:"O\u0302",\u1ED0:"O\u0302\u0301",\u1ED2:"O\u0302\u0300",\u1ED6:"O\u0302\u0303",\u022E:"O\u0307",\u0230:"O\u0307\u0304",\u0150:"O\u030B",\u1E54:"P\u0301",\u1E56:"P\u0307",\u0154:"R\u0301",\u0158:"R\u030C",\u1E58:"R\u0307",\u0156:"R\u0327",\u015A:"S\u0301",\u1E64:"S\u0301\u0307",\u0160:"S\u030C",\u1E66:"S\u030C\u0307",\u015C:"S\u0302",\u1E60:"S\u0307",\u015E:"S\u0327",\u0164:"T\u030C",\u1E6A:"T\u0307",\u0162:"T\u0327",\u00DA:"U\u0301",\u00D9:"U\u0300",\u00DC:"U\u0308",\u01D7:"U\u0308\u0301",\u01DB:"U\u0308\u0300",\u01D5:"U\u0308\u0304",\u01D9:"U\u0308\u030C",\u0168:"U\u0303",\u1E78:"U\u0303\u0301",\u016A:"U\u0304",\u1E7A:"U\u0304\u0308",\u016C:"U\u0306",\u01D3:"U\u030C",\u00DB:"U\u0302",\u016E:"U\u030A",\u0170:"U\u030B",\u1E7C:"V\u0303",\u1E82:"W\u0301",\u1E80:"W\u0300",\u1E84:"W\u0308",\u0174:"W\u0302",\u1E86:"W\u0307",\u1E8C:"X\u0308",\u1E8A:"X\u0307",\u00DD:"Y\u0301",\u1EF2:"Y\u0300",\u0178:"Y\u0308",\u1EF8:"Y\u0303",\u0232:"Y\u0304",\u0176:"Y\u0302",\u1E8E:"Y\u0307",\u0179:"Z\u0301",\u017D:"Z\u030C",\u1E90:"Z\u0302",\u017B:"Z\u0307",\u03AC:"\u03B1\u0301",\u1F70:"\u03B1\u0300",\u1FB1:"\u03B1\u0304",\u1FB0:"\u03B1\u0306",\u03AD:"\u03B5\u0301",\u1F72:"\u03B5\u0300",\u03AE:"\u03B7\u0301",\u1F74:"\u03B7\u0300",\u03AF:"\u03B9\u0301",\u1F76:"\u03B9\u0300",\u03CA:"\u03B9\u0308",\u0390:"\u03B9\u0308\u0301",\u1FD2:"\u03B9\u0308\u0300",\u1FD1:"\u03B9\u0304",\u1FD0:"\u03B9\u0306",\u03CC:"\u03BF\u0301",\u1F78:"\u03BF\u0300",\u03CD:"\u03C5\u0301",\u1F7A:"\u03C5\u0300",\u03CB:"\u03C5\u0308",\u03B0:"\u03C5\u0308\u0301",\u1FE2:"\u03C5\u0308\u0300",\u1FE1:"\u03C5\u0304",\u1FE0:"\u03C5\u0306",\u03CE:"\u03C9\u0301",\u1F7C:"\u03C9\u0300",\u038E:"\u03A5\u0301",\u1FEA:"\u03A5\u0300",\u03AB:"\u03A5\u0308",\u1FE9:"\u03A5\u0304",\u1FE8:"\u03A5\u0306",\u038F:"\u03A9\u0301",\u1FFA:"\u03A9\u0300"},z4=class e{static{o(this,"Parser")}constructor(t,r){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 v7(t,r,this.mode),this.settings=r,this.leftrightDepth=0}expect(t,r){if(r===void 0&&(r=!0),this.fetch().text!==t)throw new ue("Expected '"+t+"', got '"+this.fetch().text+"'",this.fetch());r&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken==null&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(t){this.mode=t,this.gullet.switchMode(t)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var t=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),t}finally{this.gullet.endGroups()}}subparse(t){var r=this.nextToken;this.consume(),this.gullet.pushToken(new Do("}")),this.gullet.pushTokens(t);var n=this.parseExpression(!1);return this.expect("}"),this.nextToken=r,n}parseExpression(t,r){for(var n=[];;){this.mode==="math"&&this.consumeSpaces();var i=this.fetch();if(e.endOfExpression.indexOf(i.text)!==-1||r&&i.text===r||t&&dh[i.text]&&dh[i.text].infix)break;var a=this.parseAtom(r);if(a){if(a.type==="internal")continue}else break;n.push(a)}return this.mode==="text"&&this.formLigatures(n),this.handleInfixNodes(n)}handleInfixNodes(t){for(var r=-1,n,i=0;i=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+r[0]+'" used in math mode',t);var l=An[this.mode][r].group,u=Ks.range(t),h;if(Pbt.hasOwnProperty(l)){var f=l;h={type:"atom",mode:this.mode,family:f,loc:u,text:r}}else h={type:l,mode:this.mode,loc:u,text:r};s=h}else if(r.charCodeAt(0)>=128)this.settings.strict&&(AG(r.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+r[0]+'" used in math mode',t):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+r[0]+'"'+(" ("+r.charCodeAt(0)+")"),t)),s={type:"textord",mode:"text",loc:Ks.range(t),text:r};else return null;if(this.consume(),a)for(var d=0;d{t.tagName==="A"&&t.hasAttribute("target")&&t.setAttribute(e,t.getAttribute("target")??"")}),_p.default.addHook("afterSanitizeAttributes",t=>{t.tagName==="A"&&t.hasAttribute(e)&&(t.setAttribute("target",t.getAttribute(e)??""),t.removeAttribute(e),t.getAttribute("target")==="_blank"&&t.setAttribute("rel","noopener"))})}var _p,rd,K4t,Q4t,CV,kV,Zr,J4t,t3t,e3t,r3t,SV,n3t,Tr,i3t,a3t,yh,B7,s3t,o3t,EV,F7,Pi,nd,vh,Yt,hr=R(()=>{"use strict";_p=Qi(XS(),1),rd=//gi,K4t=o(e=>e?SV(e).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),Q4t=(()=>{let e=!1;return()=>{e||(Z4t(),e=!0)}})();o(Z4t,"setupDompurifyHooks");CV=o(e=>(Q4t(),_p.default.sanitize(e)),"removeScript"),kV=o((e,t)=>{if(t.flowchart?.htmlLabels!==!1){let r=t.securityLevel;r==="antiscript"||r==="strict"?e=CV(e):r!=="loose"&&(e=SV(e),e=e.replace(//g,">"),e=e.replace(/=/g,"="),e=r3t(e))}return e},"sanitizeMore"),Zr=o((e,t)=>e&&(t.dompurifyConfig?e=_p.default.sanitize(kV(e,t),t.dompurifyConfig).toString():e=_p.default.sanitize(kV(e,t),{FORBID_TAGS:["style"]}).toString(),e),"sanitizeText"),J4t=o((e,t)=>typeof e=="string"?Zr(e,t):e.flat().map(r=>Zr(r,t)),"sanitizeTextOrArray"),t3t=o(e=>rd.test(e),"hasBreaks"),e3t=o(e=>e.split(rd),"splitBreaks"),r3t=o(e=>e.replace(/#br#/g,"
"),"placeholderToBreak"),SV=o(e=>e.replace(rd,"#br#"),"breakToPlaceholder"),n3t=o(e=>{let t="";return e&&(t=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,t=t.replaceAll(/\(/g,"\\("),t=t.replaceAll(/\)/g,"\\)")),t},"getUrl"),Tr=o(e=>!(e===!1||["false","null","0"].includes(String(e).trim().toLowerCase())),"evaluate"),i3t=o(function(...e){let t=e.filter(r=>!isNaN(r));return Math.max(...t)},"getMax"),a3t=o(function(...e){let t=e.filter(r=>!isNaN(r));return Math.min(...t)},"getMin"),yh=o(function(e){let t=e.split(/(,)/),r=[];for(let n=0;n0&&n+1Math.max(0,e.split(t).length-1),"countOccurrence"),s3t=o((e,t)=>{let r=B7(e,"~"),n=B7(t,"~");return r===1&&n===1},"shouldCombineSets"),o3t=o(e=>{let t=B7(e,"~"),r=!1;if(t<=1)return e;t%2!==0&&e.startsWith("~")&&(e=e.substring(1),r=!0);let n=[...e],i=n.indexOf("~"),a=n.lastIndexOf("~");for(;i!==-1&&a!==-1&&i!==a;)n[i]="<",n[a]=">",i=n.indexOf("~"),a=n.lastIndexOf("~");return r&&n.unshift("~"),n.join("")},"processSet"),EV=o(()=>window.MathMLElement!==void 0,"isMathMLSupported"),F7=/\$\$(.*)\$\$/g,Pi=o(e=>(e.match(F7)?.length??0)>0,"hasKatex"),nd=o(async(e,t)=>{e=await vh(e,t);let r=document.createElement("div");r.innerHTML=e,r.id="katex-temp",r.style.visibility="hidden",r.style.position="absolute",r.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",r);let i={width:r.clientWidth,height:r.clientHeight};return r.remove(),i},"calculateMathMLDimensions"),vh=o(async(e,t)=>{if(!Pi(e))return e;if(!(EV()||t.legacyMathML||t.forceLegacyMathML))return e.replace(F7,"MathML is unsupported in this environment.");let{default:r}=await Promise.resolve().then(()=>(TV(),wV)),n=t.forceLegacyMathML||!EV()&&t.legacyMathML?"htmlAndMathml":"mathml";return e.split(rd).map(i=>Pi(i)?`
${i}
`:`
${i}
`).join("").replace(F7,(i,a)=>r.renderToString(a,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,""))},"renderKatex"),Yt={getRows:K4t,sanitizeText:Zr,sanitizeTextOrArray:J4t,hasBreaks:t3t,splitBreaks:e3t,lineBreakRegex:rd,removeScript:CV,getUrl:n3t,evaluate:Tr,getMax:i3t,getMin:a3t}});var l3t,c3t,Pr,No,Jn=R(()=>{"use strict";ce();l3t=o(function(e,t){for(let r of t)e.attr(r[0],r[1])},"d3Attrs"),c3t=o(function(e,t,r){let n=new Map;return r?(n.set("width","100%"),n.set("style",`max-width: ${t}px;`)):(n.set("height",e),n.set("width",t)),n},"calculateSvgSizeAttrs"),Pr=o(function(e,t,r,n){let i=c3t(t,r,n);l3t(e,i)},"configureSvgSize"),No=o(function(e,t,r,n){let i=t.node().getBBox(),a=i.width,s=i.height;V.info(`SVG bounds: ${a}x${s}`,i);let l=0,u=0;V.info(`Graph bounds: ${l}x${u}`,e),l=a+r*2,u=s+r*2,V.info(`Calculated bounds: ${l}x${u}`),Pr(t,u,l,n);let h=`${i.x-r} ${i.y-r} ${i.width+2*r} ${i.height+2*r}`;t.attr("viewBox",h)},"setupGraphViewbox")});var Y4,u3t,AV,_V,z7=R(()=>{"use strict";ce();Y4={},u3t=o((e,t,r)=>{let n="";return e in Y4&&Y4[e]?n=Y4[e](r):V.warn(`No theme found for ${e}`),` & { font-family: ${r.fontFamily}; font-size: ${r.fontSize}; fill: ${r.textColor} } /* Classes common for multiple diagrams */ & .error-icon { fill: ${r.errorBkgColor}; } & .error-text { fill: ${r.errorTextColor}; stroke: ${r.errorTextColor}; } & .edge-thickness-normal { stroke-width: 1px; } & .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: ${r.lineColor}; stroke: ${r.lineColor}; } & .marker.cross { stroke: ${r.lineColor}; } & svg { font-family: ${r.fontFamily}; font-size: ${r.fontSize}; } & p { margin: 0 } ${n} ${t} `},"getStyles"),AV=o((e,t)=>{t!==void 0&&(Y4[e]=t)},"addStylesForDiagram"),_V=u3t});var xy={};xr(xy,{clear:()=>Ar,getAccDescription:()=>zr,getAccTitle:()=>Br,getDiagramTitle:()=>Jr,setAccDescription:()=>Fr,setAccTitle:()=>Mr,setDiagramTitle:()=>cn});var $7,G7,V7,U7,Ar,Mr,Br,Fr,zr,cn,Jr,Ci=R(()=>{"use strict";hr();js();$7="",G7="",V7="",U7=o(e=>Zr(e,Nr()),"sanitizeText"),Ar=o(()=>{$7="",V7="",G7=""},"clear"),Mr=o(e=>{$7=U7(e).replace(/^\s+/g,"")},"setAccTitle"),Br=o(()=>$7,"getAccTitle"),Fr=o(e=>{V7=U7(e).replace(/\n\s+/g,` `)},"setAccDescription"),zr=o(()=>V7,"getAccDescription"),cn=o(e=>{G7=U7(e)},"setDiagramTitle"),Jr=o(()=>G7,"getDiagramTitle")});var LV,h3t,pt,W7,X4,f3t,Y7,d3t,q4,id,by,H7,Ue=R(()=>{"use strict";jf();ce();js();hr();Jn();z7();Ci();LV=V,h3t=J1,pt=Nr,W7=v4,X4=hh,f3t=o(e=>Zr(e,pt()),"sanitizeText"),Y7=No,d3t=o(()=>xy,"getCommonDb"),q4={},id=o((e,t,r)=>{q4[e]&&LV.warn(`Diagram with id ${e} already registered. Overwriting.`),q4[e]=t,r&&_S(e,r),AV(e,t.styles),t.injectUtils?.(LV,h3t,pt,f3t,Y7,d3t(),()=>{})},"registerDiagram"),by=o(e=>{if(e in q4)return q4[e];throw new H7(e)},"getDiagram"),H7=class extends Error{static{o(this,"DiagramNotFoundError")}constructor(t){super(`Diagram ${t} not found.`)}}});var ml,xh,Ja,pl,uc,wy,q7,X7,j4,K4,DV,p3t,m3t,g3t,y3t,v3t,x3t,b3t,w3t,T3t,k3t,E3t,C3t,S3t,A3t,_3t,L3t,D3t,RV,R3t,N3t,NV,M3t,I3t,O3t,P3t,bh,B3t,F3t,z3t,$3t,G3t,Ty,j7=R(()=>{"use strict";Ue();hr();Ci();ml=[],xh=[""],Ja="global",pl="",uc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],wy=[],q7="",X7=!1,j4=4,K4=2,p3t=o(function(){return DV},"getC4Type"),m3t=o(function(e){DV=Zr(e,pt())},"setC4Type"),g3t=o(function(e,t,r,n,i,a,s,l,u){if(e==null||t===void 0||t===null||r===void 0||r===null||n===void 0||n===null)return;let h={},f=wy.find(d=>d.from===t&&d.to===r);if(f?h=f:wy.push(h),h.type=e,h.from=t,h.to=r,h.label={text:n},i==null)h.techn={text:""};else if(typeof i=="object"){let[d,p]=Object.entries(i)[0];h[d]={text:p}}else h.techn={text:i};if(a==null)h.descr={text:""};else if(typeof a=="object"){let[d,p]=Object.entries(a)[0];h[d]={text:p}}else h.descr={text:a};if(typeof s=="object"){let[d,p]=Object.entries(s)[0];h[d]=p}else h.sprite=s;if(typeof l=="object"){let[d,p]=Object.entries(l)[0];h[d]=p}else h.tags=l;if(typeof u=="object"){let[d,p]=Object.entries(u)[0];h[d]=p}else h.link=u;h.wrap=bh()},"addRel"),y3t=o(function(e,t,r,n,i,a,s){if(t===null||r===null)return;let l={},u=ml.find(h=>h.alias===t);if(u&&t===u.alias?l=u:(l.alias=t,ml.push(l)),r==null?l.label={text:""}:l.label={text:r},n==null)l.descr={text:""};else if(typeof n=="object"){let[h,f]=Object.entries(n)[0];l[h]={text:f}}else l.descr={text:n};if(typeof i=="object"){let[h,f]=Object.entries(i)[0];l[h]=f}else l.sprite=i;if(typeof a=="object"){let[h,f]=Object.entries(a)[0];l[h]=f}else l.tags=a;if(typeof s=="object"){let[h,f]=Object.entries(s)[0];l[h]=f}else l.link=s;l.typeC4Shape={text:e},l.parentBoundary=Ja,l.wrap=bh()},"addPersonOrSystem"),v3t=o(function(e,t,r,n,i,a,s,l){if(t===null||r===null)return;let u={},h=ml.find(f=>f.alias===t);if(h&&t===h.alias?u=h:(u.alias=t,ml.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=bh(),u.typeC4Shape={text:e},u.parentBoundary=Ja},"addContainer"),x3t=o(function(e,t,r,n,i,a,s,l){if(t===null||r===null)return;let u={},h=ml.find(f=>f.alias===t);if(h&&t===h.alias?u=h:(u.alias=t,ml.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=bh(),u.typeC4Shape={text:e},u.parentBoundary=Ja},"addComponent"),b3t=o(function(e,t,r,n,i){if(e===null||t===null)return;let a={},s=uc.find(l=>l.alias===e);if(s&&e===s.alias?a=s:(a.alias=e,uc.push(a)),t==null?a.label={text:""}:a.label={text:t},r==null)a.type={text:"system"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=Ja,a.wrap=bh(),pl=Ja,Ja=e,xh.push(pl)},"addPersonOrSystemBoundary"),w3t=o(function(e,t,r,n,i){if(e===null||t===null)return;let a={},s=uc.find(l=>l.alias===e);if(s&&e===s.alias?a=s:(a.alias=e,uc.push(a)),t==null?a.label={text:""}:a.label={text:t},r==null)a.type={text:"container"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=Ja,a.wrap=bh(),pl=Ja,Ja=e,xh.push(pl)},"addContainerBoundary"),T3t=o(function(e,t,r,n,i,a,s,l){if(t===null||r===null)return;let u={},h=uc.find(f=>f.alias===t);if(h&&t===h.alias?u=h:(u.alias=t,uc.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.type={text:"node"};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.type={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.nodeType=e,u.parentBoundary=Ja,u.wrap=bh(),pl=Ja,Ja=t,xh.push(pl)},"addDeploymentNode"),k3t=o(function(){Ja=pl,xh.pop(),pl=xh.pop(),xh.push(pl)},"popBoundaryParseStack"),E3t=o(function(e,t,r,n,i,a,s,l,u,h,f){let d=ml.find(p=>p.alias===t);if(!(d===void 0&&(d=uc.find(p=>p.alias===t),d===void 0))){if(r!=null)if(typeof r=="object"){let[p,m]=Object.entries(r)[0];d[p]=m}else d.bgColor=r;if(n!=null)if(typeof n=="object"){let[p,m]=Object.entries(n)[0];d[p]=m}else d.fontColor=n;if(i!=null)if(typeof i=="object"){let[p,m]=Object.entries(i)[0];d[p]=m}else d.borderColor=i;if(a!=null)if(typeof a=="object"){let[p,m]=Object.entries(a)[0];d[p]=m}else d.shadowing=a;if(s!=null)if(typeof s=="object"){let[p,m]=Object.entries(s)[0];d[p]=m}else d.shape=s;if(l!=null)if(typeof l=="object"){let[p,m]=Object.entries(l)[0];d[p]=m}else d.sprite=l;if(u!=null)if(typeof u=="object"){let[p,m]=Object.entries(u)[0];d[p]=m}else d.techn=u;if(h!=null)if(typeof h=="object"){let[p,m]=Object.entries(h)[0];d[p]=m}else d.legendText=h;if(f!=null)if(typeof f=="object"){let[p,m]=Object.entries(f)[0];d[p]=m}else d.legendSprite=f}},"updateElStyle"),C3t=o(function(e,t,r,n,i,a,s){let l=wy.find(u=>u.from===t&&u.to===r);if(l!==void 0){if(n!=null)if(typeof n=="object"){let[u,h]=Object.entries(n)[0];l[u]=h}else l.textColor=n;if(i!=null)if(typeof i=="object"){let[u,h]=Object.entries(i)[0];l[u]=h}else l.lineColor=i;if(a!=null)if(typeof a=="object"){let[u,h]=Object.entries(a)[0];l[u]=parseInt(h)}else l.offsetX=parseInt(a);if(s!=null)if(typeof s=="object"){let[u,h]=Object.entries(s)[0];l[u]=parseInt(h)}else l.offsetY=parseInt(s)}},"updateRelStyle"),S3t=o(function(e,t,r){let n=j4,i=K4;if(typeof t=="object"){let a=Object.values(t)[0];n=parseInt(a)}else n=parseInt(t);if(typeof r=="object"){let a=Object.values(r)[0];i=parseInt(a)}else i=parseInt(r);n>=1&&(j4=n),i>=1&&(K4=i)},"updateLayoutConfig"),A3t=o(function(){return j4},"getC4ShapeInRow"),_3t=o(function(){return K4},"getC4BoundaryInRow"),L3t=o(function(){return Ja},"getCurrentBoundaryParse"),D3t=o(function(){return pl},"getParentBoundaryParse"),RV=o(function(e){return e==null?ml:ml.filter(t=>t.parentBoundary===e)},"getC4ShapeArray"),R3t=o(function(e){return ml.find(t=>t.alias===e)},"getC4Shape"),N3t=o(function(e){return Object.keys(RV(e))},"getC4ShapeKeys"),NV=o(function(e){return e==null?uc:uc.filter(t=>t.parentBoundary===e)},"getBoundaries"),M3t=NV,I3t=o(function(){return wy},"getRels"),O3t=o(function(){return q7},"getTitle"),P3t=o(function(e){X7=e},"setWrap"),bh=o(function(){return X7},"autoWrap"),B3t=o(function(){ml=[],uc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],pl="",Ja="global",xh=[""],wy=[],xh=[""],q7="",X7=!1,j4=4,K4=2},"clear"),F3t={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},z3t={FILLED:0,OPEN:1},$3t={LEFTOF:0,RIGHTOF:1,OVER:2},G3t=o(function(e){q7=Zr(e,pt())},"setTitle"),Ty={addPersonOrSystem:y3t,addPersonOrSystemBoundary:b3t,addContainer:v3t,addContainerBoundary:w3t,addComponent:x3t,addDeploymentNode:T3t,popBoundaryParseStack:k3t,addRel:g3t,updateElStyle:E3t,updateRelStyle:C3t,updateLayoutConfig:S3t,autoWrap:bh,setWrap:P3t,getC4ShapeArray:RV,getC4Shape:R3t,getC4ShapeKeys:N3t,getBoundaries:NV,getBoundarys:M3t,getCurrentBoundaryParse:L3t,getParentBoundaryParse:D3t,getRels:I3t,getTitle:O3t,getC4Type:p3t,getC4ShapeInRow:A3t,getC4BoundaryInRow:_3t,setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,setAccDescription:Fr,getConfig:o(()=>pt().c4,"getConfig"),clear:B3t,LINETYPE:F3t,ARROWTYPE:z3t,PLACEMENT:$3t,setTitle:G3t,setC4Type:m3t}});function ad(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}var K7=R(()=>{"use strict";o(ad,"ascending")});function Q7(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}var MV=R(()=>{"use strict";o(Q7,"descending")});function sd(e){let t,r,n;e.length!==2?(t=ad,r=o((l,u)=>ad(e(l),u),"compare2"),n=o((l,u)=>e(l)-u,"delta")):(t=e===ad||e===Q7?e:V3t,r=e,n=e);function i(l,u,h=0,f=l.length){if(h>>1;r(l[d],u)<0?h=d+1:f=d}while(h>>1;r(l[d],u)<=0?h=d+1:f=d}while(hh&&n(l[d-1],u)>-n(l[d],u)?d-1:d}return o(s,"center"),{left:i,center:s,right:a}}function V3t(){return 0}var Z7=R(()=>{"use strict";K7();MV();o(sd,"bisector");o(V3t,"zero")});function J7(e){return e===null?NaN:+e}var IV=R(()=>{"use strict";o(J7,"number")});var OV,PV,U3t,H3t,tA,BV=R(()=>{"use strict";K7();Z7();IV();OV=sd(ad),PV=OV.right,U3t=OV.left,H3t=sd(J7).center,tA=PV});function FV({_intern:e,_key:t},r){let n=t(r);return e.has(n)?e.get(n):r}function W3t({_intern:e,_key:t},r){let n=t(r);return e.has(n)?e.get(n):(e.set(n,r),r)}function Y3t({_intern:e,_key:t},r){let n=t(r);return e.has(n)&&(r=e.get(n),e.delete(n)),r}function q3t(e){return e!==null&&typeof e=="object"?e.valueOf():e}var Lp,zV=R(()=>{"use strict";Lp=class extends Map{static{o(this,"InternMap")}constructor(t,r=q3t){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),t!=null)for(let[n,i]of t)this.set(n,i)}get(t){return super.get(FV(this,t))}has(t){return super.has(FV(this,t))}set(t,r){return super.set(W3t(this,t),r)}delete(t){return super.delete(Y3t(this,t))}};o(FV,"intern_get");o(W3t,"intern_set");o(Y3t,"intern_delete");o(q3t,"keyof")});function Q4(e,t,r){let n=(t-e)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),s=a>=X3t?10:a>=j3t?5:a>=K3t?2:1,l,u,h;return i<0?(h=Math.pow(10,-i)/s,l=Math.round(e*h),u=Math.round(t*h),l/ht&&--u,h=-h):(h=Math.pow(10,i)*s,l=Math.round(e/h),u=Math.round(t/h),l*ht&&--u),u0))return[];if(e===t)return[e];let n=t=i))return[];let l=a-i+1,u=new Array(l);if(n)if(s<0)for(let h=0;h{"use strict";X3t=Math.sqrt(50),j3t=Math.sqrt(10),K3t=Math.sqrt(2);o(Q4,"tickSpec");o(Z4,"ticks");o(ky,"tickIncrement");o(Dp,"tickStep")});function J4(e,t){let r;if(t===void 0)for(let n of e)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of e)(i=t(i,++n,e))!=null&&(r=i)&&(r=i)}return r}var GV=R(()=>{"use strict";o(J4,"max")});function t3(e,t){let r;if(t===void 0)for(let n of e)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of e)(i=t(i,++n,e))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var VV=R(()=>{"use strict";o(t3,"min")});function e3(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((t-e)/r))|0,a=new Array(i);++n{"use strict";o(e3,"range")});var wh=R(()=>{"use strict";BV();Z7();GV();VV();UV();$V();zV()});function eA(e){return e}var HV=R(()=>{"use strict";o(eA,"default")});function Q3t(e){return"translate("+e+",0)"}function Z3t(e){return"translate(0,"+e+")"}function J3t(e){return t=>+e(t)}function t5t(e,t){return t=Math.max(0,e.bandwidth()-t*2)/2,e.round()&&(t=Math.round(t)),r=>+e(r)+t}function e5t(){return!this.__axis}function YV(e,t){var r=[],n=null,i=null,a=6,s=6,l=3,u=typeof window<"u"&&window.devicePixelRatio>1?0:.5,h=e===n3||e===r3?-1:1,f=e===r3||e===rA?"x":"y",d=e===n3||e===nA?Q3t:Z3t;function p(m){var g=n??(t.ticks?t.ticks.apply(t,r):t.domain()),y=i??(t.tickFormat?t.tickFormat.apply(t,r):eA),v=Math.max(a,0)+l,x=t.range(),b=+x[0]+u,w=+x[x.length-1]+u,S=(t.bandwidth?t5t:J3t)(t.copy(),u),T=m.selection?m.selection():m,E=T.selectAll(".domain").data([null]),_=T.selectAll(".tick").data(g,t).order(),A=_.exit(),L=_.enter().append("g").attr("class","tick"),M=_.select("line"),N=_.select("text");E=E.merge(E.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),_=_.merge(L),M=M.merge(L.append("line").attr("stroke","currentColor").attr(f+"2",h*a)),N=N.merge(L.append("text").attr("fill","currentColor").attr(f,h*v).attr("dy",e===n3?"0em":e===nA?"0.71em":"0.32em")),m!==T&&(E=E.transition(m),_=_.transition(m),M=M.transition(m),N=N.transition(m),A=A.transition(m).attr("opacity",WV).attr("transform",function(k){return isFinite(k=S(k))?d(k+u):this.getAttribute("transform")}),L.attr("opacity",WV).attr("transform",function(k){var I=this.parentNode.__axis;return d((I&&isFinite(I=I(k))?I:S(k))+u)})),A.remove(),E.attr("d",e===r3||e===rA?s?"M"+h*s+","+b+"H"+u+"V"+w+"H"+h*s:"M"+u+","+b+"V"+w:s?"M"+b+","+h*s+"V"+u+"H"+w+"V"+h*s:"M"+b+","+u+"H"+w),_.attr("opacity",1).attr("transform",function(k){return d(S(k)+u)}),M.attr(f+"2",h*a),N.attr(f,h*v).text(y),T.filter(e5t).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",e===rA?"start":e===r3?"end":"middle"),T.each(function(){this.__axis=S})}return o(p,"axis"),p.scale=function(m){return arguments.length?(t=m,p):t},p.ticks=function(){return r=Array.from(arguments),p},p.tickArguments=function(m){return arguments.length?(r=m==null?[]:Array.from(m),p):r.slice()},p.tickValues=function(m){return arguments.length?(n=m==null?null:Array.from(m),p):n&&n.slice()},p.tickFormat=function(m){return arguments.length?(i=m,p):i},p.tickSize=function(m){return arguments.length?(a=s=+m,p):a},p.tickSizeInner=function(m){return arguments.length?(a=+m,p):a},p.tickSizeOuter=function(m){return arguments.length?(s=+m,p):s},p.tickPadding=function(m){return arguments.length?(l=+m,p):l},p.offset=function(m){return arguments.length?(u=+m,p):u},p}function iA(e){return YV(n3,e)}function aA(e){return YV(nA,e)}var n3,rA,nA,r3,WV,qV=R(()=>{"use strict";HV();n3=1,rA=2,nA=3,r3=4,WV=1e-6;o(Q3t,"translateX");o(Z3t,"translateY");o(J3t,"number");o(t5t,"center");o(e5t,"entering");o(YV,"axis");o(iA,"axisTop");o(aA,"axisBottom")});var XV=R(()=>{"use strict";qV()});function KV(){for(var e=0,t=arguments.length,r={},n;e=0&&(n=r.slice(i+1),r=r.slice(0,i)),r&&!t.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:n}})}function i5t(e,t){for(var r=0,n=e.length,i;r{"use strict";r5t={value:o(()=>{},"value")};o(KV,"dispatch");o(i3,"Dispatch");o(n5t,"parseTypenames");i3.prototype=KV.prototype={constructor:i3,on:o(function(e,t){var r=this._,n=n5t(e+"",r),i,a=-1,s=n.length;if(arguments.length<2){for(;++a0)for(var r=new Array(i),n=0,i,a;n{"use strict";QV()});var a3,lA,cA=R(()=>{"use strict";a3="http://www.w3.org/1999/xhtml",lA={svg:"http://www.w3.org/2000/svg",xhtml:a3,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function hc(e){var t=e+="",r=t.indexOf(":");return r>=0&&(t=e.slice(0,r))!=="xmlns"&&(e=e.slice(r+1)),lA.hasOwnProperty(t)?{space:lA[t],local:e}:e}var s3=R(()=>{"use strict";cA();o(hc,"default")});function a5t(e){return function(){var t=this.ownerDocument,r=this.namespaceURI;return r===a3&&t.documentElement.namespaceURI===a3?t.createElement(e):t.createElementNS(r,e)}}function s5t(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Ey(e){var t=hc(e);return(t.local?s5t:a5t)(t)}var uA=R(()=>{"use strict";s3();cA();o(a5t,"creatorInherit");o(s5t,"creatorFixed");o(Ey,"default")});function o5t(){}function Th(e){return e==null?o5t:function(){return this.querySelector(e)}}var o3=R(()=>{"use strict";o(o5t,"none");o(Th,"default")});function hA(e){typeof e!="function"&&(e=Th(e));for(var t=this._groups,r=t.length,n=new Array(r),i=0;i{"use strict";gl();o3();o(hA,"default")});function fA(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}var JV=R(()=>{"use strict";o(fA,"array")});function l5t(){return[]}function Rp(e){return e==null?l5t:function(){return this.querySelectorAll(e)}}var dA=R(()=>{"use strict";o(l5t,"empty");o(Rp,"default")});function c5t(e){return function(){return fA(e.apply(this,arguments))}}function pA(e){typeof e=="function"?e=c5t(e):e=Rp(e);for(var t=this._groups,r=t.length,n=[],i=[],a=0;a{"use strict";gl();JV();dA();o(c5t,"arrayAll");o(pA,"default")});function Np(e){return function(){return this.matches(e)}}function l3(e){return function(t){return t.matches(e)}}var Cy=R(()=>{"use strict";o(Np,"default");o(l3,"childMatcher")});function h5t(e){return function(){return u5t.call(this.children,e)}}function f5t(){return this.firstElementChild}function mA(e){return this.select(e==null?f5t:h5t(typeof e=="function"?e:l3(e)))}var u5t,eU=R(()=>{"use strict";Cy();u5t=Array.prototype.find;o(h5t,"childFind");o(f5t,"childFirst");o(mA,"default")});function p5t(){return Array.from(this.children)}function m5t(e){return function(){return d5t.call(this.children,e)}}function gA(e){return this.selectAll(e==null?p5t:m5t(typeof e=="function"?e:l3(e)))}var d5t,rU=R(()=>{"use strict";Cy();d5t=Array.prototype.filter;o(p5t,"children");o(m5t,"childrenFilter");o(gA,"default")});function yA(e){typeof e!="function"&&(e=Np(e));for(var t=this._groups,r=t.length,n=new Array(r),i=0;i{"use strict";gl();Cy();o(yA,"default")});function Sy(e){return new Array(e.length)}var vA=R(()=>{"use strict";o(Sy,"default")});function xA(){return new ai(this._enter||this._groups.map(Sy),this._parents)}function Ay(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}var bA=R(()=>{"use strict";vA();gl();o(xA,"default");o(Ay,"EnterNode");Ay.prototype={constructor:Ay,appendChild:o(function(e){return this._parent.insertBefore(e,this._next)},"appendChild"),insertBefore:o(function(e,t){return this._parent.insertBefore(e,t)},"insertBefore"),querySelector:o(function(e){return this._parent.querySelector(e)},"querySelector"),querySelectorAll:o(function(e){return this._parent.querySelectorAll(e)},"querySelectorAll")}});function wA(e){return function(){return e}}var iU=R(()=>{"use strict";o(wA,"default")});function g5t(e,t,r,n,i,a){for(var s=0,l,u=t.length,h=a.length;s=w&&(w=b+1);!(T=v[w])&&++w{"use strict";gl();bA();iU();o(g5t,"bindIndex");o(y5t,"bindKey");o(v5t,"datum");o(TA,"default");o(x5t,"arraylike")});function kA(){return new ai(this._exit||this._groups.map(Sy),this._parents)}var sU=R(()=>{"use strict";vA();gl();o(kA,"default")});function EA(e,t,r){var n=this.enter(),i=this,a=this.exit();return typeof e=="function"?(n=e(n),n&&(n=n.selection())):n=n.append(e+""),t!=null&&(i=t(i),i&&(i=i.selection())),r==null?a.remove():r(a),n&&i?n.merge(i).order():i}var oU=R(()=>{"use strict";o(EA,"default")});function CA(e){for(var t=e.selection?e.selection():e,r=this._groups,n=t._groups,i=r.length,a=n.length,s=Math.min(i,a),l=new Array(i),u=0;u{"use strict";gl();o(CA,"default")});function SA(){for(var e=this._groups,t=-1,r=e.length;++t=0;)(s=n[i])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}var cU=R(()=>{"use strict";o(SA,"default")});function AA(e){e||(e=b5t);function t(d,p){return d&&p?e(d.__data__,p.__data__):!d-!p}o(t,"compareNode");for(var r=this._groups,n=r.length,i=new Array(n),a=0;at?1:e>=t?0:NaN}var uU=R(()=>{"use strict";gl();o(AA,"default");o(b5t,"ascending")});function _A(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}var hU=R(()=>{"use strict";o(_A,"default")});function LA(){return Array.from(this)}var fU=R(()=>{"use strict";o(LA,"default")});function DA(){for(var e=this._groups,t=0,r=e.length;t{"use strict";o(DA,"default")});function RA(){let e=0;for(let t of this)++e;return e}var pU=R(()=>{"use strict";o(RA,"default")});function NA(){return!this.node()}var mU=R(()=>{"use strict";o(NA,"default")});function MA(e){for(var t=this._groups,r=0,n=t.length;r{"use strict";o(MA,"default")});function w5t(e){return function(){this.removeAttribute(e)}}function T5t(e){return function(){this.removeAttributeNS(e.space,e.local)}}function k5t(e,t){return function(){this.setAttribute(e,t)}}function E5t(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function C5t(e,t){return function(){var r=t.apply(this,arguments);r==null?this.removeAttribute(e):this.setAttribute(e,r)}}function S5t(e,t){return function(){var r=t.apply(this,arguments);r==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,r)}}function IA(e,t){var r=hc(e);if(arguments.length<2){var n=this.node();return r.local?n.getAttributeNS(r.space,r.local):n.getAttribute(r)}return this.each((t==null?r.local?T5t:w5t:typeof t=="function"?r.local?S5t:C5t:r.local?E5t:k5t)(r,t))}var yU=R(()=>{"use strict";s3();o(w5t,"attrRemove");o(T5t,"attrRemoveNS");o(k5t,"attrConstant");o(E5t,"attrConstantNS");o(C5t,"attrFunction");o(S5t,"attrFunctionNS");o(IA,"default")});function _y(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}var OA=R(()=>{"use strict";o(_y,"default")});function A5t(e){return function(){this.style.removeProperty(e)}}function _5t(e,t,r){return function(){this.style.setProperty(e,t,r)}}function L5t(e,t,r){return function(){var n=t.apply(this,arguments);n==null?this.style.removeProperty(e):this.style.setProperty(e,n,r)}}function PA(e,t,r){return arguments.length>1?this.each((t==null?A5t:typeof t=="function"?L5t:_5t)(e,t,r??"")):kh(this.node(),e)}function kh(e,t){return e.style.getPropertyValue(t)||_y(e).getComputedStyle(e,null).getPropertyValue(t)}var BA=R(()=>{"use strict";OA();o(A5t,"styleRemove");o(_5t,"styleConstant");o(L5t,"styleFunction");o(PA,"default");o(kh,"styleValue")});function D5t(e){return function(){delete this[e]}}function R5t(e,t){return function(){this[e]=t}}function N5t(e,t){return function(){var r=t.apply(this,arguments);r==null?delete this[e]:this[e]=r}}function FA(e,t){return arguments.length>1?this.each((t==null?D5t:typeof t=="function"?N5t:R5t)(e,t)):this.node()[e]}var vU=R(()=>{"use strict";o(D5t,"propertyRemove");o(R5t,"propertyConstant");o(N5t,"propertyFunction");o(FA,"default")});function xU(e){return e.trim().split(/^|\s+/)}function zA(e){return e.classList||new bU(e)}function bU(e){this._node=e,this._names=xU(e.getAttribute("class")||"")}function wU(e,t){for(var r=zA(e),n=-1,i=t.length;++n{"use strict";o(xU,"classArray");o(zA,"classList");o(bU,"ClassList");bU.prototype={add:o(function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},"add"),remove:o(function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},"remove"),contains:o(function(e){return this._names.indexOf(e)>=0},"contains")};o(wU,"classedAdd");o(TU,"classedRemove");o(M5t,"classedTrue");o(I5t,"classedFalse");o(O5t,"classedFunction");o($A,"default")});function P5t(){this.textContent=""}function B5t(e){return function(){this.textContent=e}}function F5t(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function GA(e){return arguments.length?this.each(e==null?P5t:(typeof e=="function"?F5t:B5t)(e)):this.node().textContent}var EU=R(()=>{"use strict";o(P5t,"textRemove");o(B5t,"textConstant");o(F5t,"textFunction");o(GA,"default")});function z5t(){this.innerHTML=""}function $5t(e){return function(){this.innerHTML=e}}function G5t(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function VA(e){return arguments.length?this.each(e==null?z5t:(typeof e=="function"?G5t:$5t)(e)):this.node().innerHTML}var CU=R(()=>{"use strict";o(z5t,"htmlRemove");o($5t,"htmlConstant");o(G5t,"htmlFunction");o(VA,"default")});function V5t(){this.nextSibling&&this.parentNode.appendChild(this)}function UA(){return this.each(V5t)}var SU=R(()=>{"use strict";o(V5t,"raise");o(UA,"default")});function U5t(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function HA(){return this.each(U5t)}var AU=R(()=>{"use strict";o(U5t,"lower");o(HA,"default")});function WA(e){var t=typeof e=="function"?e:Ey(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}var _U=R(()=>{"use strict";uA();o(WA,"default")});function H5t(){return null}function YA(e,t){var r=typeof e=="function"?e:Ey(e),n=t==null?H5t:typeof t=="function"?t:Th(t);return this.select(function(){return this.insertBefore(r.apply(this,arguments),n.apply(this,arguments)||null)})}var LU=R(()=>{"use strict";uA();o3();o(H5t,"constantNull");o(YA,"default")});function W5t(){var e=this.parentNode;e&&e.removeChild(this)}function qA(){return this.each(W5t)}var DU=R(()=>{"use strict";o(W5t,"remove");o(qA,"default")});function Y5t(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function q5t(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function XA(e){return this.select(e?q5t:Y5t)}var RU=R(()=>{"use strict";o(Y5t,"selection_cloneShallow");o(q5t,"selection_cloneDeep");o(XA,"default")});function jA(e){return arguments.length?this.property("__data__",e):this.node().__data__}var NU=R(()=>{"use strict";o(jA,"default")});function X5t(e){return function(t){e.call(this,t,this.__data__)}}function j5t(e){return e.trim().split(/^|\s+/).map(function(t){var r="",n=t.indexOf(".");return n>=0&&(r=t.slice(n+1),t=t.slice(0,n)),{type:t,name:r}})}function K5t(e){return function(){var t=this.__on;if(t){for(var r=0,n=-1,i=t.length,a;r{"use strict";o(X5t,"contextListener");o(j5t,"parseTypenames");o(K5t,"onRemove");o(Q5t,"onAdd");o(KA,"default")});function IU(e,t,r){var n=_y(e),i=n.CustomEvent;typeof i=="function"?i=new i(t,r):(i=n.document.createEvent("Event"),r?(i.initEvent(t,r.bubbles,r.cancelable),i.detail=r.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function Z5t(e,t){return function(){return IU(this,e,t)}}function J5t(e,t){return function(){return IU(this,e,t.apply(this,arguments))}}function QA(e,t){return this.each((typeof t=="function"?J5t:Z5t)(e,t))}var OU=R(()=>{"use strict";OA();o(IU,"dispatchEvent");o(Z5t,"dispatchConstant");o(J5t,"dispatchFunction");o(QA,"default")});function*ZA(){for(var e=this._groups,t=0,r=e.length;t{"use strict";o(ZA,"default")});function ai(e,t){this._groups=e,this._parents=t}function BU(){return new ai([[document.documentElement]],JA)}function twt(){return this}var JA,mu,gl=R(()=>{"use strict";ZV();tU();eU();rU();nU();aU();bA();sU();oU();lU();cU();uU();hU();fU();dU();pU();mU();gU();yU();BA();vU();kU();EU();CU();SU();AU();_U();LU();DU();RU();NU();MU();OU();PU();JA=[null];o(ai,"Selection");o(BU,"selection");o(twt,"selection_selection");ai.prototype=BU.prototype={constructor:ai,select:hA,selectAll:pA,selectChild:mA,selectChildren:gA,filter:yA,data:TA,enter:xA,exit:kA,join:EA,merge:CA,selection:twt,order:SA,sort:AA,call:_A,nodes:LA,node:DA,size:RA,empty:NA,each:MA,attr:IA,style:PA,property:FA,classed:$A,text:GA,html:VA,raise:UA,lower:HA,append:WA,insert:YA,remove:qA,clone:XA,datum:jA,on:KA,dispatch:QA,[Symbol.iterator]:ZA};mu=BU});function Gt(e){return typeof e=="string"?new ai([[document.querySelector(e)]],[document.documentElement]):new ai([[e]],JA)}var FU=R(()=>{"use strict";gl();o(Gt,"default")});var yl=R(()=>{"use strict";Cy();s3();FU();gl();o3();dA();BA()});var zU=R(()=>{"use strict"});function Eh(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function Mp(e,t){var r=Object.create(e.prototype);for(var n in t)r[n]=t[n];return r}var t8=R(()=>{"use strict";o(Eh,"default");o(Mp,"extend")});function Ch(){}function GU(){return this.rgb().formatHex()}function lwt(){return this.rgb().formatHex8()}function cwt(){return XU(this).formatHsl()}function VU(){return this.rgb().formatRgb()}function xl(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=ewt.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?UU(t):r===3?new fa(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?c3(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?c3(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=rwt.exec(e))?new fa(t[1],t[2],t[3],1):(t=nwt.exec(e))?new fa(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=iwt.exec(e))?c3(t[1],t[2],t[3],t[4]):(t=awt.exec(e))?c3(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=swt.exec(e))?YU(t[1],t[2]/100,t[3]/100,1):(t=owt.exec(e))?YU(t[1],t[2]/100,t[3]/100,t[4]):$U.hasOwnProperty(e)?UU($U[e]):e==="transparent"?new fa(NaN,NaN,NaN,0):null}function UU(e){return new fa(e>>16&255,e>>8&255,e&255,1)}function c3(e,t,r,n){return n<=0&&(e=t=r=NaN),new fa(e,t,r,n)}function r8(e){return e instanceof Ch||(e=xl(e)),e?(e=e.rgb(),new fa(e.r,e.g,e.b,e.opacity)):new fa}function Op(e,t,r,n){return arguments.length===1?r8(e):new fa(e,t,r,n??1)}function fa(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function HU(){return`#${od(this.r)}${od(this.g)}${od(this.b)}`}function uwt(){return`#${od(this.r)}${od(this.g)}${od(this.b)}${od((isNaN(this.opacity)?1:this.opacity)*255)}`}function WU(){let e=f3(this.opacity);return`${e===1?"rgb(":"rgba("}${ld(this.r)}, ${ld(this.g)}, ${ld(this.b)}${e===1?")":`, ${e})`}`}function f3(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function ld(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function od(e){return e=ld(e),(e<16?"0":"")+e.toString(16)}function YU(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new vl(e,t,r,n)}function XU(e){if(e instanceof vl)return new vl(e.h,e.s,e.l,e.opacity);if(e instanceof Ch||(e=xl(e)),!e)return new vl;if(e instanceof vl)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),s=NaN,l=a-i,u=(a+i)/2;return l?(t===a?s=(r-n)/l+(r0&&u<1?0:s,new vl(s,l,u,e.opacity)}function jU(e,t,r,n){return arguments.length===1?XU(e):new vl(e,t,r,n??1)}function vl(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function qU(e){return e=(e||0)%360,e<0?e+360:e}function u3(e){return Math.max(0,Math.min(1,e||0))}function e8(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}var Ly,h3,Ip,Dy,fc,ewt,rwt,nwt,iwt,awt,swt,owt,$U,n8=R(()=>{"use strict";t8();o(Ch,"Color");Ly=.7,h3=1/Ly,Ip="\\s*([+-]?\\d+)\\s*",Dy="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",fc="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",ewt=/^#([0-9a-f]{3,8})$/,rwt=new RegExp(`^rgb\\(${Ip},${Ip},${Ip}\\)$`),nwt=new RegExp(`^rgb\\(${fc},${fc},${fc}\\)$`),iwt=new RegExp(`^rgba\\(${Ip},${Ip},${Ip},${Dy}\\)$`),awt=new RegExp(`^rgba\\(${fc},${fc},${fc},${Dy}\\)$`),swt=new RegExp(`^hsl\\(${Dy},${fc},${fc}\\)$`),owt=new RegExp(`^hsla\\(${Dy},${fc},${fc},${Dy}\\)$`),$U={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};Eh(Ch,xl,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:GU,formatHex:GU,formatHex8:lwt,formatHsl:cwt,formatRgb:VU,toString:VU});o(GU,"color_formatHex");o(lwt,"color_formatHex8");o(cwt,"color_formatHsl");o(VU,"color_formatRgb");o(xl,"color");o(UU,"rgbn");o(c3,"rgba");o(r8,"rgbConvert");o(Op,"rgb");o(fa,"Rgb");Eh(fa,Op,Mp(Ch,{brighter(e){return e=e==null?h3:Math.pow(h3,e),new fa(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Ly:Math.pow(Ly,e),new fa(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new fa(ld(this.r),ld(this.g),ld(this.b),f3(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:HU,formatHex:HU,formatHex8:uwt,formatRgb:WU,toString:WU}));o(HU,"rgb_formatHex");o(uwt,"rgb_formatHex8");o(WU,"rgb_formatRgb");o(f3,"clampa");o(ld,"clampi");o(od,"hex");o(YU,"hsla");o(XU,"hslConvert");o(jU,"hsl");o(vl,"Hsl");Eh(vl,jU,Mp(Ch,{brighter(e){return e=e==null?h3:Math.pow(h3,e),new vl(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Ly:Math.pow(Ly,e),new vl(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new fa(e8(e>=240?e-240:e+120,i,n),e8(e,i,n),e8(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new vl(qU(this.h),u3(this.s),u3(this.l),f3(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 e=f3(this.opacity);return`${e===1?"hsl(":"hsla("}${qU(this.h)}, ${u3(this.s)*100}%, ${u3(this.l)*100}%${e===1?")":`, ${e})`}`}}));o(qU,"clamph");o(u3,"clampt");o(e8,"hsl2rgb")});var KU,QU,ZU=R(()=>{"use strict";KU=Math.PI/180,QU=180/Math.PI});function iH(e){if(e instanceof dc)return new dc(e.l,e.a,e.b,e.opacity);if(e instanceof gu)return aH(e);e instanceof fa||(e=r8(e));var t=o8(e.r),r=o8(e.g),n=o8(e.b),i=i8((.2225045*t+.7168786*r+.0606169*n)/tH),a,s;return t===r&&r===n?a=s=i:(a=i8((.4360747*t+.3850649*r+.1430804*n)/JU),s=i8((.0139322*t+.0971045*r+.7141733*n)/eH)),new dc(116*i-16,500*(a-i),200*(i-s),e.opacity)}function l8(e,t,r,n){return arguments.length===1?iH(e):new dc(e,t,r,n??1)}function dc(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function i8(e){return e>hwt?Math.pow(e,1/3):e/nH+rH}function a8(e){return e>Pp?e*e*e:nH*(e-rH)}function s8(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function o8(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function fwt(e){if(e instanceof gu)return new gu(e.h,e.c,e.l,e.opacity);if(e instanceof dc||(e=iH(e)),e.a===0&&e.b===0)return new gu(NaN,0{"use strict";t8();n8();ZU();d3=18,JU=.96422,tH=1,eH=.82521,rH=4/29,Pp=6/29,nH=3*Pp*Pp,hwt=Pp*Pp*Pp;o(iH,"labConvert");o(l8,"lab");o(dc,"Lab");Eh(dc,l8,Mp(Ch,{brighter(e){return new dc(this.l+d3*(e??1),this.a,this.b,this.opacity)},darker(e){return new dc(this.l-d3*(e??1),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,r=isNaN(this.b)?e:e-this.b/200;return t=JU*a8(t),e=tH*a8(e),r=eH*a8(r),new fa(s8(3.1338561*t-1.6168667*e-.4906146*r),s8(-.9787684*t+1.9161415*e+.033454*r),s8(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));o(i8,"xyz2lab");o(a8,"lab2xyz");o(s8,"lrgb2rgb");o(o8,"rgb2lrgb");o(fwt,"hclConvert");o(Ry,"hcl");o(gu,"Hcl");o(aH,"hcl2lab");Eh(gu,Ry,Mp(Ch,{brighter(e){return new gu(this.h,this.c,this.l+d3*(e??1),this.opacity)},darker(e){return new gu(this.h,this.c,this.l-d3*(e??1),this.opacity)},rgb(){return aH(this).rgb()}}))});var Bp=R(()=>{"use strict";n8();sH()});function c8(e,t,r,n,i){var a=e*e,s=a*e;return((1-3*e+3*a-s)*t+(4-6*a+3*s)*r+(1+3*e+3*a-3*s)*n+s*i)/6}function u8(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],s=n>0?e[n-1]:2*i-a,l=n{"use strict";o(c8,"basis");o(u8,"default")});function f8(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),i=e[(n+t-1)%t],a=e[n%t],s=e[(n+1)%t],l=e[(n+2)%t];return c8((r-n/t)*t,i,a,s,l)}}var oH=R(()=>{"use strict";h8();o(f8,"default")});var Fp,d8=R(()=>{"use strict";Fp=o(e=>()=>e,"default")});function lH(e,t){return function(r){return e+r*t}}function dwt(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function cH(e,t){var r=t-e;return r?lH(e,r>180||r<-180?r-360*Math.round(r/360):r):Fp(isNaN(e)?t:e)}function uH(e){return(e=+e)==1?yu:function(t,r){return r-t?dwt(t,r,e):Fp(isNaN(t)?r:t)}}function yu(e,t){var r=t-e;return r?lH(e,r):Fp(isNaN(e)?t:e)}var p8=R(()=>{"use strict";d8();o(lH,"linear");o(dwt,"exponential");o(cH,"hue");o(uH,"gamma");o(yu,"nogamma")});function hH(e){return function(t){var r=t.length,n=new Array(r),i=new Array(r),a=new Array(r),s,l;for(s=0;s{"use strict";Bp();h8();oH();p8();cd=o(function e(t){var r=uH(t);function n(i,a){var s=r((i=Op(i)).r,(a=Op(a)).r),l=r(i.g,a.g),u=r(i.b,a.b),h=yu(i.opacity,a.opacity);return function(f){return i.r=s(f),i.g=l(f),i.b=u(f),i.opacity=h(f),i+""}}return o(n,"rgb"),n.gamma=e,n},"rgbGamma")(1);o(hH,"rgbSpline");pwt=hH(u8),mwt=hH(f8)});function g8(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;i{"use strict";o(g8,"default");o(fH,"isNumberArray")});function pH(e,t){var r=t?t.length:0,n=e?Math.min(r,e.length):0,i=new Array(n),a=new Array(r),s;for(s=0;s{"use strict";p3();o(pH,"genericArray")});function y8(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var gH=R(()=>{"use strict";o(y8,"default")});function Zi(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var Ny=R(()=>{"use strict";o(Zi,"default")});function v8(e,t){var r={},n={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?r[i]=Sh(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var yH=R(()=>{"use strict";p3();o(v8,"default")});function gwt(e){return function(){return e}}function ywt(e){return function(t){return e(t)+""}}function zp(e,t){var r=b8.lastIndex=x8.lastIndex=0,n,i,a,s=-1,l=[],u=[];for(e=e+"",t=t+"";(n=b8.exec(e))&&(i=x8.exec(t));)(a=i.index)>r&&(a=t.slice(r,a),l[s]?l[s]+=a:l[++s]=a),(n=n[0])===(i=i[0])?l[s]?l[s]+=i:l[++s]=i:(l[++s]=null,u.push({i:s,x:Zi(n,i)})),r=x8.lastIndex;return r{"use strict";Ny();b8=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,x8=new RegExp(b8.source,"g");o(gwt,"zero");o(ywt,"one");o(zp,"default")});function Sh(e,t){var r=typeof t,n;return t==null||r==="boolean"?Fp(t):(r==="number"?Zi:r==="string"?(n=xl(t))?(t=n,cd):zp:t instanceof xl?cd:t instanceof Date?y8:fH(t)?g8:Array.isArray(t)?pH:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?v8:Zi)(e,t)}var p3=R(()=>{"use strict";Bp();m8();mH();gH();Ny();yH();w8();d8();dH();o(Sh,"default")});function m3(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var vH=R(()=>{"use strict";o(m3,"default")});function y3(e,t,r,n,i,a){var s,l,u;return(s=Math.sqrt(e*e+t*t))&&(e/=s,t/=s),(u=e*r+t*n)&&(r-=e*u,n-=t*u),(l=Math.sqrt(r*r+n*n))&&(r/=l,n/=l,u/=l),e*n{"use strict";xH=180/Math.PI,g3={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};o(y3,"default")});function wH(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?g3:y3(t.a,t.b,t.c,t.d,t.e,t.f)}function TH(e){return e==null?g3:(v3||(v3=document.createElementNS("http://www.w3.org/2000/svg","g")),v3.setAttribute("transform",e),(e=v3.transform.baseVal.consolidate())?(e=e.matrix,y3(e.a,e.b,e.c,e.d,e.e,e.f)):g3)}var v3,kH=R(()=>{"use strict";bH();o(wH,"parseCss");o(TH,"parseSvg")});function EH(e,t,r,n){function i(h){return h.length?h.pop()+" ":""}o(i,"pop");function a(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push("translate(",null,t,null,r);g.push({i:y-4,x:Zi(h,d)},{i:y-2,x:Zi(f,p)})}else(d||p)&&m.push("translate("+d+t+p+r)}o(a,"translate");function s(h,f,d,p){h!==f?(h-f>180?f+=360:f-h>180&&(h+=360),p.push({i:d.push(i(d)+"rotate(",null,n)-2,x:Zi(h,f)})):f&&d.push(i(d)+"rotate("+f+n)}o(s,"rotate");function l(h,f,d,p){h!==f?p.push({i:d.push(i(d)+"skewX(",null,n)-2,x:Zi(h,f)}):f&&d.push(i(d)+"skewX("+f+n)}o(l,"skewX");function u(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push(i(m)+"scale(",null,",",null,")");g.push({i:y-4,x:Zi(h,d)},{i:y-2,x:Zi(f,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return o(u,"scale"),function(h,f){var d=[],p=[];return h=e(h),f=e(f),a(h.translateX,h.translateY,f.translateX,f.translateY,d,p),s(h.rotate,f.rotate,d,p),l(h.skewX,f.skewX,d,p),u(h.scaleX,h.scaleY,f.scaleX,f.scaleY,d,p),h=f=null,function(m){for(var g=-1,y=p.length,v;++g{"use strict";Ny();kH();o(EH,"interpolateTransform");T8=EH(wH,"px, ","px)","deg)"),k8=EH(TH,", ",")",")")});function SH(e){return function(t,r){var n=e((t=Ry(t)).h,(r=Ry(r)).h),i=yu(t.c,r.c),a=yu(t.l,r.l),s=yu(t.opacity,r.opacity);return function(l){return t.h=n(l),t.c=i(l),t.l=a(l),t.opacity=s(l),t+""}}}var E8,vwt,AH=R(()=>{"use strict";Bp();p8();o(SH,"hcl");E8=SH(cH),vwt=SH(yu)});var $p=R(()=>{"use strict";p3();Ny();vH();w8();CH();m8();AH()});function Fy(){return ud||(DH(xwt),ud=Py.now()+w3)}function xwt(){ud=0}function By(){this._call=this._time=this._next=null}function T3(e,t,r){var n=new By;return n.restart(e,t,r),n}function RH(){Fy(),++Gp;for(var e=x3,t;e;)(t=ud-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Gp}function _H(){ud=(b3=Py.now())+w3,Gp=Iy=0;try{RH()}finally{Gp=0,wwt(),ud=0}}function bwt(){var e=Py.now(),t=e-b3;t>LH&&(w3-=t,b3=e)}function wwt(){for(var e,t=x3,r,n=1/0;t;)t._call?(n>t._time&&(n=t._time),e=t,t=t._next):(r=t._next,t._next=null,t=e?e._next=r:x3=r);Oy=e,C8(n)}function C8(e){if(!Gp){Iy&&(Iy=clearTimeout(Iy));var t=e-ud;t>24?(e<1/0&&(Iy=setTimeout(_H,e-Py.now()-w3)),My&&(My=clearInterval(My))):(My||(b3=Py.now(),My=setInterval(bwt,LH)),Gp=1,DH(_H))}}var Gp,Iy,My,LH,x3,Oy,b3,ud,w3,Py,DH,S8=R(()=>{"use strict";Gp=0,Iy=0,My=0,LH=1e3,b3=0,ud=0,w3=0,Py=typeof performance=="object"&&performance.now?performance:Date,DH=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};o(Fy,"now");o(xwt,"clearNow");o(By,"Timer");By.prototype=T3.prototype={constructor:By,restart:o(function(e,t,r){if(typeof e!="function")throw new TypeError("callback is not a function");r=(r==null?Fy():+r)+(t==null?0:+t),!this._next&&Oy!==this&&(Oy?Oy._next=this:x3=this,Oy=this),this._call=e,this._time=r,C8()},"restart"),stop:o(function(){this._call&&(this._call=null,this._time=1/0,C8())},"stop")};o(T3,"timer");o(RH,"timerFlush");o(_H,"wake");o(bwt,"poke");o(wwt,"nap");o(C8,"sleep")});function zy(e,t,r){var n=new By;return t=t==null?0:+t,n.restart(i=>{n.stop(),e(i+t)},t,r),n}var NH=R(()=>{"use strict";S8();o(zy,"default")});var k3=R(()=>{"use strict";S8();NH()});function vu(e,t,r,n,i,a){var s=e.__transition;if(!s)e.__transition={};else if(r in s)return;Ewt(e,r,{name:t,index:n,group:i,on:Twt,tween:kwt,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:OH})}function Gy(e,t){var r=Bi(e,t);if(r.state>OH)throw new Error("too late; already scheduled");return r}function da(e,t){var r=Bi(e,t);if(r.state>E3)throw new Error("too late; already running");return r}function Bi(e,t){var r=e.__transition;if(!r||!(r=r[t]))throw new Error("transition not found");return r}function Ewt(e,t,r){var n=e.__transition,i;n[t]=r,r.timer=T3(a,0,r.time);function a(h){r.state=MH,r.timer.restart(s,r.delay,r.time),r.delay<=h&&s(h-r.delay)}o(a,"schedule");function s(h){var f,d,p,m;if(r.state!==MH)return u();for(f in n)if(m=n[f],m.name===r.name){if(m.state===E3)return zy(s);m.state===IH?(m.state=$y,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete n[f]):+f{"use strict";oA();k3();Twt=sA("start","end","cancel","interrupt"),kwt=[],OH=0,MH=1,C3=2,E3=3,IH=4,S3=5,$y=6;o(vu,"default");o(Gy,"init");o(da,"set");o(Bi,"get");o(Ewt,"create")});function Vy(e,t){var r=e.__transition,n,i,a=!0,s;if(r){t=t==null?null:t+"";for(s in r){if((n=r[s]).name!==t){a=!1;continue}i=n.state>C3&&n.state{"use strict";ws();o(Vy,"default")});function A8(e){return this.each(function(){Vy(this,e)})}var BH=R(()=>{"use strict";PH();o(A8,"default")});function Cwt(e,t){var r,n;return function(){var i=da(this,e),a=i.tween;if(a!==r){n=r=a;for(var s=0,l=n.length;s{"use strict";ws();o(Cwt,"tweenRemove");o(Swt,"tweenFunction");o(_8,"default");o(Vp,"tweenValue")});function Hy(e,t){var r;return(typeof t=="number"?Zi:t instanceof xl?cd:(r=xl(t))?(t=r,cd):zp)(e,t)}var L8=R(()=>{"use strict";Bp();$p();o(Hy,"default")});function Awt(e){return function(){this.removeAttribute(e)}}function _wt(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Lwt(e,t,r){var n,i=r+"",a;return function(){var s=this.getAttribute(e);return s===i?null:s===n?a:a=t(n=s,r)}}function Dwt(e,t,r){var n,i=r+"",a;return function(){var s=this.getAttributeNS(e.space,e.local);return s===i?null:s===n?a:a=t(n=s,r)}}function Rwt(e,t,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttribute(e):(s=this.getAttribute(e),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=t(n=s,l)))}}function Nwt(e,t,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttributeNS(e.space,e.local):(s=this.getAttributeNS(e.space,e.local),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=t(n=s,l)))}}function D8(e,t){var r=hc(e),n=r==="transform"?k8:Hy;return this.attrTween(e,typeof t=="function"?(r.local?Nwt:Rwt)(r,n,Vp(this,"attr."+e,t)):t==null?(r.local?_wt:Awt)(r):(r.local?Dwt:Lwt)(r,n,t))}var FH=R(()=>{"use strict";$p();yl();Uy();L8();o(Awt,"attrRemove");o(_wt,"attrRemoveNS");o(Lwt,"attrConstant");o(Dwt,"attrConstantNS");o(Rwt,"attrFunction");o(Nwt,"attrFunctionNS");o(D8,"default")});function Mwt(e,t){return function(r){this.setAttribute(e,t.call(this,r))}}function Iwt(e,t){return function(r){this.setAttributeNS(e.space,e.local,t.call(this,r))}}function Owt(e,t){var r,n;function i(){var a=t.apply(this,arguments);return a!==n&&(r=(n=a)&&Iwt(e,a)),r}return o(i,"tween"),i._value=t,i}function Pwt(e,t){var r,n;function i(){var a=t.apply(this,arguments);return a!==n&&(r=(n=a)&&Mwt(e,a)),r}return o(i,"tween"),i._value=t,i}function R8(e,t){var r="attr."+e;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!="function")throw new Error;var n=hc(e);return this.tween(r,(n.local?Owt:Pwt)(n,t))}var zH=R(()=>{"use strict";yl();o(Mwt,"attrInterpolate");o(Iwt,"attrInterpolateNS");o(Owt,"attrTweenNS");o(Pwt,"attrTween");o(R8,"default")});function Bwt(e,t){return function(){Gy(this,e).delay=+t.apply(this,arguments)}}function Fwt(e,t){return t=+t,function(){Gy(this,e).delay=t}}function N8(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?Bwt:Fwt)(t,e)):Bi(this.node(),t).delay}var $H=R(()=>{"use strict";ws();o(Bwt,"delayFunction");o(Fwt,"delayConstant");o(N8,"default")});function zwt(e,t){return function(){da(this,e).duration=+t.apply(this,arguments)}}function $wt(e,t){return t=+t,function(){da(this,e).duration=t}}function M8(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?zwt:$wt)(t,e)):Bi(this.node(),t).duration}var GH=R(()=>{"use strict";ws();o(zwt,"durationFunction");o($wt,"durationConstant");o(M8,"default")});function Gwt(e,t){if(typeof t!="function")throw new Error;return function(){da(this,e).ease=t}}function I8(e){var t=this._id;return arguments.length?this.each(Gwt(t,e)):Bi(this.node(),t).ease}var VH=R(()=>{"use strict";ws();o(Gwt,"easeConstant");o(I8,"default")});function Vwt(e,t){return function(){var r=t.apply(this,arguments);if(typeof r!="function")throw new Error;da(this,e).ease=r}}function O8(e){if(typeof e!="function")throw new Error;return this.each(Vwt(this._id,e))}var UH=R(()=>{"use strict";ws();o(Vwt,"easeVarying");o(O8,"default")});function P8(e){typeof e!="function"&&(e=Np(e));for(var t=this._groups,r=t.length,n=new Array(r),i=0;i{"use strict";yl();hd();o(P8,"default")});function B8(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,r=e._groups,n=t.length,i=r.length,a=Math.min(n,i),s=new Array(n),l=0;l{"use strict";hd();o(B8,"default")});function Uwt(e){return(e+"").trim().split(/^|\s+/).every(function(t){var r=t.indexOf(".");return r>=0&&(t=t.slice(0,r)),!t||t==="start"})}function Hwt(e,t,r){var n,i,a=Uwt(t)?Gy:da;return function(){var s=a(this,e),l=s.on;l!==n&&(i=(n=l).copy()).on(t,r),s.on=i}}function F8(e,t){var r=this._id;return arguments.length<2?Bi(this.node(),r).on.on(e):this.each(Hwt(r,e,t))}var YH=R(()=>{"use strict";ws();o(Uwt,"start");o(Hwt,"onFunction");o(F8,"default")});function Wwt(e){return function(){var t=this.parentNode;for(var r in this.__transition)if(+r!==e)return;t&&t.removeChild(this)}}function z8(){return this.on("end.remove",Wwt(this._id))}var qH=R(()=>{"use strict";o(Wwt,"removeFunction");o(z8,"default")});function $8(e){var t=this._name,r=this._id;typeof e!="function"&&(e=Th(e));for(var n=this._groups,i=n.length,a=new Array(i),s=0;s{"use strict";yl();hd();ws();o($8,"default")});function G8(e){var t=this._name,r=this._id;typeof e!="function"&&(e=Rp(e));for(var n=this._groups,i=n.length,a=[],s=[],l=0;l{"use strict";yl();hd();ws();o(G8,"default")});function V8(){return new Ywt(this._groups,this._parents)}var Ywt,KH=R(()=>{"use strict";yl();Ywt=mu.prototype.constructor;o(V8,"default")});function qwt(e,t){var r,n,i;return function(){var a=kh(this,e),s=(this.style.removeProperty(e),kh(this,e));return a===s?null:a===r&&s===n?i:i=t(r=a,n=s)}}function QH(e){return function(){this.style.removeProperty(e)}}function Xwt(e,t,r){var n,i=r+"",a;return function(){var s=kh(this,e);return s===i?null:s===n?a:a=t(n=s,r)}}function jwt(e,t,r){var n,i,a;return function(){var s=kh(this,e),l=r(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(e),kh(this,e))),s===u?null:s===n&&u===i?a:(i=u,a=t(n=s,l))}}function Kwt(e,t){var r,n,i,a="style."+t,s="end."+a,l;return function(){var u=da(this,e),h=u.on,f=u.value[a]==null?l||(l=QH(t)):void 0;(h!==r||i!==f)&&(n=(r=h).copy()).on(s,i=f),u.on=n}}function U8(e,t,r){var n=(e+="")=="transform"?T8:Hy;return t==null?this.styleTween(e,qwt(e,n)).on("end.style."+e,QH(e)):typeof t=="function"?this.styleTween(e,jwt(e,n,Vp(this,"style."+e,t))).each(Kwt(this._id,e)):this.styleTween(e,Xwt(e,n,t),r).on("end.style."+e,null)}var ZH=R(()=>{"use strict";$p();yl();ws();Uy();L8();o(qwt,"styleNull");o(QH,"styleRemove");o(Xwt,"styleConstant");o(jwt,"styleFunction");o(Kwt,"styleMaybeRemove");o(U8,"default")});function Qwt(e,t,r){return function(n){this.style.setProperty(e,t.call(this,n),r)}}function Zwt(e,t,r){var n,i;function a(){var s=t.apply(this,arguments);return s!==i&&(n=(i=s)&&Qwt(e,s,r)),n}return o(a,"tween"),a._value=t,a}function H8(e,t,r){var n="style."+(e+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;return this.tween(n,Zwt(e,t,r??""))}var JH=R(()=>{"use strict";o(Qwt,"styleInterpolate");o(Zwt,"styleTween");o(H8,"default")});function Jwt(e){return function(){this.textContent=e}}function tTt(e){return function(){var t=e(this);this.textContent=t??""}}function W8(e){return this.tween("text",typeof e=="function"?tTt(Vp(this,"text",e)):Jwt(e==null?"":e+""))}var tW=R(()=>{"use strict";Uy();o(Jwt,"textConstant");o(tTt,"textFunction");o(W8,"default")});function eTt(e){return function(t){this.textContent=e.call(this,t)}}function rTt(e){var t,r;function n(){var i=e.apply(this,arguments);return i!==r&&(t=(r=i)&&eTt(i)),t}return o(n,"tween"),n._value=e,n}function Y8(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,rTt(e))}var eW=R(()=>{"use strict";o(eTt,"textInterpolate");o(rTt,"textTween");o(Y8,"default")});function q8(){for(var e=this._name,t=this._id,r=A3(),n=this._groups,i=n.length,a=0;a{"use strict";hd();ws();o(q8,"default")});function X8(){var e,t,r=this,n=r._id,i=r.size();return new Promise(function(a,s){var l={value:s},u={value:o(function(){--i===0&&a()},"value")};r.each(function(){var h=da(this,n),f=h.on;f!==e&&(t=(e=f).copy(),t._.cancel.push(l),t._.interrupt.push(l),t._.end.push(u)),h.on=t}),i===0&&a()})}var nW=R(()=>{"use strict";ws();o(X8,"default")});function ts(e,t,r,n){this._groups=e,this._parents=t,this._name=r,this._id=n}function iW(e){return mu().transition(e)}function A3(){return++nTt}var nTt,xu,hd=R(()=>{"use strict";yl();FH();zH();$H();GH();VH();UH();HH();WH();YH();qH();XH();jH();KH();ZH();JH();tW();eW();rW();Uy();nW();nTt=0;o(ts,"Transition");o(iW,"transition");o(A3,"newId");xu=mu.prototype;ts.prototype=iW.prototype={constructor:ts,select:$8,selectAll:G8,selectChild:xu.selectChild,selectChildren:xu.selectChildren,filter:P8,merge:B8,selection:V8,transition:q8,call:xu.call,nodes:xu.nodes,node:xu.node,size:xu.size,empty:xu.empty,each:xu.each,on:F8,attr:D8,attrTween:R8,style:U8,styleTween:H8,text:W8,textTween:Y8,remove:z8,tween:_8,delay:N8,duration:M8,ease:I8,easeVarying:O8,end:X8,[Symbol.iterator]:xu[Symbol.iterator]}});function _3(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var aW=R(()=>{"use strict";o(_3,"cubicInOut")});var j8=R(()=>{"use strict";aW()});function aTt(e,t){for(var r;!(r=e.__transition)||!(r=r[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return r}function K8(e){var t,r;e instanceof ts?(t=e._id,e=e._name):(t=A3(),(r=iTt).time=Fy(),e=e==null?null:e+"");for(var n=this._groups,i=n.length,a=0;a{"use strict";hd();ws();j8();k3();iTt={time:null,delay:0,duration:250,ease:_3};o(aTt,"inherit");o(K8,"default")});var oW=R(()=>{"use strict";yl();BH();sW();mu.prototype.interrupt=A8;mu.prototype.transition=K8});var L3=R(()=>{"use strict";oW()});var lW=R(()=>{"use strict"});var cW=R(()=>{"use strict"});var uW=R(()=>{"use strict"});function hW(e){return[+e[0],+e[1]]}function sTt(e){return[hW(e[0]),hW(e[1])]}function Q8(e){return{type:e}}var bge,wge,Tge,kge,Ege,Cge,fW=R(()=>{"use strict";L3();lW();cW();uW();({abs:bge,max:wge,min:Tge}=Math);o(hW,"number1");o(sTt,"number2");kge={name:"x",handles:["w","e"].map(Q8),input:o(function(e,t){return e==null?null:[[+e[0],t[0][1]],[+e[1],t[1][1]]]},"input"),output:o(function(e){return e&&[e[0][0],e[1][0]]},"output")},Ege={name:"y",handles:["n","s"].map(Q8),input:o(function(e,t){return e==null?null:[[t[0][0],+e[0]],[t[1][0],+e[1]]]},"input"),output:o(function(e){return e&&[e[0][1],e[1][1]]},"output")},Cge={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(Q8),input:o(function(e){return e==null?null:sTt(e)},"input"),output:o(function(e){return e},"output")};o(Q8,"type")});var dW=R(()=>{"use strict";fW()});function pW(e){this._+=e[0];for(let t=1,r=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return pW;let r=10**t;return function(n){this._+=n[0];for(let i=1,a=n.length;i{"use strict";Z8=Math.PI,J8=2*Z8,fd=1e-6,oTt=J8-fd;o(pW,"append");o(lTt,"appendRound");dd=class{static{o(this,"Path")}constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?pW:lTt(t)}moveTo(t,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,r){this._append`L${this._x1=+t},${this._y1=+r}`}quadraticCurveTo(t,r,n,i){this._append`Q${+t},${+r},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(t,r,n,i,a,s){this._append`C${+t},${+r},${+n},${+i},${this._x1=+a},${this._y1=+s}`}arcTo(t,r,n,i,a){if(t=+t,r=+r,n=+n,i=+i,a=+a,a<0)throw new Error(`negative radius: ${a}`);let s=this._x1,l=this._y1,u=n-t,h=i-r,f=s-t,d=l-r,p=f*f+d*d;if(this._x1===null)this._append`M${this._x1=t},${this._y1=r}`;else if(p>fd)if(!(Math.abs(d*u-h*f)>fd)||!a)this._append`L${this._x1=t},${this._y1=r}`;else{let m=n-s,g=i-l,y=u*u+h*h,v=m*m+g*g,x=Math.sqrt(y),b=Math.sqrt(p),w=a*Math.tan((Z8-Math.acos((y+p-v)/(2*x*b)))/2),S=w/b,T=w/x;Math.abs(S-1)>fd&&this._append`L${t+S*f},${r+S*d}`,this._append`A${a},${a},0,0,${+(d*m>f*g)},${this._x1=t+T*u},${this._y1=r+T*h}`}}arc(t,r,n,i,a,s){if(t=+t,r=+r,n=+n,s=!!s,n<0)throw new Error(`negative radius: ${n}`);let l=n*Math.cos(i),u=n*Math.sin(i),h=t+l,f=r+u,d=1^s,p=s?i-a:a-i;this._x1===null?this._append`M${h},${f}`:(Math.abs(this._x1-h)>fd||Math.abs(this._y1-f)>fd)&&this._append`L${h},${f}`,n&&(p<0&&(p=p%J8+J8),p>oTt?this._append`A${n},${n},0,1,${d},${t-l},${r-u}A${n},${n},0,1,${d},${this._x1=h},${this._y1=f}`:p>fd&&this._append`A${n},${n},0,${+(p>=Z8)},${d},${this._x1=t+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(t,r,n,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}};o(mW,"path");mW.prototype=dd.prototype});var t_=R(()=>{"use strict";gW()});var yW=R(()=>{"use strict"});var vW=R(()=>{"use strict"});var xW=R(()=>{"use strict"});var bW=R(()=>{"use strict"});var wW=R(()=>{"use strict"});var TW=R(()=>{"use strict"});var kW=R(()=>{"use strict"});function e_(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function pd(e,t){if((r=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"))<0)return null;var r,n=e.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+e.slice(r+1)]}var Wy=R(()=>{"use strict";o(e_,"default");o(pd,"formatDecimalParts")});function bl(e){return e=pd(Math.abs(e)),e?e[1]:NaN}var Yy=R(()=>{"use strict";Wy();o(bl,"default")});function r_(e,t){return function(r,n){for(var i=r.length,a=[],s=0,l=e[0],u=0;i>0&&l>0&&(u+l+1>n&&(l=Math.max(1,n-u)),a.push(r.substring(i-=l,i+l)),!((u+=l+1)>n));)l=e[s=(s+1)%e.length];return a.reverse().join(t)}}var EW=R(()=>{"use strict";o(r_,"default")});function n_(e){return function(t){return t.replace(/[0-9]/g,function(r){return e[+r]})}}var CW=R(()=>{"use strict";o(n_,"default")});function Ah(e){if(!(t=cTt.exec(e)))throw new Error("invalid format: "+e);var t;return new D3({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function D3(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}var cTt,i_=R(()=>{"use strict";cTt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;o(Ah,"formatSpecifier");Ah.prototype=D3.prototype;o(D3,"FormatSpecifier");D3.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 a_(e){t:for(var t=e.length,r=1,n=-1,i;r0&&(n=0);break}return n>0?e.slice(0,n)+e.slice(i+1):e}var SW=R(()=>{"use strict";o(a_,"default")});function o_(e,t){var r=pd(e,t);if(!r)return e+"";var n=r[0],i=r[1],a=i-(s_=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,s=n.length;return a===s?n:a>s?n+new Array(a-s+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+pd(e,Math.max(0,t+a-1))[0]}var s_,l_=R(()=>{"use strict";Wy();o(o_,"default")});function R3(e,t){var r=pd(e,t);if(!r)return e+"";var n=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+n:n.length>i+1?n.slice(0,i+1)+"."+n.slice(i+1):n+new Array(i-n.length+2).join("0")}var AW=R(()=>{"use strict";Wy();o(R3,"default")});var c_,_W=R(()=>{"use strict";Wy();l_();AW();c_={"%":o((e,t)=>(e*100).toFixed(t),"%"),b:o(e=>Math.round(e).toString(2),"b"),c:o(e=>e+"","c"),d:e_,e:o((e,t)=>e.toExponential(t),"e"),f:o((e,t)=>e.toFixed(t),"f"),g:o((e,t)=>e.toPrecision(t),"g"),o:o(e=>Math.round(e).toString(8),"o"),p:o((e,t)=>R3(e*100,t),"p"),r:R3,s:o_,X:o(e=>Math.round(e).toString(16).toUpperCase(),"X"),x:o(e=>Math.round(e).toString(16),"x")}});function N3(e){return e}var LW=R(()=>{"use strict";o(N3,"default")});function u_(e){var t=e.grouping===void 0||e.thousands===void 0?N3:r_(DW.call(e.grouping,Number),e.thousands+""),r=e.currency===void 0?"":e.currency[0]+"",n=e.currency===void 0?"":e.currency[1]+"",i=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?N3:n_(DW.call(e.numerals,String)),s=e.percent===void 0?"%":e.percent+"",l=e.minus===void 0?"\u2212":e.minus+"",u=e.nan===void 0?"NaN":e.nan+"";function h(d){d=Ah(d);var p=d.fill,m=d.align,g=d.sign,y=d.symbol,v=d.zero,x=d.width,b=d.comma,w=d.precision,S=d.trim,T=d.type;T==="n"?(b=!0,T="g"):c_[T]||(w===void 0&&(w=12),S=!0,T="g"),(v||p==="0"&&m==="=")&&(v=!0,p="0",m="=");var E=y==="$"?r:y==="#"&&/[boxX]/.test(T)?"0"+T.toLowerCase():"",_=y==="$"?n:/[%p]/.test(T)?s:"",A=c_[T],L=/[defgprs%]/.test(T);w=w===void 0?6:/[gprs]/.test(T)?Math.max(1,Math.min(21,w)):Math.max(0,Math.min(20,w));function M(N){var k=E,I=_,C,O,D;if(T==="c")I=A(N)+I,N="";else{N=+N;var P=N<0||1/N<0;if(N=isNaN(N)?u:A(Math.abs(N),w),S&&(N=a_(N)),P&&+N==0&&g!=="+"&&(P=!1),k=(P?g==="("?g:l:g==="-"||g==="("?"":g)+k,I=(T==="s"?RW[8+s_/3]:"")+I+(P&&g==="("?")":""),L){for(C=-1,O=N.length;++CD||D>57){I=(D===46?i+N.slice(C+1):N.slice(C))+I,N=N.slice(0,C);break}}}b&&!v&&(N=t(N,1/0));var F=k.length+N.length+I.length,B=F>1)+k+N+I+B.slice(F);break;default:N=B+k+N+I;break}return a(N)}return o(M,"format"),M.toString=function(){return d+""},M}o(h,"newFormat");function f(d,p){var m=h((d=Ah(d),d.type="f",d)),g=Math.max(-8,Math.min(8,Math.floor(bl(p)/3)))*3,y=Math.pow(10,-g),v=RW[8+g/3];return function(x){return m(y*x)+v}}return o(f,"formatPrefix"),{format:h,formatPrefix:f}}var DW,RW,NW=R(()=>{"use strict";Yy();EW();CW();i_();SW();_W();l_();LW();DW=Array.prototype.map,RW=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];o(u_,"default")});function h_(e){return M3=u_(e),I3=M3.format,O3=M3.formatPrefix,M3}var M3,I3,O3,MW=R(()=>{"use strict";NW();h_({thousands:",",grouping:[3],currency:["$",""]});o(h_,"defaultLocale")});function P3(e){return Math.max(0,-bl(Math.abs(e)))}var IW=R(()=>{"use strict";Yy();o(P3,"default")});function B3(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(bl(t)/3)))*3-bl(Math.abs(e)))}var OW=R(()=>{"use strict";Yy();o(B3,"default")});function F3(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,bl(t)-bl(e))+1}var PW=R(()=>{"use strict";Yy();o(F3,"default")});var f_=R(()=>{"use strict";MW();i_();IW();OW();PW()});var BW=R(()=>{"use strict"});var FW=R(()=>{"use strict"});var zW=R(()=>{"use strict"});var $W=R(()=>{"use strict"});function _h(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e);break}return this}var qy=R(()=>{"use strict";o(_h,"initRange")});function bu(){var e=new Lp,t=[],r=[],n=d_;function i(a){let s=e.get(a);if(s===void 0){if(n!==d_)return n;e.set(a,s=t.push(a)-1)}return r[s%r.length]}return o(i,"scale"),i.domain=function(a){if(!arguments.length)return t.slice();t=[],e=new Lp;for(let s of a)e.has(s)||e.set(s,t.push(s)-1);return i},i.range=function(a){return arguments.length?(r=Array.from(a),i):r.slice()},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return bu(t,r).unknown(n)},_h.apply(i,arguments),i}var d_,p_=R(()=>{"use strict";wh();qy();d_=Symbol("implicit");o(bu,"ordinal")});function Up(){var e=bu().unknown(void 0),t=e.domain,r=e.range,n=0,i=1,a,s,l=!1,u=0,h=0,f=.5;delete e.unknown;function d(){var p=t().length,m=i{"use strict";wh();qy();p_();o(Up,"band")});function m_(e){return function(){return e}}var VW=R(()=>{"use strict";o(m_,"constants")});function g_(e){return+e}var UW=R(()=>{"use strict";o(g_,"number")});function Hp(e){return e}function y_(e,t){return(t-=e=+e)?function(r){return(r-e)/t}:m_(isNaN(t)?NaN:.5)}function uTt(e,t){var r;return e>t&&(r=e,e=t,t=r),function(n){return Math.max(e,Math.min(t,n))}}function hTt(e,t,r){var n=e[0],i=e[1],a=t[0],s=t[1];return i2?fTt:hTt,u=h=null,d}o(f,"rescale");function d(p){return p==null||isNaN(p=+p)?a:(u||(u=l(e.map(n),t,r)))(n(s(p)))}return o(d,"scale"),d.invert=function(p){return s(i((h||(h=l(t,e.map(n),Zi)))(p)))},d.domain=function(p){return arguments.length?(e=Array.from(p,g_),f()):e.slice()},d.range=function(p){return arguments.length?(t=Array.from(p),f()):t.slice()},d.rangeRound=function(p){return t=Array.from(p),r=m3,f()},d.clamp=function(p){return arguments.length?(s=p?!0:Hp,f()):s!==Hp},d.interpolate=function(p){return arguments.length?(r=p,f()):r},d.unknown=function(p){return arguments.length?(a=p,d):a},function(p,m){return n=p,i=m,f()}}function Xy(){return dTt()(Hp,Hp)}var HW,v_=R(()=>{"use strict";wh();$p();VW();UW();HW=[0,1];o(Hp,"identity");o(y_,"normalize");o(uTt,"clamper");o(hTt,"bimap");o(fTt,"polymap");o(z3,"copy");o(dTt,"transformer");o(Xy,"continuous")});function x_(e,t,r,n){var i=Dp(e,t,r),a;switch(n=Ah(n??",f"),n.type){case"s":{var s=Math.max(Math.abs(e),Math.abs(t));return n.precision==null&&!isNaN(a=B3(i,s))&&(n.precision=a),O3(n,s)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=F3(i,Math.max(Math.abs(e),Math.abs(t))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=P3(i))&&(n.precision=a-(n.type==="%")*2);break}}return I3(n)}var WW=R(()=>{"use strict";wh();f_();o(x_,"tickFormat")});function pTt(e){var t=e.domain;return e.ticks=function(r){var n=t();return Z4(n[0],n[n.length-1],r??10)},e.tickFormat=function(r,n){var i=t();return x_(i[0],i[i.length-1],r??10,n)},e.nice=function(r){r==null&&(r=10);var n=t(),i=0,a=n.length-1,s=n[i],l=n[a],u,h,f=10;for(l0;){if(h=ky(s,l,r),h===u)return n[i]=s,n[a]=l,t(n);if(h>0)s=Math.floor(s/h)*h,l=Math.ceil(l/h)*h;else if(h<0)s=Math.ceil(s*h)/h,l=Math.floor(l*h)/h;else break;u=h}return e},e}function wl(){var e=Xy();return e.copy=function(){return z3(e,wl())},_h.apply(e,arguments),pTt(e)}var YW=R(()=>{"use strict";wh();v_();qy();WW();o(pTt,"linearish");o(wl,"linear")});function b_(e,t){e=e.slice();var r=0,n=e.length-1,i=e[r],a=e[n],s;return a{"use strict";o(b_,"nice")});function vn(e,t,r,n){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return o(i,"interval"),i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{let s=i(a),l=i.ceil(a);return a-s(t(a=new Date(+a),s==null?1:Math.floor(s)),a),i.range=(a,s,l)=>{let u=[];if(a=i.ceil(a),l=l==null?1:Math.floor(l),!(a0))return u;let h;do u.push(h=new Date(+a)),t(a,l),e(a);while(hvn(s=>{if(s>=s)for(;e(s),!a(s);)s.setTime(s-1)},(s,l)=>{if(s>=s)if(l<0)for(;++l<=0;)for(;t(s,-1),!a(s););else for(;--l>=0;)for(;t(s,1),!a(s););}),r&&(i.count=(a,s)=>(w_.setTime(+a),T_.setTime(+s),e(w_),e(T_),Math.floor(r(w_,T_))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(n?s=>n(s)%a===0:s=>i.count(0,s)%a===0):i)),i}var w_,T_,wu=R(()=>{"use strict";w_=new Date,T_=new Date;o(vn,"timeInterval")});var pc,XW,k_=R(()=>{"use strict";wu();pc=vn(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);pc.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?vn(t=>{t.setTime(Math.floor(t/e)*e)},(t,r)=>{t.setTime(+t+r*e)},(t,r)=>(r-t)/e):pc);XW=pc.range});var Zs,jW,E_=R(()=>{"use strict";wu();Zs=vn(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*1e3)},(e,t)=>(t-e)/1e3,e=>e.getUTCSeconds()),jW=Zs.range});var Tu,mTt,$3,gTt,C_=R(()=>{"use strict";wu();Tu=vn(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*1e3)},(e,t)=>{e.setTime(+e+t*6e4)},(e,t)=>(t-e)/6e4,e=>e.getMinutes()),mTt=Tu.range,$3=vn(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*6e4)},(e,t)=>(t-e)/6e4,e=>e.getUTCMinutes()),gTt=$3.range});var ku,yTt,G3,vTt,S_=R(()=>{"use strict";wu();ku=vn(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*1e3-e.getMinutes()*6e4)},(e,t)=>{e.setTime(+e+t*36e5)},(e,t)=>(t-e)/36e5,e=>e.getHours()),yTt=ku.range,G3=vn(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*36e5)},(e,t)=>(t-e)/36e5,e=>e.getUTCHours()),vTt=G3.range});var Mo,xTt,Ky,bTt,V3,wTt,A_=R(()=>{"use strict";wu();Mo=vn(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*6e4)/864e5,e=>e.getDate()-1),xTt=Mo.range,Ky=vn(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/864e5,e=>e.getUTCDate()-1),bTt=Ky.range,V3=vn(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/864e5,e=>Math.floor(e/864e5)),wTt=V3.range});function yd(e){return vn(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,r)=>{t.setDate(t.getDate()+r*7)},(t,r)=>(r-t-(r.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/6048e5)}function vd(e){return vn(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCDate(t.getUTCDate()+r*7)},(t,r)=>(r-t)/6048e5)}var Tl,Lh,U3,H3,gc,W3,Y3,QW,TTt,kTt,ETt,CTt,STt,ATt,xd,Wp,ZW,JW,Dh,tY,eY,rY,_Tt,LTt,DTt,RTt,NTt,MTt,__=R(()=>{"use strict";wu();o(yd,"timeWeekday");Tl=yd(0),Lh=yd(1),U3=yd(2),H3=yd(3),gc=yd(4),W3=yd(5),Y3=yd(6),QW=Tl.range,TTt=Lh.range,kTt=U3.range,ETt=H3.range,CTt=gc.range,STt=W3.range,ATt=Y3.range;o(vd,"utcWeekday");xd=vd(0),Wp=vd(1),ZW=vd(2),JW=vd(3),Dh=vd(4),tY=vd(5),eY=vd(6),rY=xd.range,_Tt=Wp.range,LTt=ZW.range,DTt=JW.range,RTt=Dh.range,NTt=tY.range,MTt=eY.range});var Eu,ITt,q3,OTt,L_=R(()=>{"use strict";wu();Eu=vn(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth()),ITt=Eu.range,q3=vn(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth()),OTt=q3.range});var Js,PTt,kl,BTt,D_=R(()=>{"use strict";wu();Js=vn(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Js.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:vn(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,r)=>{t.setFullYear(t.getFullYear()+r*e)});PTt=Js.range,kl=vn(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());kl.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:vn(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)});BTt=kl.range});function iY(e,t,r,n,i,a){let s=[[Zs,1,1e3],[Zs,5,5*1e3],[Zs,15,15*1e3],[Zs,30,30*1e3],[a,1,6e4],[a,5,5*6e4],[a,15,15*6e4],[a,30,30*6e4],[i,1,36e5],[i,3,3*36e5],[i,6,6*36e5],[i,12,12*36e5],[n,1,864e5],[n,2,2*864e5],[r,1,6048e5],[t,1,2592e6],[t,3,3*2592e6],[e,1,31536e6]];function l(h,f,d){let p=fv).right(s,p);if(m===s.length)return e.every(Dp(h/31536e6,f/31536e6,d));if(m===0)return pc.every(Math.max(Dp(h,f,d),1));let[g,y]=s[p/s[m-1][2]{"use strict";wh();k_();E_();C_();S_();A_();__();L_();D_();o(iY,"ticker");[zTt,$Tt]=iY(kl,q3,xd,V3,G3,$3),[R_,N_]=iY(Js,Eu,Tl,Mo,ku,Tu)});var X3=R(()=>{"use strict";k_();E_();C_();S_();A_();__();L_();D_();aY()});function M_(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function I_(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function Qy(e,t,r){return{y:e,m:t,d:r,H:0,M:0,S:0,L:0}}function O_(e){var t=e.dateTime,r=e.date,n=e.time,i=e.periods,a=e.days,s=e.shortDays,l=e.months,u=e.shortMonths,h=Zy(i),f=Jy(i),d=Zy(a),p=Jy(a),m=Zy(s),g=Jy(s),y=Zy(l),v=Jy(l),x=Zy(u),b=Jy(u),w={a:P,A:F,b:B,B:G,c:null,d:hY,e:hY,f:ckt,g:xkt,G:wkt,H:skt,I:okt,j:lkt,L:gY,m:ukt,M:hkt,p:z,q:W,Q:pY,s:mY,S:fkt,u:dkt,U:pkt,V:mkt,w:gkt,W:ykt,x:null,X:null,y:vkt,Y:bkt,Z:Tkt,"%":dY},S={a:Q,A:j,b:at,B:X,c:null,d:fY,e:fY,f:Skt,g:Pkt,G:Fkt,H:kkt,I:Ekt,j:Ckt,L:vY,m:Akt,M:_kt,p:J,q:Z,Q:pY,s:mY,S:Lkt,u:Dkt,U:Rkt,V:Nkt,w:Mkt,W:Ikt,x:null,X:null,y:Okt,Y:Bkt,Z:zkt,"%":dY},T={a:M,A:N,b:k,B:I,c:C,d:cY,e:cY,f:rkt,g:lY,G:oY,H:uY,I:uY,j:ZTt,L:ekt,m:QTt,M:JTt,p:L,q:KTt,Q:ikt,s:akt,S:tkt,u:WTt,U:YTt,V:qTt,w:HTt,W:XTt,x:O,X:D,y:lY,Y:oY,Z:jTt,"%":nkt};w.x=E(r,w),w.X=E(n,w),w.c=E(t,w),S.x=E(r,S),S.X=E(n,S),S.c=E(t,S);function E(H,q){return function(K){var ot=[],ct=-1,ut=0,et=H.length,Mt,it,wt;for(K instanceof Date||(K=new Date(+K));++ct53)return null;"w"in ot||(ot.w=1),"Z"in ot?(ut=I_(Qy(ot.y,0,1)),et=ut.getUTCDay(),ut=et>4||et===0?Wp.ceil(ut):Wp(ut),ut=Ky.offset(ut,(ot.V-1)*7),ot.y=ut.getUTCFullYear(),ot.m=ut.getUTCMonth(),ot.d=ut.getUTCDate()+(ot.w+6)%7):(ut=M_(Qy(ot.y,0,1)),et=ut.getDay(),ut=et>4||et===0?Lh.ceil(ut):Lh(ut),ut=Mo.offset(ut,(ot.V-1)*7),ot.y=ut.getFullYear(),ot.m=ut.getMonth(),ot.d=ut.getDate()+(ot.w+6)%7)}else("W"in ot||"U"in ot)&&("w"in ot||(ot.w="u"in ot?ot.u%7:"W"in ot?1:0),et="Z"in ot?I_(Qy(ot.y,0,1)).getUTCDay():M_(Qy(ot.y,0,1)).getDay(),ot.m=0,ot.d="W"in ot?(ot.w+6)%7+ot.W*7-(et+5)%7:ot.w+ot.U*7-(et+6)%7);return"Z"in ot?(ot.H+=ot.Z/100|0,ot.M+=ot.Z%100,I_(ot)):M_(ot)}}o(_,"newParse");function A(H,q,K,ot){for(var ct=0,ut=q.length,et=K.length,Mt,it;ct=et)return-1;if(Mt=q.charCodeAt(ct++),Mt===37){if(Mt=q.charAt(ct++),it=T[Mt in sY?q.charAt(ct++):Mt],!it||(ot=it(H,K,ot))<0)return-1}else if(Mt!=K.charCodeAt(ot++))return-1}return ot}o(A,"parseSpecifier");function L(H,q,K){var ot=h.exec(q.slice(K));return ot?(H.p=f.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(L,"parsePeriod");function M(H,q,K){var ot=m.exec(q.slice(K));return ot?(H.w=g.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(M,"parseShortWeekday");function N(H,q,K){var ot=d.exec(q.slice(K));return ot?(H.w=p.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(N,"parseWeekday");function k(H,q,K){var ot=x.exec(q.slice(K));return ot?(H.m=b.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(k,"parseShortMonth");function I(H,q,K){var ot=y.exec(q.slice(K));return ot?(H.m=v.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(I,"parseMonth");function C(H,q,K){return A(H,t,q,K)}o(C,"parseLocaleDateTime");function O(H,q,K){return A(H,r,q,K)}o(O,"parseLocaleDate");function D(H,q,K){return A(H,n,q,K)}o(D,"parseLocaleTime");function P(H){return s[H.getDay()]}o(P,"formatShortWeekday");function F(H){return a[H.getDay()]}o(F,"formatWeekday");function B(H){return u[H.getMonth()]}o(B,"formatShortMonth");function G(H){return l[H.getMonth()]}o(G,"formatMonth");function z(H){return i[+(H.getHours()>=12)]}o(z,"formatPeriod");function W(H){return 1+~~(H.getMonth()/3)}o(W,"formatQuarter");function Q(H){return s[H.getUTCDay()]}o(Q,"formatUTCShortWeekday");function j(H){return a[H.getUTCDay()]}o(j,"formatUTCWeekday");function at(H){return u[H.getUTCMonth()]}o(at,"formatUTCShortMonth");function X(H){return l[H.getUTCMonth()]}o(X,"formatUTCMonth");function J(H){return i[+(H.getUTCHours()>=12)]}o(J,"formatUTCPeriod");function Z(H){return 1+~~(H.getUTCMonth()/3)}return o(Z,"formatUTCQuarter"),{format:o(function(H){var q=E(H+="",w);return q.toString=function(){return H},q},"format"),parse:o(function(H){var q=_(H+="",!1);return q.toString=function(){return H},q},"parse"),utcFormat:o(function(H){var q=E(H+="",S);return q.toString=function(){return H},q},"utcFormat"),utcParse:o(function(H){var q=_(H+="",!0);return q.toString=function(){return H},q},"utcParse")}}function Hr(e,t,r){var n=e<0?"-":"",i=(n?-e:e)+"",a=i.length;return n+(a[t.toLowerCase(),r]))}function HTt(e,t,r){var n=Ji.exec(t.slice(r,r+1));return n?(e.w=+n[0],r+n[0].length):-1}function WTt(e,t,r){var n=Ji.exec(t.slice(r,r+1));return n?(e.u=+n[0],r+n[0].length):-1}function YTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.U=+n[0],r+n[0].length):-1}function qTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.V=+n[0],r+n[0].length):-1}function XTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.W=+n[0],r+n[0].length):-1}function oY(e,t,r){var n=Ji.exec(t.slice(r,r+4));return n?(e.y=+n[0],r+n[0].length):-1}function lY(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function jTt(e,t,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return n?(e.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function KTt(e,t,r){var n=Ji.exec(t.slice(r,r+1));return n?(e.q=n[0]*3-3,r+n[0].length):-1}function QTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.m=n[0]-1,r+n[0].length):-1}function cY(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function ZTt(e,t,r){var n=Ji.exec(t.slice(r,r+3));return n?(e.m=0,e.d=+n[0],r+n[0].length):-1}function uY(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function JTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function tkt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function ekt(e,t,r){var n=Ji.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function rkt(e,t,r){var n=Ji.exec(t.slice(r,r+6));return n?(e.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function nkt(e,t,r){var n=GTt.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function ikt(e,t,r){var n=Ji.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function akt(e,t,r){var n=Ji.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function hY(e,t){return Hr(e.getDate(),t,2)}function skt(e,t){return Hr(e.getHours(),t,2)}function okt(e,t){return Hr(e.getHours()%12||12,t,2)}function lkt(e,t){return Hr(1+Mo.count(Js(e),e),t,3)}function gY(e,t){return Hr(e.getMilliseconds(),t,3)}function ckt(e,t){return gY(e,t)+"000"}function ukt(e,t){return Hr(e.getMonth()+1,t,2)}function hkt(e,t){return Hr(e.getMinutes(),t,2)}function fkt(e,t){return Hr(e.getSeconds(),t,2)}function dkt(e){var t=e.getDay();return t===0?7:t}function pkt(e,t){return Hr(Tl.count(Js(e)-1,e),t,2)}function yY(e){var t=e.getDay();return t>=4||t===0?gc(e):gc.ceil(e)}function mkt(e,t){return e=yY(e),Hr(gc.count(Js(e),e)+(Js(e).getDay()===4),t,2)}function gkt(e){return e.getDay()}function ykt(e,t){return Hr(Lh.count(Js(e)-1,e),t,2)}function vkt(e,t){return Hr(e.getFullYear()%100,t,2)}function xkt(e,t){return e=yY(e),Hr(e.getFullYear()%100,t,2)}function bkt(e,t){return Hr(e.getFullYear()%1e4,t,4)}function wkt(e,t){var r=e.getDay();return e=r>=4||r===0?gc(e):gc.ceil(e),Hr(e.getFullYear()%1e4,t,4)}function Tkt(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Hr(t/60|0,"0",2)+Hr(t%60,"0",2)}function fY(e,t){return Hr(e.getUTCDate(),t,2)}function kkt(e,t){return Hr(e.getUTCHours(),t,2)}function Ekt(e,t){return Hr(e.getUTCHours()%12||12,t,2)}function Ckt(e,t){return Hr(1+Ky.count(kl(e),e),t,3)}function vY(e,t){return Hr(e.getUTCMilliseconds(),t,3)}function Skt(e,t){return vY(e,t)+"000"}function Akt(e,t){return Hr(e.getUTCMonth()+1,t,2)}function _kt(e,t){return Hr(e.getUTCMinutes(),t,2)}function Lkt(e,t){return Hr(e.getUTCSeconds(),t,2)}function Dkt(e){var t=e.getUTCDay();return t===0?7:t}function Rkt(e,t){return Hr(xd.count(kl(e)-1,e),t,2)}function xY(e){var t=e.getUTCDay();return t>=4||t===0?Dh(e):Dh.ceil(e)}function Nkt(e,t){return e=xY(e),Hr(Dh.count(kl(e),e)+(kl(e).getUTCDay()===4),t,2)}function Mkt(e){return e.getUTCDay()}function Ikt(e,t){return Hr(Wp.count(kl(e)-1,e),t,2)}function Okt(e,t){return Hr(e.getUTCFullYear()%100,t,2)}function Pkt(e,t){return e=xY(e),Hr(e.getUTCFullYear()%100,t,2)}function Bkt(e,t){return Hr(e.getUTCFullYear()%1e4,t,4)}function Fkt(e,t){var r=e.getUTCDay();return e=r>=4||r===0?Dh(e):Dh.ceil(e),Hr(e.getUTCFullYear()%1e4,t,4)}function zkt(){return"+0000"}function dY(){return"%"}function pY(e){return+e}function mY(e){return Math.floor(+e/1e3)}var sY,Ji,GTt,VTt,bY=R(()=>{"use strict";X3();o(M_,"localDate");o(I_,"utcDate");o(Qy,"newDate");o(O_,"formatLocale");sY={"-":"",_:" ",0:"0"},Ji=/^\s*\d+/,GTt=/^%/,VTt=/[\\^$*+?|[\]().{}]/g;o(Hr,"pad");o(UTt,"requote");o(Zy,"formatRe");o(Jy,"formatLookup");o(HTt,"parseWeekdayNumberSunday");o(WTt,"parseWeekdayNumberMonday");o(YTt,"parseWeekNumberSunday");o(qTt,"parseWeekNumberISO");o(XTt,"parseWeekNumberMonday");o(oY,"parseFullYear");o(lY,"parseYear");o(jTt,"parseZone");o(KTt,"parseQuarter");o(QTt,"parseMonthNumber");o(cY,"parseDayOfMonth");o(ZTt,"parseDayOfYear");o(uY,"parseHour24");o(JTt,"parseMinutes");o(tkt,"parseSeconds");o(ekt,"parseMilliseconds");o(rkt,"parseMicroseconds");o(nkt,"parseLiteralPercent");o(ikt,"parseUnixTimestamp");o(akt,"parseUnixTimestampSeconds");o(hY,"formatDayOfMonth");o(skt,"formatHour24");o(okt,"formatHour12");o(lkt,"formatDayOfYear");o(gY,"formatMilliseconds");o(ckt,"formatMicroseconds");o(ukt,"formatMonthNumber");o(hkt,"formatMinutes");o(fkt,"formatSeconds");o(dkt,"formatWeekdayNumberMonday");o(pkt,"formatWeekNumberSunday");o(yY,"dISO");o(mkt,"formatWeekNumberISO");o(gkt,"formatWeekdayNumberSunday");o(ykt,"formatWeekNumberMonday");o(vkt,"formatYear");o(xkt,"formatYearISO");o(bkt,"formatFullYear");o(wkt,"formatFullYearISO");o(Tkt,"formatZone");o(fY,"formatUTCDayOfMonth");o(kkt,"formatUTCHour24");o(Ekt,"formatUTCHour12");o(Ckt,"formatUTCDayOfYear");o(vY,"formatUTCMilliseconds");o(Skt,"formatUTCMicroseconds");o(Akt,"formatUTCMonthNumber");o(_kt,"formatUTCMinutes");o(Lkt,"formatUTCSeconds");o(Dkt,"formatUTCWeekdayNumberMonday");o(Rkt,"formatUTCWeekNumberSunday");o(xY,"UTCdISO");o(Nkt,"formatUTCWeekNumberISO");o(Mkt,"formatUTCWeekdayNumberSunday");o(Ikt,"formatUTCWeekNumberMonday");o(Okt,"formatUTCYear");o(Pkt,"formatUTCYearISO");o(Bkt,"formatUTCFullYear");o(Fkt,"formatUTCFullYearISO");o(zkt,"formatUTCZone");o(dY,"formatLiteralPercent");o(pY,"formatUnixTimestamp");o(mY,"formatUnixTimestampSeconds")});function P_(e){return Yp=O_(e),bd=Yp.format,wY=Yp.parse,TY=Yp.utcFormat,kY=Yp.utcParse,Yp}var Yp,bd,wY,TY,kY,EY=R(()=>{"use strict";bY();P_({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"]});o(P_,"defaultLocale")});var B_=R(()=>{"use strict";EY()});function $kt(e){return new Date(e)}function Gkt(e){return e instanceof Date?+e:+new Date(+e)}function CY(e,t,r,n,i,a,s,l,u,h){var f=Xy(),d=f.invert,p=f.domain,m=h(".%L"),g=h(":%S"),y=h("%I:%M"),v=h("%I %p"),x=h("%a %d"),b=h("%b %d"),w=h("%B"),S=h("%Y");function T(E){return(u(E){"use strict";X3();B_();v_();qy();qW();o($kt,"date");o(Gkt,"number");o(CY,"calendar");o(j3,"time")});var AY=R(()=>{"use strict";GW();YW();p_();SY()});function F_(e){for(var t=e.length/6|0,r=new Array(t),n=0;n{"use strict";o(F_,"default")});var z_,LY=R(()=>{"use strict";_Y();z_=F_("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var DY=R(()=>{"use strict";LY()});function zn(e){return o(function(){return e},"constant")}var K3=R(()=>{"use strict";o(zn,"default")});function NY(e){return e>1?0:e<-1?qp:Math.acos(e)}function G_(e){return e>=1?tv:e<=-1?-tv:Math.asin(e)}var $_,pa,Rh,RY,Q3,El,wd,ta,qp,tv,Xp,Z3=R(()=>{"use strict";$_=Math.abs,pa=Math.atan2,Rh=Math.cos,RY=Math.max,Q3=Math.min,El=Math.sin,wd=Math.sqrt,ta=1e-12,qp=Math.PI,tv=qp/2,Xp=2*qp;o(NY,"acos");o(G_,"asin")});function J3(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(r==null)t=null;else{let n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);t=n}return e},()=>new dd(t)}var V_=R(()=>{"use strict";t_();o(J3,"withPath")});function Vkt(e){return e.innerRadius}function Ukt(e){return e.outerRadius}function Hkt(e){return e.startAngle}function Wkt(e){return e.endAngle}function Ykt(e){return e&&e.padAngle}function qkt(e,t,r,n,i,a,s,l){var u=r-e,h=n-t,f=s-i,d=l-a,p=d*u-f*h;if(!(p*pC*C+O*O&&(A=M,L=N),{cx:A,cy:L,x01:-f,y01:-d,x11:A*(i/T-1),y11:L*(i/T-1)}}function Cl(){var e=Vkt,t=Ukt,r=zn(0),n=null,i=Hkt,a=Wkt,s=Ykt,l=null,u=J3(h);function h(){var f,d,p=+e.apply(this,arguments),m=+t.apply(this,arguments),g=i.apply(this,arguments)-tv,y=a.apply(this,arguments)-tv,v=$_(y-g),x=y>g;if(l||(l=f=u()),mta))l.moveTo(0,0);else if(v>Xp-ta)l.moveTo(m*Rh(g),m*El(g)),l.arc(0,0,m,g,y,!x),p>ta&&(l.moveTo(p*Rh(y),p*El(y)),l.arc(0,0,p,y,g,x));else{var b=g,w=y,S=g,T=y,E=v,_=v,A=s.apply(this,arguments)/2,L=A>ta&&(n?+n.apply(this,arguments):wd(p*p+m*m)),M=Q3($_(m-p)/2,+r.apply(this,arguments)),N=M,k=M,I,C;if(L>ta){var O=G_(L/p*El(A)),D=G_(L/m*El(A));(E-=O*2)>ta?(O*=x?1:-1,S+=O,T-=O):(E=0,S=T=(g+y)/2),(_-=D*2)>ta?(D*=x?1:-1,b+=D,w-=D):(_=0,b=w=(g+y)/2)}var P=m*Rh(b),F=m*El(b),B=p*Rh(T),G=p*El(T);if(M>ta){var z=m*Rh(w),W=m*El(w),Q=p*Rh(S),j=p*El(S),at;if(vta?k>ta?(I=t5(Q,j,P,F,m,k,x),C=t5(z,W,B,G,m,k,x),l.moveTo(I.cx+I.x01,I.cy+I.y01),kta)||!(E>ta)?l.lineTo(B,G):N>ta?(I=t5(B,G,z,W,p,-N,x),C=t5(P,F,Q,j,p,-N,x),l.lineTo(I.cx+I.x01,I.cy+I.y01),N{"use strict";K3();Z3();V_();o(Vkt,"arcInnerRadius");o(Ukt,"arcOuterRadius");o(Hkt,"arcStartAngle");o(Wkt,"arcEndAngle");o(Ykt,"arcPadAngle");o(qkt,"intersect");o(t5,"cornerTangents");o(Cl,"default")});function ev(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}var t2e,U_=R(()=>{"use strict";t2e=Array.prototype.slice;o(ev,"default")});function IY(e){this._context=e}function Cu(e){return new IY(e)}var H_=R(()=>{"use strict";o(IY,"Linear");IY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}},"point")};o(Cu,"default")});function OY(e){return e[0]}function PY(e){return e[1]}var BY=R(()=>{"use strict";o(OY,"x");o(PY,"y")});function ma(e,t){var r=zn(!0),n=null,i=Cu,a=null,s=J3(l);e=typeof e=="function"?e:e===void 0?OY:zn(e),t=typeof t=="function"?t:t===void 0?PY:zn(t);function l(u){var h,f=(u=ev(u)).length,d,p=!1,m;for(n==null&&(a=i(m=s())),h=0;h<=f;++h)!(h{"use strict";U_();K3();H_();V_();BY();o(ma,"default")});function W_(e,t){return te?1:t>=e?0:NaN}var zY=R(()=>{"use strict";o(W_,"default")});function Y_(e){return e}var $Y=R(()=>{"use strict";o(Y_,"default")});function e5(){var e=Y_,t=W_,r=null,n=zn(0),i=zn(Xp),a=zn(0);function s(l){var u,h=(l=ev(l)).length,f,d,p=0,m=new Array(h),g=new Array(h),y=+n.apply(this,arguments),v=Math.min(Xp,Math.max(-Xp,i.apply(this,arguments)-y)),x,b=Math.min(Math.abs(v)/h,a.apply(this,arguments)),w=b*(v<0?-1:1),S;for(u=0;u0&&(p+=S);for(t!=null?m.sort(function(T,E){return t(g[T],g[E])}):r!=null&&m.sort(function(T,E){return r(l[T],l[E])}),u=0,d=p?(v-h*w)/p:0;u0?S*d:0)+w,g[f]={data:l[f],index:u,value:S,startAngle:y,endAngle:x,padAngle:b};return g}return o(s,"pie"),s.value=function(l){return arguments.length?(e=typeof l=="function"?l:zn(+l),s):e},s.sortValues=function(l){return arguments.length?(t=l,r=null,s):t},s.sort=function(l){return arguments.length?(r=l,t=null,s):r},s.startAngle=function(l){return arguments.length?(n=typeof l=="function"?l:zn(+l),s):n},s.endAngle=function(l){return arguments.length?(i=typeof l=="function"?l:zn(+l),s):i},s.padAngle=function(l){return arguments.length?(a=typeof l=="function"?l:zn(+l),s):a},s}var GY=R(()=>{"use strict";U_();K3();zY();$Y();Z3();o(e5,"default")});function q_(e){return new r5(e,!0)}function X_(e){return new r5(e,!1)}var r5,VY=R(()=>{"use strict";r5=class{static{o(this,"Bump")}constructor(t,r){this._context=t,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,r){switch(t=+t,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r);break}}this._x0=t,this._y0=r}};o(q_,"bumpX");o(X_,"bumpY")});function to(){}var rv=R(()=>{"use strict";o(to,"default")});function jp(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function nv(e){this._context=e}function Ts(e){return new nv(e)}var iv=R(()=>{"use strict";o(jp,"point");o(nv,"Basis");nv.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 3:jp(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);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:jp(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t},"point")};o(Ts,"default")});function UY(e){this._context=e}function n5(e){return new UY(e)}var HY=R(()=>{"use strict";rv();iv();o(UY,"BasisClosed");UY.prototype={areaStart:to,areaEnd:to,lineStart:o(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},"lineStart"),lineEnd:o(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}}},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:jp(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t},"point")};o(n5,"default")});function WY(e){this._context=e}function i5(e){return new WY(e)}var YY=R(()=>{"use strict";iv();o(WY,"BasisOpen");WY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,n=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:jp(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t},"point")};o(i5,"default")});function qY(e,t){this._basis=new nv(e),this._beta=t}var j_,XY=R(()=>{"use strict";iv();o(qY,"Bundle");qY.prototype={lineStart:o(function(){this._x=[],this._y=[],this._basis.lineStart()},"lineStart"),lineEnd:o(function(){var e=this._x,t=this._y,r=e.length-1;if(r>0)for(var n=e[0],i=t[0],a=e[r]-n,s=t[r]-i,l=-1,u;++l<=r;)u=l/r,this._basis.point(this._beta*e[l]+(1-this._beta)*(n+u*a),this._beta*t[l]+(1-this._beta)*(i+u*s));this._x=this._y=null,this._basis.lineEnd()},"lineEnd"),point:o(function(e,t){this._x.push(+e),this._y.push(+t)},"point")};j_=o(function e(t){function r(n){return t===1?new nv(n):new qY(n,t)}return o(r,"bundle"),r.beta=function(n){return e(+n)},r},"custom")(.85)});function Kp(e,t,r){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-r),e._x2,e._y2)}function a5(e,t){this._context=e,this._k=(1-t)/6}var K_,av=R(()=>{"use strict";o(Kp,"point");o(a5,"Cardinal");a5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Kp(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:Kp(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};K_=o(function e(t){function r(n){return new a5(n,t)}return o(r,"cardinal"),r.tension=function(n){return e(+n)},r},"custom")(0)});function s5(e,t){this._context=e,this._k=(1-t)/6}var Q_,Z_=R(()=>{"use strict";rv();av();o(s5,"CardinalClosed");s5.prototype={areaStart:to,areaEnd:to,lineStart:o(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},"lineStart"),lineEnd:o(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}}},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Kp(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};Q_=o(function e(t){function r(n){return new s5(n,t)}return o(r,"cardinal"),r.tension=function(n){return e(+n)},r},"custom")(0)});function o5(e,t){this._context=e,this._k=(1-t)/6}var J_,t9=R(()=>{"use strict";av();o(o5,"CardinalOpen");o5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,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:Kp(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};J_=o(function e(t){function r(n){return new o5(n,t)}return o(r,"cardinal"),r.tension=function(n){return e(+n)},r},"custom")(0)});function sv(e,t,r){var n=e._x1,i=e._y1,a=e._x2,s=e._y2;if(e._l01_a>ta){var l=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,u=3*e._l01_a*(e._l01_a+e._l12_a);n=(n*l-e._x0*e._l12_2a+e._x2*e._l01_2a)/u,i=(i*l-e._y0*e._l12_2a+e._y2*e._l01_2a)/u}if(e._l23_a>ta){var h=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,f=3*e._l23_a*(e._l23_a+e._l12_a);a=(a*h+e._x1*e._l23_2a-t*e._l12_2a)/f,s=(s*h+e._y1*e._l23_2a-r*e._l12_2a)/f}e._context.bezierCurveTo(n,i,a,s,e._x2,e._y2)}function jY(e,t){this._context=e,this._alpha=t}var e9,l5=R(()=>{"use strict";Z3();av();o(sv,"point");o(jY,"CatmullRom");jY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(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},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,n=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:sv(this,e,t);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=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};e9=o(function e(t){function r(n){return t?new jY(n,t):new a5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return e(+n)},r},"custom")(.5)});function KY(e,t){this._context=e,this._alpha=t}var r9,QY=R(()=>{"use strict";Z_();rv();l5();o(KY,"CatmullRomClosed");KY.prototype={areaStart:to,areaEnd:to,lineStart:o(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},"lineStart"),lineEnd:o(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}}},"lineEnd"),point:o(function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,n=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:sv(this,e,t);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=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};r9=o(function e(t){function r(n){return t?new KY(n,t):new s5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return e(+n)},r},"custom")(.5)});function ZY(e,t){this._context=e,this._alpha=t}var n9,JY=R(()=>{"use strict";t9();l5();o(ZY,"CatmullRomOpen");ZY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(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},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,n=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,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:sv(this,e,t);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=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};n9=o(function e(t){function r(n){return t?new ZY(n,t):new o5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return e(+n)},r},"custom")(.5)});function tq(e){this._context=e}function c5(e){return new tq(e)}var eq=R(()=>{"use strict";rv();o(tq,"LinearClosed");tq.prototype={areaStart:to,areaEnd:to,lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){this._point&&this._context.closePath()},"lineEnd"),point:o(function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))},"point")};o(c5,"default")});function rq(e){return e<0?-1:1}function nq(e,t,r){var n=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(n||i<0&&-0),s=(r-e._y1)/(i||n<0&&-0),l=(a*i+s*n)/(n+i);return(rq(a)+rq(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(l))||0}function iq(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function i9(e,t,r){var n=e._x0,i=e._y0,a=e._x1,s=e._y1,l=(a-n)/3;e._context.bezierCurveTo(n+l,i+l*t,a-l,s-l*r,a,s)}function u5(e){this._context=e}function aq(e){this._context=new sq(e)}function sq(e){this._context=e}function a9(e){return new u5(e)}function s9(e){return new aq(e)}var oq=R(()=>{"use strict";o(rq,"sign");o(nq,"slope3");o(iq,"slope2");o(i9,"point");o(u5,"MonotoneX");u5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:i9(this,this._t0,iq(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){var r=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,i9(this,iq(this,r=nq(this,e,t)),r);break;default:i9(this,this._t0,r=nq(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}},"point")};o(aq,"MonotoneY");(aq.prototype=Object.create(u5.prototype)).point=function(e,t){u5.prototype.point.call(this,t,e)};o(sq,"ReflectContext");sq.prototype={moveTo:o(function(e,t){this._context.moveTo(t,e)},"moveTo"),closePath:o(function(){this._context.closePath()},"closePath"),lineTo:o(function(e,t){this._context.lineTo(t,e)},"lineTo"),bezierCurveTo:o(function(e,t,r,n,i,a){this._context.bezierCurveTo(t,e,n,r,a,i)},"bezierCurveTo")};o(a9,"monotoneX");o(s9,"monotoneY")});function cq(e){this._context=e}function lq(e){var t,r=e.length-1,n,i=new Array(r),a=new Array(r),s=new Array(r);for(i[0]=0,a[0]=2,s[0]=e[0]+2*e[1],t=1;t=0;--t)i[t]=(s[t]-i[t+1])/a[t];for(a[r-1]=(e[r]+i[r-1])/2,t=0;t{"use strict";o(cq,"Natural");cq.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=[],this._y=[]},"lineStart"),lineEnd:o(function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),r===2)this._context.lineTo(e[1],t[1]);else for(var n=lq(e),i=lq(t),a=0,s=1;s{"use strict";o(f5,"Step");f5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=this._y=NaN,this._point=0},"lineStart"),lineEnd:o(function(){0=0&&(this._t=1-this._t,this._line=1-this._line)},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}break}}this._x=e,this._y=t},"point")};o(d5,"default");o(o9,"stepBefore");o(l9,"stepAfter")});var fq=R(()=>{"use strict";MY();FY();GY();HY();YY();iv();VY();XY();Z_();t9();av();QY();JY();l5();eq();H_();oq();uq();hq()});var dq=R(()=>{"use strict"});var pq=R(()=>{"use strict"});function Nh(e,t,r){this.k=e,this.x=t,this.y=r}function u9(e){for(;!e.__zoom;)if(!(e=e.parentNode))return c9;return e.__zoom}var c9,h9=R(()=>{"use strict";o(Nh,"Transform");Nh.prototype={constructor:Nh,scale:o(function(e){return e===1?this:new Nh(this.k*e,this.x,this.y)},"scale"),translate:o(function(e,t){return e===0&t===0?this:new Nh(this.k,this.x+this.k*e,this.y+this.k*t)},"translate"),apply:o(function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},"apply"),applyX:o(function(e){return e*this.k+this.x},"applyX"),applyY:o(function(e){return e*this.k+this.y},"applyY"),invert:o(function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},"invert"),invertX:o(function(e){return(e-this.x)/this.k},"invertX"),invertY:o(function(e){return(e-this.y)/this.k},"invertY"),rescaleX:o(function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},"rescaleX"),rescaleY:o(function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},"rescaleY"),toString:o(function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"},"toString")};c9=new Nh(1,0,0);u9.prototype=Nh.prototype;o(u9,"transform")});var mq=R(()=>{"use strict"});var gq=R(()=>{"use strict";L3();dq();pq();h9();mq()});var yq=R(()=>{"use strict";gq();h9()});var ur=R(()=>{"use strict";wh();XV();dW();yW();Bp();vW();xW();oA();zU();bW();j8();wW();kW();f_();BW();FW();$p();t_();zW();TW();$W();AY();DY();yl();fq();X3();B_();k3();L3();yq()});var vq=Ti(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.BLANK_URL=ea.relativeFirstCharacters=ea.whitespaceEscapeCharsRegex=ea.urlSchemeRegex=ea.ctrlCharactersRegex=ea.htmlCtrlEntityRegex=ea.htmlEntitiesRegex=ea.invalidProtocolRegex=void 0;ea.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;ea.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;ea.htmlCtrlEntityRegex=/&(newline|tab);/gi;ea.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;ea.urlSchemeRegex=/^.+(:|:)/gim;ea.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;ea.relativeFirstCharacters=[".","/"];ea.BLANK_URL="about:blank"});var Qp=Ti(p5=>{"use strict";Object.defineProperty(p5,"__esModule",{value:!0});p5.sanitizeUrl=void 0;var Ia=vq();function Xkt(e){return Ia.relativeFirstCharacters.indexOf(e[0])>-1}o(Xkt,"isRelativeUrlWithoutProtocol");function jkt(e){var t=e.replace(Ia.ctrlCharactersRegex,"");return t.replace(Ia.htmlEntitiesRegex,function(r,n){return String.fromCharCode(n)})}o(jkt,"decodeHtmlCharacters");function Kkt(e){return URL.canParse(e)}o(Kkt,"isValidUrl");function xq(e){try{return decodeURIComponent(e)}catch{return e}}o(xq,"decodeURI");function Qkt(e){if(!e)return Ia.BLANK_URL;var t,r=xq(e.trim());do r=jkt(r).replace(Ia.htmlCtrlEntityRegex,"").replace(Ia.ctrlCharactersRegex,"").replace(Ia.whitespaceEscapeCharsRegex,"").trim(),r=xq(r),t=r.match(Ia.ctrlCharactersRegex)||r.match(Ia.htmlEntitiesRegex)||r.match(Ia.htmlCtrlEntityRegex)||r.match(Ia.whitespaceEscapeCharsRegex);while(t&&t.length>0);var n=r;if(!n)return Ia.BLANK_URL;if(Xkt(n))return n;var i=n.trimStart(),a=i.match(Ia.urlSchemeRegex);if(!a)return n;var s=a[0].toLowerCase().trim();if(Ia.invalidProtocolRegex.test(s))return Ia.BLANK_URL;var l=i.replace(/\\/g,"/");if(s==="mailto:"||s.includes("://"))return l;if(s==="http:"||s==="https:"){if(!Kkt(l))return Ia.BLANK_URL;var u=new URL(l);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return l}o(Qkt,"sanitizeUrl");p5.sanitizeUrl=Qkt});var f9,Td,m5,bq,wq,Tq,Sl,ov,lv=R(()=>{"use strict";f9=Qi(Qp(),1);hr();Td=o((e,t)=>{let r=e.append("rect");if(r.attr("x",t.x),r.attr("y",t.y),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("width",t.width),r.attr("height",t.height),t.name&&r.attr("name",t.name),t.rx&&r.attr("rx",t.rx),t.ry&&r.attr("ry",t.ry),t.attrs!==void 0)for(let n in t.attrs)r.attr(n,t.attrs[n]);return t.class&&r.attr("class",t.class),r},"drawRect"),m5=o((e,t)=>{let r={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};Td(e,r).lower()},"drawBackgroundRect"),bq=o((e,t)=>{let r=t.text.replace(rd," "),n=e.append("text");n.attr("x",t.x),n.attr("y",t.y),n.attr("class","legend"),n.style("text-anchor",t.anchor),t.class&&n.attr("class",t.class);let i=n.append("tspan");return i.attr("x",t.x+t.textMargin*2),i.text(r),n},"drawText"),wq=o((e,t,r,n)=>{let i=e.append("image");i.attr("x",t),i.attr("y",r);let a=(0,f9.sanitizeUrl)(n);i.attr("xlink:href",a)},"drawImage"),Tq=o((e,t,r,n)=>{let i=e.append("use");i.attr("x",t),i.attr("y",r);let a=(0,f9.sanitizeUrl)(n);i.attr("xlink:href",`#${a}`)},"drawEmbeddedImage"),Sl=o(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),ov=o(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj")});var kq,d9,Eq,Zkt,Jkt,tEt,eEt,rEt,nEt,iEt,aEt,sEt,oEt,lEt,cEt,Su,Al,Cq=R(()=>{"use strict";hr();lv();kq=Qi(Qp(),1),d9=o(function(e,t){return Td(e,t)},"drawRect"),Eq=o(function(e,t,r,n,i,a){let s=e.append("image");s.attr("width",t),s.attr("height",r),s.attr("x",n),s.attr("y",i);let l=a.startsWith("data:image/png;base64")?a:(0,kq.sanitizeUrl)(a);s.attr("xlink:href",l)},"drawImage"),Zkt=o((e,t,r)=>{let n=e.append("g"),i=0;for(let a of t){let s=a.textColor?a.textColor:"#444444",l=a.lineColor?a.lineColor:"#444444",u=a.offsetX?parseInt(a.offsetX):0,h=a.offsetY?parseInt(a.offsetY):0,f="";if(i===0){let p=n.append("line");p.attr("x1",a.startPoint.x),p.attr("y1",a.startPoint.y),p.attr("x2",a.endPoint.x),p.attr("y2",a.endPoint.y),p.attr("stroke-width","1"),p.attr("stroke",l),p.style("fill","none"),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)"),i=-1}else{let p=n.append("path");p.attr("fill","none").attr("stroke-width","1").attr("stroke",l).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)")}let d=r.messageFont();Su(r)(a.label.text,n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+h,a.label.width,a.label.height,{fill:s},d),a.techn&&a.techn.text!==""&&(d=r.messageFont(),Su(r)("["+a.techn.text+"]",n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+r.messageFontSize+5+h,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:s,"font-style":"italic"},d))}},"drawRels"),Jkt=o(function(e,t,r){let n=e.append("g"),i=t.bgColor?t.bgColor:"none",a=t.borderColor?t.borderColor:"#444444",s=t.fontColor?t.fontColor:"black",l={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};t.nodeType&&(l={"stroke-width":1});let u={x:t.x,y:t.y,fill:i,stroke:a,width:t.width,height:t.height,rx:2.5,ry:2.5,attrs:l};d9(n,u);let h=r.boundaryFont();h.fontWeight="bold",h.fontSize=h.fontSize+2,h.fontColor=s,Su(r)(t.label.text,n,t.x,t.y+t.label.Y,t.width,t.height,{fill:"#444444"},h),t.type&&t.type.text!==""&&(h=r.boundaryFont(),h.fontColor=s,Su(r)(t.type.text,n,t.x,t.y+t.type.Y,t.width,t.height,{fill:"#444444"},h)),t.descr&&t.descr.text!==""&&(h=r.boundaryFont(),h.fontSize=h.fontSize-2,h.fontColor=s,Su(r)(t.descr.text,n,t.x,t.y+t.descr.Y,t.width,t.height,{fill:"#444444"},h))},"drawBoundary"),tEt=o(function(e,t,r){let n=t.bgColor?t.bgColor:r[t.typeC4Shape.text+"_bg_color"],i=t.borderColor?t.borderColor:r[t.typeC4Shape.text+"_border_color"],a=t.fontColor?t.fontColor:"#FFFFFF",s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(t.typeC4Shape.text){case"person":s="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":s="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 l=e.append("g");l.attr("class","person-man");let u=Sl();switch(t.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":u.x=t.x,u.y=t.y,u.fill=n,u.width=t.width,u.height=t.height,u.stroke=i,u.rx=2.5,u.ry=2.5,u.attrs={"stroke-width":.5},d9(l,u);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("half",t.width/2).replaceAll("height",t.height)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("half",t.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("width",t.width).replaceAll("half",t.height/2)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",t.x+t.width).replaceAll("starty",t.y).replaceAll("half",t.height/2));break}let h=cEt(r,t.typeC4Shape.text);switch(l.append("text").attr("fill",a).attr("font-family",h.fontFamily).attr("font-size",h.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",t.typeC4Shape.width).attr("x",t.x+t.width/2-t.typeC4Shape.width/2).attr("y",t.y+t.typeC4Shape.Y).text("<<"+t.typeC4Shape.text+">>"),t.typeC4Shape.text){case"person":case"external_person":Eq(l,48,48,t.x+t.width/2-24,t.y+t.image.Y,s);break}let f=r[t.typeC4Shape.text+"Font"]();return f.fontWeight="bold",f.fontSize=f.fontSize+2,f.fontColor=a,Su(r)(t.label.text,l,t.x,t.y+t.label.Y,t.width,t.height,{fill:a},f),f=r[t.typeC4Shape.text+"Font"](),f.fontColor=a,t.techn&&t.techn?.text!==""?Su(r)(t.techn.text,l,t.x,t.y+t.techn.Y,t.width,t.height,{fill:a,"font-style":"italic"},f):t.type&&t.type.text!==""&&Su(r)(t.type.text,l,t.x,t.y+t.type.Y,t.width,t.height,{fill:a,"font-style":"italic"},f),t.descr&&t.descr.text!==""&&(f=r.personFont(),f.fontColor=a,Su(r)(t.descr.text,l,t.x,t.y+t.descr.Y,t.width,t.height,{fill:a},f)),t.height},"drawC4Shape"),eEt=o(function(e){e.append("defs").append("symbol").attr("id","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"),rEt=o(function(e){e.append("defs").append("symbol").attr("id","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"),nEt=o(function(e){e.append("defs").append("symbol").attr("id","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"),iEt=o(function(e){e.append("defs").append("marker").attr("id","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"),aEt=o(function(e){e.append("defs").append("marker").attr("id","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"),sEt=o(function(e){e.append("defs").append("marker").attr("id","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"),oEt=o(function(e){e.append("defs").append("marker").attr("id","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)},"insertDynamicNumber"),lEt=o(function(e){let r=e.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);r.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),r.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),cEt=o((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"getC4ShapeFont"),Su=function(){function e(i,a,s,l,u,h,f){let d=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("text-anchor","middle").text(i);n(d,f)}o(e,"byText");function t(i,a,s,l,u,h,f,d){let{fontSize:p,fontFamily:m,fontWeight:g}=d,y=i.split(Yt.lineBreakRegex);for(let v=0;v{"use strict";uEt=typeof global=="object"&&global&&global.Object===Object&&global,y5=uEt});var hEt,fEt,si,Io=R(()=>{"use strict";p9();hEt=typeof self=="object"&&self&&self.Object===Object&&self,fEt=y5||hEt||Function("return this")(),si=fEt});var dEt,ra,kd=R(()=>{"use strict";Io();dEt=si.Symbol,ra=dEt});function gEt(e){var t=pEt.call(e,cv),r=e[cv];try{e[cv]=void 0;var n=!0}catch{}var i=mEt.call(e);return n&&(t?e[cv]=r:delete e[cv]),i}var Sq,pEt,mEt,cv,Aq,_q=R(()=>{"use strict";kd();Sq=Object.prototype,pEt=Sq.hasOwnProperty,mEt=Sq.toString,cv=ra?ra.toStringTag:void 0;o(gEt,"getRawTag");Aq=gEt});function xEt(e){return vEt.call(e)}var yEt,vEt,Lq,Dq=R(()=>{"use strict";yEt=Object.prototype,vEt=yEt.toString;o(xEt,"objectToString");Lq=xEt});function TEt(e){return e==null?e===void 0?wEt:bEt:Rq&&Rq in Object(e)?Aq(e):Lq(e)}var bEt,wEt,Rq,ga,Au=R(()=>{"use strict";kd();_q();Dq();bEt="[object Null]",wEt="[object Undefined]",Rq=ra?ra.toStringTag:void 0;o(TEt,"baseGetTag");ga=TEt});function kEt(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var xn,eo=R(()=>{"use strict";o(kEt,"isObject");xn=kEt});function _Et(e){if(!xn(e))return!1;var t=ga(e);return t==CEt||t==SEt||t==EEt||t==AEt}var EEt,CEt,SEt,AEt,Si,uv=R(()=>{"use strict";Au();eo();EEt="[object AsyncFunction]",CEt="[object Function]",SEt="[object GeneratorFunction]",AEt="[object Proxy]";o(_Et,"isFunction");Si=_Et});var LEt,v5,Nq=R(()=>{"use strict";Io();LEt=si["__core-js_shared__"],v5=LEt});function DEt(e){return!!Mq&&Mq in e}var Mq,Iq,Oq=R(()=>{"use strict";Nq();Mq=function(){var e=/[^.]+$/.exec(v5&&v5.keys&&v5.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();o(DEt,"isMasked");Iq=DEt});function MEt(e){if(e!=null){try{return NEt.call(e)}catch{}try{return e+""}catch{}}return""}var REt,NEt,_u,m9=R(()=>{"use strict";REt=Function.prototype,NEt=REt.toString;o(MEt,"toSource");_u=MEt});function GEt(e){if(!xn(e)||Iq(e))return!1;var t=Si(e)?$Et:OEt;return t.test(_u(e))}var IEt,OEt,PEt,BEt,FEt,zEt,$Et,Pq,Bq=R(()=>{"use strict";uv();Oq();eo();m9();IEt=/[\\^$.*+?()[\]{}|]/g,OEt=/^\[object .+?Constructor\]$/,PEt=Function.prototype,BEt=Object.prototype,FEt=PEt.toString,zEt=BEt.hasOwnProperty,$Et=RegExp("^"+FEt.call(zEt).replace(IEt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");o(GEt,"baseIsNative");Pq=GEt});function VEt(e,t){return e?.[t]}var Fq,zq=R(()=>{"use strict";o(VEt,"getValue");Fq=VEt});function UEt(e,t){var r=Fq(e,t);return Pq(r)?r:void 0}var ks,Mh=R(()=>{"use strict";Bq();zq();o(UEt,"getNative");ks=UEt});var HEt,Lu,hv=R(()=>{"use strict";Mh();HEt=ks(Object,"create"),Lu=HEt});function WEt(){this.__data__=Lu?Lu(null):{},this.size=0}var $q,Gq=R(()=>{"use strict";hv();o(WEt,"hashClear");$q=WEt});function YEt(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Vq,Uq=R(()=>{"use strict";o(YEt,"hashDelete");Vq=YEt});function KEt(e){var t=this.__data__;if(Lu){var r=t[e];return r===qEt?void 0:r}return jEt.call(t,e)?t[e]:void 0}var qEt,XEt,jEt,Hq,Wq=R(()=>{"use strict";hv();qEt="__lodash_hash_undefined__",XEt=Object.prototype,jEt=XEt.hasOwnProperty;o(KEt,"hashGet");Hq=KEt});function JEt(e){var t=this.__data__;return Lu?t[e]!==void 0:ZEt.call(t,e)}var QEt,ZEt,Yq,qq=R(()=>{"use strict";hv();QEt=Object.prototype,ZEt=QEt.hasOwnProperty;o(JEt,"hashHas");Yq=JEt});function e6t(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=Lu&&t===void 0?t6t:t,this}var t6t,Xq,jq=R(()=>{"use strict";hv();t6t="__lodash_hash_undefined__";o(e6t,"hashSet");Xq=e6t});function Zp(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{"use strict";Gq();Uq();Wq();qq();jq();o(Zp,"Hash");Zp.prototype.clear=$q;Zp.prototype.delete=Vq;Zp.prototype.get=Hq;Zp.prototype.has=Yq;Zp.prototype.set=Xq;g9=Zp});function r6t(){this.__data__=[],this.size=0}var Qq,Zq=R(()=>{"use strict";o(r6t,"listCacheClear");Qq=r6t});function n6t(e,t){return e===t||e!==e&&t!==t}var Oo,Ed=R(()=>{"use strict";o(n6t,"eq");Oo=n6t});function i6t(e,t){for(var r=e.length;r--;)if(Oo(e[r][0],t))return r;return-1}var Ih,fv=R(()=>{"use strict";Ed();o(i6t,"assocIndexOf");Ih=i6t});function o6t(e){var t=this.__data__,r=Ih(t,e);if(r<0)return!1;var n=t.length-1;return r==n?t.pop():s6t.call(t,r,1),--this.size,!0}var a6t,s6t,Jq,tX=R(()=>{"use strict";fv();a6t=Array.prototype,s6t=a6t.splice;o(o6t,"listCacheDelete");Jq=o6t});function l6t(e){var t=this.__data__,r=Ih(t,e);return r<0?void 0:t[r][1]}var eX,rX=R(()=>{"use strict";fv();o(l6t,"listCacheGet");eX=l6t});function c6t(e){return Ih(this.__data__,e)>-1}var nX,iX=R(()=>{"use strict";fv();o(c6t,"listCacheHas");nX=c6t});function u6t(e,t){var r=this.__data__,n=Ih(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var aX,sX=R(()=>{"use strict";fv();o(u6t,"listCacheSet");aX=u6t});function Jp(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{"use strict";Zq();tX();rX();iX();sX();o(Jp,"ListCache");Jp.prototype.clear=Qq;Jp.prototype.delete=Jq;Jp.prototype.get=eX;Jp.prototype.has=nX;Jp.prototype.set=aX;Oh=Jp});var h6t,Ph,x5=R(()=>{"use strict";Mh();Io();h6t=ks(si,"Map"),Ph=h6t});function f6t(){this.size=0,this.__data__={hash:new g9,map:new(Ph||Oh),string:new g9}}var oX,lX=R(()=>{"use strict";Kq();dv();x5();o(f6t,"mapCacheClear");oX=f6t});function d6t(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var cX,uX=R(()=>{"use strict";o(d6t,"isKeyable");cX=d6t});function p6t(e,t){var r=e.__data__;return cX(t)?r[typeof t=="string"?"string":"hash"]:r.map}var Bh,pv=R(()=>{"use strict";uX();o(p6t,"getMapData");Bh=p6t});function m6t(e){var t=Bh(this,e).delete(e);return this.size-=t?1:0,t}var hX,fX=R(()=>{"use strict";pv();o(m6t,"mapCacheDelete");hX=m6t});function g6t(e){return Bh(this,e).get(e)}var dX,pX=R(()=>{"use strict";pv();o(g6t,"mapCacheGet");dX=g6t});function y6t(e){return Bh(this,e).has(e)}var mX,gX=R(()=>{"use strict";pv();o(y6t,"mapCacheHas");mX=y6t});function v6t(e,t){var r=Bh(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this}var yX,vX=R(()=>{"use strict";pv();o(v6t,"mapCacheSet");yX=v6t});function tm(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{"use strict";lX();fX();pX();gX();vX();o(tm,"MapCache");tm.prototype.clear=oX;tm.prototype.delete=hX;tm.prototype.get=dX;tm.prototype.has=mX;tm.prototype.set=yX;Cd=tm});function y9(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(x6t);var r=o(function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=e.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(y9.Cache||Cd),r}var x6t,em,v9=R(()=>{"use strict";b5();x6t="Expected a function";o(y9,"memoize");y9.Cache=Cd;em=y9});function b6t(){this.__data__=new Oh,this.size=0}var xX,bX=R(()=>{"use strict";dv();o(b6t,"stackClear");xX=b6t});function w6t(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var wX,TX=R(()=>{"use strict";o(w6t,"stackDelete");wX=w6t});function T6t(e){return this.__data__.get(e)}var kX,EX=R(()=>{"use strict";o(T6t,"stackGet");kX=T6t});function k6t(e){return this.__data__.has(e)}var CX,SX=R(()=>{"use strict";o(k6t,"stackHas");CX=k6t});function C6t(e,t){var r=this.__data__;if(r instanceof Oh){var n=r.__data__;if(!Ph||n.length{"use strict";dv();x5();b5();E6t=200;o(C6t,"stackSet");AX=C6t});function rm(e){var t=this.__data__=new Oh(e);this.size=t.size}var yc,mv=R(()=>{"use strict";dv();bX();TX();EX();SX();_X();o(rm,"Stack");rm.prototype.clear=xX;rm.prototype.delete=wX;rm.prototype.get=kX;rm.prototype.has=CX;rm.prototype.set=AX;yc=rm});var S6t,nm,x9=R(()=>{"use strict";Mh();S6t=function(){try{var e=ks(Object,"defineProperty");return e({},"",{}),e}catch{}}(),nm=S6t});function A6t(e,t,r){t=="__proto__"&&nm?nm(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}var vc,im=R(()=>{"use strict";x9();o(A6t,"baseAssignValue");vc=A6t});function _6t(e,t,r){(r!==void 0&&!Oo(e[t],r)||r===void 0&&!(t in e))&&vc(e,t,r)}var gv,b9=R(()=>{"use strict";im();Ed();o(_6t,"assignMergeValue");gv=_6t});function L6t(e){return function(t,r,n){for(var i=-1,a=Object(t),s=n(t),l=s.length;l--;){var u=s[e?l:++i];if(r(a[u],u,a)===!1)break}return t}}var LX,DX=R(()=>{"use strict";o(L6t,"createBaseFor");LX=L6t});var D6t,am,w5=R(()=>{"use strict";DX();D6t=LX(),am=D6t});function N6t(e,t){if(t)return e.slice();var r=e.length,n=MX?MX(r):new e.constructor(r);return e.copy(n),n}var IX,RX,R6t,NX,MX,T5,w9=R(()=>{"use strict";Io();IX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,RX=IX&&typeof module=="object"&&module&&!module.nodeType&&module,R6t=RX&&RX.exports===IX,NX=R6t?si.Buffer:void 0,MX=NX?NX.allocUnsafe:void 0;o(N6t,"cloneBuffer");T5=N6t});var M6t,sm,T9=R(()=>{"use strict";Io();M6t=si.Uint8Array,sm=M6t});function I6t(e){var t=new e.constructor(e.byteLength);return new sm(t).set(new sm(e)),t}var om,k5=R(()=>{"use strict";T9();o(I6t,"cloneArrayBuffer");om=I6t});function O6t(e,t){var r=t?om(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}var E5,k9=R(()=>{"use strict";k5();o(O6t,"cloneTypedArray");E5=O6t});function P6t(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r{"use strict";o(P6t,"copyArray");C5=P6t});var OX,B6t,PX,BX=R(()=>{"use strict";eo();OX=Object.create,B6t=function(){function e(){}return o(e,"object"),function(t){if(!xn(t))return{};if(OX)return OX(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}(),PX=B6t});function F6t(e,t){return function(r){return e(t(r))}}var S5,C9=R(()=>{"use strict";o(F6t,"overArg");S5=F6t});var z6t,lm,A5=R(()=>{"use strict";C9();z6t=S5(Object.getPrototypeOf,Object),lm=z6t});function G6t(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||$6t;return e===r}var $6t,xc,cm=R(()=>{"use strict";$6t=Object.prototype;o(G6t,"isPrototype");xc=G6t});function V6t(e){return typeof e.constructor=="function"&&!xc(e)?PX(lm(e)):{}}var _5,S9=R(()=>{"use strict";BX();A5();cm();o(V6t,"initCloneObject");_5=V6t});function U6t(e){return e!=null&&typeof e=="object"}var ti,Po=R(()=>{"use strict";o(U6t,"isObjectLike");ti=U6t});function W6t(e){return ti(e)&&ga(e)==H6t}var H6t,A9,FX=R(()=>{"use strict";Au();Po();H6t="[object Arguments]";o(W6t,"baseIsArguments");A9=W6t});var zX,Y6t,q6t,X6t,_l,um=R(()=>{"use strict";FX();Po();zX=Object.prototype,Y6t=zX.hasOwnProperty,q6t=zX.propertyIsEnumerable,X6t=A9(function(){return arguments}())?A9:function(e){return ti(e)&&Y6t.call(e,"callee")&&!q6t.call(e,"callee")},_l=X6t});var j6t,Le,Hn=R(()=>{"use strict";j6t=Array.isArray,Le=j6t});function Q6t(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=K6t}var K6t,hm,L5=R(()=>{"use strict";K6t=9007199254740991;o(Q6t,"isLength");hm=Q6t});function Z6t(e){return e!=null&&hm(e.length)&&!Si(e)}var oi,Bo=R(()=>{"use strict";uv();L5();o(Z6t,"isArrayLike");oi=Z6t});function J6t(e){return ti(e)&&oi(e)}var Sd,D5=R(()=>{"use strict";Bo();Po();o(J6t,"isArrayLikeObject");Sd=J6t});function tCt(){return!1}var $X,GX=R(()=>{"use strict";o(tCt,"stubFalse");$X=tCt});var HX,VX,eCt,UX,rCt,nCt,Ll,fm=R(()=>{"use strict";Io();GX();HX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,VX=HX&&typeof module=="object"&&module&&!module.nodeType&&module,eCt=VX&&VX.exports===HX,UX=eCt?si.Buffer:void 0,rCt=UX?UX.isBuffer:void 0,nCt=rCt||$X,Ll=nCt});function cCt(e){if(!ti(e)||ga(e)!=iCt)return!1;var t=lm(e);if(t===null)return!0;var r=oCt.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&WX.call(r)==lCt}var iCt,aCt,sCt,WX,oCt,lCt,YX,qX=R(()=>{"use strict";Au();A5();Po();iCt="[object Object]",aCt=Function.prototype,sCt=Object.prototype,WX=aCt.toString,oCt=sCt.hasOwnProperty,lCt=WX.call(Object);o(cCt,"isPlainObject");YX=cCt});function ICt(e){return ti(e)&&hm(e.length)&&!!$n[ga(e)]}var uCt,hCt,fCt,dCt,pCt,mCt,gCt,yCt,vCt,xCt,bCt,wCt,TCt,kCt,ECt,CCt,SCt,ACt,_Ct,LCt,DCt,RCt,NCt,MCt,$n,XX,jX=R(()=>{"use strict";Au();L5();Po();uCt="[object Arguments]",hCt="[object Array]",fCt="[object Boolean]",dCt="[object Date]",pCt="[object Error]",mCt="[object Function]",gCt="[object Map]",yCt="[object Number]",vCt="[object Object]",xCt="[object RegExp]",bCt="[object Set]",wCt="[object String]",TCt="[object WeakMap]",kCt="[object ArrayBuffer]",ECt="[object DataView]",CCt="[object Float32Array]",SCt="[object Float64Array]",ACt="[object Int8Array]",_Ct="[object Int16Array]",LCt="[object Int32Array]",DCt="[object Uint8Array]",RCt="[object Uint8ClampedArray]",NCt="[object Uint16Array]",MCt="[object Uint32Array]",$n={};$n[CCt]=$n[SCt]=$n[ACt]=$n[_Ct]=$n[LCt]=$n[DCt]=$n[RCt]=$n[NCt]=$n[MCt]=!0;$n[uCt]=$n[hCt]=$n[kCt]=$n[fCt]=$n[ECt]=$n[dCt]=$n[pCt]=$n[mCt]=$n[gCt]=$n[yCt]=$n[vCt]=$n[xCt]=$n[bCt]=$n[wCt]=$n[TCt]=!1;o(ICt,"baseIsTypedArray");XX=ICt});function OCt(e){return function(t){return e(t)}}var Fo,Ad=R(()=>{"use strict";o(OCt,"baseUnary");Fo=OCt});var KX,yv,PCt,_9,BCt,zo,vv=R(()=>{"use strict";p9();KX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,yv=KX&&typeof module=="object"&&module&&!module.nodeType&&module,PCt=yv&&yv.exports===KX,_9=PCt&&y5.process,BCt=function(){try{var e=yv&&yv.require&&yv.require("util").types;return e||_9&&_9.binding&&_9.binding("util")}catch{}}(),zo=BCt});var QX,FCt,Fh,xv=R(()=>{"use strict";jX();Ad();vv();QX=zo&&zo.isTypedArray,FCt=QX?Fo(QX):XX,Fh=FCt});function zCt(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}var bv,L9=R(()=>{"use strict";o(zCt,"safeGet");bv=zCt});function VCt(e,t,r){var n=e[t];(!(GCt.call(e,t)&&Oo(n,r))||r===void 0&&!(t in e))&&vc(e,t,r)}var $Ct,GCt,bc,dm=R(()=>{"use strict";im();Ed();$Ct=Object.prototype,GCt=$Ct.hasOwnProperty;o(VCt,"assignValue");bc=VCt});function UCt(e,t,r,n){var i=!r;r||(r={});for(var a=-1,s=t.length;++a{"use strict";dm();im();o(UCt,"copyObject");$o=UCt});function HCt(e,t){for(var r=-1,n=Array(e);++r{"use strict";o(HCt,"baseTimes");ZX=HCt});function qCt(e,t){var r=typeof e;return t=t??WCt,!!t&&(r=="number"||r!="symbol"&&YCt.test(e))&&e>-1&&e%1==0&&e{"use strict";WCt=9007199254740991,YCt=/^(?:0|[1-9]\d*)$/;o(qCt,"isIndex");zh=qCt});function KCt(e,t){var r=Le(e),n=!r&&_l(e),i=!r&&!n&&Ll(e),a=!r&&!n&&!i&&Fh(e),s=r||n||i||a,l=s?ZX(e.length,String):[],u=l.length;for(var h in e)(t||jCt.call(e,h))&&!(s&&(h=="length"||i&&(h=="offset"||h=="parent")||a&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||zh(h,u)))&&l.push(h);return l}var XCt,jCt,R5,D9=R(()=>{"use strict";JX();um();Hn();fm();wv();xv();XCt=Object.prototype,jCt=XCt.hasOwnProperty;o(KCt,"arrayLikeKeys");R5=KCt});function QCt(e){var t=[];if(e!=null)for(var r in Object(e))t.push(r);return t}var tj,ej=R(()=>{"use strict";o(QCt,"nativeKeysIn");tj=QCt});function tSt(e){if(!xn(e))return tj(e);var t=xc(e),r=[];for(var n in e)n=="constructor"&&(t||!JCt.call(e,n))||r.push(n);return r}var ZCt,JCt,rj,nj=R(()=>{"use strict";eo();cm();ej();ZCt=Object.prototype,JCt=ZCt.hasOwnProperty;o(tSt,"baseKeysIn");rj=tSt});function eSt(e){return oi(e)?R5(e,!0):rj(e)}var Es,$h=R(()=>{"use strict";D9();nj();Bo();o(eSt,"keysIn");Es=eSt});function rSt(e){return $o(e,Es(e))}var ij,aj=R(()=>{"use strict";_d();$h();o(rSt,"toPlainObject");ij=rSt});function nSt(e,t,r,n,i,a,s){var l=bv(e,r),u=bv(t,r),h=s.get(u);if(h){gv(e,r,h);return}var f=a?a(l,u,r+"",e,t,s):void 0,d=f===void 0;if(d){var p=Le(u),m=!p&&Ll(u),g=!p&&!m&&Fh(u);f=u,p||m||g?Le(l)?f=l:Sd(l)?f=C5(l):m?(d=!1,f=T5(u,!0)):g?(d=!1,f=E5(u,!0)):f=[]:YX(u)||_l(u)?(f=l,_l(l)?f=ij(l):(!xn(l)||Si(l))&&(f=_5(u))):d=!1}d&&(s.set(u,f),i(f,u,n,a,s),s.delete(u)),gv(e,r,f)}var sj,oj=R(()=>{"use strict";b9();w9();k9();E9();S9();um();Hn();D5();fm();uv();eo();qX();xv();L9();aj();o(nSt,"baseMergeDeep");sj=nSt});function lj(e,t,r,n,i){e!==t&&am(t,function(a,s){if(i||(i=new yc),xn(a))sj(e,t,s,r,lj,n,i);else{var l=n?n(bv(e,s),a,s+"",e,t,i):void 0;l===void 0&&(l=a),gv(e,s,l)}},Es)}var cj,uj=R(()=>{"use strict";mv();b9();w5();oj();eo();$h();L9();o(lj,"baseMerge");cj=lj});function iSt(e){return e}var na,Du=R(()=>{"use strict";o(iSt,"identity");na=iSt});function aSt(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}var hj,fj=R(()=>{"use strict";o(aSt,"apply");hj=aSt});function sSt(e,t,r){return t=dj(t===void 0?e.length-1:t,0),function(){for(var n=arguments,i=-1,a=dj(n.length-t,0),s=Array(a);++i{"use strict";fj();dj=Math.max;o(sSt,"overRest");N5=sSt});function oSt(e){return function(){return e}}var Cs,N9=R(()=>{"use strict";o(oSt,"constant");Cs=oSt});var lSt,pj,mj=R(()=>{"use strict";N9();x9();Du();lSt=nm?function(e,t){return nm(e,"toString",{configurable:!0,enumerable:!1,value:Cs(t),writable:!0})}:na,pj=lSt});function fSt(e){var t=0,r=0;return function(){var n=hSt(),i=uSt-(n-r);if(r=n,i>0){if(++t>=cSt)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var cSt,uSt,hSt,gj,yj=R(()=>{"use strict";cSt=800,uSt=16,hSt=Date.now;o(fSt,"shortOut");gj=fSt});var dSt,M5,M9=R(()=>{"use strict";mj();yj();dSt=gj(pj),M5=dSt});function pSt(e,t){return M5(N5(e,t,na),e+"")}var wc,pm=R(()=>{"use strict";Du();R9();M9();o(pSt,"baseRest");wc=pSt});function mSt(e,t,r){if(!xn(r))return!1;var n=typeof t;return(n=="number"?oi(r)&&zh(t,r.length):n=="string"&&t in r)?Oo(r[t],e):!1}var ro,Ld=R(()=>{"use strict";Ed();Bo();wv();eo();o(mSt,"isIterateeCall");ro=mSt});function gSt(e){return wc(function(t,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=e.length>3&&typeof a=="function"?(i--,a):void 0,s&&ro(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),t=Object(t);++n{"use strict";pm();Ld();o(gSt,"createAssigner");I5=gSt});var ySt,Gh,O9=R(()=>{"use strict";uj();I9();ySt=I5(function(e,t,r){cj(e,t,r)}),Gh=ySt});function mm(e,t){if(!e)return t;let r=`curve${e.charAt(0).toUpperCase()+e.slice(1)}`;return vSt[r]??t}function TSt(e,t){let r=e.trim();if(r)return t.securityLevel!=="loose"?(0,bj.sanitizeUrl)(r):r}function kj(e,t){return!e||!t?0:Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))}function ESt(e){let t,r=0;e.forEach(i=>{r+=kj(i,t),t=i});let n=r/2;return F9(e,n)}function CSt(e){return e.length===1?e[0]:ESt(e)}function ASt(e,t,r){let n=structuredClone(r);V.info("our points",n),t!=="start_left"&&t!=="start_right"&&n.reverse();let i=25+e,a=F9(n,i),s=10+e*.5,l=Math.atan2(n[0].y-a.y,n[0].x-a.x),u={x:0,y:0};return t==="start_left"?(u.x=Math.sin(l+Math.PI)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l+Math.PI)*s+(n[0].y+a.y)/2):t==="end_right"?(u.x=Math.sin(l-Math.PI)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l-Math.PI)*s+(n[0].y+a.y)/2-5):t==="end_left"?(u.x=Math.sin(l)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2-5):(u.x=Math.sin(l)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2),u}function gm(e){let t="",r="";for(let n of e)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":t=t+n+";");return{style:t,labelStyle:r}}function _St(e){let t="",r="0123456789abcdef",n=r.length;for(let i=0;i{"use strict";bj=Qi(Qp(),1);ur();hr();US();ce();jf();yp();v9();O9();l4();B9="\u200B",vSt={curveBasis:Ts,curveBasisClosed:n5,curveBasisOpen:i5,curveBumpX:q_,curveBumpY:X_,curveBundle:j_,curveCardinalClosed:Q_,curveCardinalOpen:J_,curveCardinal:K_,curveCatmullRomClosed:r9,curveCatmullRomOpen:n9,curveCatmullRom:e9,curveLinear:Cu,curveLinearClosed:c5,curveMonotoneX:a9,curveMonotoneY:s9,curveNatural:h5,curveStep:d5,curveStepAfter:l9,curveStepBefore:o9},xSt=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,bSt=o(function(e,t){let r=wj(e,/(?:init\b)|(?:initialize\b)/),n={};if(Array.isArray(r)){let s=r.map(l=>l.args);bp(s),n=Vn(n,[...s])}else n=r.args;if(!n)return;let i=gp(e,t),a="config";return n[a]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[a],delete n[a]),n},"detectInit"),wj=o(function(e,t=null){try{let r=new RegExp(`[%]{2}(?![{]${xSt.source})(?=[}][%]{2}).* `,"ig");e=e.trim().replace(r,"").replace(/'/gm,'"'),V.debug(`Detecting diagram directive${t!==null?" type:"+t:""} based on the text:${e}`);let n,i=[];for(;(n=qf.exec(e))!==null;)if(n.index===qf.lastIndex&&qf.lastIndex++,n&&!t||t&&n[1]?.match(t)||t&&n[2]?.match(t)){let a=n[1]?n[1]:n[2],s=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:a,args:s})}return i.length===0?{type:e,args:null}:i.length===1?i[0]:i}catch(r){return V.error(`ERROR: ${r.message} - Unable to parse directive type: '${t}' based on the text: '${e}'`),{type:void 0,args:null}}},"detectDirective"),Tj=o(function(e){return e.replace(qf,"")},"removeDirectives"),wSt=o(function(e,t){for(let[r,n]of t.entries())if(n.match(e))return r;return-1},"isSubstringInArray");o(mm,"interpolateToCurve");o(TSt,"formatUrl");kSt=o((e,...t)=>{let r=e.split("."),n=r.length-1,i=r[n],a=window;for(let s=0;s{let r=Math.pow(10,t);return Math.round(e*r)/r},"roundNumber"),F9=o((e,t)=>{let r,n=t;for(let i of e){if(r){let a=kj(i,r);if(a=1)return{x:i.x,y:i.y};if(s>0&&s<1)return{x:vj((1-s)*r.x+s*i.x,5),y:vj((1-s)*r.y+s*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),SSt=o((e,t,r)=>{V.info(`our points ${JSON.stringify(t)}`),t[0]!==r&&(t=t.reverse());let i=F9(t,25),a=e?10:5,s=Math.atan2(t[0].y-i.y,t[0].x-i.x),l={x:0,y:0};return l.x=Math.sin(s)*a+(t[0].x+i.x)/2,l.y=-Math.cos(s)*a+(t[0].y+i.y)/2,l},"calcCardinalityPosition");o(ASt,"calcTerminalLabelPosition");o(gm,"getStylesFromArray");xj=0,z9=o(()=>(xj++,"id-"+Math.random().toString(36).substr(2,12)+"-"+xj),"generateId");o(_St,"makeRandomHex");$9=o(e=>_St(e.length),"random"),LSt=o(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"),DSt=o(function(e,t){let r=t.text.replace(Yt.lineBreakRegex," "),[,n]=Tc(t.fontSize),i=e.append("text");i.attr("x",t.x),i.attr("y",t.y),i.style("text-anchor",t.anchor),i.style("font-family",t.fontFamily),i.style("font-size",n),i.style("font-weight",t.fontWeight),i.attr("fill",t.fill),t.class!==void 0&&i.attr("class",t.class);let a=i.append("tspan");return a.attr("x",t.x+t.textMargin*2),a.attr("fill",t.fill),a.text(r),i},"drawSimpleText"),G9=em((e,t,r)=>{if(!e||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),Yt.lineBreakRegex.test(e)))return e;let n=e.split(" ").filter(Boolean),i=[],a="";return n.forEach((s,l)=>{let u=Dl(`${s} `,r),h=Dl(a,r);if(u>t){let{hyphenatedStrings:p,remainingWord:m}=RSt(s,t,"-",r);i.push(a,...p),a=m}else h+u>=t?(i.push(a),a=s):a=[a,s].filter(Boolean).join(" ");l+1===n.length&&i.push(a)}),i.filter(s=>s!=="").join(r.joinWith)},(e,t,r)=>`${e}${t}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),RSt=em((e,t,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);let i=[...e],a=[],s="";return i.forEach((l,u)=>{let h=`${s}${l}`;if(Dl(h,n)>=t){let d=u+1,p=i.length===d,m=`${h}${r}`;a.push(p?h:m),s=""}else s=h}),{hyphenatedStrings:a,remainingWord:s}},(e,t,r="-",n)=>`${e}${t}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);o(P5,"calculateTextHeight");o(Dl,"calculateTextWidth");V9=em((e,t)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=t;if(!e)return{width:0,height:0};let[,a]=Tc(r),s=["sans-serif",n],l=e.split(Yt.lineBreakRegex),u=[],h=Gt("body");if(!h.remove)return{width:0,height:0,lineHeight:0};let f=h.append("svg");for(let p of s){let m=0,g={width:0,height:0,lineHeight:0};for(let y of l){let v=LSt();v.text=y||B9;let x=DSt(f,v).style("font-size",a).style("font-weight",i).style("font-family",p),b=(x._groups||x)[0][0].getBBox();if(b.width===0&&b.height===0)throw new Error("svg element not in render tree");g.width=Math.round(Math.max(g.width,b.width)),m=Math.round(b.height),g.height+=m,g.lineHeight=Math.round(Math.max(g.lineHeight,m))}u.push(g)}f.remove();let d=isNaN(u[1].height)||isNaN(u[1].width)||isNaN(u[1].lineHeight)||u[0].height>u[1].height&&u[0].width>u[1].width&&u[0].lineHeight>u[1].lineHeight?0:1;return u[d]},(e,t)=>`${e}${t.fontSize}${t.fontWeight}${t.fontFamily}`),P9=class{constructor(t=!1,r){this.count=0;this.count=r?r.length:0,this.next=t?()=>this.count++:()=>Date.now()}static{o(this,"InitIDGenerator")}},NSt=o(function(e){return O5=O5||document.createElement("div"),e=escape(e).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),O5.innerHTML=e,unescape(O5.textContent)},"entityDecode");o(U9,"isDetailedError");MSt=o((e,t,r,n)=>{if(!n)return;let i=e.node()?.getBBox();i&&e.append("text").text(n).attr("x",i.x+i.width/2).attr("y",-r).attr("class",t)},"insertTitle"),Tc=o(e=>{if(typeof e=="number")return[e,e+"px"];let t=parseInt(e??"",10);return Number.isNaN(t)?[void 0,void 0]:e===String(t)?[t,e+"px"]:[t,e]},"parseFontSize");o(Ss,"cleanAndMerge");Oe={assignWithDepth:Vn,wrapLabel:G9,calculateTextHeight:P5,calculateTextWidth:Dl,calculateTextDimensions:V9,cleanAndMerge:Ss,detectInit:bSt,detectDirective:wj,isSubstringInArray:wSt,interpolateToCurve:mm,calcLabelPosition:CSt,calcCardinalityPosition:SSt,calcTerminalLabelPosition:ASt,formatUrl:TSt,getStylesFromArray:gm,generateId:z9,random:$9,runFunc:kSt,entityDecode:NSt,insertTitle:MSt,parseFontSize:Tc,InitIDGenerator:P9},Ej=o(function(e){let t=e;return t=t.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),t=t.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),t=t.replace(/#\w+;/g,function(r){let n=r.substring(1,r.length-1);return/^\+?\d+$/.test(n)?"\uFB02\xB0\xB0"+n+"\xB6\xDF":"\uFB02\xB0"+n+"\xB6\xDF"}),t},"encodeEntities"),no=o(function(e){return e.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),B5=o((e,t,{counter:r=0,prefix:n,suffix:i})=>`${n?`${n}_`:""}${e}_${t}_${r}${i?`_${i}`:""}`,"getEdgeId")});function Rl(e,t,r,n,i){if(!t[e].width)if(r)t[e].text=G9(t[e].text,i,n),t[e].textLines=t[e].text.split(Yt.lineBreakRegex).length,t[e].width=i,t[e].height=P5(t[e].text,n);else{let a=t[e].text.split(Yt.lineBreakRegex);t[e].textLines=a.length;let s=0;t[e].height=0,t[e].width=0;for(let l of a)t[e].width=Math.max(Dl(l,n),t[e].width),s=P5(l,n),t[e].height=t[e].height+s}}function Lj(e,t,r,n,i){let a=new G5(i);a.data.widthLimit=r.data.widthLimit/Math.min(H9,n.length);for(let[s,l]of n.entries()){let u=0;l.image={width:0,height:0,Y:0},l.sprite&&(l.image.width=48,l.image.height=48,l.image.Y=u,u=l.image.Y+l.image.height);let h=l.wrap&&$e.wrap,f=F5($e);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Rl("label",l,h,f,a.data.widthLimit),l.label.Y=u+8,u=l.label.Y+l.label.height,l.type&&l.type.text!==""){l.type.text="["+l.type.text+"]";let g=F5($e);Rl("type",l,h,g,a.data.widthLimit),l.type.Y=u+5,u=l.type.Y+l.type.height}if(l.descr&&l.descr.text!==""){let g=F5($e);g.fontSize=g.fontSize-2,Rl("descr",l,h,g,a.data.widthLimit),l.descr.Y=u+20,u=l.descr.Y+l.descr.height}if(s==0||s%H9===0){let g=r.data.startx+$e.diagramMarginX,y=r.data.stopy+$e.diagramMarginY+u;a.setData(g,g,y,y)}else{let g=a.data.stopx!==a.data.startx?a.data.stopx+$e.diagramMarginX:a.data.startx,y=a.data.starty;a.setData(g,g,y,y)}a.name=l.alias;let d=i.db.getC4ShapeArray(l.alias),p=i.db.getC4ShapeKeys(l.alias);p.length>0&&_j(a,e,d,p),t=l.alias;let m=i.db.getBoundarys(t);m.length>0&&Lj(e,t,a,m,i),l.alias!=="global"&&Aj(e,l,a),r.data.stopy=Math.max(a.data.stopy+$e.c4ShapeMargin,r.data.stopy),r.data.stopx=Math.max(a.data.stopx+$e.c4ShapeMargin,r.data.stopx),z5=Math.max(z5,r.data.stopx),$5=Math.max($5,r.data.stopy)}}var z5,$5,Sj,H9,$e,G5,W9,Tv,F5,ISt,Aj,_j,As,Cj,OSt,PSt,BSt,Y9,Dj=R(()=>{"use strict";ur();Cq();ce();LS();hr();j7();Ue();yp();_r();Jn();z5=0,$5=0,Sj=4,H9=2;ty.yy=Ty;$e={},G5=class{static{o(this,"Bounds")}constructor(t){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,W9(t.db.getConfig())}setData(t,r,n,i){this.nextData.startx=this.data.startx=t,this.nextData.stopx=this.data.stopx=r,this.nextData.starty=this.data.starty=n,this.nextData.stopy=this.data.stopy=i}updateVal(t,r,n,i){t[r]===void 0?t[r]=n:t[r]=i(n,t[r])}insert(t){this.nextData.cnt=this.nextData.cnt+1;let r=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+t.margin:this.nextData.stopx+t.margin*2,n=r+t.width,i=this.nextData.starty+t.margin*2,a=i+t.height;(r>=this.data.widthLimit||n>=this.data.widthLimit||this.nextData.cnt>Sj)&&(r=this.nextData.startx+t.margin+$e.nextLinePaddingX,i=this.nextData.stopy+t.margin*2,this.nextData.stopx=n=r+t.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=a=i+t.height,this.nextData.cnt=1),t.x=r,t.y=i,this.updateVal(this.data,"startx",r,Math.min),this.updateVal(this.data,"starty",i,Math.min),this.updateVal(this.data,"stopx",n,Math.max),this.updateVal(this.data,"stopy",a,Math.max),this.updateVal(this.nextData,"startx",r,Math.min),this.updateVal(this.nextData,"starty",i,Math.min),this.updateVal(this.nextData,"stopx",n,Math.max),this.updateVal(this.nextData,"stopy",a,Math.max)}init(t){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},W9(t.db.getConfig())}bumpLastMargin(t){this.data.stopx+=t,this.data.stopy+=t}},W9=o(function(e){Vn($e,e),e.fontFamily&&($e.personFontFamily=$e.systemFontFamily=$e.messageFontFamily=e.fontFamily),e.fontSize&&($e.personFontSize=$e.systemFontSize=$e.messageFontSize=e.fontSize),e.fontWeight&&($e.personFontWeight=$e.systemFontWeight=$e.messageFontWeight=e.fontWeight)},"setConf"),Tv=o((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"c4ShapeFont"),F5=o(e=>({fontFamily:e.boundaryFontFamily,fontSize:e.boundaryFontSize,fontWeight:e.boundaryFontWeight}),"boundaryFont"),ISt=o(e=>({fontFamily:e.messageFontFamily,fontSize:e.messageFontSize,fontWeight:e.messageFontWeight}),"messageFont");o(Rl,"calcC4ShapeTextWH");Aj=o(function(e,t,r){t.x=r.data.startx,t.y=r.data.starty,t.width=r.data.stopx-r.data.startx,t.height=r.data.stopy-r.data.starty,t.label.y=$e.c4ShapeMargin-35;let n=t.wrap&&$e.wrap,i=F5($e);i.fontSize=i.fontSize+2,i.fontWeight="bold";let a=Dl(t.label.text,i);Rl("label",t,n,i,a),Al.drawBoundary(e,t,$e)},"drawBoundary"),_j=o(function(e,t,r,n){let i=0;for(let a of n){i=0;let s=r[a],l=Tv($e,s.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,s.typeC4Shape.width=Dl("\xAB"+s.typeC4Shape.text+"\xBB",l),s.typeC4Shape.height=l.fontSize+2,s.typeC4Shape.Y=$e.c4ShapePadding,i=s.typeC4Shape.Y+s.typeC4Shape.height-4,s.image={width:0,height:0,Y:0},s.typeC4Shape.text){case"person":case"external_person":s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height;break}s.sprite&&(s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height);let u=s.wrap&&$e.wrap,h=$e.width-$e.c4ShapePadding*2,f=Tv($e,s.typeC4Shape.text);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Rl("label",s,u,f,h),s.label.Y=i+8,i=s.label.Y+s.label.height,s.type&&s.type.text!==""){s.type.text="["+s.type.text+"]";let m=Tv($e,s.typeC4Shape.text);Rl("type",s,u,m,h),s.type.Y=i+5,i=s.type.Y+s.type.height}else if(s.techn&&s.techn.text!==""){s.techn.text="["+s.techn.text+"]";let m=Tv($e,s.techn.text);Rl("techn",s,u,m,h),s.techn.Y=i+5,i=s.techn.Y+s.techn.height}let d=i,p=s.label.width;if(s.descr&&s.descr.text!==""){let m=Tv($e,s.typeC4Shape.text);Rl("descr",s,u,m,h),s.descr.Y=i+20,i=s.descr.Y+s.descr.height,p=Math.max(s.label.width,s.descr.width),d=i-s.descr.textLines*5}p=p+$e.c4ShapePadding,s.width=Math.max(s.width||$e.width,p,$e.width),s.height=Math.max(s.height||$e.height,d,$e.height),s.margin=s.margin||$e.c4ShapeMargin,e.insert(s),Al.drawC4Shape(t,s,$e)}e.bumpLastMargin($e.c4ShapeMargin)},"drawC4ShapeArray"),As=class{static{o(this,"Point")}constructor(t,r){this.x=t,this.y=r}},Cj=o(function(e,t){let r=e.x,n=e.y,i=t.x,a=t.y,s=r+e.width/2,l=n+e.height/2,u=Math.abs(r-i),h=Math.abs(n-a),f=h/u,d=e.height/e.width,p=null;return n==a&&ri?p=new As(r,l):r==i&&na&&(p=new As(s,n)),r>i&&n=f?p=new As(r,l+f*e.width/2):p=new As(s-u/h*e.height/2,n+e.height):r=f?p=new As(r+e.width,l+f*e.width/2):p=new As(s+u/h*e.height/2,n+e.height):ra?d>=f?p=new As(r+e.width,l-f*e.width/2):p=new As(s+e.height/2*u/h,n):r>i&&n>a&&(d>=f?p=new As(r,l-e.width/2*f):p=new As(s-e.height/2*u/h,n)),p},"getIntersectPoint"),OSt=o(function(e,t){let r={x:0,y:0};r.x=t.x+t.width/2,r.y=t.y+t.height/2;let n=Cj(e,r);r.x=e.x+e.width/2,r.y=e.y+e.height/2;let i=Cj(t,r);return{startPoint:n,endPoint:i}},"getIntersectPoints"),PSt=o(function(e,t,r,n){let i=0;for(let a of t){i=i+1;let s=a.wrap&&$e.wrap,l=ISt($e);n.db.getC4Type()==="C4Dynamic"&&(a.label.text=i+": "+a.label.text);let h=Dl(a.label.text,l);Rl("label",a,s,l,h),a.techn&&a.techn.text!==""&&(h=Dl(a.techn.text,l),Rl("techn",a,s,l,h)),a.descr&&a.descr.text!==""&&(h=Dl(a.descr.text,l),Rl("descr",a,s,l,h));let f=r(a.from),d=r(a.to),p=OSt(f,d);a.startPoint=p.startPoint,a.endPoint=p.endPoint}Al.drawRels(e,t,$e)},"drawRels");o(Lj,"drawInsideBoundary");BSt=o(function(e,t,r,n){$e=pt().c4;let i=pt().securityLevel,a;i==="sandbox"&&(a=Gt("#i"+t));let s=i==="sandbox"?Gt(a.nodes()[0].contentDocument.body):Gt("body"),l=n.db;n.db.setWrap($e.wrap),Sj=l.getC4ShapeInRow(),H9=l.getC4BoundaryInRow(),V.debug(`C:${JSON.stringify($e,null,2)}`);let u=i==="sandbox"?s.select(`[id="${t}"]`):Gt(`[id="${t}"]`);Al.insertComputerIcon(u),Al.insertDatabaseIcon(u),Al.insertClockIcon(u);let h=new G5(n);h.setData($e.diagramMarginX,$e.diagramMarginX,$e.diagramMarginY,$e.diagramMarginY),h.data.widthLimit=screen.availWidth,z5=$e.diagramMarginX,$5=$e.diagramMarginY;let f=n.db.getTitle(),d=n.db.getBoundarys("");Lj(u,"",h,d,n),Al.insertArrowHead(u),Al.insertArrowEnd(u),Al.insertArrowCrossHead(u),Al.insertArrowFilledHead(u),PSt(u,n.db.getRels(),n.db.getC4Shape,n),h.data.stopx=z5,h.data.stopy=$5;let p=h.data,g=p.stopy-p.starty+2*$e.diagramMarginY,v=p.stopx-p.startx+2*$e.diagramMarginX;f&&u.append("text").text(f).attr("x",(p.stopx-p.startx)/2-4*$e.diagramMarginX).attr("y",p.starty+$e.diagramMarginY),Pr(u,g,v,$e.useMaxWidth);let x=f?60:0;u.attr("viewBox",p.startx-$e.diagramMarginX+" -"+($e.diagramMarginY+x)+" "+v+" "+(g+x)),V.debug("models:",p)},"draw"),Y9={drawPersonOrSystemArray:_j,drawBoundary:Aj,setConf:W9,draw:BSt}});var FSt,Rj,Nj=R(()=>{"use strict";FSt=o(e=>`.person { stroke: ${e.personBorder}; fill: ${e.personBkg}; } `,"getStyles"),Rj=FSt});var Mj={};xr(Mj,{diagram:()=>zSt});var zSt,Ij=R(()=>{"use strict";LS();j7();Dj();Nj();zSt={parser:t$,db:Ty,renderer:Y9,styles:Rj,init:o(({c4:e,wrap:t})=>{Y9.setConf(e),Ty.setWrap(t)},"init")}});function Zj(e){return typeof e>"u"||e===null}function USt(e){return typeof e=="object"&&e!==null}function HSt(e){return Array.isArray(e)?e:Zj(e)?[]:[e]}function WSt(e,t){var r,n,i,a;if(t)for(a=Object.keys(t),r=0,n=a.length;rl&&(a=" ... ",t=n-l+a.length),r-n>l&&(s=" ...",r=n+l-s.length),{str:a+e.slice(t,r).replace(/\t/g,"\u2192")+s,pos:n-t+a.length}}function X9(e,t){return Fi.repeat(" ",t-e.length)+e}function t7t(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],i=[],a,s=-1;a=r.exec(e.buffer);)i.push(a.index),n.push(a.index+a[0].length),e.position<=a.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);var l="",u,h,f=Math.min(e.line+t.linesAfter,i.length).toString().length,d=t.maxLength-(t.indent+f+3);for(u=1;u<=t.linesBefore&&!(s-u<0);u++)h=q9(e.buffer,n[s-u],i[s-u],e.position-(n[s]-n[s-u]),d),l=Fi.repeat(" ",t.indent)+X9((e.line-u+1).toString(),f)+" | "+h.str+` `+l;for(h=q9(e.buffer,n[s],i[s],e.position,d),l+=Fi.repeat(" ",t.indent)+X9((e.line+1).toString(),f)+" | "+h.str+` `,l+=Fi.repeat("-",t.indent+f+3+h.pos)+`^ `,u=1;u<=t.linesAfter&&!(s+u>=i.length);u++)h=q9(e.buffer,n[s+u],i[s+u],e.position-(n[s]-n[s+u]),d),l+=Fi.repeat(" ",t.indent)+X9((e.line+u+1).toString(),f)+" | "+h.str+` `;return l.replace(/\n$/,"")}function i7t(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function a7t(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(r7t.indexOf(r)===-1)throw new _s('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=i7t(t.styleAliases||null),n7t.indexOf(this.kind)===-1)throw new _s('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}function Bj(e,t){var r=[];return e[t].forEach(function(n){var i=r.length;r.forEach(function(a,s){a.tag===n.tag&&a.kind===n.kind&&a.multi===n.multi&&(i=s)}),r[i]=n}),r}function s7t(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,r;function n(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(o(n,"collectType"),t=0,r=arguments.length;t=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:r*parseFloat(t,10)}function R7t(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Fi.isNegativeZero(e))return"-0.0";return r=e.toString(10),D7t.test(r)?r.replace("e",".e"):r}function N7t(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||Fi.isNegativeZero(e))}function O7t(e){return e===null?!1:eK.exec(e)!==null||rK.exec(e)!==null}function P7t(e){var t,r,n,i,a,s,l,u=0,h=null,f,d,p;if(t=eK.exec(e),t===null&&(t=rK.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,i=+t[3],!t[4])return new Date(Date.UTC(r,n,i));if(a=+t[4],s=+t[5],l=+t[6],t[7]){for(u=t[7].slice(0,3);u.length<3;)u+="0";u=+u}return t[9]&&(f=+t[10],d=+(t[11]||0),h=(f*60+d)*6e4,t[9]==="-"&&(h=-h)),p=new Date(Date.UTC(r,n,i,a,s,l,u)),h&&p.setTime(p.getTime()-h),p}function B7t(e){return e.toISOString()}function z7t(e){return e==="<<"||e===null}function G7t(e){if(e===null)return!1;var t,r,n=0,i=e.length,a=eL;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function V7t(e){var t,r,n=e.replace(/[\r\n=]/g,""),i=n.length,a=eL,s=0,l=[];for(t=0;t>16&255),l.push(s>>8&255),l.push(s&255)),s=s<<6|a.indexOf(n.charAt(t));return r=i%4*6,r===0?(l.push(s>>16&255),l.push(s>>8&255),l.push(s&255)):r===18?(l.push(s>>10&255),l.push(s>>2&255)):r===12&&l.push(s>>4&255),new Uint8Array(l)}function U7t(e){var t="",r=0,n,i,a=e.length,s=eL;for(n=0;n>18&63],t+=s[r>>12&63],t+=s[r>>6&63],t+=s[r&63]),r=(r<<8)+e[n];return i=a%3,i===0?(t+=s[r>>18&63],t+=s[r>>12&63],t+=s[r>>6&63],t+=s[r&63]):i===2?(t+=s[r>>10&63],t+=s[r>>4&63],t+=s[r<<2&63],t+=s[64]):i===1&&(t+=s[r>>2&63],t+=s[r<<4&63],t+=s[64],t+=s[64]),t}function H7t(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}function X7t(e){if(e===null)return!0;var t=[],r,n,i,a,s,l=e;for(r=0,n=l.length;r>10)+55296,(e-65536&1023)+56320)}function dAt(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||nK,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function uK(e,t){var r={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return r.snippet=e7t(r),new _s(t,r)}function je(e,t){throw uK(e,t)}function H5(e,t){e.onWarning&&e.onWarning.call(null,uK(e,t))}function Vh(e,t,r,n){var i,a,s,l;if(t1&&(e.result+=Fi.repeat(` `,t-1))}function pAt(e,t,r){var n,i,a,s,l,u,h,f,d=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),Ls(m)||vm(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=e.input.charCodeAt(e.position+1),Ls(i)||r&&vm(i)))return!1;for(e.kind="scalar",e.result="",a=s=e.position,l=!1;m!==0;){if(m===58){if(i=e.input.charCodeAt(e.position+1),Ls(i)||r&&vm(i))break}else if(m===35){if(n=e.input.charCodeAt(e.position-1),Ls(n))break}else{if(e.position===e.lineStart&&q5(e)||r&&vm(m))break;if(kc(m))if(u=e.line,h=e.lineStart,f=e.lineIndent,Ai(e,!1,-1),e.lineIndent>=t){l=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=s,e.line=u,e.lineStart=h,e.lineIndent=f;break}}l&&(Vh(e,a,s,!1),nL(e,e.line-u),a=s=e.position,l=!1),Rd(m)||(s=e.position+1),m=e.input.charCodeAt(++e.position)}return Vh(e,a,s,!1),e.result?!0:(e.kind=d,e.result=p,!1)}function mAt(e,t){var r,n,i;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=i=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(Vh(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,i=e.position;else return!0;else kc(r)?(Vh(e,n,i,!0),nL(e,Ai(e,!1,t)),n=i=e.position):e.position===e.lineStart&&q5(e)?je(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);je(e,"unexpected end of the stream within a single quoted scalar")}function gAt(e,t){var r,n,i,a,s,l;if(l=e.input.charCodeAt(e.position),l!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(l=e.input.charCodeAt(e.position))!==0;){if(l===34)return Vh(e,r,e.position,!0),e.position++,!0;if(l===92){if(Vh(e,r,e.position,!0),l=e.input.charCodeAt(++e.position),kc(l))Ai(e,!1,t);else if(l<256&&lK[l])e.result+=cK[l],e.position++;else if((s=uAt(l))>0){for(i=s,a=0;i>0;i--)l=e.input.charCodeAt(++e.position),(s=cAt(l))>=0?a=(a<<4)+s:je(e,"expected hexadecimal character");e.result+=fAt(a),e.position++}else je(e,"unknown escape sequence");r=n=e.position}else kc(l)?(Vh(e,r,n,!0),nL(e,Ai(e,!1,t)),r=n=e.position):e.position===e.lineStart&&q5(e)?je(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}je(e,"unexpected end of the stream within a double quoted scalar")}function yAt(e,t){var r=!0,n,i,a,s=e.tag,l,u=e.anchor,h,f,d,p,m,g=Object.create(null),y,v,x,b;if(b=e.input.charCodeAt(e.position),b===91)f=93,m=!1,l=[];else if(b===123)f=125,m=!0,l={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=l),b=e.input.charCodeAt(++e.position);b!==0;){if(Ai(e,!0,t),b=e.input.charCodeAt(e.position),b===f)return e.position++,e.tag=s,e.anchor=u,e.kind=m?"mapping":"sequence",e.result=l,!0;r?b===44&&je(e,"expected the node content, but found ','"):je(e,"missed comma between flow collection entries"),v=y=x=null,d=p=!1,b===63&&(h=e.input.charCodeAt(e.position+1),Ls(h)&&(d=p=!0,e.position++,Ai(e,!0,t))),n=e.line,i=e.lineStart,a=e.position,bm(e,t,V5,!1,!0),v=e.tag,y=e.result,Ai(e,!0,t),b=e.input.charCodeAt(e.position),(p||e.line===n)&&b===58&&(d=!0,b=e.input.charCodeAt(++e.position),Ai(e,!0,t),bm(e,t,V5,!1,!0),x=e.result),m?xm(e,l,g,v,y,x,n,i,a):d?l.push(xm(e,null,g,v,y,x,n,i,a)):l.push(y),Ai(e,!0,t),b=e.input.charCodeAt(e.position),b===44?(r=!0,b=e.input.charCodeAt(++e.position)):r=!1}je(e,"unexpected end of the stream within a flow collection")}function vAt(e,t){var r,n,i=j9,a=!1,s=!1,l=t,u=0,h=!1,f,d;if(d=e.input.charCodeAt(e.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(e.kind="scalar",e.result="";d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)j9===i?i=d===43?Fj:aAt:je(e,"repeat of a chomping mode identifier");else if((f=hAt(d))>=0)f===0?je(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):s?je(e,"repeat of an indentation width identifier"):(l=t+f-1,s=!0);else break;if(Rd(d)){do d=e.input.charCodeAt(++e.position);while(Rd(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!kc(d)&&d!==0)}for(;d!==0;){for(rL(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!s||e.lineIndentl&&(l=e.lineIndent),kc(d)){u++;continue}if(e.lineIndentt)&&u!==0)je(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(v&&(s=e.line,l=e.lineStart,u=e.position),bm(e,t,U5,!0,i)&&(v?g=e.result:y=e.result),v||(xm(e,d,p,m,g,y,s,l,u),m=g=y=null),Ai(e,!0,-1),b=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>t)&&b!==0)je(e,"bad indentation of a mapping entry");else if(e.lineIndentt?u=1:e.lineIndent===t?u=0:e.lineIndentt?u=1:e.lineIndent===t?u=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),d=0,p=e.implicitTypes.length;d"),e.result!==null&&g.kind!==e.kind&&je(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+g.kind+'", not "'+e.kind+'"'),g.resolve(e.result,e.tag)?(e.result=g.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):je(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function kAt(e){var t=e.position,r,n,i,a=!1,s;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(s=e.input.charCodeAt(e.position))!==0&&(Ai(e,!0,-1),s=e.input.charCodeAt(e.position),!(e.lineIndent>0||s!==37));){for(a=!0,s=e.input.charCodeAt(++e.position),r=e.position;s!==0&&!Ls(s);)s=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),i=[],n.length<1&&je(e,"directive name must not be less than one character in length");s!==0;){for(;Rd(s);)s=e.input.charCodeAt(++e.position);if(s===35){do s=e.input.charCodeAt(++e.position);while(s!==0&&!kc(s));break}if(kc(s))break;for(r=e.position;s!==0&&!Ls(s);)s=e.input.charCodeAt(++e.position);i.push(e.input.slice(r,e.position))}s!==0&&rL(e),Uh.call(Gj,n)?Gj[n](e,n,i):H5(e,'unknown document directive "'+n+'"')}if(Ai(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,Ai(e,!0,-1)):a&&je(e,"directives end mark is expected"),bm(e,e.lineIndent-1,U5,!1,!0),Ai(e,!0,-1),e.checkLineBreaks&&oAt.test(e.input.slice(t,e.position))&&H5(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&q5(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Ai(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=hK(e,r);if(typeof t!="function")return n;for(var i=0,a=n.length;i=55296&&r<=56319&&t+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function bK(e){var t=/^\n* /;return t.test(e)}function JAt(e,t,r,n,i,a,s,l){var u,h=0,f=null,d=!1,p=!1,m=n!==-1,g=-1,y=QAt(kv(e,0))&&ZAt(kv(e,e.length-1));if(t||s)for(u=0;u=65536?u+=2:u++){if(h=kv(e,u),!Av(h))return ym;y=y&&Yj(h,f,l),f=h}else{for(u=0;u=65536?u+=2:u++){if(h=kv(e,u),h===Cv)d=!0,m&&(p=p||u-g-1>n&&e[g+1]!==" ",g=u);else if(!Av(h))return ym;y=y&&Yj(h,f,l),f=h}p=p||m&&u-g-1>n&&e[g+1]!==" "}return!d&&!p?y&&!s&&!i(e)?wK:a===Sv?ym:J9:r>9&&bK(e)?ym:s?a===Sv?ym:J9:p?kK:TK}function t8t(e,t,r,n,i){e.dump=function(){if(t.length===0)return e.quotingType===Sv?'""':"''";if(!e.noCompatMode&&(HAt.indexOf(t)!==-1||WAt.test(t)))return e.quotingType===Sv?'"'+t+'"':"'"+t+"'";var a=e.indent*Math.max(1,r),s=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),l=n||e.flowLevel>-1&&r>=e.flowLevel;function u(h){return KAt(e,h)}switch(o(u,"testAmbiguity"),JAt(t,l,e.indent,s,u,e.quotingType,e.forceQuotes&&!n,i)){case wK:return t;case J9:return"'"+t.replace(/'/g,"''")+"'";case TK:return"|"+qj(t,e.indent)+Xj(Hj(t,a));case kK:return">"+qj(t,e.indent)+Xj(Hj(e8t(t,s),a));case ym:return'"'+r8t(t)+'"';default:throw new _s("impossible error: invalid scalar style")}}()}function qj(e,t){var r=bK(e)?String(t):"",n=e[e.length-1]===` `,i=n&&(e[e.length-2]===` `||e===` `),a=i?"+":n?"":"-";return r+a+` `}function Xj(e){return e[e.length-1]===` `?e.slice(0,-1):e}function e8t(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var h=e.indexOf(` `);return h=h!==-1?h:e.length,r.lastIndex=h,jj(e.slice(0,h),t)}(),i=e[0]===` `||e[0]===" ",a,s;s=r.exec(e);){var l=s[1],u=s[2];a=u[0]===" ",n+=l+(!i&&!a&&u!==""?` `:"")+jj(u,t),i=a}return n}function jj(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,i=0,a,s=0,l=0,u="";n=r.exec(e);)l=n.index,l-i>t&&(a=s>i?s:l,u+=` `+e.slice(i,a),i=a+1),s=l;return u+=` `,e.length-i>t&&s>i?u+=e.slice(i,s)+` `+e.slice(s+1):u+=e.slice(i),u.slice(1)}function r8t(e){for(var t="",r=0,n,i=0;i=65536?i+=2:i++)r=kv(e,i),n=Pa[r],!n&&Av(r)?(t+=e[i],r>=65536&&(t+=e[i+1])):t+=n||qAt(r);return t}function n8t(e,t,r){var n="",i=e.tag,a,s,l;for(a=0,s=r.length;a"u"&&Ru(e,t,null,!1,!1))&&(n!==""&&(n+=","+(e.condenseFlow?"":" ")),n+=e.dump);e.tag=i,e.dump="["+n+"]"}function Kj(e,t,r,n){var i="",a=e.tag,s,l,u;for(s=0,l=r.length;s"u"&&Ru(e,t+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=Z9(e,t)),e.dump&&Cv===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function i8t(e,t,r){var n="",i=e.tag,a=Object.keys(r),s,l,u,h,f;for(s=0,l=a.length;s1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Ru(e,t,h,!1,!1)&&(f+=e.dump,n+=f));e.tag=i,e.dump="{"+n+"}"}function a8t(e,t,r,n){var i="",a=e.tag,s=Object.keys(r),l,u,h,f,d,p;if(e.sortKeys===!0)s.sort();else if(typeof e.sortKeys=="function")s.sort(e.sortKeys);else if(e.sortKeys)throw new _s("sortKeys must be a boolean or a function");for(l=0,u=s.length;l1024,d&&(e.dump&&Cv===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,d&&(p+=Z9(e,t)),Ru(e,t+1,f,!0,d)&&(e.dump&&Cv===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function Qj(e,t,r){var n,i,a,s,l,u;for(i=r?e.explicitTypes:e.implicitTypes,a=0,s=i.length;a tag resolver accepts not "'+u+'" style');e.dump=n}return!0}return!1}function Ru(e,t,r,n,i,a,s){e.tag=null,e.dump=r,Qj(e,r,!1)||Qj(e,r,!0);var l=dK.call(e.dump),u=n,h;n&&(n=e.flowLevel<0||e.flowLevel>t);var f=l==="[object Object]"||l==="[object Array]",d,p;if(f&&(d=e.duplicates.indexOf(r),p=d!==-1),(e.tag!==null&&e.tag!=="?"||p||e.indent!==2&&t>0)&&(i=!1),p&&e.usedDuplicates[d])e.dump="*ref_"+d;else{if(f&&p&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),l==="[object Object]")n&&Object.keys(e.dump).length!==0?(a8t(e,t,e.dump,i),p&&(e.dump="&ref_"+d+e.dump)):(i8t(e,t,e.dump),p&&(e.dump="&ref_"+d+" "+e.dump));else if(l==="[object Array]")n&&e.dump.length!==0?(e.noArrayIndent&&!s&&t>0?Kj(e,t-1,e.dump,i):Kj(e,t,e.dump,i),p&&(e.dump="&ref_"+d+e.dump)):(n8t(e,t,e.dump),p&&(e.dump="&ref_"+d+" "+e.dump));else if(l==="[object String]")e.tag!=="?"&&t8t(e,e.dump,t,a,u);else{if(l==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new _s("unacceptable kind of an object to dump "+l)}e.tag!==null&&e.tag!=="?"&&(h=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?h="!"+h:h.slice(0,18)==="tag:yaml.org,2002:"?h="!!"+h.slice(18):h="!<"+h+">",e.dump=h+" "+e.dump)}return!0}function s8t(e,t){var r=[],n=[],i,a;for(tL(e,r,n),i=0,a=n.length;i{"use strict";o(Zj,"isNothing");o(USt,"isObject");o(HSt,"toArray");o(WSt,"extend");o(YSt,"repeat");o(qSt,"isNegativeZero");XSt=Zj,jSt=USt,KSt=HSt,QSt=YSt,ZSt=qSt,JSt=WSt,Fi={isNothing:XSt,isObject:jSt,toArray:KSt,repeat:QSt,isNegativeZero:ZSt,extend:JSt};o(Jj,"formatError");o(Ev,"YAMLException$1");Ev.prototype=Object.create(Error.prototype);Ev.prototype.constructor=Ev;Ev.prototype.toString=o(function(t){return this.name+": "+Jj(this,t)},"toString");_s=Ev;o(q9,"getLine");o(X9,"padStart");o(t7t,"makeSnippet");e7t=t7t,r7t=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],n7t=["scalar","sequence","mapping"];o(i7t,"compileStyleAliases");o(a7t,"Type$1");Oa=a7t;o(Bj,"compileList");o(s7t,"compileMap");o(K9,"Schema$1");K9.prototype.extend=o(function(t){var r=[],n=[];if(t instanceof Oa)n.push(t);else if(Array.isArray(t))n=n.concat(t);else if(t&&(Array.isArray(t.implicit)||Array.isArray(t.explicit)))t.implicit&&(r=r.concat(t.implicit)),t.explicit&&(n=n.concat(t.explicit));else throw new _s("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(a){if(!(a instanceof Oa))throw new _s("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new _s("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new _s("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(a){if(!(a instanceof Oa))throw new _s("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(K9.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=Bj(i,"implicit"),i.compiledExplicit=Bj(i,"explicit"),i.compiledTypeMap=s7t(i.compiledImplicit,i.compiledExplicit),i},"extend");o7t=K9,l7t=new Oa("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(e){return e!==null?e:""},"construct")}),c7t=new Oa("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(e){return e!==null?e:[]},"construct")}),u7t=new Oa("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(e){return e!==null?e:{}},"construct")}),h7t=new o7t({explicit:[l7t,c7t,u7t]});o(f7t,"resolveYamlNull");o(d7t,"constructYamlNull");o(p7t,"isNull");m7t=new Oa("tag:yaml.org,2002:null",{kind:"scalar",resolve:f7t,construct:d7t,predicate:p7t,represent:{canonical:o(function(){return"~"},"canonical"),lowercase:o(function(){return"null"},"lowercase"),uppercase:o(function(){return"NULL"},"uppercase"),camelcase:o(function(){return"Null"},"camelcase"),empty:o(function(){return""},"empty")},defaultStyle:"lowercase"});o(g7t,"resolveYamlBoolean");o(y7t,"constructYamlBoolean");o(v7t,"isBoolean");x7t=new Oa("tag:yaml.org,2002:bool",{kind:"scalar",resolve:g7t,construct:y7t,predicate:v7t,represent:{lowercase:o(function(e){return e?"true":"false"},"lowercase"),uppercase:o(function(e){return e?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(e){return e?"True":"False"},"camelcase")},defaultStyle:"lowercase"});o(b7t,"isHexCode");o(w7t,"isOctCode");o(T7t,"isDecCode");o(k7t,"resolveYamlInteger");o(E7t,"constructYamlInteger");o(C7t,"isInteger");S7t=new Oa("tag:yaml.org,2002:int",{kind:"scalar",resolve:k7t,construct:E7t,predicate:C7t,represent:{binary:o(function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},"binary"),octal:o(function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},"octal"),decimal:o(function(e){return e.toString(10)},"decimal"),hexadecimal:o(function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),A7t=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");o(_7t,"resolveYamlFloat");o(L7t,"constructYamlFloat");D7t=/^[-+]?[0-9]+e/;o(R7t,"representYamlFloat");o(N7t,"isFloat");M7t=new Oa("tag:yaml.org,2002:float",{kind:"scalar",resolve:_7t,construct:L7t,predicate:N7t,represent:R7t,defaultStyle:"lowercase"}),tK=h7t.extend({implicit:[m7t,x7t,S7t,M7t]}),I7t=tK,eK=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),rK=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]))?))?$");o(O7t,"resolveYamlTimestamp");o(P7t,"constructYamlTimestamp");o(B7t,"representYamlTimestamp");F7t=new Oa("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:O7t,construct:P7t,instanceOf:Date,represent:B7t});o(z7t,"resolveYamlMerge");$7t=new Oa("tag:yaml.org,2002:merge",{kind:"scalar",resolve:z7t}),eL=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= \r`;o(G7t,"resolveYamlBinary");o(V7t,"constructYamlBinary");o(U7t,"representYamlBinary");o(H7t,"isBinary");W7t=new Oa("tag:yaml.org,2002:binary",{kind:"scalar",resolve:G7t,construct:V7t,predicate:H7t,represent:U7t}),Y7t=Object.prototype.hasOwnProperty,q7t=Object.prototype.toString;o(X7t,"resolveYamlOmap");o(j7t,"constructYamlOmap");K7t=new Oa("tag:yaml.org,2002:omap",{kind:"sequence",resolve:X7t,construct:j7t}),Q7t=Object.prototype.toString;o(Z7t,"resolveYamlPairs");o(J7t,"constructYamlPairs");tAt=new Oa("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Z7t,construct:J7t}),eAt=Object.prototype.hasOwnProperty;o(rAt,"resolveYamlSet");o(nAt,"constructYamlSet");iAt=new Oa("tag:yaml.org,2002:set",{kind:"mapping",resolve:rAt,construct:nAt}),nK=I7t.extend({implicit:[F7t,$7t],explicit:[W7t,K7t,tAt,iAt]}),Uh=Object.prototype.hasOwnProperty,V5=1,iK=2,aK=3,U5=4,j9=1,aAt=2,Fj=3,sAt=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,oAt=/[\x85\u2028\u2029]/,lAt=/[,\[\]\{\}]/,sK=/^(?:!|!!|![a-z\-]+!)$/i,oK=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;o(zj,"_class");o(kc,"is_EOL");o(Rd,"is_WHITE_SPACE");o(Ls,"is_WS_OR_EOL");o(vm,"is_FLOW_INDICATOR");o(cAt,"fromHexCode");o(uAt,"escapedHexLen");o(hAt,"fromDecimalCode");o($j,"simpleEscapeSequence");o(fAt,"charFromCodepoint");lK=new Array(256),cK=new Array(256);for(Dd=0;Dd<256;Dd++)lK[Dd]=$j(Dd)?1:0,cK[Dd]=$j(Dd);o(dAt,"State$1");o(uK,"generateError");o(je,"throwError");o(H5,"throwWarning");Gj={YAML:o(function(t,r,n){var i,a,s;t.version!==null&&je(t,"duplication of %YAML directive"),n.length!==1&&je(t,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&je(t,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),s=parseInt(i[2],10),a!==1&&je(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=s<2,s!==1&&s!==2&&H5(t,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(t,r,n){var i,a;n.length!==2&&je(t,"TAG directive accepts exactly two arguments"),i=n[0],a=n[1],sK.test(i)||je(t,"ill-formed tag handle (first argument) of the TAG directive"),Uh.call(t.tagMap,i)&&je(t,'there is a previously declared suffix for "'+i+'" tag handle'),oK.test(a)||je(t,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{je(t,"tag prefix is malformed: "+a)}t.tagMap[i]=a},"handleTagDirective")};o(Vh,"captureSegment");o(Vj,"mergeMappings");o(xm,"storeMappingPair");o(rL,"readLineBreak");o(Ai,"skipSeparationSpace");o(q5,"testDocumentSeparator");o(nL,"writeFoldedLines");o(pAt,"readPlainScalar");o(mAt,"readSingleQuotedScalar");o(gAt,"readDoubleQuotedScalar");o(yAt,"readFlowCollection");o(vAt,"readBlockScalar");o(Uj,"readBlockSequence");o(xAt,"readBlockMapping");o(bAt,"readTagProperty");o(wAt,"readAnchorProperty");o(TAt,"readAlias");o(bm,"composeNode");o(kAt,"readDocument");o(hK,"loadDocuments");o(EAt,"loadAll$1");o(CAt,"load$1");SAt=EAt,AAt=CAt,fK={loadAll:SAt,load:AAt},dK=Object.prototype.toString,pK=Object.prototype.hasOwnProperty,iL=65279,_At=9,Cv=10,LAt=13,DAt=32,RAt=33,NAt=34,Q9=35,MAt=37,IAt=38,OAt=39,PAt=42,mK=44,BAt=45,W5=58,FAt=61,zAt=62,$At=63,GAt=64,gK=91,yK=93,VAt=96,vK=123,UAt=124,xK=125,Pa={};Pa[0]="\\0";Pa[7]="\\a";Pa[8]="\\b";Pa[9]="\\t";Pa[10]="\\n";Pa[11]="\\v";Pa[12]="\\f";Pa[13]="\\r";Pa[27]="\\e";Pa[34]='\\"';Pa[92]="\\\\";Pa[133]="\\N";Pa[160]="\\_";Pa[8232]="\\L";Pa[8233]="\\P";HAt=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],WAt=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;o(YAt,"compileStyleMap");o(qAt,"encodeHex");XAt=1,Sv=2;o(jAt,"State");o(Hj,"indentString");o(Z9,"generateNextLine");o(KAt,"testImplicitResolving");o(Y5,"isWhitespace");o(Av,"isPrintable");o(Wj,"isNsCharOrWhitespace");o(Yj,"isPlainSafe");o(QAt,"isPlainSafeFirst");o(ZAt,"isPlainSafeLast");o(kv,"codePointAt");o(bK,"needIndentIndicator");wK=1,J9=2,TK=3,kK=4,ym=5;o(JAt,"chooseScalarStyle");o(t8t,"writeScalar");o(qj,"blockHeader");o(Xj,"dropEndingNewline");o(e8t,"foldString");o(jj,"foldLine");o(r8t,"escapeString");o(n8t,"writeFlowSequence");o(Kj,"writeBlockSequence");o(i8t,"writeFlowMapping");o(a8t,"writeBlockMapping");o(Qj,"detectType");o(Ru,"writeNode");o(s8t,"getDuplicateReferences");o(tL,"inspectNode");o(o8t,"dump$1");l8t=o8t,c8t={dump:l8t};o(aL,"renamed");X5=tK,j5=fK.load,LEe=fK.loadAll,DEe=c8t.dump,REe=aL("safeLoad","load"),NEe=aL("safeLoadAll","loadAll"),MEe=aL("safeDump","dump")});function lL(e){let t=[];for(let r of e){let n=Lv.get(r);n?.styles&&(t=[...t,...n.styles??[]].map(i=>i.trim())),n?.textStyles&&(t=[...t,...n.textStyles??[]].map(i=>i.trim()))}return t}var u8t,CK,wm,Hh,Ds,Lv,Nu,cL,uL,K5,oL,Go,Q5,Z5,J5,tw,h8t,f8t,d8t,p8t,m8t,g8t,y8t,hL,v8t,x8t,b8t,SK,w8t,T8t,fL,AK,_K,k8t,LK,E8t,C8t,S8t,A8t,_8t,_v,DK,RK,L8t,D8t,NK,R8t,N8t,M8t,I8t,O8t,MK,IK,P8t,B8t,F8t,z8t,$8t,G8t,ew,dL=R(()=>{"use strict";ur();_r();Ue();hr();ce();sL();Ci();u8t="flowchart-",CK=0,wm=pt(),Hh=new Map,Ds=[],Lv=new Map,Nu=[],cL=new Map,uL=new Map,K5=0,oL=!0,Z5=[],J5=o(e=>Yt.sanitizeText(e,wm),"sanitizeText"),tw=o(function(e){for(let t of Hh.values())if(t.id===e)return t.domId;return e},"lookUpDomId"),h8t=o(function(e,t,r,n,i,a,s={},l){if(!e||e.trim().length===0)return;let u,h=Hh.get(e);if(h===void 0&&(h={id:e,labelType:"text",domId:u8t+e+"-"+CK,styles:[],classes:[]},Hh.set(e,h)),CK++,t!==void 0?(wm=pt(),u=J5(t.text.trim()),h.labelType=t.type,u.startsWith('"')&&u.endsWith('"')&&(u=u.substring(1,u.length-1)),h.text=u):h.text===void 0&&(h.text=e),r!==void 0&&(h.type=r),n?.forEach(function(f){h.styles.push(f)}),i?.forEach(function(f){h.classes.push(f)}),a!==void 0&&(h.dir=a),h.props===void 0?h.props=s:s!==void 0&&Object.assign(h.props,s),l!==void 0){let f;l.includes(` `)?f=l+` `:f=`{ `+l+` }`;let d=j5(f,{schema:X5});if(d.shape&&(d.shape!==d.shape.toLowerCase()||d.shape.includes("_")))throw new Error(`No such shape: ${d.shape}. Shape names should be lowercase.`);d?.shape&&(h.type=d?.shape),d?.label&&(h.text=d?.label),d?.icon&&(h.icon=d?.icon,!d.label?.trim()&&h.text===e&&(h.text="")),d?.form&&(h.form=d?.form),d?.pos&&(h.pos=d?.pos),d?.img&&(h.img=d?.img,!d.label?.trim()&&h.text===e&&(h.text="")),d?.constraint&&(h.constraint=d.constraint),d.w&&(h.assetWidth=Number(d.w)),d.h&&(h.assetHeight=Number(d.h))}},"addVertex"),f8t=o(function(e,t,r){let a={start:e,end:t,type:void 0,text:"",labelType:"text"};V.info("abc78 Got edge...",a);let s=r.text;if(s!==void 0&&(a.text=J5(s.text.trim()),a.text.startsWith('"')&&a.text.endsWith('"')&&(a.text=a.text.substring(1,a.text.length-1)),a.labelType=s.type),r!==void 0&&(a.type=r.type,a.stroke=r.stroke,a.length=r.length>10?10:r.length),Ds.length<(wm.maxEdges??500))V.info("Pushing edge..."),Ds.push(a);else throw new Error(`Edge limit exceeded. ${Ds.length} edges found, but the limit is ${wm.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.`)},"addSingleLink"),d8t=o(function(e,t,r){V.info("addLink",e,t,r);for(let n of e)for(let i of t)f8t(n,i,r)},"addLink"),p8t=o(function(e,t){e.forEach(function(r){r==="default"?Ds.defaultInterpolate=t:Ds[r].interpolate=t})},"updateLinkInterpolate"),m8t=o(function(e,t){e.forEach(function(r){if(typeof r=="number"&&r>=Ds.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${Ds.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?Ds.defaultStyle=t:(Ds[r].style=t,(Ds[r]?.style?.length??0)>0&&!Ds[r]?.style?.some(n=>n?.startsWith("fill"))&&Ds[r]?.style?.push("fill:none"))})},"updateLink"),g8t=o(function(e,t){e.split(",").forEach(function(r){let n=Lv.get(r);n===void 0&&(n={id:r,styles:[],textStyles:[]},Lv.set(r,n)),t?.forEach(function(i){if(/color/.exec(i)){let a=i.replace("fill","bgFill");n.textStyles.push(a)}n.styles.push(i)})})},"addClass"),y8t=o(function(e){Go=e,/.*/.exec(Go)&&(Go="LR"),/.*v/.exec(Go)&&(Go="TB"),Go==="TD"&&(Go="TB")},"setDirection"),hL=o(function(e,t){for(let r of e.split(",")){let n=Hh.get(r);n&&n.classes.push(t);let i=cL.get(r);i&&i.classes.push(t)}},"setClass"),v8t=o(function(e,t){if(t!==void 0){t=J5(t);for(let r of e.split(","))uL.set(Q5==="gen-1"?tw(r):r,t)}},"setTooltip"),x8t=o(function(e,t,r){let n=tw(e);if(pt().securityLevel!=="loose"||t===void 0)return;let i=[];if(typeof r=="string"){i=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let s=0;s")),i.classed("hover",!0)}).on("mouseout",function(){t.transition().duration(500).style("opacity",0),Gt(this).classed("hover",!1)})},"setupToolTips");Z5.push(LK);E8t=o(function(e="gen-1"){Hh=new Map,Lv=new Map,Ds=[],Z5=[LK],Nu=[],cL=new Map,K5=0,uL=new Map,oL=!0,Q5=e,wm=pt(),Ar()},"clear"),C8t=o(e=>{Q5=e||"gen-2"},"setGen"),S8t=o(function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},"defaultStyle"),A8t=o(function(e,t,r){let n=e.text.trim(),i=r.text;e===r&&/\s/.exec(r.text)&&(n=void 0);function a(h){let f={boolean:{},number:{},string:{}},d=[],p;return{nodeList:h.filter(function(g){let y=typeof g;return g.stmt&&g.stmt==="dir"?(p=g.value,!1):g.trim()===""?!1:y in f?f[y].hasOwnProperty(g)?!1:f[y][g]=!0:d.includes(g)?!1:d.push(g)}),dir:p}}o(a,"uniq");let{nodeList:s,dir:l}=a(t.flat());if(Q5==="gen-1")for(let h=0;h2e3)return{result:!1,count:0};if(DK[_v]=t,Nu[t].id===e)return{result:!0,count:0};let n=0,i=1;for(;n=0){let s=RK(e,a);if(s.result)return{result:!0,count:i+s.count};i=i+s.count}n=n+1}return{result:!1,count:i}},"indexNodes2"),L8t=o(function(e){return DK[e]},"getDepthFirstPos"),D8t=o(function(){_v=-1,Nu.length>0&&RK("none",Nu.length-1)},"indexNodes"),NK=o(function(){return Nu},"getSubGraphs"),R8t=o(()=>oL?(oL=!1,!0):!1,"firstGraph"),N8t=o(e=>{let t=e.trim(),r="arrow_open";switch(t[0]){case"<":r="arrow_point",t=t.slice(1);break;case"x":r="arrow_cross",t=t.slice(1);break;case"o":r="arrow_circle",t=t.slice(1);break}let n="normal";return t.includes("=")&&(n="thick"),t.includes(".")&&(n="dotted"),{type:r,stroke:n}},"destructStartLink"),M8t=o((e,t)=>{let r=t.length,n=0;for(let i=0;i{let t=e.trim(),r=t.slice(0,-1),n="arrow_open";switch(t.slice(-1)){case"x":n="arrow_cross",t.startsWith("x")&&(n="double_"+n,r=r.slice(1));break;case">":n="arrow_point",t.startsWith("<")&&(n="double_"+n,r=r.slice(1));break;case"o":n="arrow_circle",t.startsWith("o")&&(n="double_"+n,r=r.slice(1));break}let i="normal",a=r.length-1;r.startsWith("=")&&(i="thick"),r.startsWith("~")&&(i="invisible");let s=M8t(".",r);return s&&(i="dotted",a=s),{type:n,stroke:i,length:a}},"destructEndLink"),O8t=o((e,t)=>{let r=I8t(e),n;if(t){if(n=N8t(t),n.stroke!==r.stroke)return{type:"INVALID",stroke:"INVALID"};if(n.type==="arrow_open")n.type=r.type;else{if(n.type!==r.type)return{type:"INVALID",stroke:"INVALID"};n.type="double_"+n.type}return n.type==="double_arrow"&&(n.type="double_arrow_point"),n.length=r.length,n}return r},"destructLink"),MK=o((e,t)=>{for(let r of e)if(r.nodes.includes(t))return!0;return!1},"exists"),IK=o((e,t)=>{let r=[];return e.nodes.forEach((n,i)=>{MK(t,n)||r.push(e.nodes[i])}),{nodes:r}},"makeUniq"),P8t={firstGraph:R8t},B8t=o(e=>e.img?"imageSquare":e.icon?e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon":e.type==="square"?"squareRect":e.type==="round"?"roundedRect":e.type??"squareRect","getTypeFromVertex"),F8t=o((e,t)=>e.find(r=>r.id===t),"findNode"),z8t=o(e=>{let t="none",r="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":r=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":t=e.replace("double_",""),r=t;break}return{arrowTypeStart:t,arrowTypeEnd:r}},"destructEdgeType"),$8t=o((e,t,r,n,i,a)=>{let s=r.get(e.id),l=n.get(e.id)??!1,u=F8t(t,e.id);u?(u.cssStyles=e.styles,u.cssCompiledStyles=lL(e.classes),u.cssClasses=e.classes.join(" ")):t.push({id:e.id,label:e.text,labelStyle:"",parentId:s,padding:i.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:lL(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),shape:B8t(e),dir:e.dir,domId:e.domId,isGroup:l,look:a,link:e.link,linkTarget:e.linkTarget,tooltip:SK(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint})},"addNodeFromVertex");o(lL,"getCompiledStyles");G8t=o(()=>{let e=pt(),t=[],r=[],n=NK(),i=new Map,a=new Map;for(let u=n.length-1;u>=0;u--){let h=n[u];h.nodes.length>0&&a.set(h.id,!0);for(let f of h.nodes)i.set(f,h.id)}for(let u=n.length-1;u>=0;u--){let h=n[u];t.push({id:h.id,label:h.title,labelStyle:"",parentId:i.get(h.id),padding:8,cssCompiledStyles:lL(h.classes),cssClasses:h.classes.join(" "),shape:"rect",dir:h.dir,isGroup:!0,look:e.look})}AK().forEach(u=>{$8t(u,t,i,a,e,e.look||"classic")});let l=_K();return l.forEach((u,h)=>{let{arrowTypeStart:f,arrowTypeEnd:d}=z8t(u.type),p=[...l.defaultStyle??[]];u.style&&p.push(...u.style);let m={id:B5(u.start,u.end,{counter:h,prefix:"L"}),start:u.start,end:u.end,type:u.type??"normal",label:u.text,labelpos:"c",thickness:u.stroke,minlen:u.length,classes:u?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:u?.stroke==="invisible"?"none":f,arrowTypeEnd:u?.stroke==="invisible"?"none":d,arrowheadStyle:"fill: #333",labelStyle:p,style:p,pattern:u.stroke,look:e.look};r.push(m)}),{nodes:t,edges:r,other:{},config:e}},"getData"),ew={defaultConfig:o(()=>X4.flowchart,"defaultConfig"),setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,getData:G8t,setAccDescription:Fr,addVertex:h8t,lookUpDomId:tw,addLink:d8t,updateLinkInterpolate:p8t,updateLink:m8t,addClass:g8t,setDirection:y8t,setClass:hL,setTooltip:v8t,getTooltip:SK,setClickEvent:w8t,setLink:b8t,bindFunctions:T8t,getDirection:fL,getVertices:AK,getEdges:_K,getClasses:k8t,clear:E8t,setGen:C8t,defaultStyle:S8t,addSubGraph:A8t,getDepthFirstPos:L8t,indexNodes:D8t,getSubGraphs:NK,destructLink:O8t,lex:P8t,exists:MK,makeUniq:IK,setDiagramTitle:cn,getDiagramTitle:Jr}});var rw,pL=R(()=>{"use strict";ur();rw=o((e,t)=>{let r;return t==="sandbox"&&(r=Gt("#i"+e)),(t==="sandbox"?Gt(r.nodes()[0].contentDocument.body):Gt("body")).select(`[id="${e}"]`)},"getDiagramElement")});var io,Nd=R(()=>{"use strict";io=o(({flowchart:e})=>{let t=e?.subGraphTitleMargin?.top??0,r=e?.subGraphTitleMargin?.bottom??0,n=t+r;return{subGraphTitleTopMargin:t,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:n}},"getSubGraphTitleMargins")});function mL(e,t,r){if(e&&e.length){let[n,i]=t,a=Math.PI/180*r,s=Math.cos(a),l=Math.sin(a);for(let u of e){let[h,f]=u;u[0]=(h-n)*s-(f-i)*l+n,u[1]=(h-n)*l+(f-i)*s+i}}}function V8t(e,t){return e[0]===t[0]&&e[1]===t[1]}function U8t(e,t,r,n=1){let i=r,a=Math.max(t,.1),s=e[0]&&e[0][0]&&typeof e[0][0]=="number"?[e]:e,l=[0,0];if(i)for(let h of s)mL(h,l,i);let u=function(h,f,d){let p=[];for(let b of h){let w=[...b];V8t(w[0],w[w.length-1])||w.push([w[0][0],w[0][1]]),w.length>2&&p.push(w)}let m=[];f=Math.max(f,.1);let g=[];for(let b of p)for(let w=0;wb.yminw.ymin?1:b.xw.x?1:b.ymax===w.ymax?0:(b.ymax-w.ymax)/Math.abs(b.ymax-w.ymax)),!g.length)return m;let y=[],v=g[0].ymin,x=0;for(;y.length||g.length;){if(g.length){let b=-1;for(let w=0;wv);w++)b=w;g.splice(0,b+1).forEach(w=>{y.push({s:v,edge:w})})}if(y=y.filter(b=>!(b.edge.ymax<=v)),y.sort((b,w)=>b.edge.x===w.edge.x?0:(b.edge.x-w.edge.x)/Math.abs(b.edge.x-w.edge.x)),(d!==1||x%f==0)&&y.length>1)for(let b=0;b=y.length)break;let S=y[b].edge,T=y[w].edge;m.push([[Math.round(S.x),v],[Math.round(T.x),v]])}v+=d,y.forEach(b=>{b.edge.x=b.edge.x+d*b.edge.islope}),x++}return m}(s,a,n);if(i){for(let h of s)mL(h,l,-i);(function(h,f,d){let p=[];h.forEach(m=>p.push(...m)),mL(p,f,d)})(u,l,-i)}return u}function Mv(e,t){var r;let n=t.hachureAngle+90,i=t.hachureGap;i<0&&(i=4*t.strokeWidth),i=Math.round(Math.max(i,.1));let a=1;return t.roughness>=1&&(((r=t.randomizer)===null||r===void 0?void 0:r.next())||Math.random())>.7&&(a=i),U8t(e,i,n,a||1)}function hw(e){let t=e[0],r=e[1];return Math.sqrt(Math.pow(t[0]-r[0],2)+Math.pow(t[1]-r[1],2))}function yL(e,t){return e.type===t}function RL(e){let t=[],r=function(s){let l=new Array;for(;s!=="";)if(s.match(/^([ \t\r\n,]+)/))s=s.substr(RegExp.$1.length);else if(s.match(/^([aAcChHlLmMqQsStTvVzZ])/))l[l.length]={type:H8t,text:RegExp.$1},s=s.substr(RegExp.$1.length);else{if(!s.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];l[l.length]={type:gL,text:`${parseFloat(RegExp.$1)}`},s=s.substr(RegExp.$1.length)}return l[l.length]={type:OK,text:""},l}(e),n="BOD",i=0,a=r[i];for(;!yL(a,OK);){let s=0,l=[];if(n==="BOD"){if(a.text!=="M"&&a.text!=="m")return RL("M0,0"+e);i++,s=nw[a.text],n=a.text}else yL(a,gL)?s=nw[n]:(i++,s=nw[a.text],n=a.text);if(!(i+sf%2?h+r:h+t);a.push({key:"C",data:u}),t=u[4],r=u[5];break}case"Q":a.push({key:"Q",data:[...l]}),t=l[2],r=l[3];break;case"q":{let u=l.map((h,f)=>f%2?h+r:h+t);a.push({key:"Q",data:u}),t=u[2],r=u[3];break}case"A":a.push({key:"A",data:[...l]}),t=l[5],r=l[6];break;case"a":t+=l[5],r+=l[6],a.push({key:"A",data:[l[0],l[1],l[2],l[3],l[4],t,r]});break;case"H":a.push({key:"H",data:[...l]}),t=l[0];break;case"h":t+=l[0],a.push({key:"H",data:[t]});break;case"V":a.push({key:"V",data:[...l]}),r=l[0];break;case"v":r+=l[0],a.push({key:"V",data:[r]});break;case"S":a.push({key:"S",data:[...l]}),t=l[2],r=l[3];break;case"s":{let u=l.map((h,f)=>f%2?h+r:h+t);a.push({key:"S",data:u}),t=u[2],r=u[3];break}case"T":a.push({key:"T",data:[...l]}),t=l[0],r=l[1];break;case"t":t+=l[0],r+=l[1],a.push({key:"T",data:[t,r]});break;case"Z":case"z":a.push({key:"Z",data:[]}),t=n,r=i}return a}function HK(e){let t=[],r="",n=0,i=0,a=0,s=0,l=0,u=0;for(let{key:h,data:f}of e){switch(h){case"M":t.push({key:"M",data:[...f]}),[n,i]=f,[a,s]=f;break;case"C":t.push({key:"C",data:[...f]}),n=f[4],i=f[5],l=f[2],u=f[3];break;case"L":t.push({key:"L",data:[...f]}),[n,i]=f;break;case"H":n=f[0],t.push({key:"L",data:[n,i]});break;case"V":i=f[0],t.push({key:"L",data:[n,i]});break;case"S":{let d=0,p=0;r==="C"||r==="S"?(d=n+(n-l),p=i+(i-u)):(d=n,p=i),t.push({key:"C",data:[d,p,...f]}),l=f[0],u=f[1],n=f[2],i=f[3];break}case"T":{let[d,p]=f,m=0,g=0;r==="Q"||r==="T"?(m=n+(n-l),g=i+(i-u)):(m=n,g=i);let y=n+2*(m-n)/3,v=i+2*(g-i)/3,x=d+2*(m-d)/3,b=p+2*(g-p)/3;t.push({key:"C",data:[y,v,x,b,d,p]}),l=m,u=g,n=d,i=p;break}case"Q":{let[d,p,m,g]=f,y=n+2*(d-n)/3,v=i+2*(p-i)/3,x=m+2*(d-m)/3,b=g+2*(p-g)/3;t.push({key:"C",data:[y,v,x,b,m,g]}),l=d,u=p,n=m,i=g;break}case"A":{let d=Math.abs(f[0]),p=Math.abs(f[1]),m=f[2],g=f[3],y=f[4],v=f[5],x=f[6];d===0||p===0?(t.push({key:"C",data:[n,i,v,x,v,x]}),n=v,i=x):(n!==v||i!==x)&&(WK(n,i,v,x,d,p,m,g,y).forEach(function(b){t.push({key:"C",data:b})}),n=v,i=x);break}case"Z":t.push({key:"Z",data:[]}),n=a,i=s}r=h}return t}function Dv(e,t,r){return[e*Math.cos(r)-t*Math.sin(r),e*Math.sin(r)+t*Math.cos(r)]}function WK(e,t,r,n,i,a,s,l,u,h){let f=(d=s,Math.PI*d/180);var d;let p=[],m=0,g=0,y=0,v=0;if(h)[m,g,y,v]=h;else{[e,t]=Dv(e,t,-f),[r,n]=Dv(r,n,-f);let I=(e-r)/2,C=(t-n)/2,O=I*I/(i*i)+C*C/(a*a);O>1&&(O=Math.sqrt(O),i*=O,a*=O);let D=i*i,P=a*a,F=D*P-D*C*C-P*I*I,B=D*C*C+P*I*I,G=(l===u?-1:1)*Math.sqrt(Math.abs(F/B));y=G*i*C/a+(e+r)/2,v=G*-a*I/i+(t+n)/2,m=Math.asin(parseFloat(((t-v)/a).toFixed(9))),g=Math.asin(parseFloat(((n-v)/a).toFixed(9))),eg&&(m-=2*Math.PI),!u&&g>m&&(g-=2*Math.PI)}let x=g-m;if(Math.abs(x)>120*Math.PI/180){let I=g,C=r,O=n;g=u&&g>m?m+120*Math.PI/180*1:m+120*Math.PI/180*-1,p=WK(r=y+i*Math.cos(g),n=v+a*Math.sin(g),C,O,i,a,s,0,u,[g,I,y,v])}x=g-m;let b=Math.cos(m),w=Math.sin(m),S=Math.cos(g),T=Math.sin(g),E=Math.tan(x/4),_=4/3*i*E,A=4/3*a*E,L=[e,t],M=[e+_*w,t-A*b],N=[r+_*T,n-A*S],k=[r,n];if(M[0]=2*L[0]-M[0],M[1]=2*L[1]-M[1],h)return[M,N,k].concat(p);{p=[M,N,k].concat(p);let I=[];for(let C=0;C2){let i=[];for(let a=0;a2*Math.PI&&(m=0,g=2*Math.PI);let y=2*Math.PI/u.curveStepCount,v=Math.min(y/2,(g-m)/2),x=GK(v,h,f,d,p,m,g,1,u);if(!u.disableMultiStroke){let b=GK(v,h,f,d,p,m,g,1.5,u);x.push(...b)}return s&&(l?x.push(...Wh(h,f,h+d*Math.cos(m),f+p*Math.sin(m),u),...Wh(h,f,h+d*Math.cos(g),f+p*Math.sin(g),u)):x.push({op:"lineTo",data:[h,f]},{op:"lineTo",data:[h+d*Math.cos(m),f+p*Math.sin(m)]})),{type:"path",ops:x}}function FK(e,t){let r=HK(UK(RL(e))),n=[],i=[0,0],a=[0,0];for(let{key:s,data:l}of r)switch(s){case"M":a=[l[0],l[1]],i=[l[0],l[1]];break;case"L":n.push(...Wh(a[0],a[1],l[0],l[1],t)),a=[l[0],l[1]];break;case"C":{let[u,h,f,d,p,m]=l;n.push(...q8t(u,h,f,d,p,m,a,t)),a=[p,m];break}case"Z":n.push(...Wh(a[0],a[1],i[0],i[1],t)),a=[i[0],i[1]]}return{type:"path",ops:n}}function vL(e,t){let r=[];for(let n of e)if(n.length){let i=t.maxRandomnessOffset||0,a=n.length;if(a>2){r.push({op:"move",data:[n[0][0]+nr(i,t),n[0][1]+nr(i,t)]});for(let s=1;s500?.4:-.0016668*u+1.233334;let f=i.maxRandomnessOffset||0;f*f*100>l&&(f=u/10);let d=f/2,p=.2+.2*XK(i),m=i.bowing*i.maxRandomnessOffset*(n-t)/200,g=i.bowing*i.maxRandomnessOffset*(e-r)/200;m=nr(m,i,h),g=nr(g,i,h);let y=[],v=o(()=>nr(d,i,h),"M"),x=o(()=>nr(f,i,h),"k"),b=i.preserveVertices;return a&&(s?y.push({op:"move",data:[e+(b?0:v()),t+(b?0:v())]}):y.push({op:"move",data:[e+(b?0:nr(f,i,h)),t+(b?0:nr(f,i,h))]})),s?y.push({op:"bcurveTo",data:[m+e+(r-e)*p+v(),g+t+(n-t)*p+v(),m+e+2*(r-e)*p+v(),g+t+2*(n-t)*p+v(),r+(b?0:v()),n+(b?0:v())]}):y.push({op:"bcurveTo",data:[m+e+(r-e)*p+x(),g+t+(n-t)*p+x(),m+e+2*(r-e)*p+x(),g+t+2*(n-t)*p+x(),r+(b?0:x()),n+(b?0:x())]}),y}function iw(e,t,r){if(!e.length)return[];let n=[];n.push([e[0][0]+nr(t,r),e[0][1]+nr(t,r)]),n.push([e[0][0]+nr(t,r),e[0][1]+nr(t,r)]);for(let i=1;i3){let a=[],s=1-r.curveTightness;i.push({op:"move",data:[e[1][0],e[1][1]]});for(let l=1;l+21&&i.push(l)):i.push(l),i.push(e[t+3])}else{let u=e[t+0],h=e[t+1],f=e[t+2],d=e[t+3],p=Md(u,h,.5),m=Md(h,f,.5),g=Md(f,d,.5),y=Md(p,m,.5),v=Md(m,g,.5),x=Md(y,v,.5);_L([u,p,y,x],0,r,i),_L([x,v,g,d],0,r,i)}var a,s;return i}function j8t(e,t){return uw(e,0,e.length,t)}function uw(e,t,r,n,i){let a=i||[],s=e[t],l=e[r-1],u=0,h=1;for(let f=t+1;fu&&(u=d,h=f)}return Math.sqrt(u)>n?(uw(e,t,h+1,n,a),uw(e,h,r,n,a)):(a.length||a.push(s),a.push(l)),a}function xL(e,t=.15,r){let n=[],i=(e.length-1)/3;for(let a=0;a0?uw(n,0,n.length,r):n}var Nv,bL,wL,TL,kL,EL,Rs,CL,H8t,gL,OK,nw,W8t,ao,km,LL,aw,DL,Kt,Qe=R(()=>{"use strict";o(mL,"t");o(V8t,"e");o(U8t,"s");o(Mv,"n");Nv=class{static{o(this,"o")}constructor(t){this.helper=t}fillPolygons(t,r){return this._fillPolygons(t,r)}_fillPolygons(t,r){let n=Mv(t,r);return{type:"fillSketch",ops:this.renderLines(n,r)}}renderLines(t,r){let n=[];for(let i of t)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],r));return n}};o(hw,"a");bL=class extends Nv{static{o(this,"h")}fillPolygons(t,r){let n=r.hachureGap;n<0&&(n=4*r.strokeWidth),n=Math.max(n,.1);let i=Mv(t,Object.assign({},r,{hachureGap:n})),a=Math.PI/180*r.hachureAngle,s=[],l=.5*n*Math.cos(a),u=.5*n*Math.sin(a);for(let[h,f]of i)hw([h,f])&&s.push([[h[0]-l,h[1]+u],[...f]],[[h[0]+l,h[1]-u],[...f]]);return{type:"fillSketch",ops:this.renderLines(s,r)}}},wL=class extends Nv{static{o(this,"r")}fillPolygons(t,r){let n=this._fillPolygons(t,r),i=Object.assign({},r,{hachureAngle:r.hachureAngle+90}),a=this._fillPolygons(t,i);return n.ops=n.ops.concat(a.ops),n}},TL=class{static{o(this,"i")}constructor(t){this.helper=t}fillPolygons(t,r){let n=Mv(t,r=Object.assign({},r,{hachureAngle:0}));return this.dotsOnLines(n,r)}dotsOnLines(t,r){let n=[],i=r.hachureGap;i<0&&(i=4*r.strokeWidth),i=Math.max(i,.1);let a=r.fillWeight;a<0&&(a=r.strokeWidth/2);let s=i/4;for(let l of t){let u=hw(l),h=u/i,f=Math.ceil(h)-1,d=u-f*i,p=(l[0][0]+l[1][0])/2-i/4,m=Math.min(l[0][1],l[1][1]);for(let g=0;g{let l=hw(s),u=Math.floor(l/(n+i)),h=(l+i-u*(n+i))/2,f=s[0],d=s[1];f[0]>d[0]&&(f=s[1],d=s[0]);let p=Math.atan((d[1]-f[1])/(d[0]-f[0]));for(let m=0;m{let s=hw(a),l=Math.round(s/(2*r)),u=a[0],h=a[1];u[0]>h[0]&&(u=a[1],h=a[0]);let f=Math.atan((h[1]-u[1])/(h[0]-u[0]));for(let d=0;d2*Math.PI&&(_=0,A=2*Math.PI);let L=(A-_)/b.curveStepCount,M=[];for(let N=_;N<=A;N+=L)M.push([w+T*Math.cos(N),S+E*Math.sin(N)]);return M.push([w+T*Math.cos(A),S+E*Math.sin(A)]),M.push([w,S]),Tm([M],b)}(t,r,n,i,a,s,h));return h.stroke!==ao&&f.push(d),this._d("arc",f,h)}curve(t,r){let n=this._o(r),i=[],a=PK(t,n);if(n.fill&&n.fill!==ao)if(n.fillStyle==="solid"){let s=PK(t,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(s.ops)})}else{let s=[],l=t;if(l.length){let u=typeof l[0][0]=="number"?[l]:l;for(let h of u)h.length<3?s.push(...h):h.length===3?s.push(...xL(VK([h[0],h[0],h[1],h[2]]),10,(1+n.roughness)/2)):s.push(...xL(VK(h),10,(1+n.roughness)/2))}s.length&&i.push(Tm([s],n))}return n.stroke!==ao&&i.push(a),this._d("curve",i,n)}polygon(t,r){let n=this._o(r),i=[],a=sw(t,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(vL([t],n)):i.push(Tm([t],n))),n.stroke!==ao&&i.push(a),this._d("polygon",i,n)}path(t,r){let n=this._o(r),i=[];if(!t)return this._d("path",i,n);t=(t||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let a=n.fill&&n.fill!=="transparent"&&n.fill!==ao,s=n.stroke!==ao,l=!!(n.simplification&&n.simplification<1),u=function(f,d,p){let m=HK(UK(RL(f))),g=[],y=[],v=[0,0],x=[],b=o(()=>{x.length>=4&&y.push(...xL(x,d)),x=[]},"i"),w=o(()=>{b(),y.length&&(g.push(y),y=[])},"c");for(let{key:T,data:E}of m)switch(T){case"M":w(),v=[E[0],E[1]],y.push(v);break;case"L":b(),y.push([E[0],E[1]]);break;case"C":if(!x.length){let _=y.length?y[y.length-1]:v;x.push([_[0],_[1]])}x.push([E[0],E[1]]),x.push([E[2],E[3]]),x.push([E[4],E[5]]);break;case"Z":b(),y.push([v[0],v[1]])}if(w(),!p)return g;let S=[];for(let T of g){let E=j8t(T,p);E.length&&S.push(E)}return S}(t,1,l?4-4*(n.simplification||1):(1+n.roughness)/2),h=FK(t,n);if(a)if(n.fillStyle==="solid")if(u.length===1){let f=FK(t,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else i.push(vL(u,n));else i.push(Tm(u,n));return s&&(l?u.forEach(f=>{i.push(sw(f,!1,n))}):i.push(h)),this._d("path",i,n)}opsToPath(t,r){let n="";for(let i of t.ops){let a=typeof r=="number"&&r>=0?i.data.map(s=>+s.toFixed(r)):i.data;switch(i.op){case"move":n+=`M${a[0]} ${a[1]} `;break;case"bcurveTo":n+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":n+=`L${a[0]} ${a[1]} `}}return n.trim()}toPaths(t){let r=t.sets||[],n=t.options||this.defaultOptions,i=[];for(let a of r){let s=null;switch(a.type){case"path":s={d:this.opsToPath(a),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:ao};break;case"fillPath":s={d:this.opsToPath(a),stroke:ao,strokeWidth:0,fill:n.fill||ao};break;case"fillSketch":s=this.fillSketch(a,n)}s&&i.push(s)}return i}fillSketch(t,r){let n=r.fillWeight;return n<0&&(n=r.strokeWidth/2),{d:this.opsToPath(t),stroke:r.fill||ao,strokeWidth:n,fill:ao}}_mergedShape(t){return t.filter((r,n)=>n===0||r.op!=="move")}},LL=class{static{o(this,"st")}constructor(t,r){this.canvas=t,this.ctx=this.canvas.getContext("2d"),this.gen=new km(r)}draw(t){let r=t.sets||[],n=t.options||this.getDefaultOptions(),i=this.ctx,a=t.options.fixedDecimalPlaceDigits;for(let s of r)switch(s.type){case"path":i.save(),i.strokeStyle=n.stroke==="none"?"transparent":n.stroke,i.lineWidth=n.strokeWidth,n.strokeLineDash&&i.setLineDash(n.strokeLineDash),n.strokeLineDashOffset&&(i.lineDashOffset=n.strokeLineDashOffset),this._drawToContext(i,s,a),i.restore();break;case"fillPath":{i.save(),i.fillStyle=n.fill||"";let l=t.shape==="curve"||t.shape==="polygon"||t.shape==="path"?"evenodd":"nonzero";this._drawToContext(i,s,a,l),i.restore();break}case"fillSketch":this.fillSketch(i,s,n)}}fillSketch(t,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2),t.save(),n.fillLineDash&&t.setLineDash(n.fillLineDash),n.fillLineDashOffset&&(t.lineDashOffset=n.fillLineDashOffset),t.strokeStyle=n.fill||"",t.lineWidth=i,this._drawToContext(t,r,n.fixedDecimalPlaceDigits),t.restore()}_drawToContext(t,r,n,i="nonzero"){t.beginPath();for(let a of r.ops){let s=typeof n=="number"&&n>=0?a.data.map(l=>+l.toFixed(n)):a.data;switch(a.op){case"move":t.moveTo(s[0],s[1]);break;case"bcurveTo":t.bezierCurveTo(s[0],s[1],s[2],s[3],s[4],s[5]);break;case"lineTo":t.lineTo(s[0],s[1])}}r.type==="fillPath"?t.fill(i):t.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(t,r,n,i,a){let s=this.gen.line(t,r,n,i,a);return this.draw(s),s}rectangle(t,r,n,i,a){let s=this.gen.rectangle(t,r,n,i,a);return this.draw(s),s}ellipse(t,r,n,i,a){let s=this.gen.ellipse(t,r,n,i,a);return this.draw(s),s}circle(t,r,n,i){let a=this.gen.circle(t,r,n,i);return this.draw(a),a}linearPath(t,r){let n=this.gen.linearPath(t,r);return this.draw(n),n}polygon(t,r){let n=this.gen.polygon(t,r);return this.draw(n),n}arc(t,r,n,i,a,s,l=!1,u){let h=this.gen.arc(t,r,n,i,a,s,l,u);return this.draw(h),h}curve(t,r){let n=this.gen.curve(t,r);return this.draw(n),n}path(t,r){let n=this.gen.path(t,r);return this.draw(n),n}},aw="http://www.w3.org/2000/svg",DL=class{static{o(this,"ot")}constructor(t,r){this.svg=t,this.gen=new km(r)}draw(t){let r=t.sets||[],n=t.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,a=i.createElementNS(aw,"g"),s=t.options.fixedDecimalPlaceDigits;for(let l of r){let u=null;switch(l.type){case"path":u=i.createElementNS(aw,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke",n.stroke),u.setAttribute("stroke-width",n.strokeWidth+""),u.setAttribute("fill","none"),n.strokeLineDash&&u.setAttribute("stroke-dasharray",n.strokeLineDash.join(" ").trim()),n.strokeLineDashOffset&&u.setAttribute("stroke-dashoffset",`${n.strokeLineDashOffset}`);break;case"fillPath":u=i.createElementNS(aw,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke","none"),u.setAttribute("stroke-width","0"),u.setAttribute("fill",n.fill||""),t.shape!=="curve"&&t.shape!=="polygon"||u.setAttribute("fill-rule","evenodd");break;case"fillSketch":u=this.fillSketch(i,l,n)}u&&a.appendChild(u)}return a}fillSketch(t,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2);let a=t.createElementNS(aw,"path");return a.setAttribute("d",this.opsToPath(r,n.fixedDecimalPlaceDigits)),a.setAttribute("stroke",n.fill||""),a.setAttribute("stroke-width",i+""),a.setAttribute("fill","none"),n.fillLineDash&&a.setAttribute("stroke-dasharray",n.fillLineDash.join(" ").trim()),n.fillLineDashOffset&&a.setAttribute("stroke-dashoffset",`${n.fillLineDashOffset}`),a}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(t,r){return this.gen.opsToPath(t,r)}line(t,r,n,i,a){let s=this.gen.line(t,r,n,i,a);return this.draw(s)}rectangle(t,r,n,i,a){let s=this.gen.rectangle(t,r,n,i,a);return this.draw(s)}ellipse(t,r,n,i,a){let s=this.gen.ellipse(t,r,n,i,a);return this.draw(s)}circle(t,r,n,i){let a=this.gen.circle(t,r,n,i);return this.draw(a)}linearPath(t,r){let n=this.gen.linearPath(t,r);return this.draw(n)}polygon(t,r){let n=this.gen.polygon(t,r);return this.draw(n)}arc(t,r,n,i,a,s,l=!1,u){let h=this.gen.arc(t,r,n,i,a,s,l,u);return this.draw(h)}curve(t,r){let n=this.gen.curve(t,r);return this.draw(n)}path(t,r){let n=this.gen.path(t,r);return this.draw(n)}},Kt={canvas:o((e,t)=>new LL(e,t),"canvas"),svg:o((e,t)=>new DL(e,t),"svg"),generator:o(e=>new km(e),"generator"),newSeed:o(()=>km.newSeed(),"newSeed")}});function IL(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function tQ(e){Od=e}function so(e,t){if(t){if(eQ.test(e))return e.replace(K8t,jK)}else if(rQ.test(e))return e.replace(Q8t,jK);return e}function t_t(e){return e.replace(J8t,(t,r)=>(r=r.toLowerCase(),r==="colon"?":":r.charAt(0)==="#"?r.charAt(1)==="x"?String.fromCharCode(parseInt(r.substring(2),16)):String.fromCharCode(+r.substring(1)):""))}function fn(e,t){let r=typeof e=="string"?e:e.source;t=t||"";let n={replace:o((i,a)=>{let s=typeof a=="string"?a:a.source;return s=s.replace(e_t,"$1"),r=r.replace(i,s),n},"replace"),getRegex:o(()=>new RegExp(r,t),"getRegex")};return n}function KK(e){try{e=encodeURI(e).replace(/%25/g,"%")}catch{return null}return e}function QK(e,t){let r=e.replace(/\|/g,(a,s,l)=>{let u=!1,h=s;for(;--h>=0&&l[h]==="\\";)u=!u;return u?"|":" |"}),n=r.split(/ \|/),i=0;if(n[0].trim()||n.shift(),n.length>0&&!n[n.length-1].trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length{let a=i.match(/^\s+/);if(a===null)return i;let[s]=a;return s.length>=n.length?i.slice(n.length):i}).join(` `)}function tn(e,t){return Id.parse(e,t)}var Od,eQ,K8t,rQ,Q8t,Z8t,jK,J8t,e_t,Pv,Cm,i_t,a_t,s_t,Fv,o_t,nQ,iQ,OL,l_t,PL,c_t,u_t,pw,BL,h_t,aQ,f_t,FL,JK,d_t,p_t,sQ,m_t,oQ,g_t,zv,y_t,v_t,x_t,b_t,w_t,T_t,k_t,E_t,C_t,dw,S_t,lQ,cQ,A_t,zL,__t,NL,L_t,fw,Ov,Mu,Sm,Bv,Iu,Em,ML,Id,KEe,QEe,ZEe,JEe,t6e,e6e,r6e,uQ=R(()=>{"use strict";o(IL,"_getDefaults");Od=IL();o(tQ,"changeDefaults");eQ=/[&<>"']/,K8t=new RegExp(eQ.source,"g"),rQ=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Q8t=new RegExp(rQ.source,"g"),Z8t={"&":"&","<":"<",">":">",'"':""","'":"'"},jK=o(e=>Z8t[e],"getEscapeReplacement");o(so,"escape$1");J8t=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;o(t_t,"unescape");e_t=/(^|[^\[])\^/g;o(fn,"edit");o(KK,"cleanUrl");Pv={exec:o(()=>null,"exec")};o(QK,"splitCells");o(Iv,"rtrim");o(r_t,"findClosingBracket");o(ZK,"outputLink");o(n_t,"indentCodeCompensation");Cm=class{static{o(this,"_Tokenizer")}options;rules;lexer;constructor(t){this.options=t||Od}space(t){let r=this.rules.block.newline.exec(t);if(r&&r[0].length>0)return{type:"space",raw:r[0]}}code(t){let r=this.rules.block.code.exec(t);if(r){let n=r[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:r[0],codeBlockStyle:"indented",text:this.options.pedantic?n:Iv(n,` `)}}}fences(t){let r=this.rules.block.fences.exec(t);if(r){let n=r[0],i=n_t(n,r[3]||"");return{type:"code",raw:n,lang:r[2]?r[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):r[2],text:i}}}heading(t){let r=this.rules.block.heading.exec(t);if(r){let n=r[2].trim();if(/#$/.test(n)){let i=Iv(n,"#");(this.options.pedantic||!i||/ $/.test(i))&&(n=i.trim())}return{type:"heading",raw:r[0],depth:r[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(t){let r=this.rules.block.hr.exec(t);if(r)return{type:"hr",raw:Iv(r[0],` `)}}blockquote(t){let r=this.rules.block.blockquote.exec(t);if(r){let n=Iv(r[0],` `).split(` `),i="",a="",s=[];for(;n.length>0;){let l=!1,u=[],h;for(h=0;h/.test(n[h]))u.push(n[h]),l=!0;else if(!l)u.push(n[h]);else break;n=n.slice(h);let f=u.join(` `),d=f.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` $1`).replace(/^ {0,3}>[ \t]?/gm,"");i=i?`${i} ${f}`:f,a=a?`${a} ${d}`:d;let p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(d,s,!0),this.lexer.state.top=p,n.length===0)break;let m=s[s.length-1];if(m?.type==="code")break;if(m?.type==="blockquote"){let g=m,y=g.raw+` `+n.join(` `),v=this.blockquote(y);s[s.length-1]=v,i=i.substring(0,i.length-g.raw.length)+v.raw,a=a.substring(0,a.length-g.text.length)+v.text;break}else if(m?.type==="list"){let g=m,y=g.raw+` `+n.join(` `),v=this.list(y);s[s.length-1]=v,i=i.substring(0,i.length-m.raw.length)+v.raw,a=a.substring(0,a.length-g.raw.length)+v.raw,n=y.substring(s[s.length-1].raw.length).split(` `);continue}}return{type:"blockquote",raw:i,tokens:s,text:a}}}list(t){let r=this.rules.block.list.exec(t);if(r){let n=r[1].trim(),i=n.length>1,a={type:"list",raw:"",ordered:i,start:i?+n.slice(0,-1):"",loose:!1,items:[]};n=i?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=i?n:"[*+-]");let s=new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),l=!1;for(;t;){let u=!1,h="",f="";if(!(r=s.exec(t))||this.rules.block.hr.test(t))break;h=r[0],t=t.substring(h.length);let d=r[2].split(` `,1)[0].replace(/^\t+/,x=>" ".repeat(3*x.length)),p=t.split(` `,1)[0],m=!d.trim(),g=0;if(this.options.pedantic?(g=2,f=d.trimStart()):m?g=r[1].length+1:(g=r[2].search(/[^ ]/),g=g>4?1:g,f=d.slice(g),g+=r[1].length),m&&/^ *$/.test(p)&&(h+=p+` `,t=t.substring(p.length+1),u=!0),!u){let x=new RegExp(`^ {0,${Math.min(3,g-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),b=new RegExp(`^ {0,${Math.min(3,g-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),w=new RegExp(`^ {0,${Math.min(3,g-1)}}(?:\`\`\`|~~~)`),S=new RegExp(`^ {0,${Math.min(3,g-1)}}#`);for(;t;){let T=t.split(` `,1)[0];if(p=T,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),w.test(p)||S.test(p)||x.test(p)||b.test(t))break;if(p.search(/[^ ]/)>=g||!p.trim())f+=` `+p.slice(g);else{if(m||d.search(/[^ ]/)>=4||w.test(d)||S.test(d)||b.test(d))break;f+=` `+p}!m&&!p.trim()&&(m=!0),h+=T+` `,t=t.substring(T.length+1),d=p.slice(g)}}a.loose||(l?a.loose=!0:/\n *\n *$/.test(h)&&(l=!0));let y=null,v;this.options.gfm&&(y=/^\[[ xX]\] /.exec(f),y&&(v=y[0]!=="[ ] ",f=f.replace(/^\[[ xX]\] +/,""))),a.items.push({type:"list_item",raw:h,task:!!y,checked:v,loose:!1,text:f,tokens:[]}),a.raw+=h}a.items[a.items.length-1].raw=a.items[a.items.length-1].raw.trimEnd(),a.items[a.items.length-1].text=a.items[a.items.length-1].text.trimEnd(),a.raw=a.raw.trimEnd();for(let u=0;ud.type==="space"),f=h.length>0&&h.some(d=>/\n.*\n/.test(d.raw));a.loose=f}if(a.loose)for(let u=0;u$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",a=r[3]?r[3].substring(1,r[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):r[3];return{type:"def",tag:n,raw:r[0],href:i,title:a}}}table(t){let r=this.rules.block.table.exec(t);if(!r||!/[:|]/.test(r[2]))return;let n=QK(r[1]),i=r[2].replace(/^\||\| *$/g,"").split("|"),a=r[3]&&r[3].trim()?r[3].replace(/\n[ \t]*$/,"").split(` `):[],s={type:"table",raw:r[0],header:[],align:[],rows:[]};if(n.length===i.length){for(let l of i)/^ *-+: *$/.test(l)?s.align.push("right"):/^ *:-+: *$/.test(l)?s.align.push("center"):/^ *:-+ *$/.test(l)?s.align.push("left"):s.align.push(null);for(let l=0;l({text:u,tokens:this.lexer.inline(u),header:!1,align:s.align[h]})));return s}}lheading(t){let r=this.rules.block.lheading.exec(t);if(r)return{type:"heading",raw:r[0],depth:r[2].charAt(0)==="="?1:2,text:r[1],tokens:this.lexer.inline(r[1])}}paragraph(t){let r=this.rules.block.paragraph.exec(t);if(r){let n=r[1].charAt(r[1].length-1)===` `?r[1].slice(0,-1):r[1];return{type:"paragraph",raw:r[0],text:n,tokens:this.lexer.inline(n)}}}text(t){let r=this.rules.block.text.exec(t);if(r)return{type:"text",raw:r[0],text:r[0],tokens:this.lexer.inline(r[0])}}escape(t){let r=this.rules.inline.escape.exec(t);if(r)return{type:"escape",raw:r[0],text:so(r[1])}}tag(t){let r=this.rules.inline.tag.exec(t);if(r)return!this.lexer.state.inLink&&/^/i.test(r[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(r[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(r[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:r[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:r[0]}}link(t){let r=this.rules.inline.link.exec(t);if(r){let n=r[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;let s=Iv(n.slice(0,-1),"\\");if((n.length-s.length)%2===0)return}else{let s=r_t(r[2],"()");if(s>-1){let u=(r[0].indexOf("!")===0?5:4)+r[1].length+s;r[2]=r[2].substring(0,s),r[0]=r[0].substring(0,u).trim(),r[3]=""}}let i=r[2],a="";if(this.options.pedantic){let s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(i);s&&(i=s[1],a=s[3])}else a=r[3]?r[3].slice(1,-1):"";return i=i.trim(),/^$/.test(n)?i=i.slice(1):i=i.slice(1,-1)),ZK(r,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:a&&a.replace(this.rules.inline.anyPunctuation,"$1")},r[0],this.lexer)}}reflink(t,r){let n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){let i=(n[2]||n[1]).replace(/\s+/g," "),a=r[i.toLowerCase()];if(!a){let s=n[0].charAt(0);return{type:"text",raw:s,text:s}}return ZK(n,a,n[0],this.lexer)}}emStrong(t,r,n=""){let i=this.rules.inline.emStrongLDelim.exec(t);if(!i||i[3]&&n.match(/[\p{L}\p{N}]/u))return;if(!(i[1]||i[2]||"")||!n||this.rules.inline.punctuation.exec(n)){let s=[...i[0]].length-1,l,u,h=s,f=0,d=i[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(d.lastIndex=0,r=r.slice(-1*t.length+s);(i=d.exec(r))!=null;){if(l=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!l)continue;if(u=[...l].length,i[3]||i[4]){h+=u;continue}else if((i[5]||i[6])&&s%3&&!((s+u)%3)){f+=u;continue}if(h-=u,h>0)continue;u=Math.min(u,u+h+f);let p=[...i[0]][0].length,m=t.slice(0,s+i.index+p+u);if(Math.min(s,u)%2){let y=m.slice(1,-1);return{type:"em",raw:m,text:y,tokens:this.lexer.inlineTokens(y)}}let g=m.slice(2,-2);return{type:"strong",raw:m,text:g,tokens:this.lexer.inlineTokens(g)}}}}codespan(t){let r=this.rules.inline.code.exec(t);if(r){let n=r[2].replace(/\n/g," "),i=/[^ ]/.test(n),a=/^ /.test(n)&&/ $/.test(n);return i&&a&&(n=n.substring(1,n.length-1)),n=so(n,!0),{type:"codespan",raw:r[0],text:n}}}br(t){let r=this.rules.inline.br.exec(t);if(r)return{type:"br",raw:r[0]}}del(t){let r=this.rules.inline.del.exec(t);if(r)return{type:"del",raw:r[0],text:r[2],tokens:this.lexer.inlineTokens(r[2])}}autolink(t){let r=this.rules.inline.autolink.exec(t);if(r){let n,i;return r[2]==="@"?(n=so(r[1]),i="mailto:"+n):(n=so(r[1]),i=n),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}}}url(t){let r;if(r=this.rules.inline.url.exec(t)){let n,i;if(r[2]==="@")n=so(r[0]),i="mailto:"+n;else{let a;do a=r[0],r[0]=this.rules.inline._backpedal.exec(r[0])?.[0]??"";while(a!==r[0]);n=so(r[0]),r[1]==="www."?i="http://"+r[0]:i=r[0]}return{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}}}inlineText(t){let r=this.rules.inline.text.exec(t);if(r){let n;return this.lexer.state.inRawBlock?n=r[0]:n=so(r[0]),{type:"text",raw:r[0],text:n}}}},i_t=/^(?: *(?:\n|$))+/,a_t=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,s_t=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Fv=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,o_t=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,nQ=/(?:[*+-]|\d{1,9}[.)])/,iQ=fn(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,nQ).replace(/blockCode/g,/ {4}/).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/).getRegex(),OL=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,l_t=/^[^\n]+/,PL=/(?!\s*\])(?:\\.|[^\[\]\\])+/,c_t=fn(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",PL).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),u_t=fn(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,nQ).getRegex(),pw="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",BL=/|$))/,h_t=fn("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",BL).replace("tag",pw).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),aQ=fn(OL).replace("hr",Fv).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",")|<(?:script|pre|style|textarea|!--)").replace("tag",pw).getRegex(),f_t=fn(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",aQ).getRegex(),FL={blockquote:f_t,code:a_t,def:c_t,fences:s_t,heading:o_t,hr:Fv,html:h_t,lheading:iQ,list:u_t,newline:i_t,paragraph:aQ,table:Pv,text:l_t},JK=fn("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Fv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",pw).getRegex(),d_t={...FL,table:JK,paragraph:fn(OL).replace("hr",Fv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",JK).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",pw).getRegex()},p_t={...FL,html:fn(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",BL).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:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Pv,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:fn(OL).replace("hr",Fv).replace("heading",` *#{1,6} *[^ ]`).replace("lheading",iQ).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},sQ=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,m_t=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,oQ=/^( {2,}|\\)\n(?!\s*$)/,g_t=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,x_t=fn(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,zv).getRegex(),b_t=fn("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,zv).getRegex(),w_t=fn("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,zv).getRegex(),T_t=fn(/\\([punct])/,"gu").replace(/punct/g,zv).getRegex(),k_t=fn(/^<(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(),E_t=fn(BL).replace("(?:-->|$)","-->").getRegex(),C_t=fn("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",E_t).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),dw=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,S_t=fn(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",dw).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),lQ=fn(/^!?\[(label)\]\[(ref)\]/).replace("label",dw).replace("ref",PL).getRegex(),cQ=fn(/^!?\[(ref)\](?:\[\])?/).replace("ref",PL).getRegex(),A_t=fn("reflink|nolink(?!\\()","g").replace("reflink",lQ).replace("nolink",cQ).getRegex(),zL={_backpedal:Pv,anyPunctuation:T_t,autolink:k_t,blockSkip:v_t,br:oQ,code:m_t,del:Pv,emStrongLDelim:x_t,emStrongRDelimAst:b_t,emStrongRDelimUnd:w_t,escape:sQ,link:S_t,nolink:cQ,punctuation:y_t,reflink:lQ,reflinkSearch:A_t,tag:C_t,text:g_t,url:Pv},__t={...zL,link:fn(/^!?\[(label)\]\((.*?)\)/).replace("label",dw).getRegex(),reflink:fn(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",dw).getRegex()},NL={...zL,escape:fn(sQ).replace("])","~|])").getRegex(),url:fn(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").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~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\u+" ".repeat(h.length));let i,a,s;for(;t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(l=>(i=l.call({lexer:this},t,r))?(t=t.substring(i.raw.length),r.push(i),!0):!1))){if(i=this.tokenizer.space(t)){t=t.substring(i.raw.length),i.raw.length===1&&r.length>0?r[r.length-1].raw+=` `:r.push(i);continue}if(i=this.tokenizer.code(t)){t=t.substring(i.raw.length),a=r[r.length-1],a&&(a.type==="paragraph"||a.type==="text")?(a.raw+=` `+i.raw,a.text+=` `+i.text,this.inlineQueue[this.inlineQueue.length-1].src=a.text):r.push(i);continue}if(i=this.tokenizer.fences(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.heading(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.hr(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.blockquote(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.list(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.html(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.def(t)){t=t.substring(i.raw.length),a=r[r.length-1],a&&(a.type==="paragraph"||a.type==="text")?(a.raw+=` `+i.raw,a.text+=` `+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=a.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title});continue}if(i=this.tokenizer.table(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.lheading(t)){t=t.substring(i.raw.length),r.push(i);continue}if(s=t,this.options.extensions&&this.options.extensions.startBlock){let l=1/0,u=t.slice(1),h;this.options.extensions.startBlock.forEach(f=>{h=f.call({lexer:this},u),typeof h=="number"&&h>=0&&(l=Math.min(l,h))}),l<1/0&&l>=0&&(s=t.substring(0,l+1))}if(this.state.top&&(i=this.tokenizer.paragraph(s))){a=r[r.length-1],n&&a?.type==="paragraph"?(a.raw+=` `+i.raw,a.text+=` `+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=a.text):r.push(i),n=s.length!==t.length,t=t.substring(i.raw.length);continue}if(i=this.tokenizer.text(t)){t=t.substring(i.raw.length),a=r[r.length-1],a&&a.type==="text"?(a.raw+=` `+i.raw,a.text+=` `+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=a.text):r.push(i);continue}if(t){let l="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return this.state.top=!0,r}inline(t,r=[]){return this.inlineQueue.push({src:t,tokens:r}),r}inlineTokens(t,r=[]){let n,i,a,s=t,l,u,h;if(this.tokens.links){let f=Object.keys(this.tokens.links);if(f.length>0)for(;(l=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)f.includes(l[0].slice(l[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,l.index)+"["+"a".repeat(l[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(l=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,l.index)+"["+"a".repeat(l[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(l=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,l.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;t;)if(u||(h=""),u=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(f=>(n=f.call({lexer:this},t,r))?(t=t.substring(n.raw.length),r.push(n),!0):!1))){if(n=this.tokenizer.escape(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.tag(t)){t=t.substring(n.raw.length),i=r[r.length-1],i&&n.type==="text"&&i.type==="text"?(i.raw+=n.raw,i.text+=n.text):r.push(n);continue}if(n=this.tokenizer.link(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(n.raw.length),i=r[r.length-1],i&&n.type==="text"&&i.type==="text"?(i.raw+=n.raw,i.text+=n.text):r.push(n);continue}if(n=this.tokenizer.emStrong(t,s,h)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.codespan(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.br(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.del(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.autolink(t)){t=t.substring(n.raw.length),r.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(t))){t=t.substring(n.raw.length),r.push(n);continue}if(a=t,this.options.extensions&&this.options.extensions.startInline){let f=1/0,d=t.slice(1),p;this.options.extensions.startInline.forEach(m=>{p=m.call({lexer:this},d),typeof p=="number"&&p>=0&&(f=Math.min(f,p))}),f<1/0&&f>=0&&(a=t.substring(0,f+1))}if(n=this.tokenizer.inlineText(a)){t=t.substring(n.raw.length),n.raw.slice(-1)!=="_"&&(h=n.raw.slice(-1)),u=!0,i=r[r.length-1],i&&i.type==="text"?(i.raw+=n.raw,i.text+=n.text):r.push(n);continue}if(t){let f="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(f);break}else throw new Error(f)}}return r}},Sm=class{static{o(this,"_Renderer")}options;parser;constructor(t){this.options=t||Od}space(t){return""}code({text:t,lang:r,escaped:n}){let i=(r||"").match(/^\S*/)?.[0],a=t.replace(/\n$/,"")+` `;return i?'
'+(n?a:so(a,!0))+`
`:"
"+(n?a:so(a,!0))+`
`}blockquote({tokens:t}){return`
${this.parser.parse(t)}
`}html({text:t}){return t}heading({tokens:t,depth:r}){return`${this.parser.parseInline(t)} `}hr(t){return`
`}list(t){let r=t.ordered,n=t.start,i="";for(let l=0;l `+i+" `}listitem(t){let r="";if(t.task){let n=this.checkbox({checked:!!t.checked});t.loose?t.tokens.length>0&&t.tokens[0].type==="paragraph"?(t.tokens[0].text=n+" "+t.tokens[0].text,t.tokens[0].tokens&&t.tokens[0].tokens.length>0&&t.tokens[0].tokens[0].type==="text"&&(t.tokens[0].tokens[0].text=n+" "+t.tokens[0].tokens[0].text)):t.tokens.unshift({type:"text",raw:n+" ",text:n+" "}):r+=n+" "}return r+=this.parser.parse(t.tokens,!!t.loose),`
  • ${r}
  • `}checkbox({checked:t}){return"'}paragraph({tokens:t}){return`

    ${this.parser.parseInline(t)}

    `}table(t){let r="",n="";for(let a=0;a${i}`),` `+r+` `+i+`
    `}tablerow({text:t}){return` ${t} `}tablecell(t){let r=this.parser.parseInline(t.tokens),n=t.header?"th":"td";return(t.align?`<${n} align="${t.align}">`:`<${n}>`)+r+` `}strong({tokens:t}){return`${this.parser.parseInline(t)}`}em({tokens:t}){return`${this.parser.parseInline(t)}`}codespan({text:t}){return`${t}`}br(t){return"
    "}del({tokens:t}){return`${this.parser.parseInline(t)}`}link({href:t,title:r,tokens:n}){let i=this.parser.parseInline(n),a=KK(t);if(a===null)return i;t=a;let s='
    ",s}image({href:t,title:r,text:n}){let i=KK(t);if(i===null)return n;t=i;let a=`${n}{let l=a[s].flat(1/0);n=n.concat(this.walkTokens(l,r))}):a.tokens&&(n=n.concat(this.walkTokens(a.tokens,r)))}}return n}use(...t){let r=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(n=>{let i={...n};if(i.async=this.defaults.async||i.async||!1,n.extensions&&(n.extensions.forEach(a=>{if(!a.name)throw new Error("extension name required");if("renderer"in a){let s=r.renderers[a.name];s?r.renderers[a.name]=function(...l){let u=a.renderer.apply(this,l);return u===!1&&(u=s.apply(this,l)),u}:r.renderers[a.name]=a.renderer}if("tokenizer"in a){if(!a.level||a.level!=="block"&&a.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=r[a.level];s?s.unshift(a.tokenizer):r[a.level]=[a.tokenizer],a.start&&(a.level==="block"?r.startBlock?r.startBlock.push(a.start):r.startBlock=[a.start]:a.level==="inline"&&(r.startInline?r.startInline.push(a.start):r.startInline=[a.start]))}"childTokens"in a&&a.childTokens&&(r.childTokens[a.name]=a.childTokens)}),i.extensions=r),n.renderer){let a=this.defaults.renderer||new Sm(this.defaults);for(let s in n.renderer){if(!(s in a))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let l=s,u=n.renderer[l];n.useNewRenderer||(u=this.#e(u,l,a));let h=a[l];a[l]=(...f)=>{let d=u.apply(a,f);return d===!1&&(d=h.apply(a,f)),d||""}}i.renderer=a}if(n.tokenizer){let a=this.defaults.tokenizer||new Cm(this.defaults);for(let s in n.tokenizer){if(!(s in a))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let l=s,u=n.tokenizer[l],h=a[l];a[l]=(...f)=>{let d=u.apply(a,f);return d===!1&&(d=h.apply(a,f)),d}}i.tokenizer=a}if(n.hooks){let a=this.defaults.hooks||new Em;for(let s in n.hooks){if(!(s in a))throw new Error(`hook '${s}' does not exist`);if(s==="options")continue;let l=s,u=n.hooks[l],h=a[l];Em.passThroughHooks.has(s)?a[l]=f=>{if(this.defaults.async)return Promise.resolve(u.call(a,f)).then(p=>h.call(a,p));let d=u.call(a,f);return h.call(a,d)}:a[l]=(...f)=>{let d=u.apply(a,f);return d===!1&&(d=h.apply(a,f)),d}}i.hooks=a}if(n.walkTokens){let a=this.defaults.walkTokens,s=n.walkTokens;i.walkTokens=function(l){let u=[];return u.push(s.call(this,l)),a&&(u=u.concat(a.call(this,l))),u}}this.defaults={...this.defaults,...i}}),this}#e(t,r,n){switch(r){case"heading":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,n.parser.parseInline(i.tokens),i.depth,t_t(n.parser.parseInline(i.tokens,n.parser.textRenderer)))};case"code":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text,i.lang,!!i.escaped)};case"table":return function(i){if(!i.type||i.type!==r)return t.apply(this,arguments);let a="",s="";for(let u=0;u0&&f.tokens[0].type==="paragraph"?(f.tokens[0].text=g+" "+f.tokens[0].text,f.tokens[0].tokens&&f.tokens[0].tokens.length>0&&f.tokens[0].tokens[0].type==="text"&&(f.tokens[0].tokens[0].text=g+" "+f.tokens[0].tokens[0].text)):f.tokens.unshift({type:"text",text:g+" "}):m+=g+" "}m+=this.parser.parse(f.tokens,l),u+=this.listitem({type:"list_item",raw:m,text:m,task:p,checked:!!d,loose:l,tokens:f.tokens})}return t.call(this,u,a,s)};case"html":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text,i.block)};case"paragraph":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,this.parser.parseInline(i.tokens))};case"escape":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text)};case"link":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.href,i.title,this.parser.parseInline(i.tokens))};case"image":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.href,i.title,i.text)};case"strong":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,this.parser.parseInline(i.tokens))};case"em":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,this.parser.parseInline(i.tokens))};case"codespan":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text)};case"del":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,this.parser.parseInline(i.tokens))};case"text":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text)}}return t}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,r){return Mu.lex(t,r??this.defaults)}parser(t,r){return Iu.parse(t,r??this.defaults)}#t(t,r){return(n,i)=>{let a={...i},s={...this.defaults,...a};this.defaults.async===!0&&a.async===!1&&(s.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),s.async=!0);let l=this.#r(!!s.silent,!!s.async);if(typeof n>"u"||n===null)return l(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return l(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));if(s.hooks&&(s.hooks.options=s),s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(n):n).then(u=>t(u,s)).then(u=>s.hooks?s.hooks.processAllTokens(u):u).then(u=>s.walkTokens?Promise.all(this.walkTokens(u,s.walkTokens)).then(()=>u):u).then(u=>r(u,s)).then(u=>s.hooks?s.hooks.postprocess(u):u).catch(l);try{s.hooks&&(n=s.hooks.preprocess(n));let u=t(n,s);s.hooks&&(u=s.hooks.processAllTokens(u)),s.walkTokens&&this.walkTokens(u,s.walkTokens);let h=r(u,s);return s.hooks&&(h=s.hooks.postprocess(h)),h}catch(u){return l(u)}}}#r(t,r){return n=>{if(n.message+=` Please report this to https://github.com/markedjs/marked.`,t){let i="

    An error occurred:

    "+so(n.message+"",!0)+"
    ";return r?Promise.resolve(i):i}if(r)return Promise.reject(n);throw n}}},Id=new ML;o(tn,"marked");tn.options=tn.setOptions=function(e){return Id.setOptions(e),tn.defaults=Id.defaults,tQ(tn.defaults),tn};tn.getDefaults=IL;tn.defaults=Od;tn.use=function(...e){return Id.use(...e),tn.defaults=Id.defaults,tQ(tn.defaults),tn};tn.walkTokens=function(e,t){return Id.walkTokens(e,t)};tn.parseInline=Id.parseInline;tn.Parser=Iu;tn.parser=Iu.parse;tn.Renderer=Sm;tn.TextRenderer=Bv;tn.Lexer=Mu;tn.lexer=Mu.lex;tn.Tokenizer=Cm;tn.Hooks=Em;tn.parse=tn;KEe=tn.options,QEe=tn.setOptions,ZEe=tn.use,JEe=tn.walkTokens,t6e=tn.parseInline,e6e=Iu.parse,r6e=Mu.lex});function D_t(e,{markdownAutoWrap:t}){let n=e.replace(//g,` `).replace(/\n{2,}/g,` `),i=s4(n);return t===!1?i.replace(/ /g," "):i}function hQ(e,t={}){let r=D_t(e,t),n=tn.lexer(r),i=[[]],a=0;function s(l,u="normal"){l.type==="text"?l.text.split(` `).forEach((f,d)=>{d!==0&&(a++,i.push([])),f.split(" ").forEach(p=>{p&&i[a].push({content:p,type:u})})}):l.type==="strong"||l.type==="em"?l.tokens.forEach(h=>{s(h,l.type)}):l.type==="html"&&i[a].push({content:l.text,type:"normal"})}return o(s,"processNode"),n.forEach(l=>{l.type==="paragraph"?l.tokens?.forEach(u=>{s(u)}):l.type==="html"&&i[a].push({content:l.text,type:"normal"})}),i}function fQ(e,{markdownAutoWrap:t}={}){let r=tn.lexer(e);function n(i){return i.type==="text"?t===!1?i.text.replace(/\n */g,"
    ").replace(/ /g," "):i.text.replace(/\n */g,"
    "):i.type==="strong"?`${i.tokens?.map(n).join("")}`:i.type==="em"?`${i.tokens?.map(n).join("")}`:i.type==="paragraph"?`

    ${i.tokens?.map(n).join("")}

    `:i.type==="space"?"":i.type==="html"?`${i.text}`:`Unsupported markdown: ${i.type}`}return o(n,"output"),r.map(n).join("")}var dQ=R(()=>{"use strict";uQ();SS();o(D_t,"preprocessMarkdown");o(hQ,"markdownToLines");o(fQ,"markdownToHTML")});function R_t(e){return Intl.Segmenter?[...new Intl.Segmenter().segment(e)].map(t=>t.segment):[...e]}function N_t(e,t){let r=R_t(t.content);return pQ(e,[],r,t.type)}function pQ(e,t,r,n){if(r.length===0)return[{content:t.join(""),type:n},{content:"",type:n}];let[i,...a]=r,s=[...t,i];return e([{content:s.join(""),type:n}])?pQ(e,s,a,n):(t.length===0&&i&&(t.push(i),r.shift()),[{content:t.join(""),type:n},{content:r.join(""),type:n}])}function mQ(e,t){if(e.some(({content:r})=>r.includes(` `)))throw new Error("splitLineToFitWidth does not support newlines in the line");return $L(e,t)}function $L(e,t,r=[],n=[]){if(e.length===0)return n.length>0&&r.push(n),r.length>0?r:[];let i="";e[0].content===" "&&(i=" ",e.shift());let a=e.shift()??{content:" ",type:"normal"},s=[...n];if(i!==""&&s.push({content:i,type:"normal"}),s.push(a),t(s))return $L(e,t,r,s);if(n.length>0)r.push(n),e.unshift(a);else if(a.content){let[l,u]=N_t(t,a);r.push([l]),u.content&&e.unshift(u)}return $L(e,t,r)}var gQ=R(()=>{"use strict";o(R_t,"splitTextToChars");o(N_t,"splitWordToFitWidth");o(pQ,"splitWordToFitWidthRecursion");o(mQ,"splitLineToFitWidth");o($L,"splitLineToFitWidthRecursion")});function yQ(e,t){t&&e.attr("style",t)}async function M_t(e,t,r,n,i=!1){let a=e.append("foreignObject");a.attr("width",`${10*r}px`),a.attr("height",`${10*r}px`);let s=a.append("xhtml:div"),l=t.label;t.label&&Pi(t.label)&&(l=await vh(t.label.replace(Yt.lineBreakRegex,` `),pt()));let u=t.isNode?"nodeLabel":"edgeLabel",h=s.append("span");h.html(l),yQ(h,t.labelStyle),h.attr("class",`${u} ${n}`),yQ(s,t.labelStyle),s.style("display","table-cell"),s.style("white-space","nowrap"),s.style("line-height","1.5"),s.style("max-width",r+"px"),s.style("text-align","center"),s.attr("xmlns","http://www.w3.org/1999/xhtml"),i&&s.attr("class","labelBkg");let f=s.node().getBoundingClientRect();return f.width===r&&(s.style("display","table"),s.style("white-space","break-spaces"),s.style("width",r+"px"),f=s.node().getBoundingClientRect()),a.node()}function GL(e,t,r){return e.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",t*r-.1+"em").attr("dy",r+"em")}function I_t(e,t,r){let n=e.append("text"),i=GL(n,1,t);VL(i,r);let a=i.node().getComputedTextLength();return n.remove(),a}function vQ(e,t,r){let n=e.append("text"),i=GL(n,1,t);VL(i,[{content:r,type:"normal"}]);let a=i.node()?.getBoundingClientRect();return a&&n.remove(),a}function O_t(e,t,r,n=!1){let a=t.append("g"),s=a.insert("rect").attr("class","background").attr("style","stroke: none"),l=a.append("text").attr("y","-10.1"),u=0;for(let h of r){let f=o(p=>I_t(a,1.1,p)<=e,"checkWidth"),d=f(h)?[h]:mQ(h,f);for(let p of d){let m=GL(l,u,1.1);VL(m,p),u++}}if(n){let h=l.node().getBBox(),f=2;return s.attr("x",h.x-f).attr("y",h.y-f).attr("width",h.width+2*f).attr("height",h.height+2*f),a.node()}else return l.node()}function VL(e,t){e.text(""),t.forEach((r,n)=>{let i=e.append("tspan").attr("font-style",r.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",r.type==="strong"?"bold":"normal");n===0?i.text(r.content):i.text(" "+r.content)})}function UL(e){return e.replace(/fa[bklrs]?:fa-[\w-]+/g,t=>``)}var ia,Nl=R(()=>{"use strict";Ue();hr();ur();ce();dQ();_r();gQ();o(yQ,"applyStyle");o(M_t,"addHtmlSpan");o(GL,"createTspan");o(I_t,"computeWidthOfText");o(vQ,"computeDimensionOfText");o(O_t,"createFormattedText");o(VL,"updateTextContentAndStyles");o(UL,"replaceIconSubstring");ia=o(async(e,t="",{style:r="",isTitle:n=!1,classes:i="",useHtmlLabels:a=!0,isNode:s=!0,width:l=200,addSvgBackground:u=!1}={},h)=>{if(V.debug("XYZ createText",t,r,n,i,a,s,"addSvgBackground: ",u),a){let f=fQ(t,h),d=UL(no(f)),p=t.replace(/\\\\/g,"\\"),m={isNode:s,label:Pi(t)?p:d,labelStyle:r.replace("fill:","color:")};return await M_t(e,m,l,i,u)}else{let f=t.replace(//g,"
    "),d=hQ(f.replace("
    ","
    "),h),p=O_t(l,e,d,t?u:!1);if(s){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Gt(p).attr("style",m)}else{let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");Gt(p).select("rect").attr("style",m.replace(/background:/g,"fill:"));let g=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Gt(p).select("text").attr("style",g)}return p}},"createText")});var P_t,Pd,HL=R(()=>{"use strict";P_t=o((e,t)=>{var r=e.x,n=e.y,i=t.x-r,a=t.y-n,s=e.width/2,l=e.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),Pd=P_t});function B_t(e,t){t&&e.attr("style",t)}async function F_t(e){let t=Gt(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=t.append("xhtml:div"),n=e.label;e.label&&Pi(e.label)&&(n=await vh(e.label.replace(Yt.lineBreakRegex,` `),pt()));let i=e.isNode?"nodeLabel":"edgeLabel";return r.html('"+n+""),B_t(r,e.labelStyle),r.style("display","inline-block"),r.style("padding-right","1px"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),t.node()}var z_t,Ec,mw=R(()=>{"use strict";ur();ce();Ue();hr();_r();o(B_t,"applyStyle");o(F_t,"addHtmlLabel");z_t=o(async(e,t,r,n)=>{let i=e||"";if(typeof i=="object"&&(i=i[0]),Tr(pt().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),V.info("vertexText"+i);let a={isNode:n,label:no(i).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:t&&t.replace("fill:","color:")};return await F_t(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",t.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|/gi):Array.isArray(i)?s=i:s=[];for(let l of s){let u=document.createElementNS("http://www.w3.org/2000/svg","tspan");u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),u.setAttribute("dy","1em"),u.setAttribute("x","0"),r?u.setAttribute("class","title-row"):u.setAttribute("class","row"),u.textContent=l.trim(),a.appendChild(u)}return a}},"createLabel"),Ec=z_t});var Ml,Am=R(()=>{"use strict";Ml=o((e,t,r,n,i)=>["M",e+i,t,"H",e+r-i,"A",i,i,0,0,1,e+r,t+i,"V",t+n-i,"A",i,i,0,0,1,e+r-i,t+n,"H",e+i,"A",i,i,0,0,1,e,t+n-i,"V",t+i,"A",i,i,0,0,1,e+i,t,"Z"].join(" "),"createRoundedRectPathD")});var xQ,Cc,$_t,te,Jt,Ze=R(()=>{"use strict";Ue();xQ=o(e=>{let{handDrawnSeed:t}=pt();return{fill:e,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:e,seed:t}},"solidStateFill"),Cc=o(e=>{let t=$_t([...e.cssCompiledStyles||[],...e.cssStyles||[]]);return{stylesMap:t,stylesArray:[...t]}},"compileStyles"),$_t=o(e=>{let t=new Map;return e.forEach(r=>{let[n,i]=r.split(":");t.set(n.trim(),i?.trim())}),t},"styles2Map"),te=o(e=>{let{stylesArray:t}=Cc(e),r=[],n=[],i=[],a=[];return t.forEach(s=>{let l=s[0];l==="color"||l==="font-size"||l==="font-family"||l==="font-weight"||l==="font-style"||l==="text-decoration"||l==="text-align"||l==="text-transform"||l==="line-height"||l==="letter-spacing"||l==="word-spacing"||l==="text-shadow"||l==="text-overflow"||l==="white-space"||l==="word-wrap"||l==="word-break"||l==="overflow-wrap"||l==="hyphens"?r.push(s.join(":")+" !important"):(n.push(s.join(":")+" !important"),l.includes("stroke")&&i.push(s.join(":")+" !important"),l==="fill"&&a.push(s.join(":")+" !important"))}),{labelStyles:r.join(";"),nodeStyles:n.join(";"),stylesArray:t,borderStyles:i,backgroundStyles:a}},"styles2String"),Jt=o((e,t)=>{let{themeVariables:r,handDrawnSeed:n}=pt(),{nodeBorder:i,mainBkg:a}=r,{stylesMap:s}=Cc(e);return Object.assign({roughness:.7,fill:s.get("fill")||a,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:s.get("stroke")||i,seed:n,strokeWidth:s.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0]},t)},"userNodeOverrides")});var bQ,G_t,V_t,U_t,H_t,W_t,wQ,gw,TQ,WL=R(()=>{"use strict";Ue();hr();ce();Nd();ur();Qe();Nl();HL();mw();Am();Ze();bQ=o(async(e,t)=>{V.info("Creating subgraph rect for ",t.id,t);let r=pt(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=te(t),d=e.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.id).attr("data-look",t.look),p=Tr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await ia(m,t.label,{style:t.labelStyle,useHtmlLabels:p,isNode:!0}),y=g.getBBox();if(Tr(r.flowchart.htmlLabels)){let _=g.children[0],A=Gt(g);y=_.getBoundingClientRect(),A.attr("width",y.width),A.attr("height",y.height)}let v=t.width<=y.width+t.padding?y.width+t.padding:t.width;t.width<=y.width+t.padding?t.diff=(v-t.width)/2-t.padding:t.diff=-t.padding;let x=t.height,b=t.x-v/2,w=t.y-x/2;V.trace("Data ",t,JSON.stringify(t));let S;if(t.look==="handDrawn"){let _=Kt.svg(d),A=Jt(t,{roughness:.7,fill:a,stroke:s,fillWeight:3,seed:i}),L=_.path(Ml(b,w,v,x,0),A);S=d.insert(()=>(V.debug("Rough node insert CXC",L),L),":first-child"),S.select("path:nth-child(2)").attr("style",h.join(";")),S.select("path").attr("style",f.join(";").replace("fill","stroke"))}else S=d.insert("rect",":first-child"),S.attr("style",u).attr("rx",t.rx).attr("ry",t.ry).attr("x",b).attr("y",w).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:T}=io(r);if(m.attr("transform",`translate(${t.x-y.width/2}, ${t.y-t.height/2+T})`),l){let _=m.select("span");_&&_.attr("style",l)}let E=S.node().getBBox();return t.offsetX=0,t.width=E.width,t.height=E.height,t.offsetY=y.height-t.padding/2,t.intersect=function(_){return Pd(t,_)},{cluster:d,labelBBox:y}},"rect"),G_t=o((e,t)=>{let r=e.insert("g").attr("class","note-cluster").attr("id",t.id),n=r.insert("rect",":first-child"),i=0*t.padding,a=i/2;n.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2-a).attr("width",t.width+i).attr("height",t.height+i).attr("fill","none");let s=n.node().getBBox();return t.width=s.width,t.height=s.height,t.intersect=function(l){return Pd(t,l)},{cluster:r,labelBBox:{width:0,height:0}}},"noteGroup"),V_t=o(async(e,t)=>{let r=pt(),{themeVariables:n,handDrawnSeed:i}=r,{altBackground:a,compositeBackground:s,compositeTitleBackground:l,nodeBorder:u}=n,h=e.insert("g").attr("class",t.cssClasses).attr("id",t.id).attr("data-id",t.id).attr("data-look",t.look),f=h.insert("g",":first-child"),d=h.insert("g").attr("class","cluster-label"),p=h.append("rect"),m=d.node().appendChild(await Ec(t.label,t.labelStyle,void 0,!0)),g=m.getBBox();if(Tr(r.flowchart.htmlLabels)){let L=m.children[0],M=Gt(m);g=L.getBoundingClientRect(),M.attr("width",g.width),M.attr("height",g.height)}let y=0*t.padding,v=y/2,x=(t.width<=g.width+t.padding?g.width+t.padding:t.width)+y;t.width<=g.width+t.padding?t.diff=(x-t.width)/2-t.padding:t.diff=-t.padding;let b=t.height+y,w=t.height+y-g.height-6,S=t.x-x/2,T=t.y-b/2;t.width=x;let E=t.y-t.height/2-v+g.height+2,_;if(t.look==="handDrawn"){let L=t.cssClasses.includes("statediagram-cluster-alt"),M=Kt.svg(h),N=t.rx||t.ry?M.path(Ml(S,T,x,b,10),{roughness:.7,fill:l,fillStyle:"solid",stroke:u,seed:i}):M.rectangle(S,T,x,b,{seed:i});_=h.insert(()=>N,":first-child");let k=M.rectangle(S,E,x,w,{fill:L?a:s,fillStyle:L?"hachure":"solid",stroke:u,seed:i});_=h.insert(()=>N,":first-child"),p=h.insert(()=>k)}else _=f.insert("rect",":first-child"),_.attr("class","outer").attr("x",S).attr("y",T).attr("width",x).attr("height",b).attr("data-look",t.look),p.attr("class","inner").attr("x",S).attr("y",E).attr("width",x).attr("height",w);d.attr("transform",`translate(${t.x-g.width/2}, ${T+1-(Tr(r.flowchart.htmlLabels)?0:3)})`);let A=_.node().getBBox();return t.height=A.height,t.offsetX=0,t.offsetY=g.height-t.padding/2,t.labelBBox=g,t.intersect=function(L){return Pd(t,L)},{cluster:h,labelBBox:g}},"roundedWithTitle"),U_t=o((e,t)=>{let r=pt(),{themeVariables:n,handDrawnSeed:i}=r,{nodeBorder:a}=n,s=e.insert("g").attr("class",t.cssClasses).attr("id",t.id).attr("data-look",t.look),l=s.insert("g",":first-child"),u=0*t.padding,h=t.width+u;t.diff=-t.padding;let f=t.height+u,d=t.x-h/2,p=t.y-f/2;t.width=h;let m;if(t.look==="handDrawn"){let v=Kt.svg(s).rectangle(d,p,h,f,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:a,seed:i});m=s.insert(()=>v,":first-child")}else m=l.insert("rect",":first-child"),m.attr("class","divider").attr("x",d).attr("y",p).attr("width",h).attr("height",f).attr("data-look",t.look);let g=m.node().getBBox();return t.height=g.height,t.offsetX=0,t.offsetY=0,t.intersect=function(y){return Pd(t,y)},{cluster:s,labelBBox:{}}},"divider"),H_t=bQ,W_t={rect:bQ,squareRect:H_t,roundedWithTitle:V_t,noteGroup:G_t,divider:U_t},wQ=new Map,gw=o(async(e,t)=>{let r=t.shape||"rect",n=await W_t[r](e,t);return wQ.set(t.id,n),n},"insertCluster"),TQ=o(()=>{wQ=new Map},"clear")});function yw(e,t){if(e===void 0||t===void 0)return{angle:0,deltaX:0,deltaY:0};e=vw(e),t=vw(t);let[r,n]=[e.x,e.y],[i,a]=[t.x,t.y],s=i-r,l=a-n;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}var Yh,vw,xw,YL=R(()=>{"use strict";Yh={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:4};o(yw,"calculateDeltaAndAngle");vw=o(e=>Array.isArray(e)?{x:e[0],y:e[1]}:e,"pointTransformer"),xw=o(e=>({x:o(function(t,r,n){let i=0;if(r===0&&Object.hasOwn(Yh,e.arrowTypeStart)){let{angle:a,deltaX:s}=yw(n[0],n[1]);i=Yh[e.arrowTypeStart]*Math.cos(a)*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Yh,e.arrowTypeEnd)){let{angle:a,deltaX:s}=yw(n[n.length-1],n[n.length-2]);i=Yh[e.arrowTypeEnd]*Math.cos(a)*(s>=0?1:-1)}return vw(t).x+i},"x"),y:o(function(t,r,n){let i=0;if(r===0&&Object.hasOwn(Yh,e.arrowTypeStart)){let{angle:a,deltaY:s}=yw(n[0],n[1]);i=Yh[e.arrowTypeStart]*Math.abs(Math.sin(a))*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Yh,e.arrowTypeEnd)){let{angle:a,deltaY:s}=yw(n[n.length-1],n[n.length-2]);i=Yh[e.arrowTypeEnd]*Math.abs(Math.sin(a))*(s>=0?1:-1)}return vw(t).y+i},"y")}),"getLineFunctionsWithOffset")});var EQ,Y_t,kQ,CQ=R(()=>{"use strict";ce();EQ=o((e,t,r,n,i)=>{t.arrowTypeStart&&kQ(e,"start",t.arrowTypeStart,r,n,i),t.arrowTypeEnd&&kQ(e,"end",t.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),Y_t={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},kQ=o((e,t,r,n,i,a)=>{let s=Y_t[r];if(!s){V.warn(`Unknown arrow type: ${r}`);return}let l=t==="start"?"Start":"End";e.attr(`marker-${t}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function bw(e,t){pt().flowchart.htmlLabels&&e&&(e.style.width=t.length*9+"px",e.style.height="12px")}function j_t(e){let t=[],r=[];for(let n=1;n5&&Math.abs(a.y-i.y)>5||i.y===a.y&&a.x===s.x&&Math.abs(a.x-i.x)>5&&Math.abs(a.y-s.y)>5)&&(t.push(a),r.push(n))}return{cornerPoints:t,cornerPointPositions:r}}var ww,ya,_Q,$v,Tw,kw,q_t,X_t,SQ,AQ,K_t,Ew,qL=R(()=>{"use strict";Ue();hr();ce();Nl();_r();YL();Nd();ur();Qe();mw();CQ();ww=new Map,ya=new Map,_Q=o(()=>{ww.clear(),ya.clear()},"clear"),$v=o(e=>e?e.reduce((r,n)=>r+";"+n,""):"","getLabelStyles"),Tw=o(async(e,t)=>{let r=Tr(pt().flowchart.htmlLabels),n=await ia(e,t.label,{style:$v(t.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1});V.info("abc82",t,t.labelType);let i=e.insert("g").attr("class","edgeLabel"),a=i.insert("g").attr("class","label");a.node().appendChild(n);let s=n.getBBox();if(r){let u=n.children[0],h=Gt(n);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}a.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),ww.set(t.id,i),t.width=s.width,t.height=s.height;let l;if(t.startLabelLeft){let u=await Ec(t.startLabelLeft,$v(t.labelStyle)),h=e.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),ya.get(t.id)||ya.set(t.id,{}),ya.get(t.id).startLeft=h,bw(l,t.startLabelLeft)}if(t.startLabelRight){let u=await Ec(t.startLabelRight,$v(t.labelStyle)),h=e.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=h.node().appendChild(u),f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),ya.get(t.id)||ya.set(t.id,{}),ya.get(t.id).startRight=h,bw(l,t.startLabelRight)}if(t.endLabelLeft){let u=await Ec(t.endLabelLeft,$v(t.labelStyle)),h=e.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),h.node().appendChild(u),ya.get(t.id)||ya.set(t.id,{}),ya.get(t.id).endLeft=h,bw(l,t.endLabelLeft)}if(t.endLabelRight){let u=await Ec(t.endLabelRight,$v(t.labelStyle)),h=e.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),h.node().appendChild(u),ya.get(t.id)||ya.set(t.id,{}),ya.get(t.id).endRight=h,bw(l,t.endLabelRight)}return n},"insertEdgeLabel");o(bw,"setTerminalWidth");kw=o((e,t)=>{V.debug("Moving label abc88 ",e.id,e.label,ww.get(e.id),t);let r=t.updatedPath?t.updatedPath:t.originalPath,n=pt(),{subGraphTitleTotalMargin:i}=io(n);if(e.label){let a=ww.get(e.id),s=e.x,l=e.y;if(r){let u=Oe.calcLabelPosition(r);V.debug("Moving label "+e.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),t.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(e.startLabelLeft){let a=ya.get(e.id).startLeft,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.startLabelRight){let a=ya.get(e.id).startRight,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.endLabelLeft){let a=ya.get(e.id).endLeft,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.endLabelRight){let a=ya.get(e.id).endRight,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),q_t=o((e,t)=>{let r=e.x,n=e.y,i=Math.abs(t.x-r),a=Math.abs(t.y-n),s=e.width/2,l=e.height/2;return i>=s||a>=l},"outsideNode"),X_t=o((e,t,r)=>{V.debug(`intersection calc abc89: outsidePoint: ${JSON.stringify(t)} insidePoint : ${JSON.stringify(r)} node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);let n=e.x,i=e.y,a=Math.abs(n-r.x),s=e.width/2,l=r.xMath.abs(n-t.x)*u){let d=r.y{V.warn("abc88 cutPathAtIntersect",e,t);let r=[],n=e[0],i=!1;return e.forEach(a=>{if(V.info("abc88 checking point",a,t),!q_t(t,a)&&!i){let s=X_t(t,n,a);V.debug("abc88 inside",a,n,s),V.debug("abc88 intersection",s,t);let l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)?V.warn("abc88 no intersect",s,r):r.push(s),i=!0}else V.warn("abc88 outside",a,n),n=a,i||r.push(a)}),V.debug("returning points",r),r},"cutPathAtIntersect");o(j_t,"extractCornerPoints");AQ=o(function(e,t,r){let n=t.x-e.x,i=t.y-e.y,a=Math.sqrt(n*n+i*i),s=r/a;return{x:t.x-s*n,y:t.y-s*i}},"findAdjacentPoint"),K_t=o(function(e){let{cornerPointPositions:t}=j_t(e),r=[];for(let n=0;n10&&Math.abs(a.y-i.y)>=10){V.debug("Corner point fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));let m=5;s.x===l.x?p={x:h<0?l.x-m+d:l.x+m-d,y:f<0?l.y-d:l.y+d}:p={x:h<0?l.x-d:l.x+d,y:f<0?l.y-m+d:l.y+m-d}}else V.debug("Corner point skipping fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));r.push(p,u)}else r.push(e[n]);return r},"fixCorners"),Ew=o(function(e,t,r,n,i,a,s){let{handDrawnSeed:l}=pt(),u=t.points,h=!1,f=i;var d=a;d.intersect&&f.intersect&&(u=u.slice(1,t.points.length-1),u.unshift(f.intersect(u[0])),V.debug("Last point APA12",t.start,"-->",t.end,u[u.length-1],d,d.intersect(u[u.length-1])),u.push(d.intersect(u[u.length-1]))),t.toCluster&&(V.info("to cluster abc88",r.get(t.toCluster)),u=SQ(t.points,r.get(t.toCluster).node),h=!0),t.fromCluster&&(V.debug("from cluster abc88",r.get(t.fromCluster),JSON.stringify(u,null,2)),u=SQ(u.reverse(),r.get(t.fromCluster).node).reverse(),h=!0);let p=u.filter(A=>!Number.isNaN(A.y));p=K_t(p);let m=p[p.length-1];if(p.length>1){m=p[p.length-1];let A=p[p.length-2],L=(m.x-A.x)/2,M=(m.y-A.y)/2,N={x:A.x+L,y:A.y+M};p.splice(-1,0,N)}let g=Ts;t.curve&&(g=t.curve);let{x:y,y:v}=xw(t),x=ma().x(y).y(v).curve(g),b;switch(t.thickness){case"normal":b="edge-thickness-normal";break;case"thick":b="edge-thickness-thick";break;case"invisible":b="edge-thickness-invisible";break;default:b="edge-thickness-normal"}switch(t.pattern){case"solid":b+=" edge-pattern-solid";break;case"dotted":b+=" edge-pattern-dotted";break;case"dashed":b+=" edge-pattern-dashed";break;default:b+=" edge-pattern-solid"}let w,S=x(p),T=Array.isArray(t.style)?t.style:[t.style];if(t.look==="handDrawn"){let A=Kt.svg(e);Object.assign([],p);let L=A.path(S,{roughness:.3,seed:l});b+=" transition",w=Gt(L).select("path").attr("id",t.id).attr("class"," "+b+(t.classes?" "+t.classes:"")).attr("style",T?T.reduce((N,k)=>N+";"+k,""):"");let M=w.attr("d");w.attr("d",M),e.node().appendChild(w.node())}else w=e.append("path").attr("d",S).attr("id",t.id).attr("class"," "+b+(t.classes?" "+t.classes:"")).attr("style",T?T.reduce((A,L)=>A+";"+L,""):"");let E="";(pt().flowchart.arrowMarkerAbsolute||pt().state.arrowMarkerAbsolute)&&(E=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,E=E.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),V.info("arrowTypeStart",t.arrowTypeStart),V.info("arrowTypeEnd",t.arrowTypeEnd),EQ(w,t,E,s,n);let _={};return h&&(_.updatedPath=u),_.originalPath=t.points,_},"insertEdge")});var Q_t,Z_t,J_t,t9t,e9t,r9t,n9t,i9t,a9t,s9t,o9t,Cw,XL=R(()=>{"use strict";ce();Q_t=o((e,t,r,n)=>{t.forEach(i=>{o9t[i](e,r,n)})},"insertMarkers"),Z_t=o((e,t,r)=>{V.trace("Making markers for ",r),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionStart").attr("class","marker extension "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionEnd").attr("class","marker extension "+t).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"),J_t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionStart").attr("class","marker composition "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionEnd").attr("class","marker composition "+t).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"),t9t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).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"),e9t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).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"),r9t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).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),e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).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"),n9t=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-pointEnd").attr("class","marker "+t).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"),e.append("marker").attr("id",r+"_"+t+"-pointStart").attr("class","marker "+t).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")},"point"),i9t=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-circleEnd").attr("class","marker "+t).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"),e.append("marker").attr("id",r+"_"+t+"-circleStart").attr("class","marker "+t).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"),a9t=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-crossEnd").attr("class","marker cross "+t).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"),e.append("marker").attr("id",r+"_"+t+"-crossStart").attr("class","marker cross "+t).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"),s9t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-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"),o9t={extension:Z_t,composition:J_t,aggregation:t9t,dependency:e9t,lollipop:r9t,point:n9t,circle:i9t,cross:a9t,barb:s9t},Cw=Q_t});function He(e){let t=e.map((r,n)=>`${n===0?"M":"L"}${r.x},${r.y}`);return t.push("Z"),t.join(" ")}function Vo(e,t,r,n,i,a){let s=[],u=r-e,h=n-t,f=u/a,d=2*Math.PI/f,p=t+h/2;for(let m=0;m<=50;m++){let g=m/50,y=e+g*u,v=p+i*Math.sin(d*(y-e));s.push({x:y,y:v})}return s}function Sw(e,t,r,n,i,a){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d{"use strict";Nl();Ue();ur();hr();_r();he=o(async(e,t,r)=>{let n,i=t.useHtmlLabels||Tr(pt().flowchart.htmlLabels);r?n=r:n="node default";let a=e.insert("g").attr("class",n).attr("id",t.domId||t.id),s=a.insert("g").attr("class","label").attr("style",t.labelStyle),l;t.label===void 0?l="":l=typeof t.label=="string"?t.label:t.label[0];let u;u=await ia(s,Zr(no(l),pt()),{useHtmlLabels:i,width:t.width||pt().flowchart.wrappingWidth,cssClasses:"markdown-node-label",style:t.labelStyle,addSvgBackground:!!t.icon||!!t.img});let h=u.getBBox(),f=t.padding/2;if(Tr(pt().flowchart.htmlLabels)){let d=u.children[0],p=Gt(u),m=d.getElementsByTagName("img");if(m){let g=l.replace(/]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(v=>{function x(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=pt().fontSize?pt().fontSize:window.getComputedStyle(document.body).fontSize,S=parseInt(b,10)*5+"px";y.style.minWidth=S,y.style.maxWidth=S}else y.style.width="100%";v(y)}o(x,"setupImage"),setTimeout(()=>{y.complete&&x()}),y.addEventListener("error",x),y.addEventListener("load",x)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}return i?s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"):s.attr("transform","translate(0, "+-h.height/2+")"),t.centerLabel&&s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),s.insert("rect",":first-child"),{shapeSvg:a,bbox:h,halfPadding:f,label:s}},"labelHelper"),Qt=o((e,t)=>{let r=t.node().getBBox();e.width=r.width,e.height=r.height},"updateNodeBounds"),de=o((e,t)=>(e.look==="handDrawn"?"rough-node":"node")+" "+e.cssClasses+" "+(t||""),"getNodeClasses");o(He,"createPathFromPoints");o(Vo,"generateFullSineWavePoints");o(Sw,"generateCirclePoints")});function l9t(e,t){return e.intersect(t)}var LQ,DQ=R(()=>{"use strict";o(l9t,"intersectNode");LQ=l9t});function c9t(e,t,r,n){var i=e.x,a=e.y,s=i-n.x,l=a-n.y,u=Math.sqrt(t*t*l*l+r*r*s*s),h=Math.abs(t*r*s/u);n.x{"use strict";o(c9t,"intersectEllipse");Aw=c9t});function u9t(e,t,r){return Aw(e,t,t,r)}var RQ,NQ=R(()=>{"use strict";jL();o(u9t,"intersectCircle");RQ=u9t});function h9t(e,t,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=t.y-e.y,s=e.x-t.x,u=t.x*e.y-e.x*t.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&MQ(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*e.x+l*e.y+h,d=a*t.x+l*t.y+h,!(f!==0&&d!==0&&MQ(f,d))&&(g=i*l-a*s,g!==0)))return y=Math.abs(g/2),v=s*h-l*u,x=v<0?(v-y)/g:(v+y)/g,v=a*u-i*h,b=v<0?(v-y)/g:(v+y)/g,{x,y:b}}function MQ(e,t){return e*t>0}var IQ,OQ=R(()=>{"use strict";o(h9t,"intersectLine");o(MQ,"sameSign");IQ=h9t});function f9t(e,t,r){let n=e.x,i=e.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(f){s=Math.min(s,f.x),l=Math.min(l,f.y)}):(s=Math.min(s,t.x),l=Math.min(l,t.y));let u=n-e.width/2-s,h=i-e.height/2-l;for(let f=0;f1&&a.sort(function(f,d){let p=f.x-r.x,m=f.y-r.y,g=Math.sqrt(p*p+m*m),y=d.x-r.x,v=d.y-r.y,x=Math.sqrt(y*y+v*v);return g{"use strict";OQ();o(f9t,"intersectPolygon");PQ=f9t});var qt,Je=R(()=>{"use strict";DQ();NQ();jL();BQ();HL();qt={node:LQ,circle:RQ,ellipse:Aw,polygon:PQ,rect:Pd}});var Bd,Gv=R(()=>{"use strict";Be();Je();Am();Ze();Qe();Bd=o(async(e,t,r)=>{let{labelStyles:n,nodeStyles:i}=te(t);t.labelStyle=n;let{shapeSvg:a,bbox:s}=await he(e,t,de(t)),l=Math.max(s.width+r.labelPaddingX*2,t?.width||0),u=Math.max(s.height+r.labelPaddingY*2,t?.height||0),h=-l/2,f=-u/2,d,{rx:p,ry:m}=t,{cssStyles:g}=t;if(r?.rx&&r.ry&&(p=r.rx,m=r.ry),t.look==="handDrawn"){let y=Kt.svg(a),v=Jt(t,{}),x=p||m?y.path(Ml(h,f,l,u,p||0),v):y.rectangle(h,f,l,u,v);d=a.insert(()=>x,":first-child"),d.attr("class","basic label-container").attr("style",g)}else d=a.insert("rect",":first-child"),d.attr("class","basic label-container").attr("style",i).attr("rx",p).attr("ry",m).attr("x",h).attr("y",f).attr("width",l).attr("height",u);return Qt(t,d),t.intersect=function(y){return qt.rect(t,y)},a},"drawRect")});var FQ,zQ=R(()=>{"use strict";Gv();FQ=o(async(e,t)=>Bd(e,t,{rx:5,ry:5,classes:"flowchart-node"}),"state")});var _w,$Q=R(()=>{"use strict";Gv();_w=o(async(e,t)=>{let r={rx:5,ry:5,classes:"",labelPaddingX:(t?.padding||0)*1,labelPaddingY:(t?.padding||0)*1};return Bd(e,t,r)},"roundedRect")});var _m,GQ=R(()=>{"use strict";Gv();_m=o(async(e,t)=>{let r={rx:0,ry:0,classes:"",labelPaddingX:(t?.padding||0)*2,labelPaddingY:(t?.padding||0)*1};return Bd(e,t,r)},"squareRect")});var Vv,VQ=R(()=>{"use strict";Qe();Je();Ze();Be();Vv=o((e,t,{config:{themeVariables:r}})=>{let{lineColor:n}=r,i=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),a;if(t.look==="handDrawn"){let l=Kt.svg(i).circle(0,0,14,xQ(n));a=i.insert(()=>l)}else a=i.insert("circle",":first-child");return a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Qt(t,a),t.intersect=function(s){return qt.circle(t,7,s)},i},"stateStart")});var Uv,UQ=R(()=>{"use strict";Qe();Je();Ze();Be();Uv=o((e,t,{config:{themeVariables:r}})=>{let{labelStyles:n,nodeStyles:i}=te(t);t.labelStyle=n;let{cssStyles:a}=t,{lineColor:s,stateBorder:l,nodeBorder:u}=r,h=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),f=Kt.svg(h),d=Jt(t,{});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=f.circle(0,0,14,{...d,stroke:s,strokeWidth:2}),m=l??u,g=f.circle(0,0,5,{...d,fill:m,stroke:m,strokeWidth:2,fillStyle:"solid"}),y=h.insert(()=>p,":first-child");return y.insert(()=>g),a&&y.selectAll("path").attr("style",a),i&&y.selectAll("path").attr("style",i),Qt(t,y),t.intersect=function(v){return qt.circle(t,7,v)},h},"stateEnd")});var Lw,HQ=R(()=>{"use strict";Qe();Je();Ze();Be();Lw=o((e,t,{dir:r,config:{state:n,themeVariables:i}})=>{let{nodeStyles:a}=te(t);t.label="";let s=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),{cssStyles:l}=t,u=Math.max(70,t?.width??0),h=Math.max(10,t?.height??0);r==="LR"&&(u=Math.max(10,t?.width??0),h=Math.max(70,t?.height??0));let f=-1*u/2,d=-1*h/2,p=Kt.svg(s),m=Jt(t,{stroke:i.lineColor,fill:i.lineColor});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=p.rectangle(f,d,u,h,m),y=s.insert(()=>g,":first-child");l&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",l),a&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",a),Qt(t,y);let v=n?.padding??0;return t.width&&t.height&&(t.width+=v/2||0,t.height+=v/2||0),t.intersect=function(x){return qt.rect(t,x)},s},"forkJoin")});var WQ,YQ=R(()=>{"use strict";Je();Qe();Ze();Be();WQ=o((e,t)=>{let{nodeStyles:r}=te(t);t.label="";let n=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),{cssStyles:i}=t,a=Math.max(28,t.width??0),s=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}],l=Kt.svg(n),u=Jt(t,{});t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=He(s),f=l.path(h,u),d=n.insert(()=>f,":first-child");return i&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",i),r&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",r),t.width=28,t.height=28,t.intersect=function(p){return qt.polygon(t,s,p)},n},"choice")});var qQ,XQ=R(()=>{"use strict";Qe();Je();Ze();Be();qQ=o(async(e,t,{config:{themeVariables:r}})=>{let{labelStyles:n,nodeStyles:i}=te(t);t.labelStyle=n;let{shapeSvg:a,bbox:s}=await he(e,t,de(t)),l=Math.max(s.width+(t.padding??0)*2,t?.width??0),u=Math.max(s.height+(t.padding??0)*2,t?.height??0),h=-l/2,f=-u/2,{cssStyles:d}=t;t.useHtmlLabels||(t.centerLabel=!0);let m=Kt.svg(a),g=Jt(t,{fill:r.noteBkgColor,stroke:r.noteBorderColor});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=m.rectangle(h,f,l,u,g),v=a.insert(()=>y,":first-child");return v.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",d),i&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",i),Qt(t,v),t.intersect=function(x){return qt.rect(t,x)},a},"note")});var Dw,jQ=R(()=>{"use strict";Be();Je();Ze();Qe();Am();Dw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.height+t.padding,l=a.width+s/4+t.padding,u,{cssStyles:h}=t;if(t.look==="handDrawn"){let f=Kt.svg(i),d=Jt(t,{}),p=Ml(-l/2,-s/2,l,s,s/2),m=f.path(p,d);u=i.insert(()=>m,":first-child"),u.attr("class","basic label-container").attr("style",h)}else u=i.insert("rect",":first-child"),u.attr("class","basic label-container").attr("style",n).attr("rx",s/2).attr("ry",s/2).attr("x",-l/2).attr("y",-s/2).attr("width",l).attr("height",s);return Qt(t,u),t.intersect=function(f){return qt.rect(t,f)},i},"stadium")});var KQ,QQ=R(()=>{"use strict";ur();hr();Be();mw();Je();Ze();Qe();Ue();Am();ce();KQ=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let i;t.cssClasses?i="node "+t.cssClasses:i="node default";let a=e.insert("g").attr("class",i).attr("id",t.domId||t.id),s=a.insert("g"),l=a.insert("g").attr("class","label").attr("style",n),u=t.description,h=t.label,f=l.node().appendChild(await Ec(h,t.labelStyle,!0,!0)),d={width:0,height:0};if(Tr(pt()?.flowchart?.htmlLabels)){let A=f.children[0],L=Gt(f);d=A.getBoundingClientRect(),L.attr("width",d.width),L.attr("height",d.height)}V.info("Text 2",u);let p=u||[],m=f.getBBox(),g=l.node().appendChild(await Ec(p.join?p.join("
    "):p,t.labelStyle,!0,!0)),y=g.children[0],v=Gt(g);d=y.getBoundingClientRect(),v.attr("width",d.width),v.attr("height",d.height);let x=(t.padding||0)/2;Gt(g).attr("transform","translate( "+(d.width>m.width?0:(m.width-d.width)/2)+", "+(m.height+x+5)+")"),Gt(f).attr("transform","translate( "+(d.width(V.debug("Rough node insert CXC",M),N),":first-child"),E=a.insert(()=>(V.debug("Rough node insert CXC",M),M),":first-child")}else E=s.insert("rect",":first-child"),_=s.insert("line"),E.attr("class","outer title-state").attr("style",n).attr("x",-d.width/2-x).attr("y",-d.height/2-x).attr("width",d.width+(t.padding||0)).attr("height",d.height+(t.padding||0)),_.attr("class","divider").attr("x1",-d.width/2-x).attr("x2",d.width/2+x).attr("y1",-d.height/2-x+m.height+x).attr("y2",-d.height/2-x+m.height+x);return Qt(t,E),t.intersect=function(A){return qt.rect(t,A)},a},"rectWithTitle")});function Ba(e,t,r,n){return e.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+r/2+")")}var Ou=R(()=>{"use strict";o(Ba,"insertPolygonShape")});var Lm,ZQ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Lm=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=(t?.padding||0)/2,l=a.width+t.padding,u=a.height+t.padding,h=-a.width/2-s,f=-a.height/2-s,d=[{x:0,y:0},{x:l,y:0},{x:l,y:-u},{x:0,y:-u},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-u},{x:-8,y:-u},{x:-8,y:0}];if(t.look==="handDrawn"){let p=Kt.svg(i),m=Jt(t,{}),g=p.rectangle(h-8,f,l+16,u,m),y=p.line(h,f,h,f+u,m),v=p.line(h+l,f,h+l,f+u,m);i.insert(()=>y,":first-child"),i.insert(()=>v,":first-child");let x=i.insert(()=>g,":first-child"),{cssStyles:b}=t;x.attr("class","basic label-container").attr("style",b),Qt(t,x)}else{let p=Ba(i,l,u,d);n&&p.attr("style",n),Qt(t,p)}return t.intersect=function(p){return qt.polygon(t,d,p)},i},"subroutine")});var d9t,p9t,m9t,Hv,JQ=R(()=>{"use strict";Be();Je();Ze();Qe();d9t=o((e,t,r,n,i,a)=>[`M${e},${t+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createCylinderPathD"),p9t=o((e,t,r,n,i,a)=>[`M${e},${t+a}`,`M${e+r},${t+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createOuterCylinderPathD"),m9t=o((e,t,r,n,i,a)=>[`M${e-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD"),Hv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+t.padding,t.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+t.padding,t.height??0),d,{cssStyles:p}=t;if(t.look==="handDrawn"){let m=Kt.svg(i),g=p9t(0,0,l,f,u,h),y=m9t(0,h,l,f,u,h),v=m.path(g,Jt(t,{})),x=m.path(y,Jt(t,{fill:"none"}));d=i.insert(()=>x,":first-child"),d=i.insert(()=>v,":first-child"),d.attr("class","basic label-container"),p&&d.attr("style",p)}else{let m=d9t(0,0,l,f,u,h);d=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container").attr("style",p).attr("style",n)}return d.attr("label-offset-y",h),d.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Qt(t,d),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+(t.padding??0)/1.5-(a.y-(a.top??0))})`),t.intersect=function(m){let g=qt.rect(t,m),y=g.x-(t.x??0);if(u!=0&&(Math.abs(y)<(t.width??0)/2||Math.abs(y)==(t.width??0)/2&&Math.abs(g.y-(t.y??0))>(t.height??0)/2-h)){let v=h*h*(1-y*y/(u*u));v>0&&(v=Math.sqrt(v)),v=h-v,m.y-(t.y??0)>0&&(v=-v),g.y+=v}return g},i},"cylinder")});var KL,tZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();KL=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await he(e,t,de(t)),l=a.width/2+s,u,{cssStyles:h}=t;if(t.look==="handDrawn"){let f=Kt.svg(i),d=Jt(t,{}),p=f.circle(0,0,l*2,d);u=i.insert(()=>p,":first-child"),u.attr("class","basic label-container").attr("style",h)}else u=i.insert("circle",":first-child").attr("class","basic label-container").attr("style",n).attr("r",l).attr("cx",0).attr("cy",0);return Qt(t,u),t.intersect=function(f){return V.info("Circle intersect",t,l,f),qt.circle(t,l,f)},i},"circle")});var Rw,eZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();Rw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await he(e,t,de(t)),u=a.width/2+s+5,h=a.width/2+s,f,{cssStyles:d}=t;if(t.look==="handDrawn"){let p=Kt.svg(i),m=Jt(t,{roughness:.2,strokeWidth:2.5}),g=Jt(t,{roughness:.2,strokeWidth:1.5}),y=p.circle(0,0,u*2,m),v=p.circle(0,0,h*2,g);f=i.insert("g",":first-child"),f.attr("class",t.cssClasses).attr("style",d),f.node()?.appendChild(y),f.node()?.appendChild(v)}else{f=i.insert("g",":first-child");let p=f.insert("circle",":first-child"),m=f.insert("circle");f.attr("class","basic label-container").attr("style",n),p.attr("class","outer-circle").attr("style",n).attr("r",u).attr("cx",0).attr("cy",0),m.attr("class","inner-circle").attr("style",n).attr("r",h).attr("cx",0).attr("cy",0)}return Qt(t,f),t.intersect=function(p){return V.info("DoubleCircle intersect",t,u,p),qt.circle(t,u,p)},i},"doublecircle")});var QL,rZ=R(()=>{"use strict";Be();Je();Ze();Qe();QL=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0),t?.width??0),u=Math.max(a.height+(t.padding??0),t?.height??0),h=-l/2,f=-u/2,d=f/2,p=[{x:h+d,y:f},{x:h,y:0},{x:h+d,y:-f},{x:-h,y:-f},{x:-h,y:f}],{cssStyles:m}=t,g=Kt.svg(i),y=Jt(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=He(p),x=g.path(v,y),b=i.insert(()=>x,":first-child");return b.attr("class","basic label-container"),m&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",m),n&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",n),b.attr("transform",`translate(${-d/2},0)`),s.attr("transform",`translate(${-d/2-a.width/2-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Qt(t,b),t.intersect=function(w){return qt.polygon(t,p,w)},i},"rect_left_inv_arrow")});var g9t,Wv,nZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();Ou();g9t=o((e,t,r)=>[`M${e+r/2},${t}`,`L${e+r},${t-r/2}`,`L${e+r/2},${t-r}`,`L${e},${t-r/2}`,"Z"].join(" "),"createDecisionBoxPathD"),Wv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.width+t.padding,l=a.height+t.padding,u=s+l,h=[{x:u/2,y:0},{x:u,y:-u/2},{x:u/2,y:-u},{x:0,y:-u/2}],f,{cssStyles:d}=t;if(t.look==="handDrawn"){let p=Kt.svg(i),m=Jt(t,{}),g=g9t(0,0,u),y=p.path(g,m);f=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`),d&&f.attr("style",d)}else f=Ba(i,u,u,h);return n&&f.attr("style",n),Qt(t,f),t.intersect=function(p){return V.debug(`APA12 Intersect called SPLIT point:`,p,` node: `,t,` res:`,qt.polygon(t,h,p)),qt.polygon(t,h,p)},i},"question")});var y9t,Nw,iZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();y9t=o((e,t,r,n,i)=>[`M${e+i},${t}`,`L${e+r-i},${t}`,`L${e+r},${t-n/2}`,`L${e+r-i},${t-n}`,`L${e+i},${t-n}`,`L${e},${t-n/2}`,"Z"].join(" "),"createHexagonPathD"),Nw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=4,l=a.height+t.padding,u=l/s,h=a.width+2*u+t.padding,f=[{x:u,y:0},{x:h-u,y:0},{x:h,y:-l/2},{x:h-u,y:-l},{x:u,y:-l},{x:0,y:-l/2}],d,{cssStyles:p}=t;if(t.look==="handDrawn"){let m=Kt.svg(i),g=Jt(t,{}),y=y9t(0,0,h,l,u),v=m.path(y,g);d=i.insert(()=>v,":first-child").attr("transform",`translate(${-h/2}, ${l/2})`),p&&d.attr("style",p)}else d=Ba(i,h,l,f);return n&&d.attr("style",n),t.width=h,t.height=l,Qt(t,d),t.intersect=function(m){return qt.polygon(t,f,m)},i},"hexagon")});async function aZ(e,t){let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+t.padding,t?.width||0),l=Math.max(a.height+t.padding,t?.height||0),u=-s/2,h=-l/2,f=i.insert("rect",":first-child");return f.attr("class","text").attr("style",n).attr("rx",0).attr("ry",0).attr("x",u).attr("y",h).attr("width",s).attr("height",l),Qt(t,f),t.intersect=function(d){return qt.rect(t,d)},i}var sZ=R(()=>{"use strict";Be();Je();Ze();o(aZ,"text")});async function Mw(e,t){let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.height+t.padding,l=12,u=a.width+t.padding+l,h=0,f=u,d=-s,p=0,m=[{x:h+l,y:d},{x:f,y:d},{x:f,y:p},{x:h,y:p},{x:h,y:d+l},{x:h+l,y:d}],g,{cssStyles:y}=t;if(t.look==="handDrawn"){let v=Kt.svg(i),x=Jt(t,{}),b=He(m),w=v.path(b,x);g=i.insert(()=>w,":first-child").attr("transform",`translate(${-u/2}, ${s/2})`),y&&g.attr("style",y)}else g=Ba(i,u,s,m);return n&&g.attr("style",n),Qt(t,g),t.intersect=function(v){return qt.polygon(t,m,v)},i}var oZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Be();o(Mw,"card")});var Dm,lZ=R(()=>{"use strict";Be();Je();Ze();Qe();Dm=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=t?.padding??0,u=Math.max(a.width+(t.padding??0)*2,t?.width??0),h=Math.max(a.height+(t.padding??0)*2,t?.height??0),f=-a.width/2-l,d=-a.height/2-l,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d},{x:f+u+8,y:d},{x:f+u+8,y:d+h},{x:f-8,y:d+h},{x:f-8,y:d},{x:f,y:d},{x:f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container").attr("style",p),n&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",n),p&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${-u/2+4+(t.padding??0)-(a.x-(a.left??0))},${-h/2+(t.padding??0)-(a.y-(a.top??0))})`),Qt(t,x),t.intersect=function(b){return qt.rect(t,b)},i},"shadedProcess")});var cZ,uZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();cZ=o((e,t)=>{let{labelStyles:r}=te(t);t.labelStyle=r;let n=de(t),i=n;n||(i="anchor");let a=e.insert("g").attr("class",i).attr("id",t.domId||t.id),s=1,{cssStyles:l}=t,u=Kt.svg(a),h=Jt(t,{fill:"black",stroke:"none",fillStyle:"solid"});t.look!=="handDrawn"&&(h.roughness=0);let f=u.circle(0,0,s*2,h),d=a.insert(()=>f,":first-child");return d.attr("class","anchor").attr("style",l),Qt(t,d),t.intersect=function(p){return V.info("Circle intersect",t,s,p),qt.circle(t,s,p)},a},"anchor")});var Yv,hZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Yv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+(t.padding??0),t?.width??0),l=Math.max(a.height+(t.padding??0),t?.height??0),u=[{x:-3*l/6,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:0,y:-l}],h,{cssStyles:f}=t;if(t.look==="handDrawn"){let d=Kt.svg(i),p=Jt(t,{}),m=He(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Ba(i,s,l,u);return n&&h.attr("style",n),t.width=s,t.height=l,Qt(t,h),t.intersect=function(d){return qt.polygon(t,u,d)},i},"lean_right")});var qv,fZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();qv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+(t.padding??0),t?.width??0),l=Math.max(a.height+(t.padding??0),t?.height??0),u=[{x:0,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:-(3*l)/6,y:-l}],h,{cssStyles:f}=t;if(t.look==="handDrawn"){let d=Kt.svg(i),p=Jt(t,{}),m=He(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Ba(i,s,l,u);return n&&h.attr("style",n),t.width=s,t.height=l,Qt(t,h),t.intersect=function(d){return qt.polygon(t,u,d)},i},"lean_left")});var Xv,dZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Xv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.width+t.padding,l=a.height+t.padding,u=[{x:-3*l/6,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:0,y:-l}],h,{cssStyles:f}=t;if(t.look==="handDrawn"){let d=Kt.svg(i),p=Jt(t,{}),m=He(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Ba(i,s,l,u);return n&&h.attr("style",n),t.width=s,t.height=l,Qt(t,h),t.intersect=function(d){return qt.polygon(t,u,d)},i},"trapezoid")});var Rm,pZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Rm=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+(t.padding??0)*2,t?.width??0),l=Math.max(a.height+(t.padding??0)*2,t?.height??0),u=[{x:0,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:-3*l/6,y:-l}],h,{cssStyles:f}=t;if(t.look==="handDrawn"){let d=Kt.svg(i),p=Jt(t,{}),m=He(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Ba(i,s,l,u);return n&&h.attr("style",n),t.width=s,t.height=l,Qt(t,h),t.intersect=function(d){return qt.polygon(t,u,d)},i},"inv_trapezoid")});var mZ,gZ=R(()=>{"use strict";Gv();Be();Je();mZ=o(async(e,t)=>{let{shapeSvg:r,bbox:n,label:i}=await he(e,t,"label"),a=r.insert("rect",":first-child");return a.attr("width",.1).attr("height",.1),r.attr("class","label edgeLabel"),i.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),Qt(t,a),t.intersect=function(u){return qt.rect(t,u)},r},"labelRect")});var Iw,yZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();Be();hr();Ue();Iw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Tr(pt().flowchart?.htmlLabels),u=a.width+(t.padding??0),h=u+a.height,f=u+a.height,d=[{x:0,y:0},{x:f,y:0},{x:f/2,y:-h}],{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=He(d),v=m.path(y,g),x=i.insert(()=>v,":first-child").attr("transform",`translate(${-h/2}, ${h/2})`);return p&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",p),n&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),t.width=u,t.height=h,Qt(t,x),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${h/2-(a.height+(t.padding??0)/(l?2:1)-(a.y-(a.top??0)))})`),t.intersect=function(b){return V.info("Triangle intersect",t,d,b),qt.polygon(t,d,b)},i},"triangle")});var ZL,vZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();ZL=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let i=80,a=50,{shapeSvg:s,bbox:l}=await he(e,t,de(t)),u=Math.max(i,l.width+(t.padding??0)*2,t?.width??0),h=Math.max(a,l.height+(t.padding??0)*2,t?.height??0),f=h/2,{cssStyles:d}=t,p=Kt.svg(s),m=Jt(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-u/2,y:-h/2},{x:u/2-f,y:-h/2},...Sw(-u/2+f,0,f,50,90,270),{x:u/2-f,y:h/2},{x:-u/2,y:h/2}],y=He(g),v=p.path(y,m),x=s.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),Qt(t,x),t.intersect=function(b){return V.info("Pill intersect",t,{radius:f,point:b}),qt.polygon(t,g,b)},s},"halfRoundedRectangle")});var Ow,xZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ow=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=80,l=20,u=Math.max(s,(a.width+(t.padding??0)*2)*1.25,t?.width??0),h=Math.max(l,a.height+(t.padding??0)*2,t?.height??0),f=h/2,{cssStyles:d}=t,p=Kt.svg(i),m=Jt(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=u,y=h,v=g-f,x=y/4,b=[{x:v,y:0},{x,y:0},{x:0,y:y/2},{x,y},{x:v,y},...Sw(-v,-y/2,f,50,270,90)],w=He(b),S=p.path(w,m),T=i.insert(()=>S,":first-child");return T.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&T.selectChildren("path").attr("style",d),n&&t.look!=="handDrawn"&&T.selectChildren("path").attr("style",n),T.attr("transform",`translate(${-u/2}, ${-h/2})`),Qt(t,T),t.intersect=function(E){return qt.polygon(t,b,E)},i},"curvedTrapezoid")});var Pw,bZ=R(()=>{"use strict";Be();Je();Ze();Qe();Pw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=-l/2,f=-u/2,{cssStyles:d}=t,p=Kt.svg(i),m=Jt(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:h,y:f},{x:h,y:f+u},{x:h+l,y:f+u},{x:h+l,y:f-u/2}],y=He(g),v=p.path(y,m),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),x.attr("transform",`translate(0, ${u/4})`),s.attr("transform",`translate(${-l/2+(t.padding??0)-(a.x-(a.left??0))}, ${-u/4+(t.padding??0)-(a.y-(a.top??0))})`),Qt(t,x),t.intersect=function(b){return qt.polygon(t,g,b)},i},"slopedRect")});function wZ(e,t,r,n,i,a,s){let u=(e+r)/2,h=(t+n)/2,f=Math.atan2(n-t,r-e),d=(r-e)/2,p=(n-t)/2,m=d/i,g=p/a,y=Math.sqrt(m**2+g**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let v=Math.sqrt(1-y**2),x=u+v*a*Math.sin(f)*(s?-1:1),b=h-v*i*Math.cos(f)*(s?-1:1),w=Math.atan2((t-b)/a,(e-x)/i),T=Math.atan2((n-b)/a,(r-x)/i)-w;s&&T<0&&(T+=2*Math.PI),!s&&T>0&&(T-=2*Math.PI);let E=[];for(let _=0;_<20;_++){let A=_/19,L=w+A*T,M=x+i*Math.cos(L),N=b+a*Math.sin(L);E.push({x:M,y:N})}return E}var Bw,TZ=R(()=>{"use strict";Be();Je();Ze();Qe();o(wZ,"generateArcPoints");Bw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.width+t.padding+20,l=a.height+t.padding,u=l/2,h=u/(2.5+l/50),{cssStyles:f}=t,d=[{x:s/2,y:-l/2},{x:-s/2,y:-l/2},...wZ(-s/2,-l/2,-s/2,l/2,h,u,!1),{x:s/2,y:l/2},...wZ(s/2,l/2,s/2,-l/2,h,u,!0)],p=Kt.svg(i),m=Jt(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=He(d),y=p.path(g,m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",f),n&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(${h/2}, 0)`),Qt(t,v),t.intersect=function(x){return qt.polygon(t,d,x)},i},"bowTieRect")});var jv,kZ=R(()=>{"use strict";Be();Je();Ze();Qe();jv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+t.padding,u=a.height+t.padding,h=u*.2,f=-l/2,d=-u/2-h/2,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d+h},{x:-f,y:d+h},{x:-f,y:-d},{x:f,y:-d},{x:f,y:d},{x:-f,y:d},{x:-f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),p&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",p),n&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${f+(t.padding??0)/2-(a.x-(a.left??0))}, ${d+h+(t.padding??0)/2-(a.y-(a.top??0))})`),Qt(t,x),t.intersect=function(b){return qt.rect(t,b)},i},"dividedRectangle")});function v9t(e){let t=Math.cos(Math.PI/4),r=Math.sin(Math.PI/4),n=e*2,i={x:n/2*t,y:n/2*r},a={x:-(n/2)*t,y:n/2*r},s={x:-(n/2)*t,y:-(n/2)*r},l={x:n/2*t,y:-(n/2)*r};return`M ${a.x},${a.y} L ${l.x},${l.y} M ${i.x},${i.y} L ${s.x},${s.y}`}var Fw,EZ=R(()=>{"use strict";ce();Be();Ze();Qe();Je();o(v9t,"createLine");Fw=o((e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r,t.label="";let i=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),a=Math.max(30,t?.width??0),{cssStyles:s}=t,l=Kt.svg(i),u=Jt(t,{});t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=l.circle(0,0,a*2,u),f=v9t(a),d=l.path(f,u),p=i.insert(()=>h,":first-child");return p.insert(()=>d),s&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",s),n&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",n),Qt(t,p),t.intersect=function(m){return V.info("crossedCircle intersect",t,{radius:a,point:m}),qt.circle(t,a,m)},i},"crossedCircle")});var JL,CZ=R(()=>{"use strict";Be();Je();Ze();Qe();JL=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=100,l=50,u=Math.max(a.width+(t.padding??0)*2,t?.width??0),h=Math.max(a.height+(t.padding??0)*2,t?.height??0),f=u/h,d=u,p=h;d>p*f?p=d/f:d=p*f,d=Math.max(d,s),p=Math.max(p,l);let m=Math.min(p*.2,p/4),g=p+m*2,{cssStyles:y}=t,v=Kt.svg(i),x=Jt(t,{});t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let b=[{x:-d/2,y:g/2},...Vo(-d/2,g/2,d/2,g/2,m,1),{x:d/2,y:-g/2},...Vo(d/2,-g/2,-d/2,-g/2,m,-1)],w=He(b),S=v.path(w,x),T=i.insert(()=>S,":first-child");return T.attr("class","basic label-container"),y&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",y),n&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",n),Qt(t,T),t.intersect=function(E){return qt.polygon(t,b,E)},i},"waveRectangle")});var x9t,b9t,w9t,zw,SZ=R(()=>{"use strict";Be();Ze();Qe();Je();x9t=o((e,t,r,n,i,a)=>`M${e},${t} a${i},${a} 0,0,1 0,${-n} l${r},0 a${i},${a} 0,0,1 0,${n} M${r},${-n} a${i},${a} 0,0,0 0,${n} l${-r},0`,"createCylinderPathD"),b9t=o((e,t,r,n,i,a)=>[`M${e},${t}`,`M${e+r},${t}`,`a${i},${a} 0,0,0 0,${-n}`,`l${-r},0`,`a${i},${a} 0,0,0 0,${n}`,`l${r},0`].join(" "),"createOuterCylinderPathD"),w9t=o((e,t,r,n,i,a)=>[`M${e+r/2},${-n/2}`,`a${i},${a} 0,0,0 0,${n}`].join(" "),"createInnerCylinderPathD"),zw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s,halfPadding:l}=await he(e,t,de(t)),u=t.look==="neo"?l*2:l,h=a.height+u,f=h/2,d=f/(2.5+h/50),p=a.width+d+u,{cssStyles:m}=t,g;if(t.look==="handDrawn"){let y=Kt.svg(i),v=b9t(0,0,p,h,d,f),x=w9t(0,0,p,h,d,f),b=y.path(v,Jt(t,{})),w=y.path(x,Jt(t,{fill:"none"}));g=i.insert(()=>w,":first-child"),g=i.insert(()=>b,":first-child"),g.attr("class","basic label-container"),m&&g.attr("style",m)}else{let y=x9t(0,0,p,h,d,f);g=i.insert("path",":first-child").attr("d",y).attr("class","basic label-container").attr("style",m).attr("style",n)}return g.attr("class","basic label-container"),m&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",m),n&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",n),g.attr("label-offset-x",d),g.attr("transform",`translate(${-p/2}, ${h/2} )`),s.attr("transform",`translate(${-(a.width/2)-d-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Qt(t,g),t.intersect=function(y){let v=qt.rect(t,y),x=v.y-(t.y??0);if(f!=0&&(Math.abs(x)<(t.height??0)/2||Math.abs(x)==(t.height??0)/2&&Math.abs(v.x-(t.x??0))>(t.width??0)/2-d)){let b=d*d*(1-x*x/(f*f));b!=0&&(b=Math.sqrt(b)),b=d-b,y.x-(t.x??0)>0&&(b=-b),v.x+=b}return v},i},"tiltedCylinder")});var $w,AZ=R(()=>{"use strict";Be();Je();Ze();Qe();$w=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=60,l=20,u=Math.max(s,a.width+(t.padding??0)*2,t?.width??0),h=Math.max(l,a.height+(t.padding??0)*2,t?.height??0),{cssStyles:f}=t,d=Kt.svg(i),p=Jt(t,{});t.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let m=[{x:-u/2*.8,y:-h/2},{x:u/2*.8,y:-h/2},{x:u/2,y:-h/2*.6},{x:u/2,y:h/2},{x:-u/2,y:h/2},{x:-u/2,y:-h/2*.6}],g=He(m),y=d.path(g,p),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",f),n&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),Qt(t,v),t.intersect=function(x){return qt.polygon(t,m,x)},i},"trapezoidalPentagon")});var Gw,_Z=R(()=>{"use strict";ce();Be();Je();Ze();Qe();Be();Gw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+(t.padding??0),u=l+a.height,h=l+a.height,f=[{x:0,y:-u},{x:h,y:-u},{x:h/2,y:0}],{cssStyles:d}=t,p=Kt.svg(i),m=Jt(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=He(f),y=p.path(g,m),v=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`);return d&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",d),n&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),t.width=l,t.height=u,Qt(t,v),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${-u/2+(t.padding??0)/2+(a.y-(a.top??0))})`),t.intersect=function(x){return V.info("Triangle intersect",t,f,x),qt.polygon(t,f,x)},i},"flippedTriangle")});var tD,LZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();tD=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.label="",t.labelStyle=r;let{shapeSvg:i}=await he(e,t,de(t)),a=Math.max(30,t?.width??0),s=Math.max(30,t?.height??0),{cssStyles:l}=t,u=Kt.svg(i),h=Jt(t,{});t.look!=="handDrawn"&&(h.roughness=0,h.fillStyle="solid");let f=[{x:0,y:0},{x:a,y:0},{x:0,y:s},{x:a,y:s}],d=He(f),p=u.path(d,h),m=i.insert(()=>p,":first-child");return m.attr("class","basic label-container"),l&&t.look!=="handDrawn"&&m.selectChildren("path").attr("style",l),n&&t.look!=="handDrawn"&&m.selectChildren("path").attr("style",n),m.attr("transform",`translate(${-a/2}, ${-s/2})`),Qt(t,m),t.intersect=function(g){return V.info("Pill intersect",t,{points:f}),qt.polygon(t,f,g)},i},"hourglass")});var Kv,DZ=R(()=>{"use strict";Be();Ze();Qe();Je();Kv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+(t.padding??0)*2,t?.width??0),l=Math.max(a.height+(t.padding??0)*2,t?.height??0),u=-s/2,h=-l/2,f=.2*l,d=.2*l,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{}),y=[{x:u-f/2,y:h},{x:u+s+f/2,y:h},{x:u+s+f/2,y:h+l},{x:u-f/2,y:h+l}],v=[{x:u+s-f/2,y:h+l},{x:u+s+f/2,y:h+l},{x:u+s+f/2,y:h+l-d}];t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=He(y),b=m.path(x,g),w=He(v),S=m.path(w,{...g,fillStyle:"solid"}),T=i.insert(()=>S,":first-child");return T.insert(()=>b,":first-child"),T.attr("class","basic label-container"),p&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",p),n&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",n),Qt(t,T),t.intersect=function(E){return qt.polygon(t,y,E)},i},"taggedRect")});var Qv,RZ=R(()=>{"use strict";Be();Ze();Qe();Je();Qv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{}),y=[{x:f-h,y:d+h},{x:f-h,y:d+u+h},{x:f+l-h,y:d+u+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d+u-h},{x:f+l+h,y:d+u-h},{x:f+l+h,y:d-h},{x:f+h,y:d-h},{x:f+h,y:d},{x:f,y:d},{x:f,y:d+h}],v=[{x:f,y:d+h},{x:f+l-h,y:d+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d},{x:f,y:d}];t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=He(y),b=m.path(x,g),w=He(v),S=m.path(w,{...g,fill:"none"}),T=i.insert(()=>S,":first-child");return T.insert(()=>b,":first-child"),T.attr("class","basic label-container"),p&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",p),n&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)-h-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),Qt(t,T),t.intersect=function(E){return qt.polygon(t,y,E)},i},"multiRect")});var T9t,k9t,E9t,Vw,NZ=R(()=>{"use strict";Be();Je();Ze();Qe();T9t=o((e,t,r,n,i,a,s)=>[`M${e},${t+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${e},${t+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createCylinderPathD"),k9t=o((e,t,r,n,i,a,s)=>[`M${e},${t+a}`,`M${e+r},${t+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${e},${t+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createOuterCylinderPathD"),E9t=o((e,t,r,n,i,a)=>[`M${e-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD"),Vw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0),t.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+(t.padding??0),t.height??0),d=f*.1,p,{cssStyles:m}=t;if(t.look==="handDrawn"){let g=Kt.svg(i),y=k9t(0,0,l,f,u,h,d),v=E9t(0,h,l,f,u,h),x=Jt(t,{}),b=g.path(y,x),w=g.path(v,x);i.insert(()=>w,":first-child").attr("class","line"),p=i.insert(()=>b,":first-child"),p.attr("class","basic label-container"),m&&p.attr("style",m)}else{let g=T9t(0,0,l,f,u,h,d);p=i.insert("path",":first-child").attr("d",g).attr("class","basic label-container").attr("style",m).attr("style",n)}return p.attr("label-offset-y",h),p.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Qt(t,p),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),t.intersect=function(g){let y=qt.rect(t,g),v=y.x-(t.x??0);if(u!=0&&(Math.abs(v)<(t.width??0)/2||Math.abs(v)==(t.width??0)/2&&Math.abs(y.y-(t.y??0))>(t.height??0)/2-h)){let x=h*h*(1-v*v/(u*u));x>0&&(x=Math.sqrt(x)),x=h-x,g.y-(t.y??0)>0&&(x=-x),y.y+=x}return y},i},"linedCylinder")});var eD,MZ=R(()=>{"use strict";Be();Je();Qe();Ze();eD=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=u/8,f=u+h,{cssStyles:d}=t,m=70-l,g=m>0?m/2:0,y=Kt.svg(i),v=Jt(t,{});t.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let x=[{x:-l/2-g,y:f/2},...Vo(-l/2-g,f/2,l/2+g,f/2,h,.8),{x:l/2+g,y:-f/2},{x:-l/2-g,y:-f/2}],b=He(x),w=y.path(b,v),S=i.insert(()=>w,":first-child");return S.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",d),n&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(t.padding??0)-(a.x-(a.left??0))},${-u/2+(t.padding??0)-h-(a.y-(a.top??0))})`),Qt(t,S),t.intersect=function(T){return qt.polygon(t,x,T)},i},"waveEdgedRectangle")});var Uw,IZ=R(()=>{"use strict";ce();Be();Ze();Qe();Je();Be();Uw=o((e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.label="",t.labelStyle=r;let i=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),{cssStyles:a}=t,s=Math.max(35,t?.width??0),l=Math.max(35,t?.height??0),u=7,h=[{x:s,y:0},{x:0,y:l+u/2},{x:s-2*u,y:l+u/2},{x:0,y:2*l},{x:s,y:l-u/2},{x:2*u,y:l-u/2}],f=Kt.svg(i),d=Jt(t,{});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=He(h),m=f.path(p,d),g=i.insert(()=>m,":first-child");return a&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",a),n&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",n),g.attr("transform",`translate(-${s/2},${-l})`),Qt(t,g),t.intersect=function(y){return V.info("lightningBolt intersect",t,y),qt.polygon(t,h,y)},i},"lightningBolt")});var Hw,OZ=R(()=>{"use strict";Qe();ce();Je();Ze();Be();Hw=o((e,t,{config:{themeVariables:r}})=>{let{labelStyles:n,nodeStyles:i}=te(t);t.label="",t.labelStyle=n;let a=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),s=7,{cssStyles:l}=t,u=Kt.svg(a),{nodeBorder:h}=r,f=Jt(t,{fillStyle:"solid"});t.look!=="handDrawn"&&(f.roughness=0);let d=u.circle(0,0,s*2,f),p=a.insert(()=>d,":first-child");return p.selectAll("path").attr("style",`fill: ${h} !important;`),l&&l.length>0&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",l),i&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",i),Qt(t,p),t.intersect=function(m){return V.info("filledCircle intersect",t,{radius:s,point:m}),qt.circle(t,s,m)},a},"filledCircle")});var Zv,PZ=R(()=>{"use strict";Be();Je();Qe();Ze();Zv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=u/4,f=u+h,d=-l/2,p=-f/2,m=5,{cssStyles:g}=t,y=Vo(d-m,p+f+m,d+l-m,p+f+m,h,.8),v=y?.[y.length-1],x=[{x:d-m,y:p+m},{x:d-m,y:p+f+m},...y,{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:v.y-2*m},{x:d+l+m,y:v.y-2*m},{x:d+l+m,y:p-m},{x:d+m,y:p-m},{x:d+m,y:p},{x:d,y:p},{x:d,y:p+m}],b=[{x:d,y:p+m},{x:d+l-m,y:p+m},{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:p},{x:d,y:p}],w=Kt.svg(i),S=Jt(t,{});t.look!=="handDrawn"&&(S.roughness=0,S.fillStyle="solid");let T=He(x),E=w.path(T,S),_=He(b),A=w.path(_,S),L=i.insert(()=>E,":first-child");return L.insert(()=>A),L.attr("class","basic label-container"),g&&t.look!=="handDrawn"&&L.selectAll("path").attr("style",g),n&&t.look!=="handDrawn"&&L.selectAll("path").attr("style",n),L.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-(a.width/2)-m-(a.x-(a.left??0))}, ${-(a.height/2)+m-h/2-(a.y-(a.top??0))})`),Qt(t,L),t.intersect=function(M){return qt.polygon(t,x,M)},i},"multiWaveEdgedRectangle")});var Ww,BZ=R(()=>{"use strict";Be();Ze();Qe();Je();Ww=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{}),y=[{x:f-h,y:d-h},{x:f-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d-h}],v=`M${f-h},${d-h} L${f+l},${d-h} L${f+l},${d+u} L${f-h},${d+u} L${f-h},${d-h} M${f-h},${d} L${f+l},${d} M${f},${d-h} L${f},${d+u}`;t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=m.path(v,g),b=i.insert(()=>x,":first-child");return b.attr("transform",`translate(${h/2}, ${h/2})`),b.attr("class","basic label-container"),p&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",p),n&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)+h/2-(a.x-(a.left??0))}, ${-(a.height/2)+h/2-(a.y-(a.top??0))})`),Qt(t,b),t.intersect=function(w){return qt.polygon(t,y,w)},i},"windowPane")});var rD,FZ=R(()=>{"use strict";Be();Je();Qe();Ze();rD=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=u/4,f=u+h,{cssStyles:d}=t,p=Kt.svg(i),m=Jt(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-l/2-l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:f/2},...Vo(-l/2-l/2*.1,f/2,l/2+l/2*.1,f/2,h,.8),{x:l/2+l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:-f/2},{x:-l/2,y:-f/2},{x:-l/2,y:f/2*1.1},{x:-l/2,y:-f/2}],y=p.polygon(g.map(x=>[x.x,x.y]),m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",d),n&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(t.padding??0)+l/2*.1/2-(a.x-(a.left??0))},${-u/2+(t.padding??0)-h/2-(a.y-(a.top??0))})`),Qt(t,v),t.intersect=function(x){return qt.polygon(t,g,x)},i},"linedWaveEdgedRect")});var nD,zZ=R(()=>{"use strict";Be();Je();Qe();Ze();nD=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=u/4,f=.2*l,d=.2*u,p=u+h,{cssStyles:m}=t,g=Kt.svg(i),y=Jt(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=[{x:-l/2-l/2*.1,y:p/2},...Vo(-l/2-l/2*.1,p/2,l/2+l/2*.1,p/2,h,.8),{x:l/2+l/2*.1,y:-p/2},{x:-l/2-l/2*.1,y:-p/2}],x=-l/2+l/2*.1,b=-p/2-d*.4,w=[{x:x+l-f,y:(b+u)*1.4},{x:x+l,y:b+u-d},{x:x+l,y:(b+u)*.9},...Vo(x+l,(b+u)*1.3,x+l-f,(b+u)*1.5,-u*.03,.5)],S=He(v),T=g.path(S,y),E=He(w),_=g.path(E,{...y,fillStyle:"solid"}),A=i.insert(()=>_,":first-child");return A.insert(()=>T,":first-child"),A.attr("class","basic label-container"),m&&t.look!=="handDrawn"&&A.selectAll("path").attr("style",m),n&&t.look!=="handDrawn"&&A.selectAll("path").attr("style",n),A.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(t.padding??0)-(a.x-(a.left??0))},${-u/2+(t.padding??0)-h/2-(a.y-(a.top??0))})`),Qt(t,A),t.intersect=function(L){return qt.polygon(t,v,L)},i},"taggedWaveEdgedRectangle")});function qh(e,t,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d{"use strict";Be();Je();Ze();Qe();o(qh,"generateCirclePoints");Yw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+(t.padding??0),u=a.height+(t.padding??0),h=Math.max(5,u*.1),{cssStyles:f}=t,d=[...qh(l/2,-u/2,h,30,-90,0),{x:-l/2-h,y:h},...qh(l/2+h*2,-h,h,20,-180,-270),...qh(l/2+h*2,h,h,20,-90,-180),{x:-l/2-h,y:-u/2},...qh(l/2,u/2,h,20,0,90)],p=[{x:l/2,y:-u/2-h},{x:-l/2,y:-u/2-h},...qh(l/2,-u/2,h,20,-90,0),{x:-l/2-h,y:-h},...qh(l/2+l*.1,-h,h,20,-180,-270),...qh(l/2+l*.1,h,h,20,-90,-180),{x:-l/2-h,y:u/2},...qh(l/2,u/2,h,20,0,90),{x:-l/2,y:u/2+h},{x:l/2,y:u/2+h}],m=Kt.svg(i),g=Jt(t,{fill:"none"});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let v=He(d).replace("Z",""),x=m.path(v,g),b=He(p),w=m.path(b,{...g}),S=i.insert("g",":first-child");return S.insert(()=>w,":first-child").attr("stroke-opacity",0),S.insert(()=>x,":first-child"),S.attr("class","text"),f&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(${h}, 0)`),s.attr("transform",`translate(${-l/2+h-(a.x-(a.left??0))},${-u/2+(t.padding??0)/2-(a.y-(a.top??0))})`),Qt(t,S),t.intersect=function(T){return qt.polygon(t,p,T)},i},"curlyBraceLeft")});function Xh(e,t,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d{"use strict";Be();Je();Ze();Qe();o(Xh,"generateCirclePoints");GZ=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+(t.padding??0),u=a.height+(t.padding??0),h=Math.max(5,u*.1),{cssStyles:f}=t,d=[...Xh(l/2,-u/2,h,20,-90,0),{x:l/2+h,y:-h},...Xh(l/2+h*2,-h,h,20,-180,-270),...Xh(l/2+h*2,h,h,20,-90,-180),{x:l/2+h,y:u/2},...Xh(l/2,u/2,h,20,0,90)],p=[{x:-l/2,y:-u/2-h},{x:l/2,y:-u/2-h},...Xh(l/2,-u/2,h,20,-90,0),{x:l/2+h,y:-h},...Xh(l/2+h*2,-h,h,20,-180,-270),...Xh(l/2+h*2,h,h,20,-90,-180),{x:l/2+h,y:u/2},...Xh(l/2,u/2,h,20,0,90),{x:l/2,y:u/2+h},{x:-l/2,y:u/2+h}],m=Kt.svg(i),g=Jt(t,{fill:"none"});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let v=He(d).replace("Z",""),x=m.path(v,g),b=He(p),w=m.path(b,{...g}),S=i.insert("g",":first-child");return S.insert(()=>w,":first-child").attr("stroke-opacity",0),S.insert(()=>x,":first-child"),S.attr("class","text"),f&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(${-h}, 0)`),s.attr("transform",`translate(${-l/2+(t.padding??0)/2-(a.x-(a.left??0))},${-u/2+(t.padding??0)/2-(a.y-(a.top??0))})`),Qt(t,S),t.intersect=function(T){return qt.polygon(t,p,T)},i},"curlyBraceRight")});function Fa(e,t,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d{"use strict";Be();Je();Ze();Qe();o(Fa,"generateCirclePoints");UZ=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+(t.padding??0),u=a.height+(t.padding??0),h=Math.max(5,u*.1),{cssStyles:f}=t,d=[...Fa(l/2,-u/2,h,30,-90,0),{x:-l/2-h,y:h},...Fa(l/2+h*2,-h,h,20,-180,-270),...Fa(l/2+h*2,h,h,20,-90,-180),{x:-l/2-h,y:-u/2},...Fa(l/2,u/2,h,20,0,90)],p=[...Fa(-l/2+h+h/2,-u/2,h,20,-90,-180),{x:l/2-h/2,y:h},...Fa(-l/2-h/2,-h,h,20,0,90),...Fa(-l/2-h/2,h,h,20,-90,0),{x:l/2-h/2,y:-h},...Fa(-l/2+h+h/2,u/2,h,30,-180,-270)],m=[{x:l/2,y:-u/2-h},{x:-l/2,y:-u/2-h},...Fa(l/2,-u/2,h,20,-90,0),{x:-l/2-h,y:-h},...Fa(l/2+h*2,-h,h,20,-180,-270),...Fa(l/2+h*2,h,h,20,-90,-180),{x:-l/2-h,y:u/2},...Fa(l/2,u/2,h,20,0,90),{x:-l/2,y:u/2+h},{x:l/2-h-h/2,y:u/2+h},...Fa(-l/2+h+h/2,-u/2,h,20,-90,-180),{x:l/2-h/2,y:h},...Fa(-l/2-h/2,-h,h,20,0,90),...Fa(-l/2-h/2,h,h,20,-90,0),{x:l/2-h/2,y:-h},...Fa(-l/2+h+h/2,u/2,h,30,-180,-270)],g=Kt.svg(i),y=Jt(t,{fill:"none"});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let x=He(d).replace("Z",""),b=g.path(x,y),S=He(p).replace("Z",""),T=g.path(S,y),E=He(m),_=g.path(E,{...y}),A=i.insert("g",":first-child");return A.insert(()=>_,":first-child").attr("stroke-opacity",0),A.insert(()=>b,":first-child"),A.insert(()=>T,":first-child"),A.attr("class","text"),f&&t.look!=="handDrawn"&&A.selectAll("path").attr("style",f),n&&t.look!=="handDrawn"&&A.selectAll("path").attr("style",n),A.attr("transform",`translate(${h-h/4}, 0)`),s.attr("transform",`translate(${-l/2+(t.padding??0)/2-(a.x-(a.left??0))},${-u/2+(t.padding??0)/2-(a.y-(a.top??0))})`),Qt(t,A),t.intersect=function(L){return qt.polygon(t,m,L)},i},"curlyBraces")});var WZ,YZ=R(()=>{"use strict";Qe();ce();iu();Je();Ze();Be();WZ=o(async(e,t,{config:{themeVariables:r,flowchart:n}})=>{let{labelStyles:i}=te(t);t.labelStyle=i;let a=t.assetHeight??48,s=t.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;t.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await he(e,t,"icon-shape default"),m=t.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=Cc(t),w=-y/2,S=-g/2,T=t.label?8:0,E=Kt.svg(h),_=Jt(t,{stroke:b.get("fill")||x});t.look!=="handDrawn"&&(_.roughness=0,_.fillStyle="solid");let A=E.rectangle(w,S,y,g,_),L=Math.max(y,f.width),M=g+f.height+T,N=E.rectangle(-L/2,-M/2,L,M,{..._,fill:"transparent",stroke:"none"}),k=h.insert(()=>A,":first-child"),I=h.insert(()=>N);if(t.icon){let C=h.append("g");C.html(`${await Ao(t.icon,{height:l,width:l,fallbackPrefix:""})}`);let O=C.node().getBBox(),D=O.width,P=O.height,F=O.x,B=O.y;C.attr("transform",`translate(${-D/2-F},${m?f.height/2+T/2-P/2-B:-f.height/2-T/2-P/2-B})`),C.selectAll("path").attr("fill",b.get("stroke")??v)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-M/2:M/2-f.height})`),k.attr("transform",`translate(0,${m?f.height/2+T/2:-f.height/2-T/2})`),Qt(t,I),t.intersect=function(C){if(V.info("iconSquare intersect",t,C),!t.label)return qt.rect(t,C);let O=t.x??0,D=t.y??0,P=t.height??0,F=[];return m?F=[{x:O-f.width/2,y:D-P/2},{x:O+f.width/2,y:D-P/2},{x:O+f.width/2,y:D-P/2+f.height+T},{x:O+y/2,y:D-P/2+f.height+T},{x:O+y/2,y:D+P/2},{x:O-y/2,y:D+P/2},{x:O-y/2,y:D-P/2+f.height+T},{x:O-f.width/2,y:D-P/2+f.height+T}]:F=[{x:O-y/2,y:D-P/2},{x:O+y/2,y:D-P/2},{x:O+y/2,y:D-P/2+g},{x:O+f.width/2,y:D-P/2+g},{x:O+f.width/2/2,y:D+P/2},{x:O-f.width/2,y:D+P/2},{x:O-f.width/2,y:D-P/2+g},{x:O-y/2,y:D-P/2+g}],qt.polygon(t,F,C)},h},"iconSquare")});var qZ,XZ=R(()=>{"use strict";Qe();ce();iu();Je();Ze();Be();qZ=o(async(e,t,{config:{themeVariables:r,flowchart:n}})=>{let{labelStyles:i}=te(t);t.labelStyle=i;let a=t.assetHeight??48,s=t.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;t.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await he(e,t,"icon-shape default"),p=20,m=t.label?8:0,g=t.pos==="t",{nodeBorder:y,mainBkg:v}=r,{stylesMap:x}=Cc(t),b=Kt.svg(h),w=Jt(t,{stroke:x.get("fill")||v});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let S=h.append("g");t.icon&&S.html(`${await Ao(t.icon,{height:l,width:l,fallbackPrefix:""})}`);let T=S.node().getBBox(),E=T.width,_=T.height,A=T.x,L=T.y,M=Math.max(E,_)*Math.SQRT2+p*2,N=b.circle(0,0,M,w),k=Math.max(M,f.width),I=M+f.height+m,C=b.rectangle(-k/2,-I/2,k,I,{...w,fill:"transparent",stroke:"none"}),O=h.insert(()=>N,":first-child"),D=h.insert(()=>C);return S.attr("transform",`translate(${-E/2-A},${g?f.height/2+m/2-_/2-L:-f.height/2-m/2-_/2-L})`),S.selectAll("path").attr("fill",x.get("stroke")||y),d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${g?-I/2:I/2-f.height})`),O.attr("transform",`translate(0,${g?f.height/2+m/2:-f.height/2-m/2})`),Qt(t,D),t.intersect=function(P){return V.info("iconSquare intersect",t,P),qt.rect(t,P)},h},"iconCircle")});var jZ,KZ=R(()=>{"use strict";Qe();ce();iu();Je();Ze();Be();jZ=o(async(e,t,{config:{themeVariables:r,flowchart:n}})=>{let{labelStyles:i}=te(t);t.labelStyle=i;let a=t.assetHeight??48,s=t.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;t.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await he(e,t,"icon-shape default"),p=t.pos==="t",m=l,g=l,{nodeBorder:y}=r,{stylesMap:v}=Cc(t),x=-g/2,b=-m/2,w=t.label?8:0,S=Kt.svg(h),T=Jt(t,{stroke:"none",fill:"none"});t.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let E=S.rectangle(x,b,g,m,T),_=Math.max(g,f.width),A=m+f.height+w,L=S.rectangle(-_/2,-A/2,_,A,{...T,fill:"transparent",stroke:"none"}),M=h.insert(()=>E,":first-child"),N=h.insert(()=>L);if(t.icon){let k=h.append("g");k.html(`${await Ao(t.icon,{height:l,width:l,fallbackPrefix:""})}`);let I=k.node().getBBox(),C=I.width,O=I.height,D=I.x,P=I.y;k.attr("transform",`translate(${-C/2-D},${p?f.height/2+w/2-O/2-P:-f.height/2-w/2-O/2-P})`),k.selectAll("path").attr("fill",v.get("stroke")||y)}return d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${p?-A/2:A/2-f.height})`),M.attr("transform",`translate(0,${p?f.height/2+w/2:-f.height/2-w/2})`),Qt(t,N),t.intersect=function(k){if(V.info("iconSquare intersect",t,k),!t.label)return qt.rect(t,k);let I=t.x??0,C=t.y??0,O=t.height??0,D=[];return p?D=[{x:I-f.width/2,y:C-O/2},{x:I+f.width/2,y:C-O/2},{x:I+f.width/2,y:C-O/2+f.height+w},{x:I+g/2,y:C-O/2+f.height+w},{x:I+g/2,y:C+O/2},{x:I-g/2,y:C+O/2},{x:I-g/2,y:C-O/2+f.height+w},{x:I-f.width/2,y:C-O/2+f.height+w}]:D=[{x:I-g/2,y:C-O/2},{x:I+g/2,y:C-O/2},{x:I+g/2,y:C-O/2+m},{x:I+f.width/2,y:C-O/2+m},{x:I+f.width/2/2,y:C+O/2},{x:I-f.width/2,y:C+O/2},{x:I-f.width/2,y:C-O/2+m},{x:I-g/2,y:C-O/2+m}],qt.polygon(t,D,k)},h},"icon")});var QZ,ZZ=R(()=>{"use strict";Qe();ce();Je();Ze();Be();QZ=o(async(e,t,{config:{flowchart:r}})=>{let n=new Image;n.src=t?.img??"",await n.decode();let i=Number(n.naturalWidth.toString().replace("px","")),a=Number(n.naturalHeight.toString().replace("px",""));t.imageAspectRatio=i/a;let{labelStyles:s}=te(t);t.labelStyle=s;let l=r?.wrappingWidth;t.defaultWidth=r?.wrappingWidth;let u=Math.max(t.label?l??0:0,t?.assetWidth??i),h=t.constraint==="on"&&t?.assetHeight?t.assetHeight*t.imageAspectRatio:u,f=t.constraint==="on"?h/t.imageAspectRatio:t?.assetHeight??a;t.width=Math.max(h,l??0);let{shapeSvg:d,bbox:p,label:m}=await he(e,t,"image-shape default"),g=t.pos==="t",y=-h/2,v=-f/2,x=t.label?8:0,b=Kt.svg(d),w=Jt(t,{});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let S=b.rectangle(y,v,h,f,w),T=Math.max(h,p.width),E=f+p.height+x,_=b.rectangle(-T/2,-E/2,T,E,{...w,fill:"none",stroke:"none"}),A=d.insert(()=>S,":first-child"),L=d.insert(()=>_);if(t.img){let M=d.append("image");M.attr("href",t.img),M.attr("width",h),M.attr("height",f),M.attr("preserveAspectRatio","none"),M.attr("transform",`translate(${-h/2},${g?E/2-f:-E/2})`)}return m.attr("transform",`translate(${-p.width/2-(p.x-(p.left??0))},${g?-f/2-p.height/2-x/2:f/2-p.height/2+x/2})`),A.attr("transform",`translate(0,${g?p.height/2+x/2:-p.height/2-x/2})`),Qt(t,L),t.intersect=function(M){if(V.info("iconSquare intersect",t,M),!t.label)return qt.rect(t,M);let N=t.x??0,k=t.y??0,I=t.height??0,C=[];return g?C=[{x:N-p.width/2,y:k-I/2},{x:N+p.width/2,y:k-I/2},{x:N+p.width/2,y:k-I/2+p.height+x},{x:N+h/2,y:k-I/2+p.height+x},{x:N+h/2,y:k+I/2},{x:N-h/2,y:k+I/2},{x:N-h/2,y:k-I/2+p.height+x},{x:N-p.width/2,y:k-I/2+p.height+x}]:C=[{x:N-h/2,y:k-I/2},{x:N+h/2,y:k-I/2},{x:N+h/2,y:k-I/2+f},{x:N+p.width/2,y:k-I/2+f},{x:N+p.width/2/2,y:k+I/2},{x:N-p.width/2,y:k+I/2},{x:N-p.width/2,y:k-I/2+f},{x:N-h/2,y:k-I/2+f}],qt.polygon(t,C,M)},d},"imageSquare")});var JZ,tJ=R(()=>{"use strict";Qe();ce();iu();Je();Ze();Am();Be();JZ=o(async(e,t,{config:{themeVariables:r,flowchart:n}})=>{let{labelStyles:i}=te(t);t.labelStyle=i;let a=t.assetHeight??48,s=t.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;t.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await he(e,t,"icon-shape default"),m=t.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=Cc(t),w=-y/2,S=-g/2,T=t.label?8:0,E=Kt.svg(h),_=Jt(t,{stroke:b.get("fill")||x});t.look!=="handDrawn"&&(_.roughness=0,_.fillStyle="solid");let A=E.path(Ml(w,S,y,g,5),_),L=Math.max(y,f.width),M=g+f.height+T,N=E.rectangle(-L/2,-M/2,L,M,{..._,fill:"transparent",stroke:"none"}),k=h.insert(()=>A,":first-child"),I=h.insert(()=>N);if(t.icon){let C=h.append("g");C.html(`${await Ao(t.icon,{height:l,width:l,fallbackPrefix:""})}`);let O=C.node().getBBox(),D=O.width,P=O.height,F=O.x,B=O.y;C.attr("transform",`translate(${-D/2-F},${m?f.height/2+T/2-P/2-B:-f.height/2-T/2-P/2-B})`),C.selectAll("path").attr("fill",b.get("stroke")??v)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-M/2:M/2-f.height})`),k.attr("transform",`translate(0,${m?f.height/2+T/2:-f.height/2-T/2})`),Qt(t,I),t.intersect=function(C){if(V.info("iconSquare intersect",t,C),!t.label)return qt.rect(t,C);let O=t.x??0,D=t.y??0,P=t.height??0,F=[];return m?F=[{x:O-f.width/2,y:D-P/2},{x:O+f.width/2,y:D-P/2},{x:O+f.width/2,y:D-P/2+f.height+T},{x:O+y/2,y:D-P/2+f.height+T},{x:O+y/2,y:D+P/2},{x:O-y/2,y:D+P/2},{x:O-y/2,y:D-P/2+f.height+T},{x:O-f.width/2,y:D-P/2+f.height+T}]:F=[{x:O-y/2,y:D-P/2},{x:O+y/2,y:D-P/2},{x:O+y/2,y:D-P/2+g},{x:O+f.width/2,y:D-P/2+g},{x:O+f.width/2/2,y:D+P/2},{x:O-f.width/2,y:D+P/2},{x:O-f.width/2,y:D-P/2+g},{x:O-y/2,y:D-P/2+g}],qt.polygon(t,F,C)},h},"iconRounded")});var iD,Nm,qw,eJ,rJ,aD,sD=R(()=>{"use strict";ce();zQ();$Q();GQ();VQ();UQ();HQ();YQ();XQ();jQ();QQ();ZQ();JQ();tZ();eZ();rZ();nZ();iZ();sZ();oZ();lZ();uZ();hZ();fZ();dZ();pZ();gZ();yZ();vZ();xZ();bZ();TZ();kZ();EZ();CZ();SZ();AZ();_Z();LZ();DZ();RZ();NZ();MZ();IZ();OZ();PZ();BZ();FZ();zZ();$Z();VZ();HZ();YZ();XZ();KZ();ZZ();tJ();iD={state:FQ,stateStart:Vv,stateEnd:Uv,forkJoin:Lw,choice:WQ,note:qQ,rectWithTitle:KQ,roundedRect:_w,squareRect:_m,rectangle:_m,rect:_m,process:_m,proc:_m,rounded:_w,event:_w,stadium:Dw,pill:Dw,terminal:Dw,subroutine:Lm,"framed-rectangle":Lm,"fr-rect":Lm,subprocess:Lm,subproc:Lm,cylinder:Hv,db:Hv,cyl:Hv,database:Hv,question:Wv,diam:Wv,diamond:Wv,decision:Wv,hexagon:Nw,hex:Nw,prepare:Nw,lean_right:Yv,"lean-r":Yv,"lean-right":Yv,"in-out":Yv,lean_left:qv,"lean-l":qv,"lean-left":qv,"out-in":qv,trapezoid:Xv,"trap-b":Xv,"trapezoid-bottom":Xv,priority:Xv,inv_trapezoid:Rm,"inv-trapezoid":Rm,"trapezoid-top":Rm,"trap-t":Rm,manual:Rm,doublecircle:Rw,"dbl-circ":Rw,"double-circle":Rw,circle:KL,circ:KL,rect_left_inv_arrow:QL,odd:QL,card:Mw,"notched-rectangle":Mw,"notch-rect":Mw,"lined-rectangle":Dm,"lin-rect":Dm,"lin-proc":Dm,"lined-process":Dm,"shaded-process":Dm,"small-circle":Vv,"sm-circ":Vv,start:Vv,stop:Uv,"framed-circle":Uv,"fr-circ":Uv,join:Lw,fork:Lw,comment:Yw,"brace-l":Yw,bolt:Uw,"com-link":Uw,"lightning-bolt":Uw,doc:eD,document:eD,delay:ZL,"half-rounded-rectangle":ZL,"horizontal-cylinder":zw,"h-cyl":zw,das:zw,"lined-cylinder":Vw,"lin-cyl":Vw,disk:Vw,"curved-trapezoid":Ow,"curv-trap":Ow,display:Ow,"divided-rectangle":jv,"div-rect":jv,"div-proc":jv,"divided-process":jv,triangle:Iw,tri:Iw,extract:Iw,"window-pane":Ww,"win-pane":Ww,"internal-storage":Ww,"f-circ":Hw,junction:Hw,"filled-circle":Hw,"lin-doc":rD,"lined-document":rD,"notched-pentagon":$w,"notch-pent":$w,"loop-limit":$w,"flipped-triangle":Gw,"flip-tri":Gw,"manual-file":Gw,"sloped-rectangle":Pw,"sl-rect":Pw,"manual-input":Pw,docs:Zv,documents:Zv,"st-doc":Zv,"stacked-document":Zv,processes:Qv,procs:Qv,"stacked-rectangle":Qv,"st-rect":Qv,flag:JL,"paper-tape":JL,"bow-tie-rectangle":Bw,"bow-rect":Bw,"stored-data":Bw,"crossed-circle":Fw,"cross-circ":Fw,summary:Fw,"tag-doc":nD,"tagged-document":nD,"tag-rect":Kv,"tagged-rectangle":Kv,"tag-proc":Kv,"tagged-process":Kv,hourglass:tD,collate:tD,text:aZ,anchor:cZ,brace:Yw,labelRect:mZ,"brace-r":GZ,braces:UZ,iconSquare:WZ,iconCircle:qZ,icon:jZ,iconRounded:JZ,imageSquare:QZ},Nm=new Map,qw=o(async(e,t,r)=>{let n,i;if(t.shape==="rect"&&(t.rx&&t.ry?t.shape="roundedRect":t.shape="squareRect"),!iD[t.shape])throw new Error(`No such shape: ${t.shape}. Please check your syntax.`);if(t.link){let a;r.config.securityLevel==="sandbox"?a="_top":t.linkTarget&&(a=t.linkTarget||"_blank"),n=e.insert("svg:a").attr("xlink:href",t.link).attr("target",a),i=await iD[t.shape](n,t,r)}else i=await iD[t.shape](e,t,r),n=i;return t.tooltip&&i.attr("title",t.tooltip),Nm.set(t.id,n),t.haveCallback&&Nm.get(t.id).attr("class",Nm.get(t.id).attr("class")+" clickable"),n},"insertNode"),eJ=o((e,t)=>{Nm.set(t.id,e)},"setNodeElem"),rJ=o(()=>{Nm.clear()},"clear"),aD=o(e=>{let t=Nm.get(e.id);V.trace("Transforming node",e.diff,e,"translate("+(e.x-e.width/2-5)+", "+e.width/2+")");let r=8,n=e.diff||0;return e.clusterNode?t.attr("transform","translate("+(e.x+n-e.width/2)+", "+(e.y-e.height/2-r)+")"):t.attr("transform","translate("+e.x+", "+e.y+")"),n},"positionNode")});var nJ,iJ=R(()=>{"use strict";js();hr();ce();WL();qL();XL();sD();Be();_r();nJ={common:Yt,getConfig:Nr,insertCluster:gw,insertEdge:Ew,insertEdgeLabel:Tw,insertMarkers:Cw,insertNode:qw,interpolateToCurve:mm,labelHelper:he,log:V,positionEdgeLabel:kw}});function S9t(e){return typeof e=="symbol"||ti(e)&&ga(e)==C9t}var C9t,oo,Fd=R(()=>{"use strict";Au();Po();C9t="[object Symbol]";o(S9t,"isSymbol");oo=S9t});function A9t(e,t){for(var r=-1,n=e==null?0:e.length,i=Array(n);++r{"use strict";o(A9t,"arrayMap");Ns=A9t});function oJ(e){if(typeof e=="string")return e;if(Le(e))return Ns(e,oJ)+"";if(oo(e))return sJ?sJ.call(e):"";var t=e+"";return t=="0"&&1/e==-_9t?"-0":t}var _9t,aJ,sJ,lJ,cJ=R(()=>{"use strict";kd();zd();Hn();Fd();_9t=1/0,aJ=ra?ra.prototype:void 0,sJ=aJ?aJ.toString:void 0;o(oJ,"baseToString");lJ=oJ});function D9t(e){for(var t=e.length;t--&&L9t.test(e.charAt(t)););return t}var L9t,uJ,hJ=R(()=>{"use strict";L9t=/\s/;o(D9t,"trimmedEndIndex");uJ=D9t});function N9t(e){return e&&e.slice(0,uJ(e)+1).replace(R9t,"")}var R9t,fJ,dJ=R(()=>{"use strict";hJ();R9t=/^\s+/;o(N9t,"baseTrim");fJ=N9t});function B9t(e){if(typeof e=="number")return e;if(oo(e))return pJ;if(xn(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=xn(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=fJ(e);var r=I9t.test(e);return r||O9t.test(e)?P9t(e.slice(2),r?2:8):M9t.test(e)?pJ:+e}var pJ,M9t,I9t,O9t,P9t,mJ,gJ=R(()=>{"use strict";dJ();eo();Fd();pJ=NaN,M9t=/^[-+]0x[0-9a-f]+$/i,I9t=/^0b[01]+$/i,O9t=/^0o[0-7]+$/i,P9t=parseInt;o(B9t,"toNumber");mJ=B9t});function z9t(e){if(!e)return e===0?e:0;if(e=mJ(e),e===yJ||e===-yJ){var t=e<0?-1:1;return t*F9t}return e===e?e:0}var yJ,F9t,Mm,oD=R(()=>{"use strict";gJ();yJ=1/0,F9t=17976931348623157e292;o(z9t,"toFinite");Mm=z9t});function $9t(e){var t=Mm(e),r=t%1;return t===t?r?t-r:t:0}var Sc,Im=R(()=>{"use strict";oD();o($9t,"toInteger");Sc=$9t});var G9t,Xw,vJ=R(()=>{"use strict";Mh();Io();G9t=ks(si,"WeakMap"),Xw=G9t});function V9t(){}var ei,lD=R(()=>{"use strict";o(V9t,"noop");ei=V9t});function U9t(e,t){for(var r=-1,n=e==null?0:e.length;++r{"use strict";o(U9t,"arrayEach");jw=U9t});function H9t(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a{"use strict";o(H9t,"baseFindIndex");Kw=H9t});function W9t(e){return e!==e}var xJ,bJ=R(()=>{"use strict";o(W9t,"baseIsNaN");xJ=W9t});function Y9t(e,t,r){for(var n=r-1,i=e.length;++n{"use strict";o(Y9t,"strictIndexOf");wJ=Y9t});function q9t(e,t,r){return t===t?wJ(e,t,r):Kw(e,xJ,r)}var Om,Qw=R(()=>{"use strict";uD();bJ();TJ();o(q9t,"baseIndexOf");Om=q9t});function X9t(e,t){var r=e==null?0:e.length;return!!r&&Om(e,t,0)>-1}var Zw,hD=R(()=>{"use strict";Qw();o(X9t,"arrayIncludes");Zw=X9t});var j9t,kJ,EJ=R(()=>{"use strict";C9();j9t=S5(Object.keys,Object),kJ=j9t});function Z9t(e){if(!xc(e))return kJ(e);var t=[];for(var r in Object(e))Q9t.call(e,r)&&r!="constructor"&&t.push(r);return t}var K9t,Q9t,Pm,Jw=R(()=>{"use strict";cm();EJ();K9t=Object.prototype,Q9t=K9t.hasOwnProperty;o(Z9t,"baseKeys");Pm=Z9t});function J9t(e){return oi(e)?R5(e):Pm(e)}var $r,Ac=R(()=>{"use strict";D9();Jw();Bo();o(J9t,"keys");$r=J9t});var tLt,eLt,rLt,va,CJ=R(()=>{"use strict";dm();_d();I9();Bo();cm();Ac();tLt=Object.prototype,eLt=tLt.hasOwnProperty,rLt=I5(function(e,t){if(xc(t)||oi(t)){$o(t,$r(t),e);return}for(var r in t)eLt.call(t,r)&&bc(e,r,t[r])}),va=rLt});function aLt(e,t){if(Le(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||oo(e)?!0:iLt.test(e)||!nLt.test(e)||t!=null&&e in Object(t)}var nLt,iLt,Bm,tT=R(()=>{"use strict";Hn();Fd();nLt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,iLt=/^\w*$/;o(aLt,"isKey");Bm=aLt});function oLt(e){var t=em(e,function(n){return r.size===sLt&&r.clear(),n}),r=t.cache;return t}var sLt,SJ,AJ=R(()=>{"use strict";v9();sLt=500;o(oLt,"memoizeCapped");SJ=oLt});var lLt,cLt,uLt,_J,LJ=R(()=>{"use strict";AJ();lLt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,cLt=/\\(\\)?/g,uLt=SJ(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(lLt,function(r,n,i,a){t.push(i?a.replace(cLt,"$1"):n||r)}),t}),_J=uLt});function hLt(e){return e==null?"":lJ(e)}var eT,fD=R(()=>{"use strict";cJ();o(hLt,"toString");eT=hLt});function fLt(e,t){return Le(e)?e:Bm(e,t)?[e]:_J(eT(e))}var jh,Jv=R(()=>{"use strict";Hn();tT();LJ();fD();o(fLt,"castPath");jh=fLt});function pLt(e){if(typeof e=="string"||oo(e))return e;var t=e+"";return t=="0"&&1/e==-dLt?"-0":t}var dLt,_c,Fm=R(()=>{"use strict";Fd();dLt=1/0;o(pLt,"toKey");_c=pLt});function mLt(e,t){t=jh(t,e);for(var r=0,n=t.length;e!=null&&r{"use strict";Jv();Fm();o(mLt,"baseGet");Kh=mLt});function gLt(e,t,r){var n=e==null?void 0:Kh(e,t);return n===void 0?r:n}var DJ,RJ=R(()=>{"use strict";t2();o(gLt,"get");DJ=gLt});function yLt(e,t){for(var r=-1,n=t.length,i=e.length;++r{"use strict";o(yLt,"arrayPush");zm=yLt});function vLt(e){return Le(e)||_l(e)||!!(NJ&&e&&e[NJ])}var NJ,MJ,IJ=R(()=>{"use strict";kd();um();Hn();NJ=ra?ra.isConcatSpreadable:void 0;o(vLt,"isFlattenable");MJ=vLt});function OJ(e,t,r,n,i){var a=-1,s=e.length;for(r||(r=MJ),i||(i=[]);++a0&&r(l)?t>1?OJ(l,t-1,r,n,i):zm(i,l):n||(i[i.length]=l)}return i}var Lc,$m=R(()=>{"use strict";rT();IJ();o(OJ,"baseFlatten");Lc=OJ});function xLt(e){var t=e==null?0:e.length;return t?Lc(e,1):[]}var Wr,nT=R(()=>{"use strict";$m();o(xLt,"flatten");Wr=xLt});function bLt(e){return M5(N5(e,void 0,Wr),e+"")}var PJ,BJ=R(()=>{"use strict";nT();R9();M9();o(bLt,"flatRest");PJ=bLt});function wLt(e,t,r){var n=-1,i=e.length;t<0&&(t=-t>i?0:i+t),r=r>i?i:r,r<0&&(r+=i),i=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(i);++n{"use strict";o(wLt,"baseSlice");iT=wLt});function DLt(e){return LLt.test(e)}var TLt,kLt,ELt,CLt,SLt,ALt,_Lt,LLt,FJ,zJ=R(()=>{"use strict";TLt="\\ud800-\\udfff",kLt="\\u0300-\\u036f",ELt="\\ufe20-\\ufe2f",CLt="\\u20d0-\\u20ff",SLt=kLt+ELt+CLt,ALt="\\ufe0e\\ufe0f",_Lt="\\u200d",LLt=RegExp("["+_Lt+TLt+SLt+ALt+"]");o(DLt,"hasUnicode");FJ=DLt});function RLt(e,t,r,n){var i=-1,a=e==null?0:e.length;for(n&&a&&(r=e[++i]);++i{"use strict";o(RLt,"arrayReduce");$J=RLt});function NLt(e,t){return e&&$o(t,$r(t),e)}var VJ,UJ=R(()=>{"use strict";_d();Ac();o(NLt,"baseAssign");VJ=NLt});function MLt(e,t){return e&&$o(t,Es(t),e)}var HJ,WJ=R(()=>{"use strict";_d();$h();o(MLt,"baseAssignIn");HJ=MLt});function ILt(e,t){for(var r=-1,n=e==null?0:e.length,i=0,a=[];++r{"use strict";o(ILt,"arrayFilter");Gm=ILt});function OLt(){return[]}var sT,pD=R(()=>{"use strict";o(OLt,"stubArray");sT=OLt});var PLt,BLt,YJ,FLt,Vm,oT=R(()=>{"use strict";aT();pD();PLt=Object.prototype,BLt=PLt.propertyIsEnumerable,YJ=Object.getOwnPropertySymbols,FLt=YJ?function(e){return e==null?[]:(e=Object(e),Gm(YJ(e),function(t){return BLt.call(e,t)}))}:sT,Vm=FLt});function zLt(e,t){return $o(e,Vm(e),t)}var qJ,XJ=R(()=>{"use strict";_d();oT();o(zLt,"copySymbols");qJ=zLt});var $Lt,GLt,lT,mD=R(()=>{"use strict";rT();A5();oT();pD();$Lt=Object.getOwnPropertySymbols,GLt=$Lt?function(e){for(var t=[];e;)zm(t,Vm(e)),e=lm(e);return t}:sT,lT=GLt});function VLt(e,t){return $o(e,lT(e),t)}var jJ,KJ=R(()=>{"use strict";_d();mD();o(VLt,"copySymbolsIn");jJ=VLt});function ULt(e,t,r){var n=t(e);return Le(e)?n:zm(n,r(e))}var cT,gD=R(()=>{"use strict";rT();Hn();o(ULt,"baseGetAllKeys");cT=ULt});function HLt(e){return cT(e,$r,Vm)}var e2,yD=R(()=>{"use strict";gD();oT();Ac();o(HLt,"getAllKeys");e2=HLt});function WLt(e){return cT(e,Es,lT)}var uT,vD=R(()=>{"use strict";gD();mD();$h();o(WLt,"getAllKeysIn");uT=WLt});var YLt,hT,QJ=R(()=>{"use strict";Mh();Io();YLt=ks(si,"DataView"),hT=YLt});var qLt,fT,ZJ=R(()=>{"use strict";Mh();Io();qLt=ks(si,"Promise"),fT=qLt});var XLt,Qh,xD=R(()=>{"use strict";Mh();Io();XLt=ks(si,"Set"),Qh=XLt});var JJ,jLt,ttt,ett,rtt,ntt,KLt,QLt,ZLt,JLt,tDt,$d,lo,Gd=R(()=>{"use strict";QJ();x5();ZJ();xD();vJ();Au();m9();JJ="[object Map]",jLt="[object Object]",ttt="[object Promise]",ett="[object Set]",rtt="[object WeakMap]",ntt="[object DataView]",KLt=_u(hT),QLt=_u(Ph),ZLt=_u(fT),JLt=_u(Qh),tDt=_u(Xw),$d=ga;(hT&&$d(new hT(new ArrayBuffer(1)))!=ntt||Ph&&$d(new Ph)!=JJ||fT&&$d(fT.resolve())!=ttt||Qh&&$d(new Qh)!=ett||Xw&&$d(new Xw)!=rtt)&&($d=o(function(e){var t=ga(e),r=t==jLt?e.constructor:void 0,n=r?_u(r):"";if(n)switch(n){case KLt:return ntt;case QLt:return JJ;case ZLt:return ttt;case JLt:return ett;case tDt:return rtt}return t},"getTag"));lo=$d});function nDt(e){var t=e.length,r=new e.constructor(t);return t&&typeof e[0]=="string"&&rDt.call(e,"index")&&(r.index=e.index,r.input=e.input),r}var eDt,rDt,itt,att=R(()=>{"use strict";eDt=Object.prototype,rDt=eDt.hasOwnProperty;o(nDt,"initCloneArray");itt=nDt});function iDt(e,t){var r=t?om(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}var stt,ott=R(()=>{"use strict";k5();o(iDt,"cloneDataView");stt=iDt});function sDt(e){var t=new e.constructor(e.source,aDt.exec(e));return t.lastIndex=e.lastIndex,t}var aDt,ltt,ctt=R(()=>{"use strict";aDt=/\w*$/;o(sDt,"cloneRegExp");ltt=sDt});function oDt(e){return htt?Object(htt.call(e)):{}}var utt,htt,ftt,dtt=R(()=>{"use strict";kd();utt=ra?ra.prototype:void 0,htt=utt?utt.valueOf:void 0;o(oDt,"cloneSymbol");ftt=oDt});function ADt(e,t,r){var n=e.constructor;switch(t){case gDt:return om(e);case lDt:case cDt:return new n(+e);case yDt:return stt(e,r);case vDt:case xDt:case bDt:case wDt:case TDt:case kDt:case EDt:case CDt:case SDt:return E5(e,r);case uDt:return new n;case hDt:case pDt:return new n(e);case fDt:return ltt(e);case dDt:return new n;case mDt:return ftt(e)}}var lDt,cDt,uDt,hDt,fDt,dDt,pDt,mDt,gDt,yDt,vDt,xDt,bDt,wDt,TDt,kDt,EDt,CDt,SDt,ptt,mtt=R(()=>{"use strict";k5();ott();ctt();dtt();k9();lDt="[object Boolean]",cDt="[object Date]",uDt="[object Map]",hDt="[object Number]",fDt="[object RegExp]",dDt="[object Set]",pDt="[object String]",mDt="[object Symbol]",gDt="[object ArrayBuffer]",yDt="[object DataView]",vDt="[object Float32Array]",xDt="[object Float64Array]",bDt="[object Int8Array]",wDt="[object Int16Array]",TDt="[object Int32Array]",kDt="[object Uint8Array]",EDt="[object Uint8ClampedArray]",CDt="[object Uint16Array]",SDt="[object Uint32Array]";o(ADt,"initCloneByTag");ptt=ADt});function LDt(e){return ti(e)&&lo(e)==_Dt}var _Dt,gtt,ytt=R(()=>{"use strict";Gd();Po();_Dt="[object Map]";o(LDt,"baseIsMap");gtt=LDt});var vtt,DDt,xtt,btt=R(()=>{"use strict";ytt();Ad();vv();vtt=zo&&zo.isMap,DDt=vtt?Fo(vtt):gtt,xtt=DDt});function NDt(e){return ti(e)&&lo(e)==RDt}var RDt,wtt,Ttt=R(()=>{"use strict";Gd();Po();RDt="[object Set]";o(NDt,"baseIsSet");wtt=NDt});var ktt,MDt,Ett,Ctt=R(()=>{"use strict";Ttt();Ad();vv();ktt=zo&&zo.isSet,MDt=ktt?Fo(ktt):wtt,Ett=MDt});function dT(e,t,r,n,i,a){var s,l=t&IDt,u=t&ODt,h=t&PDt;if(r&&(s=i?r(e,n,i,a):r(e)),s!==void 0)return s;if(!xn(e))return e;var f=Le(e);if(f){if(s=itt(e),!l)return C5(e,s)}else{var d=lo(e),p=d==Att||d==GDt;if(Ll(e))return T5(e,l);if(d==_tt||d==Stt||p&&!i){if(s=u||p?{}:_5(e),!l)return u?jJ(e,HJ(s,e)):qJ(e,VJ(s,e))}else{if(!_n[d])return i?e:{};s=ptt(e,d,l)}}a||(a=new yc);var m=a.get(e);if(m)return m;a.set(e,s),Ett(e)?e.forEach(function(v){s.add(dT(v,t,r,v,e,a))}):xtt(e)&&e.forEach(function(v,x){s.set(x,dT(v,t,r,x,e,a))});var g=h?u?uT:e2:u?Es:$r,y=f?void 0:g(e);return jw(y||e,function(v,x){y&&(x=v,v=e[x]),bc(s,x,dT(v,t,r,x,e,a))}),s}var IDt,ODt,PDt,Stt,BDt,FDt,zDt,$Dt,Att,GDt,VDt,UDt,_tt,HDt,WDt,YDt,qDt,XDt,jDt,KDt,QDt,ZDt,JDt,tRt,eRt,rRt,nRt,iRt,aRt,_n,pT,bD=R(()=>{"use strict";mv();cD();dm();UJ();WJ();w9();E9();XJ();KJ();yD();vD();Gd();att();mtt();S9();Hn();fm();btt();eo();Ctt();Ac();$h();IDt=1,ODt=2,PDt=4,Stt="[object Arguments]",BDt="[object Array]",FDt="[object Boolean]",zDt="[object Date]",$Dt="[object Error]",Att="[object Function]",GDt="[object GeneratorFunction]",VDt="[object Map]",UDt="[object Number]",_tt="[object Object]",HDt="[object RegExp]",WDt="[object Set]",YDt="[object String]",qDt="[object Symbol]",XDt="[object WeakMap]",jDt="[object ArrayBuffer]",KDt="[object DataView]",QDt="[object Float32Array]",ZDt="[object Float64Array]",JDt="[object Int8Array]",tRt="[object Int16Array]",eRt="[object Int32Array]",rRt="[object Uint8Array]",nRt="[object Uint8ClampedArray]",iRt="[object Uint16Array]",aRt="[object Uint32Array]",_n={};_n[Stt]=_n[BDt]=_n[jDt]=_n[KDt]=_n[FDt]=_n[zDt]=_n[QDt]=_n[ZDt]=_n[JDt]=_n[tRt]=_n[eRt]=_n[VDt]=_n[UDt]=_n[_tt]=_n[HDt]=_n[WDt]=_n[YDt]=_n[qDt]=_n[rRt]=_n[nRt]=_n[iRt]=_n[aRt]=!0;_n[$Dt]=_n[Att]=_n[XDt]=!1;o(dT,"baseClone");pT=dT});function oRt(e){return pT(e,sRt)}var sRt,rn,wD=R(()=>{"use strict";bD();sRt=4;o(oRt,"clone");rn=oRt});function uRt(e){return pT(e,lRt|cRt)}var lRt,cRt,TD,Ltt=R(()=>{"use strict";bD();lRt=1,cRt=4;o(uRt,"cloneDeep");TD=uRt});function hRt(e){for(var t=-1,r=e==null?0:e.length,n=0,i=[];++t{"use strict";o(hRt,"compact");Dc=hRt});function dRt(e){return this.__data__.set(e,fRt),this}var fRt,Rtt,Ntt=R(()=>{"use strict";fRt="__lodash_hash_undefined__";o(dRt,"setCacheAdd");Rtt=dRt});function pRt(e){return this.__data__.has(e)}var Mtt,Itt=R(()=>{"use strict";o(pRt,"setCacheHas");Mtt=pRt});function mT(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new Cd;++t{"use strict";b5();Ntt();Itt();o(mT,"SetCache");mT.prototype.add=mT.prototype.push=Rtt;mT.prototype.has=Mtt;Um=mT});function mRt(e,t){for(var r=-1,n=e==null?0:e.length;++r{"use strict";o(mRt,"arraySome");yT=mRt});function gRt(e,t){return e.has(t)}var Hm,vT=R(()=>{"use strict";o(gRt,"cacheHas");Hm=gRt});function xRt(e,t,r,n,i,a){var s=r&yRt,l=e.length,u=t.length;if(l!=u&&!(s&&u>l))return!1;var h=a.get(e),f=a.get(t);if(h&&f)return h==t&&f==e;var d=-1,p=!0,m=r&vRt?new Um:void 0;for(a.set(e,t),a.set(t,e);++d{"use strict";gT();kD();vT();yRt=1,vRt=2;o(xRt,"equalArrays");xT=xRt});function bRt(e){var t=-1,r=Array(e.size);return e.forEach(function(n,i){r[++t]=[i,n]}),r}var Ott,Ptt=R(()=>{"use strict";o(bRt,"mapToArray");Ott=bRt});function wRt(e){var t=-1,r=Array(e.size);return e.forEach(function(n){r[++t]=n}),r}var Wm,bT=R(()=>{"use strict";o(wRt,"setToArray");Wm=wRt});function ORt(e,t,r,n,i,a,s){switch(r){case IRt:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case MRt:return!(e.byteLength!=t.byteLength||!a(new sm(e),new sm(t)));case ERt:case CRt:case _Rt:return Oo(+e,+t);case SRt:return e.name==t.name&&e.message==t.message;case LRt:case RRt:return e==t+"";case ARt:var l=Ott;case DRt:var u=n&TRt;if(l||(l=Wm),e.size!=t.size&&!u)return!1;var h=s.get(e);if(h)return h==t;n|=kRt,s.set(e,t);var f=xT(l(e),l(t),n,i,a,s);return s.delete(e),f;case NRt:if(CD)return CD.call(e)==CD.call(t)}return!1}var TRt,kRt,ERt,CRt,SRt,ARt,_Rt,LRt,DRt,RRt,NRt,MRt,IRt,Btt,CD,Ftt,ztt=R(()=>{"use strict";kd();T9();Ed();ED();Ptt();bT();TRt=1,kRt=2,ERt="[object Boolean]",CRt="[object Date]",SRt="[object Error]",ARt="[object Map]",_Rt="[object Number]",LRt="[object RegExp]",DRt="[object Set]",RRt="[object String]",NRt="[object Symbol]",MRt="[object ArrayBuffer]",IRt="[object DataView]",Btt=ra?ra.prototype:void 0,CD=Btt?Btt.valueOf:void 0;o(ORt,"equalByTag");Ftt=ORt});function zRt(e,t,r,n,i,a){var s=r&PRt,l=e2(e),u=l.length,h=e2(t),f=h.length;if(u!=f&&!s)return!1;for(var d=u;d--;){var p=l[d];if(!(s?p in t:FRt.call(t,p)))return!1}var m=a.get(e),g=a.get(t);if(m&&g)return m==t&&g==e;var y=!0;a.set(e,t),a.set(t,e);for(var v=s;++d{"use strict";yD();PRt=1,BRt=Object.prototype,FRt=BRt.hasOwnProperty;o(zRt,"equalObjects");$tt=zRt});function VRt(e,t,r,n,i,a){var s=Le(e),l=Le(t),u=s?Utt:lo(e),h=l?Utt:lo(t);u=u==Vtt?wT:u,h=h==Vtt?wT:h;var f=u==wT,d=h==wT,p=u==h;if(p&&Ll(e)){if(!Ll(t))return!1;s=!0,f=!1}if(p&&!f)return a||(a=new yc),s||Fh(e)?xT(e,t,r,n,i,a):Ftt(e,t,u,r,n,i,a);if(!(r&$Rt)){var m=f&&Htt.call(e,"__wrapped__"),g=d&&Htt.call(t,"__wrapped__");if(m||g){var y=m?e.value():e,v=g?t.value():t;return a||(a=new yc),i(y,v,r,n,a)}}return p?(a||(a=new yc),$tt(e,t,r,n,i,a)):!1}var $Rt,Vtt,Utt,wT,GRt,Htt,Wtt,Ytt=R(()=>{"use strict";mv();ED();ztt();Gtt();Gd();Hn();fm();xv();$Rt=1,Vtt="[object Arguments]",Utt="[object Array]",wT="[object Object]",GRt=Object.prototype,Htt=GRt.hasOwnProperty;o(VRt,"baseIsEqualDeep");Wtt=VRt});function qtt(e,t,r,n,i){return e===t?!0:e==null||t==null||!ti(e)&&!ti(t)?e!==e&&t!==t:Wtt(e,t,r,n,qtt,i)}var TT,SD=R(()=>{"use strict";Ytt();Po();o(qtt,"baseIsEqual");TT=qtt});function WRt(e,t,r,n){var i=r.length,a=i,s=!n;if(e==null)return!a;for(e=Object(e);i--;){var l=r[i];if(s&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++i{"use strict";mv();SD();URt=1,HRt=2;o(WRt,"baseIsMatch");Xtt=WRt});function YRt(e){return e===e&&!xn(e)}var kT,AD=R(()=>{"use strict";eo();o(YRt,"isStrictComparable");kT=YRt});function qRt(e){for(var t=$r(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,kT(i)]}return t}var Ktt,Qtt=R(()=>{"use strict";AD();Ac();o(qRt,"getMatchData");Ktt=qRt});function XRt(e,t){return function(r){return r==null?!1:r[e]===t&&(t!==void 0||e in Object(r))}}var ET,_D=R(()=>{"use strict";o(XRt,"matchesStrictComparable");ET=XRt});function jRt(e){var t=Ktt(e);return t.length==1&&t[0][2]?ET(t[0][0],t[0][1]):function(r){return r===e||Xtt(r,e,t)}}var Ztt,Jtt=R(()=>{"use strict";jtt();Qtt();_D();o(jRt,"baseMatches");Ztt=jRt});function KRt(e,t){return e!=null&&t in Object(e)}var tet,eet=R(()=>{"use strict";o(KRt,"baseHasIn");tet=KRt});function QRt(e,t,r){t=jh(t,e);for(var n=-1,i=t.length,a=!1;++n{"use strict";Jv();um();Hn();wv();L5();Fm();o(QRt,"hasPath");CT=QRt});function ZRt(e,t){return e!=null&&CT(e,t,tet)}var ST,DD=R(()=>{"use strict";eet();LD();o(ZRt,"hasIn");ST=ZRt});function eNt(e,t){return Bm(e)&&kT(t)?ET(_c(e),t):function(r){var n=DJ(r,e);return n===void 0&&n===t?ST(r,e):TT(t,n,JRt|tNt)}}var JRt,tNt,ret,net=R(()=>{"use strict";SD();RJ();DD();tT();AD();_D();Fm();JRt=1,tNt=2;o(eNt,"baseMatchesProperty");ret=eNt});function rNt(e){return function(t){return t?.[e]}}var AT,RD=R(()=>{"use strict";o(rNt,"baseProperty");AT=rNt});function nNt(e){return function(t){return Kh(t,e)}}var iet,aet=R(()=>{"use strict";t2();o(nNt,"basePropertyDeep");iet=nNt});function iNt(e){return Bm(e)?AT(_c(e)):iet(e)}var set,oet=R(()=>{"use strict";RD();aet();tT();Fm();o(iNt,"property");set=iNt});function aNt(e){return typeof e=="function"?e:e==null?na:typeof e=="object"?Le(e)?ret(e[0],e[1]):Ztt(e):set(e)}var dn,es=R(()=>{"use strict";Jtt();net();Du();Hn();oet();o(aNt,"baseIteratee");dn=aNt});function sNt(e,t,r,n){for(var i=-1,a=e==null?0:e.length;++i{"use strict";o(sNt,"arrayAggregator");cet=sNt});function oNt(e,t){return e&&am(e,t,$r)}var Ym,_T=R(()=>{"use strict";w5();Ac();o(oNt,"baseForOwn");Ym=oNt});function lNt(e,t){return function(r,n){if(r==null)return r;if(!oi(r))return e(r,n);for(var i=r.length,a=t?i:-1,s=Object(r);(t?a--:++a{"use strict";Bo();o(lNt,"createBaseEach");het=lNt});var cNt,Ms,Zh=R(()=>{"use strict";_T();fet();cNt=het(Ym),Ms=cNt});function uNt(e,t,r,n){return Ms(e,function(i,a,s){t(n,i,r(i),s)}),n}var det,pet=R(()=>{"use strict";Zh();o(uNt,"baseAggregator");det=uNt});function hNt(e,t){return function(r,n){var i=Le(r)?cet:det,a=t?t():{};return i(r,e,dn(n,2),a)}}var met,get=R(()=>{"use strict";uet();pet();es();Hn();o(hNt,"createAggregator");met=hNt});var fNt,LT,yet=R(()=>{"use strict";Io();fNt=o(function(){return si.Date.now()},"now"),LT=fNt});var vet,dNt,pNt,Jh,xet=R(()=>{"use strict";pm();Ed();Ld();$h();vet=Object.prototype,dNt=vet.hasOwnProperty,pNt=wc(function(e,t){e=Object(e);var r=-1,n=t.length,i=n>2?t[2]:void 0;for(i&&ro(t[0],t[1],i)&&(n=1);++r{"use strict";o(mNt,"arrayIncludesWith");DT=mNt});function yNt(e,t,r,n){var i=-1,a=Zw,s=!0,l=e.length,u=[],h=t.length;if(!l)return u;r&&(t=Ns(t,Fo(r))),n?(a=DT,s=!1):t.length>=gNt&&(a=Hm,s=!1,t=new Um(t));t:for(;++i{"use strict";gT();hD();ND();zd();Ad();vT();gNt=200;o(yNt,"baseDifference");bet=yNt});var vNt,tf,Tet=R(()=>{"use strict";wet();$m();pm();D5();vNt=wc(function(e,t){return Sd(e)?bet(e,Lc(t,1,Sd,!0)):[]}),tf=vNt});function xNt(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var xa,ket=R(()=>{"use strict";o(xNt,"last");xa=xNt});function bNt(e,t,r){var n=e==null?0:e.length;return n?(t=r||t===void 0?1:Sc(t),iT(e,t<0?0:t,n)):[]}var gi,Eet=R(()=>{"use strict";dD();Im();o(bNt,"drop");gi=bNt});function wNt(e,t,r){var n=e==null?0:e.length;return n?(t=r||t===void 0?1:Sc(t),t=n-t,iT(e,0,t<0?0:t)):[]}var Pu,Cet=R(()=>{"use strict";dD();Im();o(wNt,"dropRight");Pu=wNt});function TNt(e){return typeof e=="function"?e:na}var qm,RT=R(()=>{"use strict";Du();o(TNt,"castFunction");qm=TNt});function kNt(e,t){var r=Le(e)?jw:Ms;return r(e,qm(t))}var Et,NT=R(()=>{"use strict";cD();Zh();RT();Hn();o(kNt,"forEach");Et=kNt});var Aet=R(()=>{"use strict";NT()});function ENt(e,t){for(var r=-1,n=e==null?0:e.length;++r{"use strict";o(ENt,"arrayEvery");_et=ENt});function CNt(e,t){var r=!0;return Ms(e,function(n,i,a){return r=!!t(n,i,a),r}),r}var Det,Ret=R(()=>{"use strict";Zh();o(CNt,"baseEvery");Det=CNt});function SNt(e,t,r){var n=Le(e)?_et:Det;return r&&ro(e,t,r)&&(t=void 0),n(e,dn(t,3))}var za,Net=R(()=>{"use strict";Let();Ret();es();Hn();Ld();o(SNt,"every");za=SNt});function ANt(e,t){var r=[];return Ms(e,function(n,i,a){t(n,i,a)&&r.push(n)}),r}var MT,MD=R(()=>{"use strict";Zh();o(ANt,"baseFilter");MT=ANt});function _Nt(e,t){var r=Le(e)?Gm:MT;return r(e,dn(t,3))}var Yr,ID=R(()=>{"use strict";aT();MD();es();Hn();o(_Nt,"filter");Yr=_Nt});function LNt(e){return function(t,r,n){var i=Object(t);if(!oi(t)){var a=dn(r,3);t=$r(t),r=o(function(l){return a(i[l],l,i)},"predicate")}var s=e(t,r,n);return s>-1?i[a?t[s]:s]:void 0}}var Met,Iet=R(()=>{"use strict";es();Bo();Ac();o(LNt,"createFind");Met=LNt});function RNt(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var i=r==null?0:Sc(r);return i<0&&(i=DNt(n+i,0)),Kw(e,dn(t,3),i)}var DNt,Oet,Pet=R(()=>{"use strict";uD();es();Im();DNt=Math.max;o(RNt,"findIndex");Oet=RNt});var NNt,rs,Bet=R(()=>{"use strict";Iet();Pet();NNt=Met(Oet),rs=NNt});function MNt(e){return e&&e.length?e[0]:void 0}var aa,Fet=R(()=>{"use strict";o(MNt,"head");aa=MNt});var zet=R(()=>{"use strict";Fet()});function INt(e,t){var r=-1,n=oi(e)?Array(e.length):[];return Ms(e,function(i,a,s){n[++r]=t(i,a,s)}),n}var IT,OD=R(()=>{"use strict";Zh();Bo();o(INt,"baseMap");IT=INt});function ONt(e,t){var r=Le(e)?Ns:IT;return r(e,dn(t,3))}var Xt,Xm=R(()=>{"use strict";zd();es();OD();Hn();o(ONt,"map");Xt=ONt});function PNt(e,t){return Lc(Xt(e,t),1)}var ba,PD=R(()=>{"use strict";$m();Xm();o(PNt,"flatMap");ba=PNt});function BNt(e,t){return e==null?e:am(e,qm(t),Es)}var BD,$et=R(()=>{"use strict";w5();RT();$h();o(BNt,"forIn");BD=BNt});function FNt(e,t){return e&&Ym(e,qm(t))}var FD,Get=R(()=>{"use strict";_T();RT();o(FNt,"forOwn");FD=FNt});var zNt,$Nt,GNt,zD,Vet=R(()=>{"use strict";im();get();zNt=Object.prototype,$Nt=zNt.hasOwnProperty,GNt=met(function(e,t,r){$Nt.call(e,r)?e[r].push(t):vc(e,r,[t])}),zD=GNt});function VNt(e,t){return e>t}var Uet,Het=R(()=>{"use strict";o(VNt,"baseGt");Uet=VNt});function WNt(e,t){return e!=null&&HNt.call(e,t)}var UNt,HNt,Wet,Yet=R(()=>{"use strict";UNt=Object.prototype,HNt=UNt.hasOwnProperty;o(WNt,"baseHas");Wet=WNt});function YNt(e,t){return e!=null&&CT(e,t,Wet)}var jt,qet=R(()=>{"use strict";Yet();LD();o(YNt,"has");jt=YNt});function XNt(e){return typeof e=="string"||!Le(e)&&ti(e)&&ga(e)==qNt}var qNt,yi,OT=R(()=>{"use strict";Au();Hn();Po();qNt="[object String]";o(XNt,"isString");yi=XNt});function jNt(e,t){return Ns(t,function(r){return e[r]})}var Xet,jet=R(()=>{"use strict";zd();o(jNt,"baseValues");Xet=jNt});function KNt(e){return e==null?[]:Xet(e,$r(e))}var gr,$D=R(()=>{"use strict";jet();Ac();o(KNt,"values");gr=KNt});function ZNt(e,t,r,n){e=oi(e)?e:gr(e),r=r&&!n?Sc(r):0;var i=e.length;return r<0&&(r=QNt(i+r,0)),yi(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&Om(e,t,r)>-1}var QNt,Wn,Ket=R(()=>{"use strict";Qw();Bo();OT();Im();$D();QNt=Math.max;o(ZNt,"includes");Wn=ZNt});function tMt(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var i=r==null?0:Sc(r);return i<0&&(i=JNt(n+i,0)),Om(e,t,i)}var JNt,PT,Qet=R(()=>{"use strict";Qw();Im();JNt=Math.max;o(tMt,"indexOf");PT=tMt});function aMt(e){if(e==null)return!0;if(oi(e)&&(Le(e)||typeof e=="string"||typeof e.splice=="function"||Ll(e)||Fh(e)||_l(e)))return!e.length;var t=lo(e);if(t==eMt||t==rMt)return!e.size;if(xc(e))return!Pm(e).length;for(var r in e)if(iMt.call(e,r))return!1;return!0}var eMt,rMt,nMt,iMt,cr,BT=R(()=>{"use strict";Jw();Gd();um();Hn();Bo();fm();cm();xv();eMt="[object Map]",rMt="[object Set]",nMt=Object.prototype,iMt=nMt.hasOwnProperty;o(aMt,"isEmpty");cr=aMt});function oMt(e){return ti(e)&&ga(e)==sMt}var sMt,Zet,Jet=R(()=>{"use strict";Au();Po();sMt="[object RegExp]";o(oMt,"baseIsRegExp");Zet=oMt});var trt,lMt,Uo,ert=R(()=>{"use strict";Jet();Ad();vv();trt=zo&&zo.isRegExp,lMt=trt?Fo(trt):Zet,Uo=lMt});function cMt(e){return e===void 0}var fr,rrt=R(()=>{"use strict";o(cMt,"isUndefined");fr=cMt});function uMt(e,t){return e{"use strict";o(uMt,"baseLt");FT=uMt});function hMt(e,t){var r={};return t=dn(t,3),Ym(e,function(n,i,a){vc(r,i,t(n,i,a))}),r}var Vd,nrt=R(()=>{"use strict";im();_T();es();o(hMt,"mapValues");Vd=hMt});function fMt(e,t,r){for(var n=-1,i=e.length;++n{"use strict";Fd();o(fMt,"baseExtremum");jm=fMt});function dMt(e){return e&&e.length?jm(e,na,Uet):void 0}var Is,irt=R(()=>{"use strict";zT();Het();Du();o(dMt,"max");Is=dMt});function pMt(e){return e&&e.length?jm(e,na,FT):void 0}var Il,VD=R(()=>{"use strict";zT();GD();Du();o(pMt,"min");Il=pMt});function mMt(e,t){return e&&e.length?jm(e,dn(t,2),FT):void 0}var Ud,art=R(()=>{"use strict";zT();es();GD();o(mMt,"minBy");Ud=mMt});function yMt(e){if(typeof e!="function")throw new TypeError(gMt);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}var gMt,srt,ort=R(()=>{"use strict";gMt="Expected a function";o(yMt,"negate");srt=yMt});function vMt(e,t,r,n){if(!xn(e))return e;t=jh(t,e);for(var i=-1,a=t.length,s=a-1,l=e;l!=null&&++i{"use strict";dm();Jv();wv();eo();Fm();o(vMt,"baseSet");lrt=vMt});function xMt(e,t,r){for(var n=-1,i=t.length,a={};++n{"use strict";t2();crt();Jv();o(xMt,"basePickBy");$T=xMt});function bMt(e,t){if(e==null)return{};var r=Ns(uT(e),function(n){return[n]});return t=dn(t),$T(e,r,function(n,i){return t(n,i[0])})}var Os,urt=R(()=>{"use strict";zd();es();UD();vD();o(bMt,"pickBy");Os=bMt});function wMt(e,t){var r=e.length;for(e.sort(t);r--;)e[r]=e[r].value;return e}var hrt,frt=R(()=>{"use strict";o(wMt,"baseSortBy");hrt=wMt});function TMt(e,t){if(e!==t){var r=e!==void 0,n=e===null,i=e===e,a=oo(e),s=t!==void 0,l=t===null,u=t===t,h=oo(t);if(!l&&!h&&!a&&e>t||a&&s&&u&&!l&&!h||n&&s&&u||!r&&u||!i)return 1;if(!n&&!a&&!h&&e{"use strict";Fd();o(TMt,"compareAscending");drt=TMt});function kMt(e,t,r){for(var n=-1,i=e.criteria,a=t.criteria,s=i.length,l=r.length;++n=l)return u;var h=r[n];return u*(h=="desc"?-1:1)}}return e.index-t.index}var mrt,grt=R(()=>{"use strict";prt();o(kMt,"compareMultiple");mrt=kMt});function EMt(e,t,r){t.length?t=Ns(t,function(a){return Le(a)?function(s){return Kh(s,a.length===1?a[0]:a)}:a}):t=[na];var n=-1;t=Ns(t,Fo(dn));var i=IT(e,function(a,s,l){var u=Ns(t,function(h){return h(a)});return{criteria:u,index:++n,value:a}});return hrt(i,function(a,s){return mrt(a,s,r)})}var yrt,vrt=R(()=>{"use strict";zd();t2();es();OD();frt();Ad();grt();Du();Hn();o(EMt,"baseOrderBy");yrt=EMt});var CMt,xrt,brt=R(()=>{"use strict";RD();CMt=AT("length"),xrt=CMt});function BMt(e){for(var t=wrt.lastIndex=0;wrt.test(e);)++t;return t}var Trt,SMt,AMt,_Mt,LMt,DMt,RMt,HD,WD,NMt,krt,Ert,Crt,MMt,Srt,Art,IMt,OMt,PMt,wrt,_rt,Lrt=R(()=>{"use strict";Trt="\\ud800-\\udfff",SMt="\\u0300-\\u036f",AMt="\\ufe20-\\ufe2f",_Mt="\\u20d0-\\u20ff",LMt=SMt+AMt+_Mt,DMt="\\ufe0e\\ufe0f",RMt="["+Trt+"]",HD="["+LMt+"]",WD="\\ud83c[\\udffb-\\udfff]",NMt="(?:"+HD+"|"+WD+")",krt="[^"+Trt+"]",Ert="(?:\\ud83c[\\udde6-\\uddff]){2}",Crt="[\\ud800-\\udbff][\\udc00-\\udfff]",MMt="\\u200d",Srt=NMt+"?",Art="["+DMt+"]?",IMt="(?:"+MMt+"(?:"+[krt,Ert,Crt].join("|")+")"+Art+Srt+")*",OMt=Art+Srt+IMt,PMt="(?:"+[krt+HD+"?",HD,Ert,Crt,RMt].join("|")+")",wrt=RegExp(WD+"(?="+WD+")|"+PMt+OMt,"g");o(BMt,"unicodeSize");_rt=BMt});function FMt(e){return FJ(e)?_rt(e):xrt(e)}var Drt,Rrt=R(()=>{"use strict";brt();zJ();Lrt();o(FMt,"stringSize");Drt=FMt});function zMt(e,t){return $T(e,t,function(r,n){return ST(e,n)})}var Nrt,Mrt=R(()=>{"use strict";UD();DD();o(zMt,"basePick");Nrt=zMt});var $Mt,Hd,Irt=R(()=>{"use strict";Mrt();BJ();$Mt=PJ(function(e,t){return e==null?{}:Nrt(e,t)}),Hd=$Mt});function UMt(e,t,r,n){for(var i=-1,a=VMt(GMt((t-e)/(r||1)),0),s=Array(a);a--;)s[n?a:++i]=e,e+=r;return s}var GMt,VMt,Ort,Prt=R(()=>{"use strict";GMt=Math.ceil,VMt=Math.max;o(UMt,"baseRange");Ort=UMt});function HMt(e){return function(t,r,n){return n&&typeof n!="number"&&ro(t,r,n)&&(r=n=void 0),t=Mm(t),r===void 0?(r=t,t=0):r=Mm(r),n=n===void 0?t{"use strict";Prt();Ld();oD();o(HMt,"createRange");Brt=HMt});var WMt,Ho,zrt=R(()=>{"use strict";Frt();WMt=Brt(),Ho=WMt});function YMt(e,t,r,n,i){return i(e,function(a,s,l){r=n?(n=!1,a):t(r,a,s,l)}),r}var $rt,Grt=R(()=>{"use strict";o(YMt,"baseReduce");$rt=YMt});function qMt(e,t,r){var n=Le(e)?$J:$rt,i=arguments.length<3;return n(e,dn(t,4),r,i,Ms)}var qr,YD=R(()=>{"use strict";GJ();Zh();es();Grt();Hn();o(qMt,"reduce");qr=qMt});function XMt(e,t){var r=Le(e)?Gm:MT;return r(e,srt(dn(t,3)))}var ef,Vrt=R(()=>{"use strict";aT();MD();es();Hn();ort();o(XMt,"reject");ef=XMt});function QMt(e){if(e==null)return 0;if(oi(e))return yi(e)?Drt(e):e.length;var t=lo(e);return t==jMt||t==KMt?e.size:Pm(e).length}var jMt,KMt,qD,Urt=R(()=>{"use strict";Jw();Gd();Bo();OT();Rrt();jMt="[object Map]",KMt="[object Set]";o(QMt,"size");qD=QMt});function ZMt(e,t){var r;return Ms(e,function(n,i,a){return r=t(n,i,a),!r}),!!r}var Hrt,Wrt=R(()=>{"use strict";Zh();o(ZMt,"baseSome");Hrt=ZMt});function JMt(e,t,r){var n=Le(e)?yT:Hrt;return r&&ro(e,t,r)&&(t=void 0),n(e,dn(t,3))}var r2,Yrt=R(()=>{"use strict";kD();es();Wrt();Hn();Ld();o(JMt,"some");r2=JMt});var tIt,Rc,qrt=R(()=>{"use strict";$m();vrt();pm();Ld();tIt=wc(function(e,t){if(e==null)return[];var r=t.length;return r>1&&ro(e,t[0],t[1])?t=[]:r>2&&ro(t[0],t[1],t[2])&&(t=[t[0]]),yrt(e,Lc(t,1),[])}),Rc=tIt});var eIt,rIt,Xrt,jrt=R(()=>{"use strict";xD();lD();bT();eIt=1/0,rIt=Qh&&1/Wm(new Qh([,-0]))[1]==eIt?function(e){return new Qh(e)}:ei,Xrt=rIt});function iIt(e,t,r){var n=-1,i=Zw,a=e.length,s=!0,l=[],u=l;if(r)s=!1,i=DT;else if(a>=nIt){var h=t?null:Xrt(e);if(h)return Wm(h);s=!1,i=Hm,u=new Um}else u=t?[]:l;t:for(;++n{"use strict";gT();hD();ND();vT();jrt();bT();nIt=200;o(iIt,"baseUniq");Km=iIt});var aIt,XD,Krt=R(()=>{"use strict";$m();pm();GT();D5();aIt=wc(function(e){return Km(Lc(e,1,Sd,!0))}),XD=aIt});function sIt(e){return e&&e.length?Km(e):[]}var Qm,Qrt=R(()=>{"use strict";GT();o(sIt,"uniq");Qm=sIt});function oIt(e,t){return e&&e.length?Km(e,dn(t,2)):[]}var Zrt,Jrt=R(()=>{"use strict";es();GT();o(oIt,"uniqBy");Zrt=oIt});function cIt(e){var t=++lIt;return eT(e)+t}var lIt,Wd,tnt=R(()=>{"use strict";fD();lIt=0;o(cIt,"uniqueId");Wd=cIt});function uIt(e,t,r){for(var n=-1,i=e.length,a=t.length,s={};++n{"use strict";o(uIt,"baseZipObject");ent=uIt});function hIt(e,t){return ent(e||[],t||[],bc)}var VT,nnt=R(()=>{"use strict";dm();rnt();o(hIt,"zipObject");VT=hIt});var Ve=R(()=>{"use strict";CJ();wD();Ltt();Dtt();N9();xet();Tet();Eet();Cet();Aet();Net();ID();Bet();zet();PD();nT();NT();$et();Get();Vet();qet();Du();Ket();Qet();Hn();BT();uv();eo();ert();OT();rrt();Ac();ket();Xm();nrt();irt();O9();VD();art();lD();yet();Irt();urt();zrt();YD();Vrt();Urt();Yrt();qrt();Krt();Qrt();tnt();$D();nnt();});function ant(e,t){e[t]?e[t]++:e[t]=1}function snt(e,t){--e[t]||delete e[t]}function n2(e,t,r,n){var i=""+t,a=""+r;if(!e&&i>a){var s=i;i=a,a=s}return i+int+a+int+(fr(n)?fIt:n)}function dIt(e,t,r,n){var i=""+t,a=""+r;if(!e&&i>a){var s=i;i=a,a=s}var l={v:i,w:a};return n&&(l.name=n),l}function jD(e,t){return n2(e,t.v,t.w,t.name)}var fIt,Yd,int,yr,UT=R(()=>{"use strict";Ve();fIt="\0",Yd="\0",int="",yr=class{static{o(this,"Graph")}constructor(t={}){this._isDirected=jt(t,"directed")?t.directed:!0,this._isMultigraph=jt(t,"multigraph")?t.multigraph:!1,this._isCompound=jt(t,"compound")?t.compound:!1,this._label=void 0,this._defaultNodeLabelFn=Cs(void 0),this._defaultEdgeLabelFn=Cs(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[Yd]={}),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(t){return this._label=t,this}graph(){return this._label}setDefaultNodeLabel(t){return Si(t)||(t=Cs(t)),this._defaultNodeLabelFn=t,this}nodeCount(){return this._nodeCount}nodes(){return $r(this._nodes)}sources(){var t=this;return Yr(this.nodes(),function(r){return cr(t._in[r])})}sinks(){var t=this;return Yr(this.nodes(),function(r){return cr(t._out[r])})}setNodes(t,r){var n=arguments,i=this;return Et(t,function(a){n.length>1?i.setNode(a,r):i.setNode(a)}),this}setNode(t,r){return jt(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=r),this):(this._nodes[t]=arguments.length>1?r:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=Yd,this._children[t]={},this._children[Yd][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)}node(t){return this._nodes[t]}hasNode(t){return jt(this._nodes,t)}removeNode(t){var r=this;if(jt(this._nodes,t)){var n=o(function(i){r.removeEdge(r._edgeObjs[i])},"removeEdge");delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],Et(this.children(t),function(i){r.setParent(i)}),delete this._children[t]),Et($r(this._in[t]),n),delete this._in[t],delete this._preds[t],Et($r(this._out[t]),n),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this}setParent(t,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(fr(r))r=Yd;else{r+="";for(var n=r;!fr(n);n=this.parent(n))if(n===t)throw new Error("Setting "+r+" as parent of "+t+" would create a cycle");this.setNode(r)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=r,this._children[r][t]=!0,this}_removeFromParentsChildList(t){delete this._children[this._parent[t]][t]}parent(t){if(this._isCompound){var r=this._parent[t];if(r!==Yd)return r}}children(t){if(fr(t)&&(t=Yd),this._isCompound){var r=this._children[t];if(r)return $r(r)}else{if(t===Yd)return this.nodes();if(this.hasNode(t))return[]}}predecessors(t){var r=this._preds[t];if(r)return $r(r)}successors(t){var r=this._sucs[t];if(r)return $r(r)}neighbors(t){var r=this.predecessors(t);if(r)return XD(r,this.successors(t))}isLeaf(t){var r;return this.isDirected()?r=this.successors(t):r=this.neighbors(t),r.length===0}filterNodes(t){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var n=this;Et(this._nodes,function(s,l){t(l)&&r.setNode(l,s)}),Et(this._edgeObjs,function(s){r.hasNode(s.v)&&r.hasNode(s.w)&&r.setEdge(s,n.edge(s))});var i={};function a(s){var l=n.parent(s);return l===void 0||r.hasNode(l)?(i[s]=l,l):l in i?i[l]:a(l)}return o(a,"findParent"),this._isCompound&&Et(r.nodes(),function(s){r.setParent(s,a(s))}),r}setDefaultEdgeLabel(t){return Si(t)||(t=Cs(t)),this._defaultEdgeLabelFn=t,this}edgeCount(){return this._edgeCount}edges(){return gr(this._edgeObjs)}setPath(t,r){var n=this,i=arguments;return qr(t,function(a,s){return i.length>1?n.setEdge(a,s,r):n.setEdge(a,s),s}),this}setEdge(){var t,r,n,i,a=!1,s=arguments[0];typeof s=="object"&&s!==null&&"v"in s?(t=s.v,r=s.w,n=s.name,arguments.length===2&&(i=arguments[1],a=!0)):(t=s,r=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),t=""+t,r=""+r,fr(n)||(n=""+n);var l=n2(this._isDirected,t,r,n);if(jt(this._edgeLabels,l))return a&&(this._edgeLabels[l]=i),this;if(!fr(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(r),this._edgeLabels[l]=a?i:this._defaultEdgeLabelFn(t,r,n);var u=dIt(this._isDirected,t,r,n);return t=u.v,r=u.w,Object.freeze(u),this._edgeObjs[l]=u,ant(this._preds[r],t),ant(this._sucs[t],r),this._in[r][l]=u,this._out[t][l]=u,this._edgeCount++,this}edge(t,r,n){var i=arguments.length===1?jD(this._isDirected,arguments[0]):n2(this._isDirected,t,r,n);return this._edgeLabels[i]}hasEdge(t,r,n){var i=arguments.length===1?jD(this._isDirected,arguments[0]):n2(this._isDirected,t,r,n);return jt(this._edgeLabels,i)}removeEdge(t,r,n){var i=arguments.length===1?jD(this._isDirected,arguments[0]):n2(this._isDirected,t,r,n),a=this._edgeObjs[i];return a&&(t=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],snt(this._preds[r],t),snt(this._sucs[t],r),delete this._in[r][i],delete this._out[t][i],this._edgeCount--),this}inEdges(t,r){var n=this._in[t];if(n){var i=gr(n);return r?Yr(i,function(a){return a.v===r}):i}}outEdges(t,r){var n=this._out[t];if(n){var i=gr(n);return r?Yr(i,function(a){return a.w===r}):i}}nodeEdges(t,r){var n=this.inEdges(t,r);if(n)return n.concat(this.outEdges(t,r))}};yr.prototype._nodeCount=0;yr.prototype._edgeCount=0;o(ant,"incrementOrInitEntry");o(snt,"decrementOrRemoveEntry");o(n2,"edgeArgsToId");o(dIt,"edgeArgsToObj");o(jD,"edgeObjToId")});var wa=R(()=>{"use strict";UT()});function ont(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function pIt(e,t){if(e!=="_next"&&e!=="_prev")return t}var HT,lnt=R(()=>{"use strict";HT=class{static{o(this,"List")}constructor(){var t={};t._next=t._prev=t,this._sentinel=t}dequeue(){var t=this._sentinel,r=t._prev;if(r!==t)return ont(r),r}enqueue(t){var r=this._sentinel;t._prev&&t._next&&ont(t),t._next=r._next,r._next._prev=t,r._next=t,t._prev=r}toString(){for(var t=[],r=this._sentinel,n=r._prev;n!==r;)t.push(JSON.stringify(n,pIt)),n=n._prev;return"["+t.join(", ")+"]"}};o(ont,"unlink");o(pIt,"filterOutLinks")});function cnt(e,t){if(e.nodeCount()<=1)return[];var r=yIt(e,t||mIt),n=gIt(r.graph,r.buckets,r.zeroIdx);return Wr(Xt(n,function(i){return e.outEdges(i.v,i.w)}))}function gIt(e,t,r){for(var n=[],i=t[t.length-1],a=t[0],s;e.nodeCount();){for(;s=a.dequeue();)KD(e,t,r,s);for(;s=i.dequeue();)KD(e,t,r,s);if(e.nodeCount()){for(var l=t.length-2;l>0;--l)if(s=t[l].dequeue(),s){n=n.concat(KD(e,t,r,s,!0));break}}}return n}function KD(e,t,r,n,i){var a=i?[]:void 0;return Et(e.inEdges(n.v),function(s){var l=e.edge(s),u=e.node(s.v);i&&a.push({v:s.v,w:s.w}),u.out-=l,QD(t,r,u)}),Et(e.outEdges(n.v),function(s){var l=e.edge(s),u=s.w,h=e.node(u);h.in-=l,QD(t,r,h)}),e.removeNode(n.v),a}function yIt(e,t){var r=new yr,n=0,i=0;Et(e.nodes(),function(l){r.setNode(l,{v:l,in:0,out:0})}),Et(e.edges(),function(l){var u=r.edge(l.v,l.w)||0,h=t(l),f=u+h;r.setEdge(l.v,l.w,f),i=Math.max(i,r.node(l.v).out+=h),n=Math.max(n,r.node(l.w).in+=h)});var a=Ho(i+n+3).map(function(){return new HT}),s=n+1;return Et(r.nodes(),function(l){QD(a,s,r.node(l))}),{graph:r,buckets:a,zeroIdx:s}}function QD(e,t,r){r.out?r.in?e[r.out-r.in+t].enqueue(r):e[e.length-1].enqueue(r):e[0].enqueue(r)}var mIt,unt=R(()=>{"use strict";Ve();wa();lnt();mIt=Cs(1);o(cnt,"greedyFAS");o(gIt,"doGreedyFAS");o(KD,"removeNode");o(yIt,"buildState");o(QD,"assignBucket")});function hnt(e){var t=e.graph().acyclicer==="greedy"?cnt(e,r(e)):vIt(e);Et(t,function(n){var i=e.edge(n);e.removeEdge(n),i.forwardName=n.name,i.reversed=!0,e.setEdge(n.w,n.v,i,Wd("rev"))});function r(n){return function(i){return n.edge(i).weight}}o(r,"weightFn")}function vIt(e){var t=[],r={},n={};function i(a){jt(n,a)||(n[a]=!0,r[a]=!0,Et(e.outEdges(a),function(s){jt(r,s.w)?t.push(s):i(s.w)}),delete r[a])}return o(i,"dfs"),Et(e.nodes(),i),t}function fnt(e){Et(e.edges(),function(t){var r=e.edge(t);if(r.reversed){e.removeEdge(t);var n=r.forwardName;delete r.reversed,delete r.forwardName,e.setEdge(t.w,t.v,r,n)}})}var ZD=R(()=>{"use strict";Ve();unt();o(hnt,"run");o(vIt,"dfsFAS");o(fnt,"undo")});function Nc(e,t,r,n){var i;do i=Wd(n);while(e.hasNode(i));return r.dummy=t,e.setNode(i,r),i}function pnt(e){var t=new yr().setGraph(e.graph());return Et(e.nodes(),function(r){t.setNode(r,e.node(r))}),Et(e.edges(),function(r){var n=t.edge(r.v,r.w)||{weight:0,minlen:1},i=e.edge(r);t.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),t}function WT(e){var t=new yr({multigraph:e.isMultigraph()}).setGraph(e.graph());return Et(e.nodes(),function(r){e.children(r).length||t.setNode(r,e.node(r))}),Et(e.edges(),function(r){t.setEdge(r,e.edge(r))}),t}function JD(e,t){var r=e.x,n=e.y,i=t.x-r,a=t.y-n,s=e.width/2,l=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=l*i/a,h=l):(i<0&&(s=-s),u=s,h=s*a/i),{x:r+u,y:n+h}}function rf(e){var t=Xt(Ho(eR(e)+1),function(){return[]});return Et(e.nodes(),function(r){var n=e.node(r),i=n.rank;fr(i)||(t[i][n.order]=r)}),t}function mnt(e){var t=Il(Xt(e.nodes(),function(r){return e.node(r).rank}));Et(e.nodes(),function(r){var n=e.node(r);jt(n,"rank")&&(n.rank-=t)})}function gnt(e){var t=Il(Xt(e.nodes(),function(a){return e.node(a).rank})),r=[];Et(e.nodes(),function(a){var s=e.node(a).rank-t;r[s]||(r[s]=[]),r[s].push(a)});var n=0,i=e.graph().nodeRankFactor;Et(r,function(a,s){fr(a)&&s%i!==0?--n:n&&Et(a,function(l){e.node(l).rank+=n})})}function tR(e,t,r,n){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),Nc(e,"border",i,t)}function eR(e){return Is(Xt(e.nodes(),function(t){var r=e.node(t).rank;if(!fr(r))return r}))}function ynt(e,t){var r={lhs:[],rhs:[]};return Et(e,function(n){t(n)?r.lhs.push(n):r.rhs.push(n)}),r}function vnt(e,t){var r=LT();try{return t()}finally{console.log(e+" time: "+(LT()-r)+"ms")}}function xnt(e,t){return t()}var Mc=R(()=>{"use strict";Ve();wa();o(Nc,"addDummyNode");o(pnt,"simplify");o(WT,"asNonCompoundGraph");o(JD,"intersectRect");o(rf,"buildLayerMatrix");o(mnt,"normalizeRanks");o(gnt,"removeEmptyRanks");o(tR,"addBorderNode");o(eR,"maxRank");o(ynt,"partition");o(vnt,"time");o(xnt,"notime")});function wnt(e){function t(r){var n=e.children(r),i=e.node(r);if(n.length&&Et(n,t),jt(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,s=i.maxRank+1;a{"use strict";Ve();Mc();o(wnt,"addBorderSegments");o(bnt,"addBorderNode")});function Ent(e){var t=e.graph().rankdir.toLowerCase();(t==="lr"||t==="rl")&&Snt(e)}function Cnt(e){var t=e.graph().rankdir.toLowerCase();(t==="bt"||t==="rl")&&xIt(e),(t==="lr"||t==="rl")&&(bIt(e),Snt(e))}function Snt(e){Et(e.nodes(),function(t){knt(e.node(t))}),Et(e.edges(),function(t){knt(e.edge(t))})}function knt(e){var t=e.width;e.width=e.height,e.height=t}function xIt(e){Et(e.nodes(),function(t){rR(e.node(t))}),Et(e.edges(),function(t){var r=e.edge(t);Et(r.points,rR),jt(r,"y")&&rR(r)})}function rR(e){e.y=-e.y}function bIt(e){Et(e.nodes(),function(t){nR(e.node(t))}),Et(e.edges(),function(t){var r=e.edge(t);Et(r.points,nR),jt(r,"x")&&nR(r)})}function nR(e){var t=e.x;e.x=e.y,e.y=t}var Ant=R(()=>{"use strict";Ve();o(Ent,"adjust");o(Cnt,"undo");o(Snt,"swapWidthHeight");o(knt,"swapWidthHeightOne");o(xIt,"reverseY");o(rR,"reverseYOne");o(bIt,"swapXY");o(nR,"swapXYOne")});function _nt(e){e.graph().dummyChains=[],Et(e.edges(),function(t){TIt(e,t)})}function TIt(e,t){var r=t.v,n=e.node(r).rank,i=t.w,a=e.node(i).rank,s=t.name,l=e.edge(t),u=l.labelRank;if(a!==n+1){e.removeEdge(t);var h,f,d;for(d=0,++n;n{"use strict";Ve();Mc();o(_nt,"run");o(TIt,"normalizeEdge");o(Lnt,"undo")});function i2(e){var t={};function r(n){var i=e.node(n);if(jt(t,n))return i.rank;t[n]=!0;var a=Il(Xt(e.outEdges(n),function(s){return r(s.w)-e.edge(s).minlen}));return(a===Number.POSITIVE_INFINITY||a===void 0||a===null)&&(a=0),i.rank=a}o(r,"dfs"),Et(e.sources(),r)}function qd(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var YT=R(()=>{"use strict";Ve();o(i2,"longestPath");o(qd,"slack")});function qT(e){var t=new yr({directed:!1}),r=e.nodes()[0],n=e.nodeCount();t.setNode(r,{});for(var i,a;kIt(t,e){"use strict";Ve();wa();YT();o(qT,"feasibleTree");o(kIt,"tightTree");o(EIt,"findMinSlackEdge");o(CIt,"shiftRanks")});var Rnt=R(()=>{"use strict"});var sR=R(()=>{"use strict"});var mWe,oR=R(()=>{"use strict";Ve();sR();mWe=Cs(1)});var Nnt=R(()=>{"use strict";oR()});var lR=R(()=>{"use strict"});var Mnt=R(()=>{"use strict";lR()});var SWe,Int=R(()=>{"use strict";Ve();SWe=Cs(1)});function cR(e){var t={},r={},n=[];function i(a){if(jt(r,a))throw new a2;jt(t,a)||(r[a]=!0,t[a]=!0,Et(e.predecessors(a),i),delete r[a],n.push(a))}if(o(i,"visit"),Et(e.sinks(),i),qD(t)!==e.nodeCount())throw new a2;return n}function a2(){}var uR=R(()=>{"use strict";Ve();cR.CycleException=a2;o(cR,"topsort");o(a2,"CycleException");a2.prototype=new Error});var Ont=R(()=>{"use strict";uR()});function XT(e,t,r){Le(t)||(t=[t]);var n=(e.isDirected()?e.successors:e.neighbors).bind(e),i=[],a={};return Et(t,function(s){if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);Pnt(e,s,r==="post",a,n,i)}),i}function Pnt(e,t,r,n,i,a){jt(n,t)||(n[t]=!0,r||a.push(t),Et(i(t),function(s){Pnt(e,s,r,n,i,a)}),r&&a.push(t))}var hR=R(()=>{"use strict";Ve();o(XT,"dfs");o(Pnt,"doDfs")});function fR(e,t){return XT(e,t,"post")}var Bnt=R(()=>{"use strict";hR();o(fR,"postorder")});function dR(e,t){return XT(e,t,"pre")}var Fnt=R(()=>{"use strict";hR();o(dR,"preorder")});var znt=R(()=>{"use strict";sR();UT()});var $nt=R(()=>{"use strict";Rnt();oR();Nnt();Mnt();Int();Ont();Bnt();Fnt();znt();lR();uR()});function af(e){e=pnt(e),i2(e);var t=qT(e);mR(t),pR(t,e);for(var r,n;r=Hnt(t);)n=Wnt(t,e,r),Ynt(t,e,r,n)}function pR(e,t){var r=fR(e,e.nodes());r=r.slice(0,r.length-1),Et(r,function(n){DIt(e,t,n)})}function DIt(e,t,r){var n=e.node(r),i=n.parent;e.edge(r,i).cutvalue=Vnt(e,t,r)}function Vnt(e,t,r){var n=e.node(r),i=n.parent,a=!0,s=t.edge(r,i),l=0;return s||(a=!1,s=t.edge(i,r)),l=s.weight,Et(t.nodeEdges(r),function(u){var h=u.v===r,f=h?u.w:u.v;if(f!==i){var d=h===a,p=t.edge(u).weight;if(l+=d?p:-p,NIt(e,r,f)){var m=e.edge(r,f).cutvalue;l+=d?-m:m}}}),l}function mR(e,t){arguments.length<2&&(t=e.nodes()[0]),Unt(e,{},1,t)}function Unt(e,t,r,n,i){var a=r,s=e.node(n);return t[n]=!0,Et(e.neighbors(n),function(l){jt(t,l)||(r=Unt(e,t,r,l,n))}),s.low=a,s.lim=r++,i?s.parent=i:delete s.parent,r}function Hnt(e){return rs(e.edges(),function(t){return e.edge(t).cutvalue<0})}function Wnt(e,t,r){var n=r.v,i=r.w;t.hasEdge(n,i)||(n=r.w,i=r.v);var a=e.node(n),s=e.node(i),l=a,u=!1;a.lim>s.lim&&(l=s,u=!0);var h=Yr(t.edges(),function(f){return u===Gnt(e,e.node(f.v),l)&&u!==Gnt(e,e.node(f.w),l)});return Ud(h,function(f){return qd(t,f)})}function Ynt(e,t,r,n){var i=r.v,a=r.w;e.removeEdge(i,a),e.setEdge(n.v,n.w,{}),mR(e),pR(e,t),RIt(e,t)}function RIt(e,t){var r=rs(e.nodes(),function(i){return!t.node(i).parent}),n=dR(e,r);n=n.slice(1),Et(n,function(i){var a=e.node(i).parent,s=t.edge(i,a),l=!1;s||(s=t.edge(a,i),l=!0),t.node(i).rank=t.node(a).rank+(l?s.minlen:-s.minlen)})}function NIt(e,t,r){return e.hasEdge(t,r)}function Gnt(e,t,r){return r.low<=t.lim&&t.lim<=r.lim}var qnt=R(()=>{"use strict";Ve();$nt();Mc();aR();YT();af.initLowLimValues=mR;af.initCutValues=pR;af.calcCutValue=Vnt;af.leaveEdge=Hnt;af.enterEdge=Wnt;af.exchangeEdges=Ynt;o(af,"networkSimplex");o(pR,"initCutValues");o(DIt,"assignCutValue");o(Vnt,"calcCutValue");o(mR,"initLowLimValues");o(Unt,"dfsAssignLowLim");o(Hnt,"leaveEdge");o(Wnt,"enterEdge");o(Ynt,"exchangeEdges");o(RIt,"updateRanks");o(NIt,"isTreeEdge");o(Gnt,"isDescendant")});function gR(e){switch(e.graph().ranker){case"network-simplex":Xnt(e);break;case"tight-tree":IIt(e);break;case"longest-path":MIt(e);break;default:Xnt(e)}}function IIt(e){i2(e),qT(e)}function Xnt(e){af(e)}var MIt,yR=R(()=>{"use strict";aR();qnt();YT();o(gR,"rank");MIt=i2;o(IIt,"tightTreeRanker");o(Xnt,"networkSimplexRanker")});function jnt(e){var t=Nc(e,"root",{},"_root"),r=OIt(e),n=Is(gr(r))-1,i=2*n+1;e.graph().nestingRoot=t,Et(e.edges(),function(s){e.edge(s).minlen*=i});var a=PIt(e)+1;Et(e.children(),function(s){Knt(e,t,i,a,n,r,s)}),e.graph().nodeRankFactor=i}function Knt(e,t,r,n,i,a,s){var l=e.children(s);if(!l.length){s!==t&&e.setEdge(t,s,{weight:0,minlen:r});return}var u=tR(e,"_bt"),h=tR(e,"_bb"),f=e.node(s);e.setParent(u,s),f.borderTop=u,e.setParent(h,s),f.borderBottom=h,Et(l,function(d){Knt(e,t,r,n,i,a,d);var p=e.node(d),m=p.borderTop?p.borderTop:d,g=p.borderBottom?p.borderBottom:d,y=p.borderTop?n:2*n,v=m!==g?1:i-a[s]+1;e.setEdge(u,m,{weight:y,minlen:v,nestingEdge:!0}),e.setEdge(g,h,{weight:y,minlen:v,nestingEdge:!0})}),e.parent(s)||e.setEdge(t,u,{weight:0,minlen:i+a[s]})}function OIt(e){var t={};function r(n,i){var a=e.children(n);a&&a.length&&Et(a,function(s){r(s,i+1)}),t[n]=i}return o(r,"dfs"),Et(e.children(),function(n){r(n,1)}),t}function PIt(e){return qr(e.edges(),function(t,r){return t+e.edge(r).weight},0)}function Qnt(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,Et(e.edges(),function(r){var n=e.edge(r);n.nestingEdge&&e.removeEdge(r)})}var Znt=R(()=>{"use strict";Ve();Mc();o(jnt,"run");o(Knt,"dfs");o(OIt,"treeDepths");o(PIt,"sumWeights");o(Qnt,"cleanup")});function Jnt(e,t,r){var n={},i;Et(r,function(a){for(var s=e.parent(a),l,u;s;){if(l=e.parent(s),l?(u=n[l],n[l]=s):(u=i,i=s),u&&u!==s){t.setEdge(u,s);return}s=l}})}var tit=R(()=>{"use strict";Ve();o(Jnt,"addSubgraphConstraints")});function eit(e,t,r){var n=FIt(e),i=new yr({compound:!0}).setGraph({root:n}).setDefaultNodeLabel(function(a){return e.node(a)});return Et(e.nodes(),function(a){var s=e.node(a),l=e.parent(a);(s.rank===t||s.minRank<=t&&t<=s.maxRank)&&(i.setNode(a),i.setParent(a,l||n),Et(e[r](a),function(u){var h=u.v===a?u.w:u.v,f=i.edge(h,a),d=fr(f)?0:f.weight;i.setEdge(h,a,{weight:e.edge(u).weight+d})}),jt(s,"minRank")&&i.setNode(a,{borderLeft:s.borderLeft[t],borderRight:s.borderRight[t]}))}),i}function FIt(e){for(var t;e.hasNode(t=Wd("_root")););return t}var rit=R(()=>{"use strict";Ve();wa();o(eit,"buildLayerGraph");o(FIt,"createRootNode")});function nit(e,t){for(var r=0,n=1;n0;)f%2&&(d+=l[f+1]),f=f-1>>1,l[f]+=h.weight;u+=h.weight*d})),u}var iit=R(()=>{"use strict";Ve();o(nit,"crossCount");o(zIt,"twoLayerCrossCount")});function ait(e){var t={},r=Yr(e.nodes(),function(l){return!e.children(l).length}),n=Is(Xt(r,function(l){return e.node(l).rank})),i=Xt(Ho(n+1),function(){return[]});function a(l){if(!jt(t,l)){t[l]=!0;var u=e.node(l);i[u.rank].push(l),Et(e.successors(l),a)}}o(a,"dfs");var s=Rc(r,function(l){return e.node(l).rank});return Et(s,a),i}var sit=R(()=>{"use strict";Ve();o(ait,"initOrder")});function oit(e,t){return Xt(t,function(r){var n=e.inEdges(r);if(n.length){var i=qr(n,function(a,s){var l=e.edge(s),u=e.node(s.v);return{sum:a.sum+l.weight*u.order,weight:a.weight+l.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}var lit=R(()=>{"use strict";Ve();o(oit,"barycenter")});function cit(e,t){var r={};Et(e,function(i,a){var s=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};fr(i.barycenter)||(s.barycenter=i.barycenter,s.weight=i.weight)}),Et(t.edges(),function(i){var a=r[i.v],s=r[i.w];!fr(a)&&!fr(s)&&(s.indegree++,a.out.push(r[i.w]))});var n=Yr(r,function(i){return!i.indegree});return $It(n)}function $It(e){var t=[];function r(a){return function(s){s.merged||(fr(s.barycenter)||fr(a.barycenter)||s.barycenter>=a.barycenter)&&GIt(a,s)}}o(r,"handleIn");function n(a){return function(s){s.in.push(a),--s.indegree===0&&e.push(s)}}for(o(n,"handleOut");e.length;){var i=e.pop();t.push(i),Et(i.in.reverse(),r(i)),Et(i.out,n(i))}return Xt(Yr(t,function(a){return!a.merged}),function(a){return Hd(a,["vs","i","barycenter","weight"])})}function GIt(e,t){var r=0,n=0;e.weight&&(r+=e.barycenter*e.weight,n+=e.weight),t.weight&&(r+=t.barycenter*t.weight,n+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=r/n,e.weight=n,e.i=Math.min(t.i,e.i),t.merged=!0}var uit=R(()=>{"use strict";Ve();o(cit,"resolveConflicts");o($It,"doResolveConflicts");o(GIt,"mergeEntries")});function fit(e,t){var r=ynt(e,function(f){return jt(f,"barycenter")}),n=r.lhs,i=Rc(r.rhs,function(f){return-f.i}),a=[],s=0,l=0,u=0;n.sort(VIt(!!t)),u=hit(a,i,u),Et(n,function(f){u+=f.vs.length,a.push(f.vs),s+=f.barycenter*f.weight,l+=f.weight,u=hit(a,i,u)});var h={vs:Wr(a)};return l&&(h.barycenter=s/l,h.weight=l),h}function hit(e,t,r){for(var n;t.length&&(n=xa(t)).i<=r;)t.pop(),e.push(n.vs),r++;return r}function VIt(e){return function(t,r){return t.barycenterr.barycenter?1:e?r.i-t.i:t.i-r.i}}var dit=R(()=>{"use strict";Ve();Mc();o(fit,"sort");o(hit,"consumeUnsortable");o(VIt,"compareWithBias")});function vR(e,t,r,n){var i=e.children(t),a=e.node(t),s=a?a.borderLeft:void 0,l=a?a.borderRight:void 0,u={};s&&(i=Yr(i,function(g){return g!==s&&g!==l}));var h=oit(e,i);Et(h,function(g){if(e.children(g.v).length){var y=vR(e,g.v,r,n);u[g.v]=y,jt(y,"barycenter")&&HIt(g,y)}});var f=cit(h,r);UIt(f,u);var d=fit(f,n);if(s&&(d.vs=Wr([s,d.vs,l]),e.predecessors(s).length)){var p=e.node(e.predecessors(s)[0]),m=e.node(e.predecessors(l)[0]);jt(d,"barycenter")||(d.barycenter=0,d.weight=0),d.barycenter=(d.barycenter*d.weight+p.order+m.order)/(d.weight+2),d.weight+=2}return d}function UIt(e,t){Et(e,function(r){r.vs=Wr(r.vs.map(function(n){return t[n]?t[n].vs:n}))})}function HIt(e,t){fr(e.barycenter)?(e.barycenter=t.barycenter,e.weight=t.weight):(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight)}var pit=R(()=>{"use strict";Ve();lit();uit();dit();o(vR,"sortSubgraph");o(UIt,"expandSubgraphs");o(HIt,"mergeBarycenters")});function yit(e){var t=eR(e),r=mit(e,Ho(1,t+1),"inEdges"),n=mit(e,Ho(t-1,-1,-1),"outEdges"),i=ait(e);git(e,i);for(var a=Number.POSITIVE_INFINITY,s,l=0,u=0;u<4;++l,++u){WIt(l%2?r:n,l%4>=2),i=rf(e);var h=nit(e,i);h{"use strict";Ve();wa();Mc();tit();rit();iit();sit();pit();o(yit,"order");o(mit,"buildLayerGraphs");o(WIt,"sweepLayerGraphs");o(git,"assignOrder")});function xit(e){var t=qIt(e);Et(e.graph().dummyChains,function(r){for(var n=e.node(r),i=n.edgeObj,a=YIt(e,t,i.v,i.w),s=a.path,l=a.lca,u=0,h=s[u],f=!0;r!==i.w;){if(n=e.node(r),f){for(;(h=s[u])!==l&&e.node(h).maxRanks||l>t[u].lim));for(h=u,u=n;(u=e.parent(u))!==h;)a.push(u);return{path:i.concat(a.reverse()),lca:h}}function qIt(e){var t={},r=0;function n(i){var a=r;Et(e.children(i),n),t[i]={low:a,lim:r++}}return o(n,"dfs"),Et(e.children(),n),t}var bit=R(()=>{"use strict";Ve();o(xit,"parentDummyChains");o(YIt,"findPath");o(qIt,"postorder")});function XIt(e,t){var r={};function n(i,a){var s=0,l=0,u=i.length,h=xa(a);return Et(a,function(f,d){var p=KIt(e,f),m=p?e.node(p).order:u;(p||f===h)&&(Et(a.slice(l,d+1),function(g){Et(e.predecessors(g),function(y){var v=e.node(y),x=v.order;(xh)&&wit(r,p,f)})})}o(n,"scan");function i(a,s){var l=-1,u,h=0;return Et(s,function(f,d){if(e.node(f).dummy==="border"){var p=e.predecessors(f);p.length&&(u=e.node(p[0]).order,n(s,h,d,l,u),h=d,l=u)}n(s,h,s.length,u,a.length)}),s}return o(i,"visitLayer"),qr(t,i),r}function KIt(e,t){if(e.node(t).dummy)return rs(e.predecessors(t),function(r){return e.node(r).dummy})}function wit(e,t,r){if(t>r){var n=t;t=r,r=n}var i=e[t];i||(e[t]=i={}),i[r]=!0}function QIt(e,t,r){if(t>r){var n=t;t=r,r=n}return jt(e[t],r)}function ZIt(e,t,r,n){var i={},a={},s={};return Et(t,function(l){Et(l,function(u,h){i[u]=u,a[u]=u,s[u]=h})}),Et(t,function(l){var u=-1;Et(l,function(h){var f=n(h);if(f.length){f=Rc(f,function(y){return s[y]});for(var d=(f.length-1)/2,p=Math.floor(d),m=Math.ceil(d);p<=m;++p){var g=f[p];a[h]===h&&u{"use strict";Ve();wa();Mc();o(XIt,"findType1Conflicts");o(jIt,"findType2Conflicts");o(KIt,"findOtherInnerSegmentNode");o(wit,"addConflict");o(QIt,"hasConflict");o(ZIt,"verticalAlignment");o(JIt,"horizontalCompaction");o(tOt,"buildBlockGraph");o(eOt,"findSmallestWidthAlignment");o(rOt,"alignCoordinates");o(nOt,"balance");o(Tit,"positionX");o(iOt,"sep");o(aOt,"width")});function Eit(e){e=WT(e),sOt(e),FD(Tit(e),function(t,r){e.node(r).x=t})}function sOt(e){var t=rf(e),r=e.graph().ranksep,n=0;Et(t,function(i){var a=Is(Xt(i,function(s){return e.node(s).height}));Et(i,function(s){e.node(s).y=n+a/2}),n+=a+r})}var Cit=R(()=>{"use strict";Ve();Mc();kit();o(Eit,"position");o(sOt,"positionY")});function co(e,t){var r=t&&t.debugTiming?vnt:xnt;r("layout",function(){var n=r(" buildLayoutGraph",function(){return yOt(e)});r(" runLayout",function(){oOt(n,r)}),r(" updateInputGraph",function(){lOt(e,n)})})}function oOt(e,t){t(" makeSpaceForEdgeLabels",function(){vOt(e)}),t(" removeSelfEdges",function(){AOt(e)}),t(" acyclic",function(){hnt(e)}),t(" nestingGraph.run",function(){jnt(e)}),t(" rank",function(){gR(WT(e))}),t(" injectEdgeLabelProxies",function(){xOt(e)}),t(" removeEmptyRanks",function(){gnt(e)}),t(" nestingGraph.cleanup",function(){Qnt(e)}),t(" normalizeRanks",function(){mnt(e)}),t(" assignRankMinMax",function(){bOt(e)}),t(" removeEdgeLabelProxies",function(){wOt(e)}),t(" normalize.run",function(){_nt(e)}),t(" parentDummyChains",function(){xit(e)}),t(" addBorderSegments",function(){wnt(e)}),t(" order",function(){yit(e)}),t(" insertSelfEdges",function(){_Ot(e)}),t(" adjustCoordinateSystem",function(){Ent(e)}),t(" position",function(){Eit(e)}),t(" positionSelfEdges",function(){LOt(e)}),t(" removeBorderNodes",function(){SOt(e)}),t(" normalize.undo",function(){Lnt(e)}),t(" fixupEdgeLabelCoords",function(){EOt(e)}),t(" undoCoordinateSystem",function(){Cnt(e)}),t(" translateGraph",function(){TOt(e)}),t(" assignNodeIntersects",function(){kOt(e)}),t(" reversePoints",function(){COt(e)}),t(" acyclic.undo",function(){fnt(e)})}function lOt(e,t){Et(e.nodes(),function(r){var n=e.node(r),i=t.node(r);n&&(n.x=i.x,n.y=i.y,t.children(r).length&&(n.width=i.width,n.height=i.height))}),Et(e.edges(),function(r){var n=e.edge(r),i=t.edge(r);n.points=i.points,jt(i,"x")&&(n.x=i.x,n.y=i.y)}),e.graph().width=t.graph().width,e.graph().height=t.graph().height}function yOt(e){var t=new yr({multigraph:!0,compound:!0}),r=bR(e.graph());return t.setGraph(Gh({},uOt,xR(r,cOt),Hd(r,hOt))),Et(e.nodes(),function(n){var i=bR(e.node(n));t.setNode(n,Jh(xR(i,fOt),dOt)),t.setParent(n,e.parent(n))}),Et(e.edges(),function(n){var i=bR(e.edge(n));t.setEdge(n,Gh({},mOt,xR(i,pOt),Hd(i,gOt)))}),t}function vOt(e){var t=e.graph();t.ranksep/=2,Et(e.edges(),function(r){var n=e.edge(r);n.minlen*=2,n.labelpos.toLowerCase()!=="c"&&(t.rankdir==="TB"||t.rankdir==="BT"?n.width+=n.labeloffset:n.height+=n.labeloffset)})}function xOt(e){Et(e.edges(),function(t){var r=e.edge(t);if(r.width&&r.height){var n=e.node(t.v),i=e.node(t.w),a={rank:(i.rank-n.rank)/2+n.rank,e:t};Nc(e,"edge-proxy",a,"_ep")}})}function bOt(e){var t=0;Et(e.nodes(),function(r){var n=e.node(r);n.borderTop&&(n.minRank=e.node(n.borderTop).rank,n.maxRank=e.node(n.borderBottom).rank,t=Is(t,n.maxRank))}),e.graph().maxRank=t}function wOt(e){Et(e.nodes(),function(t){var r=e.node(t);r.dummy==="edge-proxy"&&(e.edge(r.e).labelRank=r.rank,e.removeNode(t))})}function TOt(e){var t=Number.POSITIVE_INFINITY,r=0,n=Number.POSITIVE_INFINITY,i=0,a=e.graph(),s=a.marginx||0,l=a.marginy||0;function u(h){var f=h.x,d=h.y,p=h.width,m=h.height;t=Math.min(t,f-p/2),r=Math.max(r,f+p/2),n=Math.min(n,d-m/2),i=Math.max(i,d+m/2)}o(u,"getExtremes"),Et(e.nodes(),function(h){u(e.node(h))}),Et(e.edges(),function(h){var f=e.edge(h);jt(f,"x")&&u(f)}),t-=s,n-=l,Et(e.nodes(),function(h){var f=e.node(h);f.x-=t,f.y-=n}),Et(e.edges(),function(h){var f=e.edge(h);Et(f.points,function(d){d.x-=t,d.y-=n}),jt(f,"x")&&(f.x-=t),jt(f,"y")&&(f.y-=n)}),a.width=r-t+s,a.height=i-n+l}function kOt(e){Et(e.edges(),function(t){var r=e.edge(t),n=e.node(t.v),i=e.node(t.w),a,s;r.points?(a=r.points[0],s=r.points[r.points.length-1]):(r.points=[],a=i,s=n),r.points.unshift(JD(n,a)),r.points.push(JD(i,s))})}function EOt(e){Et(e.edges(),function(t){var r=e.edge(t);if(jt(r,"x"))switch((r.labelpos==="l"||r.labelpos==="r")&&(r.width-=r.labeloffset),r.labelpos){case"l":r.x-=r.width/2+r.labeloffset;break;case"r":r.x+=r.width/2+r.labeloffset;break}})}function COt(e){Et(e.edges(),function(t){var r=e.edge(t);r.reversed&&r.points.reverse()})}function SOt(e){Et(e.nodes(),function(t){if(e.children(t).length){var r=e.node(t),n=e.node(r.borderTop),i=e.node(r.borderBottom),a=e.node(xa(r.borderLeft)),s=e.node(xa(r.borderRight));r.width=Math.abs(s.x-a.x),r.height=Math.abs(i.y-n.y),r.x=a.x+r.width/2,r.y=n.y+r.height/2}}),Et(e.nodes(),function(t){e.node(t).dummy==="border"&&e.removeNode(t)})}function AOt(e){Et(e.edges(),function(t){if(t.v===t.w){var r=e.node(t.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}})}function _Ot(e){var t=rf(e);Et(t,function(r){var n=0;Et(r,function(i,a){var s=e.node(i);s.order=a+n,Et(s.selfEdges,function(l){Nc(e,"selfedge",{width:l.label.width,height:l.label.height,rank:s.rank,order:a+ ++n,e:l.e,label:l.label},"_se")}),delete s.selfEdges})})}function LOt(e){Et(e.nodes(),function(t){var r=e.node(t);if(r.dummy==="selfedge"){var n=e.node(r.e.v),i=n.x+n.width/2,a=n.y,s=r.x-i,l=n.height/2;e.setEdge(r.e,r.label),e.removeNode(t),r.label.points=[{x:i+2*s/3,y:a-l},{x:i+5*s/6,y:a-l},{x:i+s,y:a},{x:i+5*s/6,y:a+l},{x:i+2*s/3,y:a+l}],r.label.x=r.x,r.label.y=r.y}})}function xR(e,t){return Vd(Hd(e,t),Number)}function bR(e){var t={};return Et(e,function(r,n){t[n.toLowerCase()]=r}),t}var cOt,uOt,hOt,fOt,dOt,pOt,mOt,gOt,Sit=R(()=>{"use strict";Ve();wa();Tnt();Ant();ZD();iR();yR();Znt();vit();bit();Cit();Mc();o(co,"layout");o(oOt,"runLayout");o(lOt,"updateInputGraph");cOt=["nodesep","edgesep","ranksep","marginx","marginy"],uOt={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},hOt=["acyclicer","ranker","rankdir","align"],fOt=["width","height"],dOt={width:0,height:0},pOt=["minlen","weight","width","height","labeloffset"],mOt={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},gOt=["labelpos"];o(yOt,"buildLayoutGraph");o(vOt,"makeSpaceForEdgeLabels");o(xOt,"injectEdgeLabelProxies");o(bOt,"assignRankMinMax");o(wOt,"removeEdgeLabelProxies");o(TOt,"translateGraph");o(kOt,"assignNodeIntersects");o(EOt,"fixupEdgeLabelCoords");o(COt,"reversePointsForReversedEdges");o(SOt,"removeBorderNodes");o(AOt,"removeSelfEdges");o(_Ot,"insertSelfEdges");o(LOt,"positionSelfEdges");o(xR,"selectNumberAttrs");o(bR,"canonicalize")});var Xd=R(()=>{"use strict";ZD();Sit();iR();yR()});function Yn(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:DOt(e),edges:ROt(e)};return fr(e.graph())||(t.value=rn(e.graph())),t}function DOt(e){return Xt(e.nodes(),function(t){var r=e.node(t),n=e.parent(t),i={v:t};return fr(r)||(i.value=r),fr(n)||(i.parent=n),i})}function ROt(e){return Xt(e.edges(),function(t){var r=e.edge(t),n={v:t.v,w:t.w};return fr(t.name)||(n.name=t.name),fr(r)||(n.value=r),n})}var s2=R(()=>{"use strict";Ve();UT();o(Yn,"write");o(DOt,"writeNodes");o(ROt,"writeEdges")});var vr,jd,_it,Lit,KT,NOt,Dit,Rit,MOt,Zm,Ait,Nit,Mit,Iit,Oit,Pit=R(()=>{"use strict";ce();wa();s2();vr=new Map,jd=new Map,_it=new Map,Lit=o(()=>{jd.clear(),_it.clear(),vr.clear()},"clear"),KT=o((e,t)=>{let r=jd.get(t)||[];return V.trace("In isDescendant",t," ",e," = ",r.includes(e)),r.includes(e)},"isDescendant"),NOt=o((e,t)=>{let r=jd.get(t)||[];return V.info("Descendants of ",t," is ",r),V.info("Edge is ",e),e.v===t||e.w===t?!1:r?r.includes(e.v)||KT(e.v,t)||KT(e.w,t)||r.includes(e.w):(V.debug("Tilt, ",t,",not in descendants"),!1)},"edgeInCluster"),Dit=o((e,t,r,n)=>{V.warn("Copying children of ",e,"root",n,"data",t.node(e),n);let i=t.children(e)||[];e!==n&&i.push(e),V.warn("Copying (nodes) clusterId",e,"nodes",i),i.forEach(a=>{if(t.children(a).length>0)Dit(a,t,r,n);else{let s=t.node(a);V.info("cp ",a," to ",n," with parent ",e),r.setNode(a,s),n!==t.parent(a)&&(V.warn("Setting parent",a,t.parent(a)),r.setParent(a,t.parent(a))),e!==n&&a!==e?(V.debug("Setting parent",a,e),r.setParent(a,e)):(V.info("In copy ",e,"root",n,"data",t.node(e),n),V.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==n,"node!==clusterId",a!==e));let l=t.edges(a);V.debug("Copying Edges",l),l.forEach(u=>{V.info("Edge",u);let h=t.edge(u.v,u.w,u.name);V.info("Edge data",h,n);try{NOt(u,n)?(V.info("Copying as ",u.v,u.w,h,u.name),r.setEdge(u.v,u.w,h,u.name),V.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):V.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",n," clusterId:",e)}catch(f){V.error(f)}})}V.debug("Removing node",a),t.removeNode(a)})},"copy"),Rit=o((e,t)=>{let r=t.children(e),n=[...r];for(let i of r)_it.set(i,e),n=[...n,...Rit(i,t)];return n},"extractDescendants"),MOt=o((e,t,r)=>{let n=e.edges().filter(u=>u.v===t||u.w===t),i=e.edges().filter(u=>u.v===r||u.w===r),a=n.map(u=>({v:u.v===t?r:u.v,w:u.w===t?t:u.w})),s=i.map(u=>({v:u.v,w:u.w}));return a.filter(u=>s.some(h=>u.v===h.v&&u.w===h.w))},"findCommonEdges"),Zm=o((e,t,r)=>{let n=t.children(e);if(V.trace("Searching children of id ",e,n),n.length<1)return e;let i;for(let a of n){let s=Zm(a,t,r),l=MOt(t,r,s);if(s)if(l.length>0)i=s;else return s}return i},"findNonClusterChild"),Ait=o(e=>!vr.has(e)||!vr.get(e).externalConnections?e:vr.has(e)?vr.get(e).id:e,"getAnchorId"),Nit=o((e,t)=>{if(!e||t>10){V.debug("Opting out, no graph ");return}else V.debug("Opting in, graph ");e.nodes().forEach(function(r){e.children(r).length>0&&(V.warn("Cluster identified",r," Replacement id in edges: ",Zm(r,e,r)),jd.set(r,Rit(r,e)),vr.set(r,{id:Zm(r,e,r),clusterData:e.node(r)}))}),e.nodes().forEach(function(r){let n=e.children(r),i=e.edges();n.length>0?(V.debug("Cluster identified",r,jd),i.forEach(a=>{let s=KT(a.v,r),l=KT(a.w,r);s^l&&(V.warn("Edge: ",a," leaves cluster ",r),V.warn("Descendants of XXX ",r,": ",jd.get(r)),vr.get(r).externalConnections=!0)})):V.debug("Not a cluster ",r,jd)});for(let r of vr.keys()){let n=vr.get(r).id,i=e.parent(n);i!==r&&vr.has(i)&&!vr.get(i).externalConnections&&(vr.get(r).id=i)}e.edges().forEach(function(r){let n=e.edge(r);V.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),V.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(e.edge(r)));let i=r.v,a=r.w;if(V.warn("Fix XXX",vr,"ids:",r.v,r.w,"Translating: ",vr.get(r.v)," --- ",vr.get(r.w)),vr.get(r.v)||vr.get(r.w)){if(V.warn("Fixing and trying - removing XXX",r.v,r.w,r.name),i=Ait(r.v),a=Ait(r.w),e.removeEdge(r.v,r.w,r.name),i!==r.v){let s=e.parent(i);vr.get(s).externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){let s=e.parent(a);vr.get(s).externalConnections=!0,n.toCluster=r.w}V.warn("Fix Replacing with XXX",i,a,r.name),e.setEdge(i,a,n,r.name)}}),V.warn("Adjusted Graph",Yn(e)),Mit(e,0),V.trace(vr)},"adjustClustersAndEdges"),Mit=o((e,t)=>{if(V.warn("extractor - ",t,Yn(e),e.children("D")),t>10){V.error("Bailing out");return}let r=e.nodes(),n=!1;for(let i of r){let a=e.children(i);n=n||a.length>0}if(!n){V.debug("Done, no node has children",e.nodes());return}V.debug("Nodes = ",r,t);for(let i of r)if(V.debug("Extracting node",i,vr,vr.has(i)&&!vr.get(i).externalConnections,!e.parent(i),e.node(i),e.children("D")," Depth ",t),!vr.has(i))V.debug("Not a cluster",i,t);else if(!vr.get(i).externalConnections&&e.children(i)&&e.children(i).length>0){V.warn("Cluster without external connections, without a parent and with children",i,t);let s=e.graph().rankdir==="TB"?"LR":"TB";vr.get(i)?.clusterData?.dir&&(s=vr.get(i).clusterData.dir,V.warn("Fixing dir",vr.get(i).clusterData.dir,s));let l=new yr({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});V.warn("Old graph before copy",Yn(e)),Dit(i,e,l,i),e.setNode(i,{clusterNode:!0,id:i,clusterData:vr.get(i).clusterData,label:vr.get(i).label,graph:l}),V.warn("New graph after copy node: (",i,")",Yn(l)),V.debug("Old graph after copy",Yn(e))}else V.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!vr.get(i).externalConnections," no parent: ",!e.parent(i)," children ",e.children(i)&&e.children(i).length>0,e.children("D"),t),V.debug(vr);r=e.nodes(),V.warn("New list of nodes",r);for(let i of r){let a=e.node(i);V.warn(" Now next level",i,a),a?.clusterNode&&Mit(a.graph,t+1)}},"extractor"),Iit=o((e,t)=>{if(t.length===0)return[];let r=Object.assign([],t);return t.forEach(n=>{let i=e.children(n),a=Iit(e,i);r=[...r,...a]}),r},"sorter"),Oit=o(e=>Iit(e,e.children()),"sortNodesByHierarchy")});var Fit={};xr(Fit,{render:()=>IOt});var Bit,IOt,zit=R(()=>{"use strict";Xd();s2();wa();XL();Be();Pit();sD();WL();qL();ce();Nd();Ue();Bit=o(async(e,t,r,n,i,a)=>{V.warn("Graph in recursive render:XAX",Yn(t),i);let s=t.graph().rankdir;V.trace("Dir in recursive render - dir:",s);let l=e.insert("g").attr("class","root");t.nodes()?V.info("Recursive render XXX",t.nodes()):V.info("No nodes found for",t),t.edges().length>0&&V.info("Recursive edges",t.edge(t.edges()[0]));let u=l.insert("g").attr("class","clusters"),h=l.insert("g").attr("class","edgePaths"),f=l.insert("g").attr("class","edgeLabels"),d=l.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(y){let v=t.node(y);if(i!==void 0){let x=JSON.parse(JSON.stringify(i.clusterData));V.trace(`Setting data for parent cluster XXX Node.id = `,y,` data=`,x.height,` Parent cluster`,i.height),t.setNode(i.id,x),t.parent(y)||(V.trace("Setting parent",y,i.id),t.setParent(y,i.id,x))}if(V.info("(Insert) Node XXX"+y+": "+JSON.stringify(t.node(y))),v?.clusterNode){V.info("Cluster identified XBX",y,v.width,t.node(y));let{ranksep:x,nodesep:b}=t.graph();v.graph.setGraph({...v.graph.graph(),ranksep:x+25,nodesep:b});let w=await Bit(d,v.graph,r,n,t.node(y),a),S=w.elem;Qt(v,S),v.diff=w.diff||0,V.info("New compound node after recursive render XAX",y,"width",v.width,"height",v.height),eJ(S,v)}else t.children(y).length>0?(V.trace("Cluster - the non recursive path XBX",y,v.id,v,v.width,"Graph:",t),V.trace(Zm(v.id,t)),vr.set(v.id,{id:Zm(v.id,t),node:v})):(V.trace("Node - the non recursive path XAX",y,d,t.node(y),s),await qw(d,t.node(y),{config:a,dir:s}))})),await o(async()=>{let y=t.edges().map(async function(v){let x=t.edge(v.v,v.w,v.name);V.info("Edge "+v.v+" -> "+v.w+": "+JSON.stringify(v)),V.info("Edge "+v.v+" -> "+v.w+": ",v," ",JSON.stringify(t.edge(v))),V.info("Fix",vr,"ids:",v.v,v.w,"Translating: ",vr.get(v.v),vr.get(v.w)),await Tw(f,x)});await Promise.all(y)},"processEdges")(),V.info("Graph before layout:",JSON.stringify(Yn(t))),V.info("############################################# XXX"),V.info("### Layout ### XXX"),V.info("############################################# XXX"),co(t),V.info("Graph after layout:",JSON.stringify(Yn(t)));let m=0,{subGraphTitleTotalMargin:g}=io(a);return await Promise.all(Oit(t).map(async function(y){let v=t.node(y);if(V.info("Position XBX => "+y+": ("+v.x,","+v.y,") width: ",v.width," height: ",v.height),v?.clusterNode)v.y+=g,V.info("A tainted cluster node XBX1",y,v.id,v.width,v.height,v.x,v.y,t.parent(y)),vr.get(v.id).node=v,aD(v);else if(t.children(y).length>0){V.info("A pure cluster node XBX1",y,v.id,v.x,v.y,v.width,v.height,t.parent(y)),v.height+=g,t.node(v.parentId);let x=v?.padding/2||0,b=v?.labelBBox?.height||0,w=b-x||0;V.debug("OffsetY",w,"labelHeight",b,"halfPadding",x),await gw(u,v),vr.get(v.id).node=v}else{let x=t.node(v.parentId);v.y+=g/2,V.info("A regular node XBX1 - using the padding",v.id,"parent",v.parentId,v.width,v.height,v.x,v.y,"offsetY",v.offsetY,"parent",x,x?.offsetY,v),aD(v)}})),t.edges().forEach(function(y){let v=t.edge(y);V.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(v),v),v.points.forEach(S=>S.y+=g/2);let x=t.node(y.v);var b=t.node(y.w);let w=Ew(h,v,vr,r,x,b,n);kw(v,w)}),t.nodes().forEach(function(y){let v=t.node(y);V.info(y,v.type,v.diff),v.isGroup&&(m=v.diff)}),V.warn("Returning from recursive render XAX",l,m),{elem:l,diff:m}},"recursiveRender"),IOt=o(async(e,t)=>{let r=new yr({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.config?.flowchart?.nodeSpacing||e.nodeSpacing,ranksep:e.config?.rankSpacing||e.config?.flowchart?.rankSpacing||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),n=t.select("g");Cw(n,e.markers,e.type,e.diagramId),rJ(),_Q(),TQ(),Lit(),e.nodes.forEach(a=>{r.setNode(a.id,{...a}),a.parentId&&r.setParent(a.id,a.parentId)}),V.debug("Edges:",e.edges),e.edges.forEach(a=>{if(a.start===a.end){let s=a.start,l=s+"---"+s+"---1",u=s+"---"+s+"---2",h=r.node(s);r.setNode(l,{domId:l,id:l,parentId:h.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),r.setParent(l,h.parentId),r.setNode(u,{domId:u,id:u,parentId:h.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),r.setParent(u,h.parentId);let f=structuredClone(a),d=structuredClone(a),p=structuredClone(a);f.label="",f.arrowTypeEnd="none",f.id=s+"-cyclic-special-1",d.arrowTypeEnd="none",d.id=s+"-cyclic-special-mid",p.label="",h.isGroup&&(f.fromCluster=s,p.toCluster=s),p.id=s+"-cyclic-special-2",r.setEdge(s,l,f,s+"-cyclic-special-0"),r.setEdge(l,u,d,s+"-cyclic-special-1"),r.setEdge(u,s,p,s+"-cyc{"use strict";iJ();ce();o2={},wR=o(e=>{for(let t of e)o2[t.name]=t},"registerLayoutLoaders"),OOt=o(()=>{wR([{name:"dagre",loader:o(async()=>await Promise.resolve().then(()=>(zit(),Fit)),"loader")}])},"registerDefaultLayoutLoaders");OOt();QT=o(async(e,t)=>{if(!(e.layoutAlgorithm in o2))throw new Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);let r=o2[e.layoutAlgorithm];return(await r.loader()).render(e,t,nJ,{algorithm:r.algorithm})},"render"),$it=o((e="",{fallback:t="dagre"}={})=>{if(e in o2)return e;if(t in o2)return V.warn(`Layout algorithm ${e} is not registered. Using ${t} as fallback.`),t;throw new Error(`Both layout algorithms ${e} and ${t} are not registered.`)},"getRegisteredLayoutAlgorithm")});var JT,POt,BOt,TR=R(()=>{"use strict";Jn();ce();JT=o((e,t,r,n)=>{e.attr("class",r);let{width:i,height:a,x:s,y:l}=POt(e,t);Pr(e,a,i,n);let u=BOt(s,l,i,a,t);e.attr("viewBox",u),V.debug(`viewBox configured: ${u} with padding: ${t}`)},"setupViewPortForSVG"),POt=o((e,t)=>{let r=e.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:r.width+t*2,height:r.height+t*2,x:r.x,y:r.y}},"calculateDimensionsWithPadding"),BOt=o((e,t,r,n,i)=>`${e-i} ${t-i} ${r} ${n}`,"createViewBox")});var FOt,zOt,Git,Vit=R(()=>{"use strict";ur();Ue();ce();pL();ZT();TR();_r();dL();FOt=o(function(e,t){return t.db.getClasses()},"getClasses"),zOt=o(async function(e,t,r,n){V.info("REF0:"),V.info("Drawing state diagram (v2)",t);let{securityLevel:i,flowchart:a,layout:s}=pt(),l;i==="sandbox"&&(l=Gt("#i"+t));let u=i==="sandbox"?l.nodes()[0].contentDocument:document;V.debug("Before getData: ");let h=n.db.getData();V.debug("Data: ",h);let f=rw(t,i),d=fL();h.type=n.type,h.layoutAlgorithm=$it(s),h.layoutAlgorithm==="dagre"&&s==="elk"&&V.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."),h.direction=d,h.nodeSpacing=a?.nodeSpacing||50,h.rankSpacing=a?.rankSpacing||50,h.markers=["point","circle","cross"],h.diagramId=t,V.debug("REF1:",h),await QT(h,f);let p=h.config.flowchart?.diagramPadding??8;Oe.insertTitle(f,"flowchartTitleText",a?.titleTopMargin||0,n.db.getDiagramTitle()),JT(f,p,"flowchart",a?.useMaxWidth||!1);for(let m of h.nodes){let g=Gt(`#${t} [id="${m.id}"]`);if(!g||!m.link)continue;let y=u.createElementNS("http://www.w3.org/2000/svg","a");y.setAttributeNS("http://www.w3.org/2000/svg","class",m.cssClasses),y.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),i==="sandbox"?y.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):m.linkTarget&&y.setAttributeNS("http://www.w3.org/2000/svg","target",m.linkTarget);let v=g.insert(function(){return y},":first-child"),x=g.select(".label-container");x&&v.append(function(){return x.node()});let b=g.select(".label");b&&v.append(function(){return b.node()})}},"draw"),Git={getClasses:FOt,draw:zOt}});var kR,Uit,Hit=R(()=>{"use strict";kR=function(){var e=o(function(wi,Ae,Ie,we){for(Ie=Ie||{},we=wi.length;we--;Ie[wi[we]]=Ae);return Ie},"o"),t=[1,4],r=[1,3],n=[1,5],i=[1,8,9,10,11,27,34,36,38,44,60,83,84,85,86,87,88,101,104,105,108,110,113,114,115,120,121,122,123],a=[2,2],s=[1,13],l=[1,14],u=[1,15],h=[1,16],f=[1,23],d=[1,25],p=[1,26],m=[1,27],g=[1,49],y=[1,48],v=[1,29],x=[1,30],b=[1,31],w=[1,32],S=[1,33],T=[1,44],E=[1,46],_=[1,42],A=[1,47],L=[1,43],M=[1,50],N=[1,45],k=[1,51],I=[1,52],C=[1,34],O=[1,35],D=[1,36],P=[1,37],F=[1,57],B=[1,8,9,10,11,27,32,34,36,38,44,60,83,84,85,86,87,88,101,104,105,108,110,113,114,115,120,121,122,123],G=[1,61],z=[1,60],W=[1,62],Q=[8,9,11,75,77],j=[1,77],at=[1,90],X=[1,95],J=[1,94],Z=[1,91],H=[1,87],q=[1,93],K=[1,89],ot=[1,96],ct=[1,92],ut=[1,97],et=[1,88],Mt=[8,9,10,11,40,75,77],it=[8,9,10,11,40,46,75,77],wt=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,88,101,104,105,108,110,113,114,115],Ot=[8,9,11,44,60,75,77,88,101,104,105,108,110,113,114,115],St=[44,60,88,101,104,105,108,110,113,114,115],Vt=[1,123],Pt=[1,122],_t=[1,130],dt=[1,144],Y=[1,145],ft=[1,146],mt=[1,147],rt=[1,132],ht=[1,134],nt=[1,138],st=[1,139],Tt=[1,140],kt=[1,141],Ct=[1,142],At=[1,143],$t=[1,148],Nt=[1,149],yt=[1,128],Ut=[1,129],zt=[1,136],ae=[1,131],ke=[1,135],Ee=[1,133],le=[8,9,10,11,27,32,34,36,38,44,60,83,84,85,86,87,88,101,104,105,108,110,113,114,115,120,121,122,123],Zt=[1,151],me=[1,153],Ht=[8,9,11],ne=[8,9,10,11,14,44,60,88,104,105,108,110,113,114,115],xe=[1,173],Se=[1,169],Ye=[1,170],fe=[1,174],ee=[1,171],pe=[1,172],Me=[77,115,118],oe=[8,9,10,11,12,14,27,29,32,44,60,75,83,84,85,86,87,88,89,104,108,110,113,114,115],qe=[10,105],Cr=[31,49,51,53,55,57,62,64,66,67,69,71,115,116,117],En=[1,242],or=[1,240],ln=[1,244],Ir=[1,238],ii=[1,239],mn=[1,241],Pn=[1,243],Sr=[1,245],pi=[1,263],ps=[8,9,11,105],Bn=[8,9,10,11,60,83,104,105,108,109,110,111],Eo={trace:o(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,edgeTextToken:78,STR:79,MD_STR:80,textToken:81,keywords:82,STYLE:83,LINKSTYLE:84,CLASSDEF:85,CLASS:86,CLICK:87,DOWN:88,UP:89,textNoTagsToken:90,stylesOpt:91,"idString[vertex]":92,"idString[class]":93,CALLBACKNAME:94,CALLBACKARGS:95,HREF:96,LINK_TARGET:97,"STR[link]":98,"STR[tooltip]":99,alphaNum:100,DEFAULT:101,numList:102,INTERPOLATE:103,NUM:104,COMMA:105,style:106,styleComponent:107,NODE_STRING:108,UNIT:109,BRKT:110,PCT:111,idStringToken:112,MINUS:113,MULT:114,UNICODE_TEXT:115,TEXT:116,TAGSTART:117,EDGE_TEXT:118,alphaNumToken:119,direction_tb:120,direction_bt:121,direction_rl:122,direction_lr:123,$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",79:"STR",80:"MD_STR",83:"STYLE",84:"LINKSTYLE",85:"CLASSDEF",86:"CLASS",87:"CLICK",88:"DOWN",89:"UP",92:"idString[vertex]",93:"idString[class]",94:"CALLBACKNAME",95:"CALLBACKARGS",96:"HREF",97:"LINK_TARGET",98:"STR[link]",99:"STR[tooltip]",101:"DEFAULT",103:"INTERPOLATE",104:"NUM",105:"COMMA",108:"NODE_STRING",109:"UNIT",110:"BRKT",111:"PCT",113:"MINUS",114:"MULT",115:"UNICODE_TEXT",116:"TEXT",117:"TAGSTART",118:"EDGE_TEXT",120:"direction_tb",121:"direction_bt",122:"direction_rl",123:"direction_lr"},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],[76,1],[76,2],[76,1],[76,1],[72,1],[73,3],[30,1],[30,2],[30,1],[30,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,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],[102,1],[102,3],[91,1],[91,3],[106,1],[106,2],[107,1],[107,1],[107,1],[107,1],[107,1],[107,1],[107,1],[107,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[81,1],[81,1],[81,1],[81,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[78,1],[78,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[47,1],[47,2],[100,1],[100,2],[33,1],[33,1],[33,1],[33,1]],performAction:o(function(Ae,Ie,we,Wt,Fe,gt,gn){var vt=gt.length-1;switch(Fe){case 2:this.$=[];break;case 3:(!Array.isArray(gt[vt])||gt[vt].length>0)&>[vt-1].push(gt[vt]),this.$=gt[vt-1];break;case 4:case 181:this.$=gt[vt];break;case 11:Wt.setDirection("TB"),this.$="TB";break;case 12:Wt.setDirection(gt[vt-1]),this.$=gt[vt-1];break;case 27:this.$=gt[vt-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=Wt.addSubGraph(gt[vt-6],gt[vt-1],gt[vt-4]);break;case 34:this.$=Wt.addSubGraph(gt[vt-3],gt[vt-1],gt[vt-3]);break;case 35:this.$=Wt.addSubGraph(void 0,gt[vt-1],void 0);break;case 37:this.$=gt[vt].trim(),Wt.setAccTitle(this.$);break;case 38:case 39:this.$=gt[vt].trim(),Wt.setAccDescription(this.$);break;case 43:this.$=gt[vt-1]+gt[vt];break;case 44:this.$=gt[vt];break;case 45:Wt.addVertex(gt[vt-1][0],void 0,void 0,void 0,void 0,void 0,void 0,gt[vt]),Wt.addLink(gt[vt-3].stmt,gt[vt-1],gt[vt-2]),this.$={stmt:gt[vt-1],nodes:gt[vt-1].concat(gt[vt-3].nodes)};break;case 46:Wt.addLink(gt[vt-2].stmt,gt[vt],gt[vt-1]),this.$={stmt:gt[vt],nodes:gt[vt].concat(gt[vt-2].nodes)};break;case 47:Wt.addLink(gt[vt-3].stmt,gt[vt-1],gt[vt-2]),this.$={stmt:gt[vt-1],nodes:gt[vt-1].concat(gt[vt-3].nodes)};break;case 48:this.$={stmt:gt[vt-1],nodes:gt[vt-1]};break;case 49:Wt.addVertex(gt[vt-1][0],void 0,void 0,void 0,void 0,void 0,void 0,gt[vt]),this.$={stmt:gt[vt-1],nodes:gt[vt-1],shapeData:gt[vt]};break;case 50:this.$={stmt:gt[vt],nodes:gt[vt]};break;case 51:this.$=[gt[vt]];break;case 52:Wt.addVertex(gt[vt-5][0],void 0,void 0,void 0,void 0,void 0,void 0,gt[vt-4]),this.$=gt[vt-5].concat(gt[vt]);break;case 53:this.$=gt[vt-4].concat(gt[vt]);break;case 54:this.$=gt[vt];break;case 55:this.$=gt[vt-2],Wt.setClass(gt[vt-2],gt[vt]);break;case 56:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"square");break;case 57:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"doublecircle");break;case 58:this.$=gt[vt-5],Wt.addVertex(gt[vt-5],gt[vt-2],"circle");break;case 59:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"ellipse");break;case 60:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"stadium");break;case 61:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"subroutine");break;case 62:this.$=gt[vt-7],Wt.addVertex(gt[vt-7],gt[vt-1],"rect",void 0,void 0,void 0,Object.fromEntries([[gt[vt-5],gt[vt-3]]]));break;case 63:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"cylinder");break;case 64:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"round");break;case 65:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"diamond");break;case 66:this.$=gt[vt-5],Wt.addVertex(gt[vt-5],gt[vt-2],"hexagon");break;case 67:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"odd");break;case 68:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"trapezoid");break;case 69:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"inv_trapezoid");break;case 70:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"lean_right");break;case 71:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"lean_left");break;case 72:this.$=gt[vt],Wt.addVertex(gt[vt]);break;case 73:gt[vt-1].text=gt[vt],this.$=gt[vt-1];break;case 74:case 75:gt[vt-2].text=gt[vt-1],this.$=gt[vt-2];break;case 76:this.$=gt[vt];break;case 77:var qa=Wt.destructLink(gt[vt],gt[vt-2]);this.$={type:qa.type,stroke:qa.stroke,length:qa.length,text:gt[vt-1]};break;case 78:this.$={text:gt[vt],type:"text"};break;case 79:this.$={text:gt[vt-1].text+""+gt[vt],type:gt[vt-1].type};break;case 80:this.$={text:gt[vt],type:"string"};break;case 81:this.$={text:gt[vt],type:"markdown"};break;case 82:var qa=Wt.destructLink(gt[vt]);this.$={type:qa.type,stroke:qa.stroke,length:qa.length};break;case 83:this.$=gt[vt-1];break;case 84:this.$={text:gt[vt],type:"text"};break;case 85:this.$={text:gt[vt-1].text+""+gt[vt],type:gt[vt-1].type};break;case 86:this.$={text:gt[vt],type:"string"};break;case 87:case 102:this.$={text:gt[vt],type:"markdown"};break;case 99:this.$={text:gt[vt],type:"text"};break;case 100:this.$={text:gt[vt-1].text+""+gt[vt],type:gt[vt-1].type};break;case 101:this.$={text:gt[vt],type:"text"};break;case 103:this.$=gt[vt-4],Wt.addClass(gt[vt-2],gt[vt]);break;case 104:this.$=gt[vt-4],Wt.setClass(gt[vt-2],gt[vt]);break;case 105:case 113:this.$=gt[vt-1],Wt.setClickEvent(gt[vt-1],gt[vt]);break;case 106:case 114:this.$=gt[vt-3],Wt.setClickEvent(gt[vt-3],gt[vt-2]),Wt.setTooltip(gt[vt-3],gt[vt]);break;case 107:this.$=gt[vt-2],Wt.setClickEvent(gt[vt-2],gt[vt-1],gt[vt]);break;case 108:this.$=gt[vt-4],Wt.setClickEvent(gt[vt-4],gt[vt-3],gt[vt-2]),Wt.setTooltip(gt[vt-4],gt[vt]);break;case 109:this.$=gt[vt-2],Wt.setLink(gt[vt-2],gt[vt]);break;case 110:this.$=gt[vt-4],Wt.setLink(gt[vt-4],gt[vt-2]),Wt.setTooltip(gt[vt-4],gt[vt]);break;case 111:this.$=gt[vt-4],Wt.setLink(gt[vt-4],gt[vt-2],gt[vt]);break;case 112:this.$=gt[vt-6],Wt.setLink(gt[vt-6],gt[vt-4],gt[vt]),Wt.setTooltip(gt[vt-6],gt[vt-2]);break;case 115:this.$=gt[vt-1],Wt.setLink(gt[vt-1],gt[vt]);break;case 116:this.$=gt[vt-3],Wt.setLink(gt[vt-3],gt[vt-2]),Wt.setTooltip(gt[vt-3],gt[vt]);break;case 117:this.$=gt[vt-3],Wt.setLink(gt[vt-3],gt[vt-2],gt[vt]);break;case 118:this.$=gt[vt-5],Wt.setLink(gt[vt-5],gt[vt-4],gt[vt]),Wt.setTooltip(gt[vt-5],gt[vt-2]);break;case 119:this.$=gt[vt-4],Wt.addVertex(gt[vt-2],void 0,void 0,gt[vt]);break;case 120:this.$=gt[vt-4],Wt.updateLink([gt[vt-2]],gt[vt]);break;case 121:this.$=gt[vt-4],Wt.updateLink(gt[vt-2],gt[vt]);break;case 122:this.$=gt[vt-8],Wt.updateLinkInterpolate([gt[vt-6]],gt[vt-2]),Wt.updateLink([gt[vt-6]],gt[vt]);break;case 123:this.$=gt[vt-8],Wt.updateLinkInterpolate(gt[vt-6],gt[vt-2]),Wt.updateLink(gt[vt-6],gt[vt]);break;case 124:this.$=gt[vt-6],Wt.updateLinkInterpolate([gt[vt-4]],gt[vt]);break;case 125:this.$=gt[vt-6],Wt.updateLinkInterpolate(gt[vt-4],gt[vt]);break;case 126:case 128:this.$=[gt[vt]];break;case 127:case 129:gt[vt-2].push(gt[vt]),this.$=gt[vt-2];break;case 131:this.$=gt[vt-1]+gt[vt];break;case 179:this.$=gt[vt];break;case 180:this.$=gt[vt-1]+""+gt[vt];break;case 182:this.$=gt[vt-1]+""+gt[vt];break;case 183:this.$={stmt:"dir",value:"TB"};break;case 184:this.$={stmt:"dir",value:"BT"};break;case 185:this.$={stmt:"dir",value:"RL"};break;case 186:this.$={stmt:"dir",value:"LR"};break}},"anonymous"),table:[{3:1,4:2,9:t,10:r,12:n},{1:[3]},e(i,a,{5:6}),{4:7,9:t,10:r,12:n},{4:8,9:t,10:r,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,83:v,84:x,85:b,86:w,87:S,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I,120:C,121:O,122:D,123:P},e(i,[2,9]),e(i,[2,10]),e(i,[2,11]),{8:[1,54],9:[1,55],10:F,15:53,18:56},e(B,[2,3]),e(B,[2,4]),e(B,[2,5]),e(B,[2,6]),e(B,[2,7]),e(B,[2,8]),{8:G,9:z,11:W,21:58,41:59,72:63,75:[1,64],77:[1,65]},{8:G,9:z,11:W,21:66},{8:G,9:z,11:W,21:67},{8:G,9:z,11:W,21:68},{8:G,9:z,11:W,21:69},{8:G,9:z,11:W,21:70},{8:G,9:z,10:[1,71],11:W,21:72},e(B,[2,36]),{35:[1,73]},{37:[1,74]},e(B,[2,39]),e(Q,[2,50],{18:75,39:76,10:F,40:j}),{10:[1,78]},{10:[1,79]},{10:[1,80]},{10:[1,81]},{14:at,44:X,60:J,79:[1,85],88:Z,94:[1,82],96:[1,83],100:84,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et,119:86},e(B,[2,183]),e(B,[2,184]),e(B,[2,185]),e(B,[2,186]),e(Mt,[2,51]),e(Mt,[2,54],{46:[1,98]}),e(it,[2,72],{112:111,29:[1,99],44:g,48:[1,100],50:[1,101],52:[1,102],54:[1,103],56:[1,104],58:[1,105],60:y,63:[1,106],65:[1,107],67:[1,108],68:[1,109],70:[1,110],88:T,101:E,104:_,105:A,108:L,110:M,113:N,114:k,115:I}),e(wt,[2,179]),e(wt,[2,140]),e(wt,[2,141]),e(wt,[2,142]),e(wt,[2,143]),e(wt,[2,144]),e(wt,[2,145]),e(wt,[2,146]),e(wt,[2,147]),e(wt,[2,148]),e(wt,[2,149]),e(wt,[2,150]),e(i,[2,12]),e(i,[2,18]),e(i,[2,19]),{9:[1,112]},e(Ot,[2,26],{18:113,10:F}),e(B,[2,27]),{42:114,43:38,44:g,45:39,47:40,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},e(B,[2,40]),e(B,[2,41]),e(B,[2,42]),e(St,[2,76],{73:115,62:[1,117],74:[1,116]}),{76:118,78:119,79:[1,120],80:[1,121],115:Vt,118:Pt},e([44,60,62,74,88,101,104,105,108,110,113,114,115],[2,82]),e(B,[2,28]),e(B,[2,29]),e(B,[2,30]),e(B,[2,31]),e(B,[2,32]),{10:_t,12:dt,14:Y,27:ft,28:124,32:mt,44:rt,60:ht,75:nt,79:[1,126],80:[1,127],82:137,83:st,84:Tt,85:kt,86:Ct,87:At,88:$t,89:Nt,90:125,104:yt,108:Ut,110:zt,113:ae,114:ke,115:Ee},e(le,a,{5:150}),e(B,[2,37]),e(B,[2,38]),e(Q,[2,48],{44:Zt}),e(Q,[2,49],{18:152,10:F,40:me}),e(Mt,[2,44]),{44:g,47:154,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},{101:[1,155],102:156,104:[1,157]},{44:g,47:158,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},{44:g,47:159,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},e(Ht,[2,105],{10:[1,160],95:[1,161]}),{79:[1,162]},e(Ht,[2,113],{119:164,10:[1,163],14:at,44:X,60:J,88:Z,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et}),e(Ht,[2,115],{10:[1,165]}),e(ne,[2,181]),e(ne,[2,168]),e(ne,[2,169]),e(ne,[2,170]),e(ne,[2,171]),e(ne,[2,172]),e(ne,[2,173]),e(ne,[2,174]),e(ne,[2,175]),e(ne,[2,176]),e(ne,[2,177]),e(ne,[2,178]),{44:g,47:166,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},{30:167,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:175,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:177,50:[1,176],67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:178,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:179,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:180,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{108:[1,181]},{30:182,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:183,65:[1,184],67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:185,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:186,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:187,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},e(wt,[2,180]),e(i,[2,20]),e(Ot,[2,25]),e(Q,[2,46],{39:188,18:189,10:F,40:j}),e(St,[2,73],{10:[1,190]}),{10:[1,191]},{30:192,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{77:[1,193],78:194,115:Vt,118:Pt},e(Me,[2,78]),e(Me,[2,80]),e(Me,[2,81]),e(Me,[2,166]),e(Me,[2,167]),{8:G,9:z,10:_t,11:W,12:dt,14:Y,21:196,27:ft,29:[1,195],32:mt,44:rt,60:ht,75:nt,82:137,83:st,84:Tt,85:kt,86:Ct,87:At,88:$t,89:Nt,90:197,104:yt,108:Ut,110:zt,113:ae,114:ke,115:Ee},e(oe,[2,99]),e(oe,[2,101]),e(oe,[2,102]),e(oe,[2,155]),e(oe,[2,156]),e(oe,[2,157]),e(oe,[2,158]),e(oe,[2,159]),e(oe,[2,160]),e(oe,[2,161]),e(oe,[2,162]),e(oe,[2,163]),e(oe,[2,164]),e(oe,[2,165]),e(oe,[2,88]),e(oe,[2,89]),e(oe,[2,90]),e(oe,[2,91]),e(oe,[2,92]),e(oe,[2,93]),e(oe,[2,94]),e(oe,[2,95]),e(oe,[2,96]),e(oe,[2,97]),e(oe,[2,98]),{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,198],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,83:v,84:x,85:b,86:w,87:S,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I,120:C,121:O,122:D,123:P},{10:F,18:199},{44:[1,200]},e(Mt,[2,43]),{10:[1,201],44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:111,113:N,114:k,115:I},{10:[1,202]},{10:[1,203],105:[1,204]},e(qe,[2,126]),{10:[1,205],44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:111,113:N,114:k,115:I},{10:[1,206],44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:111,113:N,114:k,115:I},{79:[1,207]},e(Ht,[2,107],{10:[1,208]}),e(Ht,[2,109],{10:[1,209]}),{79:[1,210]},e(ne,[2,182]),{79:[1,211],97:[1,212]},e(Mt,[2,55],{112:111,44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,113:N,114:k,115:I}),{31:[1,213],67:xe,81:214,115:fe,116:ee,117:pe},e(Cr,[2,84]),e(Cr,[2,86]),e(Cr,[2,87]),e(Cr,[2,151]),e(Cr,[2,152]),e(Cr,[2,153]),e(Cr,[2,154]),{49:[1,215],67:xe,81:214,115:fe,116:ee,117:pe},{30:216,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{51:[1,217],67:xe,81:214,115:fe,116:ee,117:pe},{53:[1,218],67:xe,81:214,115:fe,116:ee,117:pe},{55:[1,219],67:xe,81:214,115:fe,116:ee,117:pe},{57:[1,220],67:xe,81:214,115:fe,116:ee,117:pe},{60:[1,221]},{64:[1,222],67:xe,81:214,115:fe,116:ee,117:pe},{66:[1,223],67:xe,81:214,115:fe,116:ee,117:pe},{30:224,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{31:[1,225],67:xe,81:214,115:fe,116:ee,117:pe},{67:xe,69:[1,226],71:[1,227],81:214,115:fe,116:ee,117:pe},{67:xe,69:[1,229],71:[1,228],81:214,115:fe,116:ee,117:pe},e(Q,[2,45],{18:152,10:F,40:me}),e(Q,[2,47],{44:Zt}),e(St,[2,75]),e(St,[2,74]),{62:[1,230],67:xe,81:214,115:fe,116:ee,117:pe},e(St,[2,77]),e(Me,[2,79]),{30:231,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},e(le,a,{5:232}),e(oe,[2,100]),e(B,[2,35]),{43:233,44:g,45:39,47:40,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},{10:F,18:234},{10:En,60:or,83:ln,91:235,104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{10:En,60:or,83:ln,91:246,103:[1,247],104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{10:En,60:or,83:ln,91:248,103:[1,249],104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{104:[1,250]},{10:En,60:or,83:ln,91:251,104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{44:g,47:252,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},e(Ht,[2,106]),{79:[1,253]},{79:[1,254],97:[1,255]},e(Ht,[2,114]),e(Ht,[2,116],{10:[1,256]}),e(Ht,[2,117]),e(it,[2,56]),e(Cr,[2,85]),e(it,[2,57]),{51:[1,257],67:xe,81:214,115:fe,116:ee,117:pe},e(it,[2,64]),e(it,[2,59]),e(it,[2,60]),e(it,[2,61]),{108:[1,258]},e(it,[2,63]),e(it,[2,65]),{66:[1,259],67:xe,81:214,115:fe,116:ee,117:pe},e(it,[2,67]),e(it,[2,68]),e(it,[2,70]),e(it,[2,69]),e(it,[2,71]),e([10,44,60,88,101,104,105,108,110,113,114,115],[2,83]),{31:[1,260],67:xe,81:214,115:fe,116:ee,117:pe},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,261],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,83:v,84:x,85:b,86:w,87:S,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I,120:C,121:O,122:D,123:P},e(Mt,[2,53]),{43:262,44:g,45:39,47:40,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},e(Ht,[2,119],{105:pi}),e(ps,[2,128],{107:264,10:En,60:or,83:ln,104:Ir,108:ii,109:mn,110:Pn,111:Sr}),e(Bn,[2,130]),e(Bn,[2,132]),e(Bn,[2,133]),e(Bn,[2,134]),e(Bn,[2,135]),e(Bn,[2,136]),e(Bn,[2,137]),e(Bn,[2,138]),e(Bn,[2,139]),e(Ht,[2,120],{105:pi}),{10:[1,265]},e(Ht,[2,121],{105:pi}),{10:[1,266]},e(qe,[2,127]),e(Ht,[2,103],{105:pi}),e(Ht,[2,104],{112:111,44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,113:N,114:k,115:I}),e(Ht,[2,108]),e(Ht,[2,110],{10:[1,267]}),e(Ht,[2,111]),{97:[1,268]},{51:[1,269]},{62:[1,270]},{66:[1,271]},{8:G,9:z,11:W,21:272},e(B,[2,34]),e(Mt,[2,52]),{10:En,60:or,83:ln,104:Ir,106:273,107:237,108:ii,109:mn,110:Pn,111:Sr},e(Bn,[2,131]),{14:at,44:X,60:J,88:Z,100:274,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et,119:86},{14:at,44:X,60:J,88:Z,100:275,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et,119:86},{97:[1,276]},e(Ht,[2,118]),e(it,[2,58]),{30:277,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},e(it,[2,66]),e(le,a,{5:278}),e(ps,[2,129],{107:264,10:En,60:or,83:ln,104:Ir,108:ii,109:mn,110:Pn,111:Sr}),e(Ht,[2,124],{119:164,10:[1,279],14:at,44:X,60:J,88:Z,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et}),e(Ht,[2,125],{119:164,10:[1,280],14:at,44:X,60:J,88:Z,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et}),e(Ht,[2,112]),{31:[1,281],67:xe,81:214,115:fe,116:ee,117:pe},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,282],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,83:v,84:x,85:b,86:w,87:S,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I,120:C,121:O,122:D,123:P},{10:En,60:or,83:ln,91:283,104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{10:En,60:or,83:ln,91:284,104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},e(it,[2,62]),e(B,[2,33]),e(Ht,[2,122],{105:pi}),e(Ht,[2,123],{105:pi})],defaultActions:{},parseError:o(function(Ae,Ie){if(Ie.recoverable)this.trace(Ae);else{var we=new Error(Ae);throw we.hash=Ie,we}},"parseError"),parse:o(function(Ae){var Ie=this,we=[0],Wt=[],Fe=[null],gt=[],gn=this.table,vt="",qa=0,W1=0,Y1=0,q1=2,X1=1,lp=gt.slice.call(arguments,1),jn=Object.create(this.lexer),ca={yy:{}};for(var Zl in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Zl)&&(ca.yy[Zl]=this.yy[Zl]);jn.setInput(Ae,ca.yy),ca.yy.lexer=jn,ca.yy.parser=this,typeof jn.yylloc>"u"&&(jn.yylloc={});var Vf=jn.yylloc;gt.push(Vf);var j1=jn.options&&jn.options.ranges;typeof ca.yy.parseError=="function"?this.parseError=ca.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function mz(Xa){we.length=we.length-2*Xa,Fe.length=Fe.length-Xa,gt.length=gt.length-Xa}o(mz,"popStack");function Uf(){var Xa;return Xa=Wt.pop()||jn.lex()||X1,typeof Xa!="number"&&(Xa instanceof Array&&(Wt=Xa,Xa=Wt.pop()),Xa=Ie.symbols_[Xa]||Xa),Xa}o(Uf,"lex");for(var ua,K1,Cn,Ni,gz,cp,Jl={},Hf,Co,Kb,Wf;;){if(Cn=we[we.length-1],this.defaultActions[Cn]?Ni=this.defaultActions[Cn]:((ua===null||typeof ua>"u")&&(ua=Uf()),Ni=gn[Cn]&&gn[Cn][ua]),typeof Ni>"u"||!Ni.length||!Ni[0]){var up="";Wf=[];for(Hf in gn[Cn])this.terminals_[Hf]&&Hf>q1&&Wf.push("'"+this.terminals_[Hf]+"'");jn.showPosition?up="Parse error on line "+(qa+1)+`: `+jn.showPosition()+` Expecting `+Wf.join(", ")+", got '"+(this.terminals_[ua]||ua)+"'":up="Parse error on line "+(qa+1)+": Unexpected "+(ua==X1?"end of input":"'"+(this.terminals_[ua]||ua)+"'"),this.parseError(up,{text:jn.match,token:this.terminals_[ua]||ua,line:jn.yylineno,loc:Vf,expected:Wf})}if(Ni[0]instanceof Array&&Ni.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Cn+", token: "+ua);switch(Ni[0]){case 1:we.push(ua),Fe.push(jn.yytext),gt.push(jn.yylloc),we.push(Ni[1]),ua=null,K1?(ua=K1,K1=null):(W1=jn.yyleng,vt=jn.yytext,qa=jn.yylineno,Vf=jn.yylloc,Y1>0&&Y1--);break;case 2:if(Co=this.productions_[Ni[1]][1],Jl.$=Fe[Fe.length-Co],Jl._$={first_line:gt[gt.length-(Co||1)].first_line,last_line:gt[gt.length-1].last_line,first_column:gt[gt.length-(Co||1)].first_column,last_column:gt[gt.length-1].last_column},j1&&(Jl._$.range=[gt[gt.length-(Co||1)].range[0],gt[gt.length-1].range[1]]),cp=this.performAction.apply(Jl,[vt,W1,qa,ca.yy,Ni[1],Fe,gt].concat(lp)),typeof cp<"u")return cp;Co&&(we=we.slice(0,-1*Co*2),Fe=Fe.slice(0,-1*Co),gt=gt.slice(0,-1*Co)),we.push(this.productions_[Ni[1]][0]),Fe.push(Jl.$),gt.push(Jl._$),Kb=gn[we[we.length-2]][we[we.length-1]],we.push(Kb);break;case 3:return!0}}return!0},"parse")},cl=function(){var wi={EOF:1,parseError:o(function(Ie,we){if(this.yy.parser)this.yy.parser.parseError(Ie,we);else throw new Error(Ie)},"parseError"),setInput:o(function(Ae,Ie){return this.yy=Ie||this.yy||{},this._input=Ae,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]),this.offset=0,this},"setInput"),input:o(function(){var Ae=this._input[0];this.yytext+=Ae,this.yyleng++,this.offset++,this.match+=Ae,this.matched+=Ae;var Ie=Ae.match(/(?:\r\n?|\n).*/g);return Ie?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ae},"input"),unput:o(function(Ae){var Ie=Ae.length,we=Ae.split(/(?:\r\n?|\n)/g);this._input=Ae+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ie),this.offset-=Ie;var Wt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),we.length-1&&(this.yylineno-=we.length-1);var Fe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:we?(we.length===Wt.length?this.yylloc.first_column:0)+Wt[Wt.length-we.length].length-we[0].length:this.yylloc.first_column-Ie},this.options.ranges&&(this.yylloc.range=[Fe[0],Fe[0]+this.yyleng-Ie]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(Ae){this.unput(this.match.slice(Ae))},"less"),pastInput:o(function(){var Ae=this.matched.substr(0,this.matched.length-this.match.length);return(Ae.length>20?"...":"")+Ae.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var Ae=this.match;return Ae.length<20&&(Ae+=this._input.substr(0,20-Ae.length)),(Ae.substr(0,20)+(Ae.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var Ae=this.pastInput(),Ie=new Array(Ae.length+1).join("-");return Ae+this.upcomingInput()+` `+Ie+"^"},"showPosition"),test_match:o(function(Ae,Ie){var we,Wt,Fe;if(this.options.backtrack_lexer&&(Fe={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&&(Fe.yylloc.range=this.yylloc.range.slice(0))),Wt=Ae[0].match(/(?:\r\n?|\n).*/g),Wt&&(this.yylineno+=Wt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Wt?Wt[Wt.length-1].length-Wt[Wt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ae[0].length},this.yytext+=Ae[0],this.match+=Ae[0],this.matches=Ae,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ae[0].length),this.matched+=Ae[0],we=this.performAction.call(this,this.yy,this,Ie,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),we)return we;if(this._backtrack){for(var gt in Fe)this[gt]=Fe[gt];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ae,Ie,we,Wt;this._more||(this.yytext="",this.match="");for(var Fe=this._currentRules(),gt=0;gtIe[0].length)){if(Ie=we,Wt=gt,this.options.backtrack_lexer){if(Ae=this.test_match(we,Fe[gt]),Ae!==!1)return Ae;if(this._backtrack){Ie=!1;continue}else return!1}else if(!this.options.flex)break}return Ie?(Ae=this.test_match(Ie,Fe[Wt]),Ae!==!1?Ae:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Ie=this.next();return Ie||this.lex()},"lex"),begin:o(function(Ie){this.conditionStack.push(Ie)},"begin"),popState:o(function(){var Ie=this.conditionStack.length-1;return Ie>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Ie){return Ie=this.conditionStack.length-1-Math.abs(Ie||0),Ie>=0?this.conditionStack[Ie]:"INITIAL"},"topState"),pushState:o(function(Ie){this.begin(Ie)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Ie,we,Wt,Fe){var gt=Fe;switch(Wt){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"),we.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let gn=/\n\s*/g;return we.yytext=we.yytext.replace(gn,"
    "),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 94;case 17:this.popState();break;case 18:return 95;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 83;case 26:return 101;case 27:return 84;case 28:return 103;case 29:return 85;case 30:return 86;case 31:return 96;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 87;case 35:return Ie.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return Ie.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return Ie.lex.firstGraph()&&this.begin("dir"),12;break;case 38:return 27;case 39:return 32;case 40:return 97;case 41:return 97;case 42:return 97;case 43:return 97;case 44:return this.popState(),13;break;case 45:return this.popState(),14;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 120;case 56:return 121;case 57:return 122;case 58:return 123;case 59:return 104;case 60:return 110;case 61:return 46;case 62:return 60;case 63:return 44;case 64:return 8;case 65:return 105;case 66:return 114;case 67:return this.popState(),77;break;case 68:return this.pushState("edgeText"),75;break;case 69:return 118;case 70:return this.popState(),77;break;case 71:return this.pushState("thickEdgeText"),75;break;case 72:return 118;case 73:return this.popState(),77;break;case 74:return this.pushState("dottedEdgeText"),75;break;case 75:return 118;case 76:return 77;case 77:return this.popState(),53;break;case 78:return"TEXT";case 79:return this.pushState("ellipseText"),52;break;case 80:return this.popState(),55;break;case 81:return this.pushState("text"),54;break;case 82:return this.popState(),57;break;case 83:return this.pushState("text"),56;break;case 84:return 58;case 85:return this.pushState("text"),67;break;case 86:return this.popState(),64;break;case 87:return this.pushState("text"),63;break;case 88:return this.popState(),49;break;case 89:return this.pushState("text"),48;break;case 90:return this.popState(),69;break;case 91:return this.popState(),71;break;case 92:return 116;case 93:return this.pushState("trapText"),68;break;case 94:return this.pushState("trapText"),70;break;case 95:return 117;case 96:return 67;case 97:return 89;case 98:return"SEP";case 99:return 88;case 100:return 114;case 101:return 110;case 102:return 44;case 103:return 108;case 104:return 113;case 105:return 115;case 106:return this.popState(),62;break;case 107:return this.pushState("text"),62;break;case 108:return this.popState(),51;break;case 109:return this.pushState("text"),50;break;case 110:return this.popState(),31;break;case 111:return this.pushState("text"),29;break;case 112:return this.popState(),66;break;case 113:return this.pushState("text"),65;break;case 114:return"TEXT";case 115:return"QUOTE";case 116:return 9;case 117:return 10;case 118: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)/,/^(?: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]*)/,/^(?:[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,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},shapeData:{rules:[8,11,12,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},callbackargs:{rules:[17,18,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},callbackname:{rules:[14,15,16,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},href:{rules:[21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},click:{rules:[21,24,33,34,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},dottedEdgeText:{rules:[21,24,73,75,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},thickEdgeText:{rules:[21,24,70,72,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},edgeText:{rules:[21,24,67,69,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},trapText:{rules:[21,24,76,79,81,83,87,89,90,91,92,93,94,107,109,111,113],inclusive:!1},ellipseText:{rules:[21,24,76,77,78,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},text:{rules:[21,24,76,79,80,81,82,83,86,87,88,89,93,94,106,107,108,109,110,111,112,113,114],inclusive:!1},vertex:{rules:[21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},dir:{rules:[21,24,44,45,46,47,48,49,50,51,52,53,54,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},acc_descr:{rules:[3,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},acc_title:{rules:[1,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},md_string:{rules:[19,20,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},string:{rules:[21,22,23,24,76,79,81,83,87,89,93,94,107,109,111,113],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,55,56,57,58,59,60,61,62,63,64,65,66,67,68,70,71,73,74,76,79,81,83,84,85,87,89,93,94,95,96,97,98,99,100,101,102,103,104,105,107,109,111,113,115,116,117,118],inclusive:!0}}};return wi}();Eo.lexer=cl;function Fn(){this.yy={}}return o(Fn,"Parser"),Fn.prototype=Eo,Eo.Parser=Fn,new Fn}();kR.parser=kR;Uit=kR});var $Ot,GOt,Wit,Yit=R(()=>{"use strict";ul();$Ot=o((e,t)=>{let r=ay,n=r(e,"r"),i=r(e,"g"),a=r(e,"b");return Xs(n,i,a,t)},"fade"),GOt=o(e=>`.label { font-family: ${e.fontFamily}; color: ${e.nodeTextColor||e.textColor}; } .cluster-label text { fill: ${e.titleColor}; } .cluster-label span { color: ${e.titleColor}; } .cluster-label span p { background-color: transparent; } .label text,span { fill: ${e.nodeTextColor||e.textColor}; color: ${e.nodeTextColor||e.textColor}; } .node rect, .node circle, .node ellipse, .node polygon, .node path { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; stroke-width: 1px; } .rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label { text-anchor: middle; } // .flowchart-label .text-outer-tspan { // text-anchor: middle; // } // .flowchart-label .text-inner-tspan { // text-anchor: start; // } .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: ${e.lineColor} !important; stroke-width: 0; stroke: ${e.lineColor}; } .arrowheadPath { fill: ${e.arrowheadColor}; } .edgePath .path { stroke: ${e.lineColor}; stroke-width: 2.0px; } .flowchart-link { stroke: ${e.lineColor}; fill: none; } .edgeLabel { background-color: ${e.edgeLabelBackground}; p { background-color: ${e.edgeLabelBackground}; } rect { opacity: 0.5; background-color: ${e.edgeLabelBackground}; fill: ${e.edgeLabelBackground}; } text-align: center; } /* For html labels only */ .labelBkg { background-color: ${$Ot(e.edgeLabelBackground,.5)}; // background-color: } .cluster rect { fill: ${e.clusterBkg}; stroke: ${e.clusterBorder}; stroke-width: 1px; } .cluster text { fill: ${e.titleColor}; } .cluster span { color: ${e.titleColor}; } /* .cluster div { color: ${e.titleColor}; } */ div.mermaidTooltip { position: absolute; text-align: center; max-width: 200px; padding: 2px; font-family: ${e.fontFamily}; font-size: 12px; background: ${e.tertiaryColor}; border: 1px solid ${e.border2}; border-radius: 2px; pointer-events: none; z-index: 100; } .flowchartTitleText { text-anchor: middle; font-size: 18px; fill: ${e.textColor}; } rect.text { fill: none; stroke-width: 0; } .icon-shape, .image-shape { background-color: ${e.edgeLabelBackground}; p { background-color: ${e.edgeLabelBackground}; padding: 2px; } rect { opacity: 0.5; background-color: ${e.edgeLabelBackground}; fill: ${e.edgeLabelBackground}; } text-align: center; } `,"getStyles"),Wit=GOt});var tk={};xr(tk,{diagram:()=>VOt});var VOt,ek=R(()=>{"use strict";Ue();dL();Vit();Hit();Yit();VOt={parser:Uit,db:ew,renderer:Git,styles:Wit,init:o(e=>{e.flowchart||(e.flowchart={}),e.layout&&W7({layout:e.layout}),e.flowchart.arrowMarkerAbsolute=e.arrowMarkerAbsolute,W7({flowchart:{arrowMarkerAbsolute:e.arrowMarkerAbsolute}}),ew.clear(),ew.setGen("gen-2")},"init")}});var ER,Qit,Zit=R(()=>{"use strict";ER=function(){var e=o(function(A,L,M,N){for(M=M||{},N=A.length;N--;M[A[N]]=L);return M},"o"),t=[6,8,10,20,22,24,26,27,28],r=[1,10],n=[1,11],i=[1,12],a=[1,13],s=[1,14],l=[1,15],u=[1,21],h=[1,22],f=[1,23],d=[1,24],p=[1,25],m=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],g=[1,34],y=[27,28,46,47],v=[41,42,43,44,45],x=[17,34],b=[1,54],w=[1,53],S=[17,34,36,38],T={trace:o(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,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:o(function(L,M,N,k,I,C,O){var D=C.length-1;switch(I){case 1:break;case 2:this.$=[];break;case 3:C[D-1].push(C[D]),this.$=C[D-1];break;case 4:case 5:this.$=C[D];break;case 6:case 7:this.$=[];break;case 8:k.addEntity(C[D-4]),k.addEntity(C[D-2]),k.addRelationship(C[D-4],C[D],C[D-2],C[D-3]);break;case 9:k.addEntity(C[D-3]),k.addAttributes(C[D-3],C[D-1]);break;case 10:k.addEntity(C[D-2]);break;case 11:k.addEntity(C[D]);break;case 12:k.addEntity(C[D-6],C[D-4]),k.addAttributes(C[D-6],C[D-1]);break;case 13:k.addEntity(C[D-5],C[D-3]);break;case 14:k.addEntity(C[D-3],C[D-1]);break;case 15:case 16:this.$=C[D].trim(),k.setAccTitle(this.$);break;case 17:case 18:this.$=C[D].trim(),k.setAccDescription(this.$);break;case 19:case 43:this.$=C[D];break;case 20:case 41:case 42:this.$=C[D].replace(/"/g,"");break;case 21:case 29:this.$=[C[D]];break;case 22:C[D].push(C[D-1]),this.$=C[D];break;case 23:this.$={attributeType:C[D-1],attributeName:C[D]};break;case 24:this.$={attributeType:C[D-2],attributeName:C[D-1],attributeKeyTypeList:C[D]};break;case 25:this.$={attributeType:C[D-2],attributeName:C[D-1],attributeComment:C[D]};break;case 26:this.$={attributeType:C[D-3],attributeName:C[D-2],attributeKeyTypeList:C[D-1],attributeComment:C[D]};break;case 27:case 28:case 31:this.$=C[D];break;case 30:C[D-2].push(C[D]),this.$=C[D-2];break;case 32:this.$=C[D].replace(/"/g,"");break;case 33:this.$={cardA:C[D],relType:C[D-1],cardB:C[D-2]};break;case 34:this.$=k.Cardinality.ZERO_OR_ONE;break;case 35:this.$=k.Cardinality.ZERO_OR_MORE;break;case 36:this.$=k.Cardinality.ONE_OR_MORE;break;case 37:this.$=k.Cardinality.ONLY_ONE;break;case 38:this.$=k.Cardinality.MD_PARENT;break;case 39:this.$=k.Identification.NON_IDENTIFYING;break;case 40:this.$=k.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},e(t,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:r,22:n,24:i,26:a,27:s,28:l},e(t,[2,7],{1:[2,1]}),e(t,[2,3]),{9:16,11:9,20:r,22:n,24:i,26:a,27:s,28:l},e(t,[2,5]),e(t,[2,6]),e(t,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:u,42:h,43:f,44:d,45:p}),{21:[1,26]},{23:[1,27]},{25:[1,28]},e(t,[2,18]),e(m,[2,19]),e(m,[2,20]),e(t,[2,4]),{11:29,27:s,28:l},{16:30,17:[1,31],29:32,30:33,34:g},{11:35,27:s,28:l},{40:36,46:[1,37],47:[1,38]},e(y,[2,34]),e(y,[2,35]),e(y,[2,36]),e(y,[2,37]),e(y,[2,38]),e(t,[2,15]),e(t,[2,16]),e(t,[2,17]),{13:[1,39]},{17:[1,40]},e(t,[2,10]),{16:41,17:[2,21],29:32,30:33,34:g},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:u,42:h,43:f,44:d,45:p},e(v,[2,39]),e(v,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},e(t,[2,9]),{17:[2,22]},e(x,[2,23],{32:50,33:51,35:52,37:b,38:w}),e([17,34,37,38],[2,28]),e(t,[2,14],{15:[1,55]}),e([27,28],[2,33]),e(t,[2,8]),e(t,[2,41]),e(t,[2,42]),e(t,[2,43]),e(x,[2,24],{33:56,36:[1,57],38:w}),e(x,[2,25]),e(S,[2,29]),e(x,[2,32]),e(S,[2,31]),{16:58,17:[1,59],29:32,30:33,34:g},e(x,[2,26]),{35:60,37:b},{17:[1,61]},e(t,[2,13]),e(S,[2,30]),e(t,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:o(function(L,M){if(M.recoverable)this.trace(L);else{var N=new Error(L);throw N.hash=M,N}},"parseError"),parse:o(function(L){var M=this,N=[0],k=[],I=[null],C=[],O=this.table,D="",P=0,F=0,B=0,G=2,z=1,W=C.slice.call(arguments,1),Q=Object.create(this.lexer),j={yy:{}};for(var at in this.yy)Object.prototype.hasOwnProperty.call(this.yy,at)&&(j.yy[at]=this.yy[at]);Q.setInput(L,j.yy),j.yy.lexer=Q,j.yy.parser=this,typeof Q.yylloc>"u"&&(Q.yylloc={});var X=Q.yylloc;C.push(X);var J=Q.options&&Q.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Z(Pt){N.length=N.length-2*Pt,I.length=I.length-Pt,C.length=C.length-Pt}o(Z,"popStack");function H(){var Pt;return Pt=k.pop()||Q.lex()||z,typeof Pt!="number"&&(Pt instanceof Array&&(k=Pt,Pt=k.pop()),Pt=M.symbols_[Pt]||Pt),Pt}o(H,"lex");for(var q,K,ot,ct,ut,et,Mt={},it,wt,Ot,St;;){if(ot=N[N.length-1],this.defaultActions[ot]?ct=this.defaultActions[ot]:((q===null||typeof q>"u")&&(q=H()),ct=O[ot]&&O[ot][q]),typeof ct>"u"||!ct.length||!ct[0]){var Vt="";St=[];for(it in O[ot])this.terminals_[it]&&it>G&&St.push("'"+this.terminals_[it]+"'");Q.showPosition?Vt="Parse error on line "+(P+1)+`: `+Q.showPosition()+` Expecting `+St.join(", ")+", got '"+(this.terminals_[q]||q)+"'":Vt="Parse error on line "+(P+1)+": Unexpected "+(q==z?"end of input":"'"+(this.terminals_[q]||q)+"'"),this.parseError(Vt,{text:Q.match,token:this.terminals_[q]||q,line:Q.yylineno,loc:X,expected:St})}if(ct[0]instanceof Array&&ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ot+", token: "+q);switch(ct[0]){case 1:N.push(q),I.push(Q.yytext),C.push(Q.yylloc),N.push(ct[1]),q=null,K?(q=K,K=null):(F=Q.yyleng,D=Q.yytext,P=Q.yylineno,X=Q.yylloc,B>0&&B--);break;case 2:if(wt=this.productions_[ct[1]][1],Mt.$=I[I.length-wt],Mt._$={first_line:C[C.length-(wt||1)].first_line,last_line:C[C.length-1].last_line,first_column:C[C.length-(wt||1)].first_column,last_column:C[C.length-1].last_column},J&&(Mt._$.range=[C[C.length-(wt||1)].range[0],C[C.length-1].range[1]]),et=this.performAction.apply(Mt,[D,F,P,j.yy,ct[1],I,C].concat(W)),typeof et<"u")return et;wt&&(N=N.slice(0,-1*wt*2),I=I.slice(0,-1*wt),C=C.slice(0,-1*wt)),N.push(this.productions_[ct[1]][0]),I.push(Mt.$),C.push(Mt._$),Ot=O[N[N.length-2]][N[N.length-1]],N.push(Ot);break;case 3:return!0}}return!0},"parse")},E=function(){var A={EOF:1,parseError:o(function(M,N){if(this.yy.parser)this.yy.parser.parseError(M,N);else throw new Error(M)},"parseError"),setInput:o(function(L,M){return this.yy=M||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]),this.offset=0,this},"setInput"),input:o(function(){var L=this._input[0];this.yytext+=L,this.yyleng++,this.offset++,this.match+=L,this.matched+=L;var M=L.match(/(?:\r\n?|\n).*/g);return M?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),L},"input"),unput:o(function(L){var M=L.length,N=L.split(/(?:\r\n?|\n)/g);this._input=L+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-M),this.offset-=M;var k=this.match.split(/(?:\r\n?|\n)/g);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 I=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:N?(N.length===k.length?this.yylloc.first_column:0)+k[k.length-N.length].length-N[0].length:this.yylloc.first_column-M},this.options.ranges&&(this.yylloc.range=[I[0],I[0]+this.yyleng-M]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(L){this.unput(this.match.slice(L))},"less"),pastInput:o(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:o(function(){var L=this.match;return L.length<20&&(L+=this._input.substr(0,20-L.length)),(L.substr(0,20)+(L.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var L=this.pastInput(),M=new Array(L.length+1).join("-");return L+this.upcomingInput()+` `+M+"^"},"showPosition"),test_match:o(function(L,M){var N,k,I;if(this.options.backtrack_lexer&&(I={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(I.yylloc.range=this.yylloc.range.slice(0))),k=L[0].match(/(?:\r\n?|\n).*/g),k&&(this.yylineno+=k.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:k?k[k.length-1].length-k[k.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]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(L[0].length),this.matched+=L[0],N=this.performAction.call(this,this.yy,this,M,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),N)return N;if(this._backtrack){for(var C in I)this[C]=I[C];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var L,M,N,k;this._more||(this.yytext="",this.match="");for(var I=this._currentRules(),C=0;CM[0].length)){if(M=N,k=C,this.options.backtrack_lexer){if(L=this.test_match(N,I[C]),L!==!1)return L;if(this._backtrack){M=!1;continue}else return!1}else if(!this.options.flex)break}return M?(L=this.test_match(M,I[k]),L!==!1?L:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var M=this.next();return M||this.lex()},"lex"),begin:o(function(M){this.conditionStack.push(M)},"begin"),popState:o(function(){var M=this.conditionStack.length-1;return M>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(M){return M=this.conditionStack.length-1-Math.abs(M||0),M>=0?this.conditionStack[M]:"INITIAL"},"topState"),pushState:o(function(M){this.begin(M)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(M,N,k,I){var C=I;switch(k){case 0:return this.begin("acc_title"),22;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),24;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 10;case 8:break;case 9:return 8;case 10:return 28;case 11:return 48;case 12:return 4;case 13:return this.begin("block"),15;break;case 14:return 36;case 15:break;case 16:return 37;case 17:return 34;case 18:return 34;case 19:return 38;case 20:break;case 21:return this.popState(),17;break;case 22:return N.yytext[0];case 23:return 18;case 24:return 19;case 25:return 41;case 26:return 43;case 27:return 43;case 28:return 43;case 29:return 41;case 30:return 41;case 31:return 42;case 32:return 42;case 33:return 42;case 34:return 42;case 35:return 42;case 36:return 43;case 37:return 42;case 38:return 43;case 39:return 44;case 40:return 44;case 41:return 44;case 42:return 44;case 43:return 41;case 44:return 42;case 45:return 43;case 46:return 45;case 47:return 46;case 48:return 47;case 49:return 47;case 50:return 46;case 51:return 46;case 52:return 46;case 53:return 27;case 54:return N.yytext[0];case 55:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/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,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[14,15,16,17,18,19,20,21,22],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,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],inclusive:!0}}};return A}();T.lexer=E;function _(){this.yy={}}return o(_,"Parser"),_.prototype=T,T.Parser=_,new _}();ER.parser=ER;Qit=ER});var Kd,CR,jOt,KOt,Jit,QOt,ZOt,JOt,tPt,ePt,tat,eat=R(()=>{"use strict";ce();Ue();Ci();Kd=new Map,CR=[],jOt={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"},KOt={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},Jit=o(function(e,t=void 0){return Kd.has(e)?!Kd.get(e).alias&&t&&(Kd.get(e).alias=t,V.info(`Add alias '${t}' to entity '${e}'`)):(Kd.set(e,{attributes:[],alias:t}),V.info("Added new entity :",e)),Kd.get(e)},"addEntity"),QOt=o(()=>Kd,"getEntities"),ZOt=o(function(e,t){let r=Jit(e),n;for(n=t.length-1;n>=0;n--)r.attributes.push(t[n]),V.debug("Added attribute ",t[n].attributeName)},"addAttributes"),JOt=o(function(e,t,r,n){let i={entityA:e,roleA:t,entityB:r,relSpec:n};CR.push(i),V.debug("Added new relationship :",i)},"addRelationship"),tPt=o(()=>CR,"getRelationships"),ePt=o(function(){Kd=new Map,CR=[],Ar()},"clear"),tat={Cardinality:jOt,Identification:KOt,getConfig:o(()=>pt().er,"getConfig"),addEntity:Jit,addAttributes:ZOt,getEntities:QOt,addRelationship:JOt,getRelationships:tPt,clear:ePt,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,setDiagramTitle:cn,getDiagramTitle:Jr}});var Ol,rPt,Wo,rat=R(()=>{"use strict";Ol={ONLY_ONE_START:"ONLY_ONE_START",ONLY_ONE_END:"ONLY_ONE_END",ZERO_OR_ONE_START:"ZERO_OR_ONE_START",ZERO_OR_ONE_END:"ZERO_OR_ONE_END",ONE_OR_MORE_START:"ONE_OR_MORE_START",ONE_OR_MORE_END:"ONE_OR_MORE_END",ZERO_OR_MORE_START:"ZERO_OR_MORE_START",ZERO_OR_MORE_END:"ZERO_OR_MORE_END",MD_PARENT_END:"MD_PARENT_END",MD_PARENT_START:"MD_PARENT_START"},rPt=o(function(e,t){let r;e.append("defs").append("marker").attr("id",Ol.MD_PARENT_START).attr("refX",0).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"),e.append("defs").append("marker").attr("id",Ol.MD_PARENT_END).attr("refX",19).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"),e.append("defs").append("marker").attr("id",Ol.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),e.append("defs").append("marker").attr("id",Ol.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),r=e.append("defs").append("marker").attr("id",Ol.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",t.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),r.append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M9,0 L9,18"),r=e.append("defs").append("marker").attr("id",Ol.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",t.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),r.append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M21,0 L21,18"),e.append("defs").append("marker").attr("id",Ol.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),e.append("defs").append("marker").attr("id",Ol.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),r=e.append("defs").append("marker").attr("id",Ol.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",t.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),r.append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),r=e.append("defs").append("marker").attr("id",Ol.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",t.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),r.append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"insertMarkers"),Wo={ERMarkers:Ol,insertMarkers:rPt}});var nat,iat=R(()=>{"use strict";nat=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i});function nPt(e){return typeof e=="string"&&nat.test(e)}var aat,sat=R(()=>{"use strict";iat();o(nPt,"validate");aat=nPt});function oat(e,t=0){return Ta[e[t+0]]+Ta[e[t+1]]+Ta[e[t+2]]+Ta[e[t+3]]+"-"+Ta[e[t+4]]+Ta[e[t+5]]+"-"+Ta[e[t+6]]+Ta[e[t+7]]+"-"+Ta[e[t+8]]+Ta[e[t+9]]+"-"+Ta[e[t+10]]+Ta[e[t+11]]+Ta[e[t+12]]+Ta[e[t+13]]+Ta[e[t+14]]+Ta[e[t+15]]}var Ta,lat=R(()=>{"use strict";Ta=[];for(let e=0;e<256;++e)Ta.push((e+256).toString(16).slice(1));o(oat,"unsafeStringify")});function iPt(e){if(!aat(e))throw TypeError("Invalid UUID");let t,r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=t&255,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=t&255,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=t&255,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=t&255,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=t&255,r}var cat,uat=R(()=>{"use strict";sat();o(iPt,"parse");cat=iPt});function aPt(e){e=unescape(encodeURIComponent(e));let t=[];for(let r=0;r{"use strict";lat();uat();o(aPt,"stringToBytes");sPt="6ba7b810-9dad-11d1-80b4-00c04fd430c8",oPt="6ba7b811-9dad-11d1-80b4-00c04fd430c8";o(SR,"v35")});function lPt(e,t,r,n){switch(e){case 0:return t&r^~t&n;case 1:return t^r^n;case 2:return t&r^t&n^r&n;case 3:return t^r^n}}function AR(e,t){return e<>>32-t}function cPt(e){let t=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof e=="string"){let s=unescape(encodeURIComponent(e));e=[];for(let l=0;l>>0;p=d,d=f,f=AR(h,30)>>>0,h=u,u=y}r[0]=r[0]+u>>>0,r[1]=r[1]+h>>>0,r[2]=r[2]+f>>>0,r[3]=r[3]+d>>>0,r[4]=r[4]+p>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,r[0]&255,r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,r[1]&255,r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,r[2]&255,r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,r[3]&255,r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,r[4]&255]}var fat,dat=R(()=>{"use strict";o(lPt,"f");o(AR,"ROTL");o(cPt,"sha1");fat=cPt});var uPt,_R,pat=R(()=>{"use strict";hat();dat();uPt=SR("v5",80,fat),_R=uPt});var mat=R(()=>{"use strict";pat()});function bPt(e="",t=""){let r=e.replace(hPt,"");return`${yat(t)}${yat(r)}${_R(e,xPt)}`}function yat(e=""){return e.length>0?`${e}-`:""}var hPt,zi,l2,fPt,dPt,pPt,mPt,vat,gPt,gat,yPt,vPt,xPt,xat,bat=R(()=>{"use strict";wa();ur();Xd();Ue();ce();_r();rat();Jn();hr();mat();hPt=/[^\dA-Za-z](\W)*/g,zi={},l2=new Map,fPt=o(function(e){let t=Object.keys(e);for(let r of t)zi[r]=e[r]},"setConf"),dPt=o((e,t,r)=>{let n=zi.entityPadding/3,i=zi.entityPadding/3,a=zi.fontSize*.85,s=t.node().getBBox(),l=[],u=!1,h=!1,f=0,d=0,p=0,m=0,g=s.height+n*2,y=1;r.forEach(w=>{w.attributeKeyTypeList!==void 0&&w.attributeKeyTypeList.length>0&&(u=!0),w.attributeComment!==void 0&&(h=!0)}),r.forEach(w=>{let S=`${t.node().id}-attr-${y}`,T=0,E=yh(w.attributeType),_=e.append("text").classed("er entityLabel",!0).attr("id",`${S}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",pt().fontFamily).style("font-size",a+"px").text(E),A=e.append("text").classed("er entityLabel",!0).attr("id",`${S}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",pt().fontFamily).style("font-size",a+"px").text(w.attributeName),L={};L.tn=_,L.nn=A;let M=_.node().getBBox(),N=A.node().getBBox();if(f=Math.max(f,M.width),d=Math.max(d,N.width),T=Math.max(M.height,N.height),u){let k=w.attributeKeyTypeList!==void 0?w.attributeKeyTypeList.join(","):"",I=e.append("text").classed("er entityLabel",!0).attr("id",`${S}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",pt().fontFamily).style("font-size",a+"px").text(k);L.kn=I;let C=I.node().getBBox();p=Math.max(p,C.width),T=Math.max(T,C.height)}if(h){let k=e.append("text").classed("er entityLabel",!0).attr("id",`${S}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",pt().fontFamily).style("font-size",a+"px").text(w.attributeComment||"");L.cn=k;let I=k.node().getBBox();m=Math.max(m,I.width),T=Math.max(T,I.height)}L.height=T,l.push(L),g+=T+n*2,y+=1});let v=4;u&&(v+=2),h&&(v+=2);let x=f+d+p+m,b={width:Math.max(zi.minEntityWidth,Math.max(s.width+zi.entityPadding*2,x+i*v)),height:r.length>0?g:Math.max(zi.minEntityHeight,s.height+zi.entityPadding*2)};if(r.length>0){let w=Math.max(0,(b.width-x-i*v)/(v/2));t.attr("transform","translate("+b.width/2+","+(n+s.height/2)+")");let S=s.height+n*2,T="attributeBoxOdd";l.forEach(E=>{let _=S+n+E.height/2;E.tn.attr("transform","translate("+i+","+_+")");let A=e.insert("rect","#"+E.tn.node().id).classed(`er ${T}`,!0).attr("x",0).attr("y",S).attr("width",f+i*2+w).attr("height",E.height+n*2),L=parseFloat(A.attr("x"))+parseFloat(A.attr("width"));E.nn.attr("transform","translate("+(L+i)+","+_+")");let M=e.insert("rect","#"+E.nn.node().id).classed(`er ${T}`,!0).attr("x",L).attr("y",S).attr("width",d+i*2+w).attr("height",E.height+n*2),N=parseFloat(M.attr("x"))+parseFloat(M.attr("width"));if(u){E.kn.attr("transform","translate("+(N+i)+","+_+")");let k=e.insert("rect","#"+E.kn.node().id).classed(`er ${T}`,!0).attr("x",N).attr("y",S).attr("width",p+i*2+w).attr("height",E.height+n*2);N=parseFloat(k.attr("x"))+parseFloat(k.attr("width"))}h&&(E.cn.attr("transform","translate("+(N+i)+","+_+")"),e.insert("rect","#"+E.cn.node().id).classed(`er ${T}`,"true").attr("x",N).attr("y",S).attr("width",m+i*2+w).attr("height",E.height+n*2)),S+=E.height+n*2,T=T==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else b.height=Math.max(zi.minEntityHeight,g),t.attr("transform","translate("+b.width/2+","+b.height/2+")");return b},"drawAttributes"),pPt=o(function(e,t,r){let n=[...t.keys()],i;return n.forEach(function(a){let s=bPt(a,"entity");l2.set(a,s);let l=e.append("g").attr("id",s);i=i===void 0?s:i;let u="text-"+s,h=l.append("text").classed("er entityLabel",!0).attr("id",u).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",pt().fontFamily).style("font-size",zi.fontSize+"px").text(t.get(a).alias??a),{width:f,height:d}=dPt(l,h,t.get(a).attributes),m=l.insert("rect","#"+u).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",f).attr("height",d).node().getBBox();r.setNode(s,{width:m.width,height:m.height,shape:"rect",id:s})}),i},"drawEntities"),mPt=o(function(e,t){t.nodes().forEach(function(r){r!==void 0&&t.node(r)!==void 0&&e.select("#"+r).attr("transform","translate("+(t.node(r).x-t.node(r).width/2)+","+(t.node(r).y-t.node(r).height/2)+" )")})},"adjustEntities"),vat=o(function(e){return(e.entityA+e.roleA+e.entityB).replace(/\s/g,"")},"getEdgeName"),gPt=o(function(e,t){return e.forEach(function(r){t.setEdge(l2.get(r.entityA),l2.get(r.entityB),{relationship:r},vat(r))}),e},"addRelationships"),gat=0,yPt=o(function(e,t,r,n,i){gat++;let a=r.edge(l2.get(t.entityA),l2.get(t.entityB),vat(t)),s=ma().x(function(y){return y.x}).y(function(y){return y.y}).curve(Ts),l=e.insert("path","#"+n).classed("er relationshipLine",!0).attr("d",s(a.points)).style("stroke",zi.stroke).style("fill","none");t.relSpec.relType===i.db.Identification.NON_IDENTIFYING&&l.attr("stroke-dasharray","8,8");let u="";switch(zi.arrowMarkerAbsolute&&(u=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,u=u.replace(/\(/g,"\\("),u=u.replace(/\)/g,"\\)")),t.relSpec.cardA){case i.db.Cardinality.ZERO_OR_ONE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ZERO_OR_ONE_END+")");break;case i.db.Cardinality.ZERO_OR_MORE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ZERO_OR_MORE_END+")");break;case i.db.Cardinality.ONE_OR_MORE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ONE_OR_MORE_END+")");break;case i.db.Cardinality.ONLY_ONE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ONLY_ONE_END+")");break;case i.db.Cardinality.MD_PARENT:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.MD_PARENT_END+")");break}switch(t.relSpec.cardB){case i.db.Cardinality.ZERO_OR_ONE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ZERO_OR_ONE_START+")");break;case i.db.Cardinality.ZERO_OR_MORE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ZERO_OR_MORE_START+")");break;case i.db.Cardinality.ONE_OR_MORE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ONE_OR_MORE_START+")");break;case i.db.Cardinality.ONLY_ONE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ONLY_ONE_START+")");break;case i.db.Cardinality.MD_PARENT:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.MD_PARENT_START+")");break}let h=l.node().getTotalLength(),f=l.node().getPointAtLength(h*.5),d="rel"+gat,p=t.roleA.split(/
    /g),m=e.append("text").classed("er relationshipLabel",!0).attr("id",d).attr("x",f.x).attr("y",f.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",pt().fontFamily).style("font-size",zi.fontSize+"px");if(p.length==1)m.text(t.roleA);else{let y=-(p.length-1)*.5;p.forEach((v,x)=>{m.append("tspan").attr("x",f.x).attr("dy",`${x===0?y:1}em`).text(v)})}let g=m.node().getBBox();e.insert("rect","#"+d).classed("er relationshipLabelBox",!0).attr("x",f.x-g.width/2).attr("y",f.y-g.height/2).attr("width",g.width).attr("height",g.height)},"drawRelationshipFromLayout"),vPt=o(function(e,t,r,n){zi=pt().er,V.info("Drawing ER diagram");let i=pt().securityLevel,a;i==="sandbox"&&(a=Gt("#i"+t));let l=(i==="sandbox"?Gt(a.nodes()[0].contentDocument.body):Gt("body")).select(`[id='${t}']`);Wo.insertMarkers(l,zi);let u;u=new yr({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:zi.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let h=pPt(l,n.db.getEntities(),u),f=gPt(n.db.getRelationships(),u);co(u),mPt(l,u),f.forEach(function(y){yPt(l,y,u,h,n)});let d=zi.diagramPadding;Oe.insertTitle(l,"entityTitleText",zi.titleTopMargin,n.db.getDiagramTitle());let p=l.node().getBBox(),m=p.width+d*2,g=p.height+d*2;Pr(l,g,m,zi.useMaxWidth),l.attr("viewBox",`${p.x-d} ${p.y-d} ${m} ${g}`)},"draw"),xPt="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";o(bPt,"generateId");o(yat,"strWithHyphen");xat={setConf:fPt,draw:vPt}});var wPt,wat,Tat=R(()=>{"use strict";wPt=o(e=>` .entityBox { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; } .attributeBoxOdd { fill: ${e.attributeBackgroundColorOdd}; stroke: ${e.nodeBorder}; } .attributeBoxEven { fill: ${e.attributeBackgroundColorEven}; stroke: ${e.nodeBorder}; } .relationshipLabelBox { fill: ${e.tertiaryColor}; opacity: 0.7; background-color: ${e.tertiaryColor}; rect { opacity: 0.5; } } .relationshipLine { stroke: ${e.lineColor}; } .entityTitleText { text-anchor: middle; font-size: 18px; fill: ${e.textColor}; } #MD_PARENT_START { fill: #f5f5f5 !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #MD_PARENT_END { fill: #f5f5f5 !important; stroke: ${e.lineColor} !important; stroke-width: 1; } `,"getStyles"),wat=wPt});var kat={};xr(kat,{diagram:()=>TPt});var TPt,Eat=R(()=>{"use strict";Zit();eat();bat();Tat();TPt={parser:Qit,db:tat,renderer:xat,styles:wat}});function ri(e){return typeof e=="object"&&e!==null&&typeof e.$type=="string"}function ka(e){return typeof e=="object"&&e!==null&&typeof e.$refText=="string"}function LR(e){return typeof e=="object"&&e!==null&&typeof e.name=="string"&&typeof e.type=="string"&&typeof e.path=="string"}function Zd(e){return typeof e=="object"&&e!==null&&ri(e.container)&&ka(e.reference)&&typeof e.message=="string"}function uo(e){return typeof e=="object"&&e!==null&&Array.isArray(e.content)}function sf(e){return typeof e=="object"&&e!==null&&typeof e.tokenType=="object"}function c2(e){return uo(e)&&typeof e.fullText=="string"}var Qd,Yo=R(()=>{"use strict";o(ri,"isAstNode");o(ka,"isReference");o(LR,"isAstNodeDescription");o(Zd,"isLinkingError");Qd=class{static{o(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}isInstance(t,r){return ri(t)&&this.isSubtype(t.$type,r)}isSubtype(t,r){if(t===r)return!0;let n=this.subtypes[t];n||(n=this.subtypes[t]={});let i=n[r];if(i!==void 0)return i;{let a=this.computeIsSubtype(t,r);return n[r]=a,a}}getAllSubTypes(t){let r=this.allSubtypes[t];if(r)return r;{let n=this.getAllTypes(),i=[];for(let a of n)this.isSubtype(a,t)&&i.push(a);return this.allSubtypes[t]=i,i}}};o(uo,"isCompositeCstNode");o(sf,"isLeafCstNode");o(c2,"isRootCstNode")});function SPt(e){return typeof e=="string"?e:typeof e>"u"?"undefined":typeof e.toString=="function"?e.toString():Object.prototype.toString.call(e)}function rk(e){return!!e&&typeof e[Symbol.iterator]=="function"}function en(...e){if(e.length===1){let t=e[0];if(t instanceof ho)return t;if(rk(t))return new ho(()=>t[Symbol.iterator](),r=>r.next());if(typeof t.length=="number")return new ho(()=>({index:0}),r=>r.index1?new ho(()=>({collIndex:0,arrIndex:0}),t=>{do{if(t.iterator){let r=t.iterator.next();if(!r.done)return r;t.iterator=void 0}if(t.array){if(t.arrIndex{"use strict";ho=class e{static{o(this,"StreamImpl")}constructor(t,r){this.startFn=t,this.nextFn=r}iterator(){let t={state:this.startFn(),next:o(()=>this.nextFn(t.state),"next"),[Symbol.iterator]:()=>t};return t}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let t=this.iterator(),r=0,n=t.next();for(;!n.done;)r++,n=t.next();return r}toArray(){let t=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&t.push(n.value);while(!n.done);return t}toSet(){return new Set(this)}toMap(t,r){let n=this.map(i=>[t?t(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(t){let r=t[Symbol.iterator]();return new e(()=>({first:this.startFn(),firstDone:!1}),n=>{let i;if(!n.firstDone){do if(i=this.nextFn(n.first),!i.done)return i;while(!i.done);n.firstDone=!0}do if(i=r.next(),!i.done)return i;while(!i.done);return ns})}join(t=","){let r=this.iterator(),n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=t),n+=SPt(i.value)),a=!0;while(!i.done);return n}indexOf(t,r=0){let n=this.iterator(),i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===t)return i;a=n.next(),i++}return-1}every(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(!t(n.value))return!1;n=r.next()}return!0}some(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(t(n.value))return!0;n=r.next()}return!1}forEach(t){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)t(i.value,n),i=r.next(),n++}map(t){return new e(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?ns:{done:!1,value:t(i)}})}filter(t){return new e(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&t(n.value))return n;while(!n.done);return ns})}nonNullable(){return this.filter(t=>t!=null)}reduce(t,r){let n=this.iterator(),i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=t(i,a.value),a=n.next();return i}reduceRight(t,r){return this.recursiveReduce(this.iterator(),t,r)}recursiveReduce(t,r,n){let i=t.next();if(i.done)return n;let a=this.recursiveReduce(t,r,n);return a===void 0?i.value:r(a,i.value)}find(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(t(n.value))return n.value;n=r.next()}}findIndex(t){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(t(i.value))return n;i=r.next(),n++}return-1}includes(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===t)return!0;n=r.next()}return!1}flatMap(t){return new e(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}let{done:n,value:i}=this.nextFn(r.this);if(!n){let a=t(i);if(rk(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return ns})}flat(t){if(t===void 0&&(t=1),t<=0)return this;let r=t>1?this.flat(t-1):this;return new e(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}let{done:i,value:a}=r.nextFn(n.this);if(!i)if(rk(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return ns})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(t=1){return new e(()=>{let r=this.startFn();for(let n=0;n({size:0,state:this.startFn()}),r=>(r.size++,r.size>t?ns:this.nextFn(r.state)))}distinct(t){let r=new Set;return this.filter(n=>{let i=t?t(n):n;return r.has(i)?!1:(r.add(i),!0)})}exclude(t,r){let n=new Set;for(let i of t){let a=r?r(i):i;n.add(a)}return this.filter(i=>{let a=r?r(i):i;return!n.has(a)})}};o(SPt,"toString");o(rk,"isIterable");u2=new ho(()=>{},()=>ns),ns=Object.freeze({done:!0,value:void 0});o(en,"stream");Ic=class extends ho{static{o(this,"TreeStreamImpl")}constructor(t,r,n){super(()=>({iterators:n?.includeRoot?[[t][Symbol.iterator]()]:[r(t)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return ns})}iterator(){let t={state:this.startFn(),next:o(()=>this.nextFn(t.state),"next"),prune:o(()=>{t.state.pruned=!0},"prune"),[Symbol.iterator]:()=>t};return t}};(function(e){function t(a){return a.reduce((s,l)=>s+l,0)}o(t,"sum"),e.sum=t;function r(a){return a.reduce((s,l)=>s*l,0)}o(r,"product"),e.product=r;function n(a){return a.reduce((s,l)=>Math.min(s,l))}o(n,"min"),e.min=n;function i(a){return a.reduce((s,l)=>Math.max(s,l))}o(i,"max"),e.max=i})(Jm||(Jm={}))});var ik={};xr(ik,{DefaultNameRegexp:()=>nk,RangeComparison:()=>Fu,compareRange:()=>_at,findCommentNode:()=>MR,findDeclarationNodeAtOffset:()=>_Pt,findLeafNodeAtOffset:()=>IR,findLeafNodeBeforeOffset:()=>Lat,flattenCst:()=>APt,getInteriorNodes:()=>RPt,getNextNode:()=>LPt,getPreviousNode:()=>Rat,getStartlineNode:()=>DPt,inRange:()=>NR,isChildNode:()=>RR,isCommentNode:()=>DR,streamCst:()=>Jd,toDocumentSegment:()=>t0,tokenToRange:()=>tg});function Jd(e){return new Ic(e,t=>uo(t)?t.content:[],{includeRoot:!0})}function APt(e){return Jd(e).filter(sf)}function RR(e,t){for(;e.container;)if(e=e.container,e===t)return!0;return!1}function tg(e){return{start:{character:e.startColumn-1,line:e.startLine-1},end:{character:e.endColumn,line:e.endLine-1}}}function t0(e){if(!e)return;let{offset:t,end:r,range:n}=e;return{range:n,offset:t,end:r,length:r-t}}function _at(e,t){if(e.end.linet.end.line||e.start.line===t.end.line&&e.start.character>t.end.character)return Fu.After;let r=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,n=e.end.lineFu.After}function _Pt(e,t,r=nk){if(e){if(t>0){let n=t-e.offset,i=e.text.charAt(n);r.test(i)||t--}return IR(e,t)}}function MR(e,t){if(e){let r=Rat(e,!0);if(r&&DR(r,t))return r;if(c2(e)){let n=e.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let a=e.content[i];if(DR(a,t))return a}}}}function DR(e,t){return sf(e)&&t.includes(e.tokenType.name)}function IR(e,t){if(sf(e))return e;if(uo(e)){let r=Dat(e,t,!1);if(r)return IR(r,t)}}function Lat(e,t){if(sf(e))return e;if(uo(e)){let r=Dat(e,t,!0);if(r)return Lat(r,t)}}function Dat(e,t,r){let n=0,i=e.content.length-1,a;for(;n<=i;){let s=Math.floor((n+i)/2),l=e.content[s];if(l.offset<=t&&l.end>t)return l;l.end<=t?(a=r?l:void 0,n=s+1):i=s-1}return a}function Rat(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e);for(;n>0;){n--;let i=r.content[n];if(t||!i.hidden)return i}e=r}}function LPt(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e),i=r.content.length-1;for(;n{"use strict";Yo();Ps();o(Jd,"streamCst");o(APt,"flattenCst");o(RR,"isChildNode");o(tg,"tokenToRange");o(t0,"toDocumentSegment");(function(e){e[e.Before=0]="Before",e[e.After=1]="After",e[e.OverlapFront=2]="OverlapFront",e[e.OverlapBack=3]="OverlapBack",e[e.Inside=4]="Inside"})(Fu||(Fu={}));o(_at,"compareRange");o(NR,"inRange");nk=/^[\w\p{L}]$/u;o(_Pt,"findDeclarationNodeAtOffset");o(MR,"findCommentNode");o(DR,"isCommentNode");o(IR,"findLeafNodeAtOffset");o(Lat,"findLeafNodeBeforeOffset");o(Dat,"binarySearch");o(Rat,"getPreviousNode");o(LPt,"getNextNode");o(DPt,"getStartlineNode");o(RPt,"getInteriorNodes");o(NPt,"getCommonParent");o(Aat,"getParentChain")});function of(e){throw new Error("Error! The input value was not handled.")}var e0,ak=R(()=>{"use strict";e0=class extends Error{static{o(this,"ErrorWithLocation")}constructor(t,r){super(t?`${r} at ${t.range.start.line}:${t.range.start.character}`:r)}};o(of,"assertUnreachable")});var m2={};xr(m2,{AbstractElement:()=>PR,AbstractRule:()=>h2,AbstractType:()=>f2,Action:()=>uN,Alternatives:()=>hN,ArrayLiteral:()=>BR,ArrayType:()=>FR,Assignment:()=>fN,BooleanLiteral:()=>$R,CharacterRange:()=>dN,Condition:()=>sk,Conjunction:()=>VR,CrossReference:()=>mN,Disjunction:()=>HR,EndOfFile:()=>gN,Grammar:()=>YR,GrammarImport:()=>Mat,Group:()=>vN,InferredType:()=>qR,Interface:()=>XR,Keyword:()=>xN,LangiumGrammarAstReflection:()=>eg,LangiumGrammarTerminals:()=>MPt,NamedArgument:()=>Iat,NegatedToken:()=>bN,Negation:()=>jR,NumberLiteral:()=>QR,Parameter:()=>ZR,ParameterReference:()=>JR,ParserRule:()=>eN,ReferenceType:()=>rN,RegexToken:()=>TN,ReturnType:()=>Oat,RuleCall:()=>EN,SimpleType:()=>aN,StringLiteral:()=>sN,TerminalAlternatives:()=>CN,TerminalGroup:()=>AN,TerminalRule:()=>lk,TerminalRuleCall:()=>LN,Type:()=>oN,TypeAttribute:()=>Pat,TypeDefinition:()=>OR,UnionType:()=>lN,UnorderedGroup:()=>DN,UntilToken:()=>RN,ValueLiteral:()=>ok,Wildcard:()=>MN,isAbstractElement:()=>d2,isAbstractRule:()=>IPt,isAbstractType:()=>OPt,isAction:()=>zu,isAlternatives:()=>fk,isArrayLiteral:()=>$Pt,isArrayType:()=>zR,isAssignment:()=>Bl,isBooleanLiteral:()=>GR,isCharacterRange:()=>pN,isCondition:()=>PPt,isConjunction:()=>UR,isCrossReference:()=>r0,isDisjunction:()=>WR,isEndOfFile:()=>yN,isFeatureName:()=>BPt,isGrammar:()=>GPt,isGrammarImport:()=>VPt,isGroup:()=>lf,isInferredType:()=>ck,isInterface:()=>uk,isKeyword:()=>Xo,isNamedArgument:()=>UPt,isNegatedToken:()=>wN,isNegation:()=>KR,isNumberLiteral:()=>HPt,isParameter:()=>WPt,isParameterReference:()=>tN,isParserRule:()=>$a,isPrimitiveType:()=>Nat,isReferenceType:()=>nN,isRegexToken:()=>kN,isReturnType:()=>iN,isRuleCall:()=>Fl,isSimpleType:()=>hk,isStringLiteral:()=>YPt,isTerminalAlternatives:()=>SN,isTerminalGroup:()=>_N,isTerminalRule:()=>qo,isTerminalRuleCall:()=>dk,isType:()=>p2,isTypeAttribute:()=>qPt,isTypeDefinition:()=>FPt,isUnionType:()=>cN,isUnorderedGroup:()=>pk,isUntilToken:()=>NN,isValueLiteral:()=>zPt,isWildcard:()=>IN,reflection:()=>lr});function IPt(e){return lr.isInstance(e,h2)}function OPt(e){return lr.isInstance(e,f2)}function PPt(e){return lr.isInstance(e,sk)}function BPt(e){return Nat(e)||e==="current"||e==="entry"||e==="extends"||e==="false"||e==="fragment"||e==="grammar"||e==="hidden"||e==="import"||e==="interface"||e==="returns"||e==="terminal"||e==="true"||e==="type"||e==="infer"||e==="infers"||e==="with"||typeof e=="string"&&/\^?[_a-zA-Z][\w_]*/.test(e)}function Nat(e){return e==="string"||e==="number"||e==="boolean"||e==="Date"||e==="bigint"}function FPt(e){return lr.isInstance(e,OR)}function zPt(e){return lr.isInstance(e,ok)}function d2(e){return lr.isInstance(e,PR)}function $Pt(e){return lr.isInstance(e,BR)}function zR(e){return lr.isInstance(e,FR)}function GR(e){return lr.isInstance(e,$R)}function UR(e){return lr.isInstance(e,VR)}function WR(e){return lr.isInstance(e,HR)}function GPt(e){return lr.isInstance(e,YR)}function VPt(e){return lr.isInstance(e,Mat)}function ck(e){return lr.isInstance(e,qR)}function uk(e){return lr.isInstance(e,XR)}function UPt(e){return lr.isInstance(e,Iat)}function KR(e){return lr.isInstance(e,jR)}function HPt(e){return lr.isInstance(e,QR)}function WPt(e){return lr.isInstance(e,ZR)}function tN(e){return lr.isInstance(e,JR)}function $a(e){return lr.isInstance(e,eN)}function nN(e){return lr.isInstance(e,rN)}function iN(e){return lr.isInstance(e,Oat)}function hk(e){return lr.isInstance(e,aN)}function YPt(e){return lr.isInstance(e,sN)}function qo(e){return lr.isInstance(e,lk)}function p2(e){return lr.isInstance(e,oN)}function qPt(e){return lr.isInstance(e,Pat)}function cN(e){return lr.isInstance(e,lN)}function zu(e){return lr.isInstance(e,uN)}function fk(e){return lr.isInstance(e,hN)}function Bl(e){return lr.isInstance(e,fN)}function pN(e){return lr.isInstance(e,dN)}function r0(e){return lr.isInstance(e,mN)}function yN(e){return lr.isInstance(e,gN)}function lf(e){return lr.isInstance(e,vN)}function Xo(e){return lr.isInstance(e,xN)}function wN(e){return lr.isInstance(e,bN)}function kN(e){return lr.isInstance(e,TN)}function Fl(e){return lr.isInstance(e,EN)}function SN(e){return lr.isInstance(e,CN)}function _N(e){return lr.isInstance(e,AN)}function dk(e){return lr.isInstance(e,LN)}function pk(e){return lr.isInstance(e,DN)}function NN(e){return lr.isInstance(e,RN)}function IN(e){return lr.isInstance(e,MN)}var MPt,h2,f2,sk,OR,ok,PR,BR,FR,$R,VR,HR,YR,Mat,qR,XR,Iat,jR,QR,ZR,JR,eN,rN,Oat,aN,sN,lk,oN,Pat,lN,uN,hN,fN,dN,mN,gN,vN,xN,bN,TN,EN,CN,AN,LN,DN,RN,MN,eg,lr,Oc=R(()=>{"use strict";Yo();MPt={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]*/},h2="AbstractRule";o(IPt,"isAbstractRule");f2="AbstractType";o(OPt,"isAbstractType");sk="Condition";o(PPt,"isCondition");o(BPt,"isFeatureName");o(Nat,"isPrimitiveType");OR="TypeDefinition";o(FPt,"isTypeDefinition");ok="ValueLiteral";o(zPt,"isValueLiteral");PR="AbstractElement";o(d2,"isAbstractElement");BR="ArrayLiteral";o($Pt,"isArrayLiteral");FR="ArrayType";o(zR,"isArrayType");$R="BooleanLiteral";o(GR,"isBooleanLiteral");VR="Conjunction";o(UR,"isConjunction");HR="Disjunction";o(WR,"isDisjunction");YR="Grammar";o(GPt,"isGrammar");Mat="GrammarImport";o(VPt,"isGrammarImport");qR="InferredType";o(ck,"isInferredType");XR="Interface";o(uk,"isInterface");Iat="NamedArgument";o(UPt,"isNamedArgument");jR="Negation";o(KR,"isNegation");QR="NumberLiteral";o(HPt,"isNumberLiteral");ZR="Parameter";o(WPt,"isParameter");JR="ParameterReference";o(tN,"isParameterReference");eN="ParserRule";o($a,"isParserRule");rN="ReferenceType";o(nN,"isReferenceType");Oat="ReturnType";o(iN,"isReturnType");aN="SimpleType";o(hk,"isSimpleType");sN="StringLiteral";o(YPt,"isStringLiteral");lk="TerminalRule";o(qo,"isTerminalRule");oN="Type";o(p2,"isType");Pat="TypeAttribute";o(qPt,"isTypeAttribute");lN="UnionType";o(cN,"isUnionType");uN="Action";o(zu,"isAction");hN="Alternatives";o(fk,"isAlternatives");fN="Assignment";o(Bl,"isAssignment");dN="CharacterRange";o(pN,"isCharacterRange");mN="CrossReference";o(r0,"isCrossReference");gN="EndOfFile";o(yN,"isEndOfFile");vN="Group";o(lf,"isGroup");xN="Keyword";o(Xo,"isKeyword");bN="NegatedToken";o(wN,"isNegatedToken");TN="RegexToken";o(kN,"isRegexToken");EN="RuleCall";o(Fl,"isRuleCall");CN="TerminalAlternatives";o(SN,"isTerminalAlternatives");AN="TerminalGroup";o(_N,"isTerminalGroup");LN="TerminalRuleCall";o(dk,"isTerminalRuleCall");DN="UnorderedGroup";o(pk,"isUnorderedGroup");RN="UntilToken";o(NN,"isUntilToken");MN="Wildcard";o(IN,"isWildcard");eg=class extends Qd{static{o(this,"LangiumGrammarAstReflection")}getAllTypes(){return["AbstractElement","AbstractRule","AbstractType","Action","Alternatives","ArrayLiteral","ArrayType","Assignment","BooleanLiteral","CharacterRange","Condition","Conjunction","CrossReference","Disjunction","EndOfFile","Grammar","GrammarImport","Group","InferredType","Interface","Keyword","NamedArgument","NegatedToken","Negation","NumberLiteral","Parameter","ParameterReference","ParserRule","ReferenceType","RegexToken","ReturnType","RuleCall","SimpleType","StringLiteral","TerminalAlternatives","TerminalGroup","TerminalRule","TerminalRuleCall","Type","TypeAttribute","TypeDefinition","UnionType","UnorderedGroup","UntilToken","ValueLiteral","Wildcard"]}computeIsSubtype(t,r){switch(t){case uN:case hN:case fN:case dN:case mN:case gN:case vN:case xN:case bN:case TN:case EN:case CN:case AN:case LN:case DN:case RN:case MN:return this.isSubtype(PR,r);case BR:case QR:case sN:return this.isSubtype(ok,r);case FR:case rN:case aN:case lN:return this.isSubtype(OR,r);case $R:return this.isSubtype(sk,r)||this.isSubtype(ok,r);case VR:case HR:case jR:case JR:return this.isSubtype(sk,r);case qR:case XR:case oN:return this.isSubtype(f2,r);case eN:return this.isSubtype(h2,r)||this.isSubtype(f2,r);case lk:return this.isSubtype(h2,r);default:return!1}}getReferenceType(t){let r=`${t.container.$type}:${t.property}`;switch(r){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return f2;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return h2;case"Grammar:usedGrammars":return YR;case"NamedArgument:parameter":case"ParameterReference:parameter":return ZR;case"TerminalRuleCall:rule":return lk;default:throw new Error(`${r} is not a valid reference id.`)}}getTypeMetaData(t){switch(t){case"AbstractElement":return{name:"AbstractElement",properties:[{name:"cardinality"},{name:"lookahead"}]};case"ArrayLiteral":return{name:"ArrayLiteral",properties:[{name:"elements",defaultValue:[]}]};case"ArrayType":return{name:"ArrayType",properties:[{name:"elementType"}]};case"BooleanLiteral":return{name:"BooleanLiteral",properties:[{name:"true",defaultValue:!1}]};case"Conjunction":return{name:"Conjunction",properties:[{name:"left"},{name:"right"}]};case"Disjunction":return{name:"Disjunction",properties:[{name:"left"},{name:"right"}]};case"Grammar":return{name:"Grammar",properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case"GrammarImport":return{name:"GrammarImport",properties:[{name:"path"}]};case"InferredType":return{name:"InferredType",properties:[{name:"name"}]};case"Interface":return{name:"Interface",properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case"NamedArgument":return{name:"NamedArgument",properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case"Negation":return{name:"Negation",properties:[{name:"value"}]};case"NumberLiteral":return{name:"NumberLiteral",properties:[{name:"value"}]};case"Parameter":return{name:"Parameter",properties:[{name:"name"}]};case"ParameterReference":return{name:"ParameterReference",properties:[{name:"parameter"}]};case"ParserRule":return{name:"ParserRule",properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case"ReferenceType":return{name:"ReferenceType",properties:[{name:"referenceType"}]};case"ReturnType":return{name:"ReturnType",properties:[{name:"name"}]};case"SimpleType":return{name:"SimpleType",properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case"StringLiteral":return{name:"StringLiteral",properties:[{name:"value"}]};case"TerminalRule":return{name:"TerminalRule",properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case"Type":return{name:"Type",properties:[{name:"name"},{name:"type"}]};case"TypeAttribute":return{name:"TypeAttribute",properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case"UnionType":return{name:"UnionType",properties:[{name:"types",defaultValue:[]}]};case"Action":return{name:"Action",properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case"Alternatives":return{name:"Alternatives",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"Assignment":return{name:"Assignment",properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case"CharacterRange":return{name:"CharacterRange",properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case"CrossReference":return{name:"CrossReference",properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case"EndOfFile":return{name:"EndOfFile",properties:[{name:"cardinality"},{name:"lookahead"}]};case"Group":return{name:"Group",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case"Keyword":return{name:"Keyword",properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case"NegatedToken":return{name:"NegatedToken",properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case"RegexToken":return{name:"RegexToken",properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case"RuleCall":return{name:"RuleCall",properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case"TerminalAlternatives":return{name:"TerminalAlternatives",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"TerminalGroup":return{name:"TerminalGroup",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"TerminalRuleCall":return{name:"TerminalRuleCall",properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case"UnorderedGroup":return{name:"UnorderedGroup",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"UntilToken":return{name:"UntilToken",properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case"Wildcard":return{name:"Wildcard",properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:t,properties:[]}}}},lr=new eg});var gk={};xr(gk,{assignMandatoryProperties:()=>BN,copyAstNode:()=>PN,findLocalReferences:()=>jPt,findRootNode:()=>Bat,getContainerOfType:()=>n0,getDocument:()=>$i,hasContainerOfType:()=>XPt,linkContentToContainer:()=>mk,streamAllContents:()=>Pc,streamAst:()=>jo,streamContents:()=>g2,streamReferences:()=>rg});function mk(e){for(let[t,r]of Object.entries(e))t.startsWith("$")||(Array.isArray(r)?r.forEach((n,i)=>{ri(n)&&(n.$container=e,n.$containerProperty=t,n.$containerIndex=i)}):ri(r)&&(r.$container=e,r.$containerProperty=t))}function n0(e,t){let r=e;for(;r;){if(t(r))return r;r=r.$container}}function XPt(e,t){let r=e;for(;r;){if(t(r))return!0;r=r.$container}return!1}function $i(e){let r=Bat(e).$document;if(!r)throw new Error("AST node has no document.");return r}function Bat(e){for(;e.$container;)e=e.$container;return e}function g2(e,t){if(!e)throw new Error("Node must be an AstNode.");let r=t?.range;return new ho(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndexg2(r,t))}function jo(e,t){if(e){if(t?.range&&!ON(e,t.range))return new Ic(e,()=>[])}else throw new Error("Root node must be an AstNode.");return new Ic(e,r=>g2(r,t),{includeRoot:!0})}function ON(e,t){var r;if(!t)return!0;let n=(r=e.$cstNode)===null||r===void 0?void 0:r.range;return n?NR(n,t):!1}function rg(e){return new ho(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex{rg(n).forEach(i=>{i.reference.ref===e&&r.push(i.reference)})}),en(r)}function BN(e,t){let r=e.getTypeMetaData(t.$type),n=t;for(let i of r.properties)i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=Fat(i.defaultValue))}function Fat(e){return Array.isArray(e)?[...e.map(Fat)]:e}function PN(e,t){let r={$type:e.$type};for(let[n,i]of Object.entries(e))if(!n.startsWith("$"))if(ri(i))r[n]=PN(i,t);else if(ka(i))r[n]=t(r,n,i.$refNode,i.$refText);else if(Array.isArray(i)){let a=[];for(let s of i)ri(s)?a.push(PN(s,t)):ka(s)?a.push(t(r,n,s.$refNode,s.$refText)):a.push(s);r[n]=a}else r[n]=i;return mk(r),r}var is=R(()=>{"use strict";Yo();Ps();Pl();o(mk,"linkContentToContainer");o(n0,"getContainerOfType");o(XPt,"hasContainerOfType");o($i,"getDocument");o(Bat,"findRootNode");o(g2,"streamContents");o(Pc,"streamAllContents");o(jo,"streamAst");o(ON,"isAstNodeInRange");o(rg,"streamReferences");o(jPt,"findLocalReferences");o(BN,"assignMandatoryProperties");o(Fat,"copyDefaultValue");o(PN,"copyAstNode")});function ar(e){return e.charCodeAt(0)}function yk(e,t){Array.isArray(e)?e.forEach(function(r){t.push(r)}):t.push(e)}function ng(e,t){if(e[t]===!0)throw"duplicate flag "+t;let r=e[t];e[t]=!0}function i0(e){if(e===void 0)throw Error("Internal Error - Should never get here!");return!0}function y2(){throw Error("Internal Error - Should never get here!")}function FN(e){return e.type==="Character"}var zN=R(()=>{"use strict";o(ar,"cc");o(yk,"insertToSet");o(ng,"addFlag");o(i0,"ASSERT_EXISTS");o(y2,"ASSERT_NEVER_REACH_HERE");o(FN,"isCharacter")});var v2,x2,$N,zat=R(()=>{"use strict";zN();v2=[];for(let e=ar("0");e<=ar("9");e++)v2.push(e);x2=[ar("_")].concat(v2);for(let e=ar("a");e<=ar("z");e++)x2.push(e);for(let e=ar("A");e<=ar("Z");e++)x2.push(e);$N=[ar(" "),ar("\f"),ar(` `),ar("\r"),ar(" "),ar("\v"),ar(" "),ar("\xA0"),ar("\u1680"),ar("\u2000"),ar("\u2001"),ar("\u2002"),ar("\u2003"),ar("\u2004"),ar("\u2005"),ar("\u2006"),ar("\u2007"),ar("\u2008"),ar("\u2009"),ar("\u200A"),ar("\u2028"),ar("\u2029"),ar("\u202F"),ar("\u205F"),ar("\u3000"),ar("\uFEFF")]});var KPt,vk,QPt,a0,$at=R(()=>{"use strict";zN();zat();KPt=/[0-9a-fA-F]/,vk=/[0-9]/,QPt=/[1-9]/,a0=class{static{o(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(t){this.idx=t.idx,this.input=t.input,this.groupIdx=t.groupIdx}pattern(t){this.idx=0,this.input=t,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:t.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":ng(n,"global");break;case"i":ng(n,"ignoreCase");break;case"m":ng(n,"multiLine");break;case"u":ng(n,"unicode");break;case"y":ng(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let t=[],r=this.idx;for(t.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),t.push(this.alternative());return{type:"Disjunction",value:t,loc:this.loc(r)}}alternative(){let t=[],r=this.idx;for(;this.isTerm();)t.push(this.term());return{type:"Alternative",value:t,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let t=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(t)};case"$":return{type:"EndAnchor",loc:this.loc(t)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(t)};case"B":return{type:"NonWordBoundary",loc:this.loc(t)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break}i0(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(t)}}return y2()}quantifier(t=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),r={atLeast:i,atMost:a}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(t===!0&&r===void 0)return;i0(r);break}if(!(t===!0&&r===void 0)&&i0(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let t,r=this.idx;switch(this.peekChar()){case".":t=this.dotAll();break;case"\\":t=this.atomEscape();break;case"[":t=this.characterClass();break;case"(":t=this.group();break}return t===void 0&&this.isPatternCharacter()&&(t=this.patternCharacter()),i0(t)?(t.loc=this.loc(r),this.isQuantifier()&&(t.quantifier=this.quantifier()),t):y2()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[ar(` `),ar("\r"),ar("\u2028"),ar("\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 t,r=!1;switch(this.popChar()){case"d":t=v2;break;case"D":t=v2,r=!0;break;case"s":t=$N;break;case"S":t=$N,r=!0;break;case"w":t=x2;break;case"W":t=x2,r=!0;break}return i0(t)?{type:"Set",value:t,complement:r}:y2()}controlEscapeAtom(){let t;switch(this.popChar()){case"f":t=ar("\f");break;case"n":t=ar(` `);break;case"r":t=ar("\r");break;case"t":t=ar(" ");break;case"v":t=ar("\v");break}return i0(t)?{type:"Character",value:t}:y2()}controlLetterEscapeAtom(){this.consumeChar("c");let t=this.popChar();if(/[a-zA-Z]/.test(t)===!1)throw Error("Invalid ");return{type:"Character",value:t.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:ar("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let t=this.popChar();return{type:"Character",value:ar(t)}}classPatternCharacterAtom(){switch(this.peekChar()){case` `:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let t=this.popChar();return{type:"Character",value:ar(t)}}}characterClass(){let t=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(FN(n)&&this.isRangeDash()){this.consumeChar("-");let a=this.classAtom(),s=a.type==="Character";if(FN(a)){if(a.value=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(t){return{begin:t,end:this.idx}}}});var Bc,Gat=R(()=>{"use strict";Bc=class{static{o(this,"BaseRegExpVisitor")}visitChildren(t){for(let r in t){let n=t[r];t.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(t){switch(t.type){case"Pattern":this.visitPattern(t);break;case"Flags":this.visitFlags(t);break;case"Disjunction":this.visitDisjunction(t);break;case"Alternative":this.visitAlternative(t);break;case"StartAnchor":this.visitStartAnchor(t);break;case"EndAnchor":this.visitEndAnchor(t);break;case"WordBoundary":this.visitWordBoundary(t);break;case"NonWordBoundary":this.visitNonWordBoundary(t);break;case"Lookahead":this.visitLookahead(t);break;case"NegativeLookahead":this.visitNegativeLookahead(t);break;case"Character":this.visitCharacter(t);break;case"Set":this.visitSet(t);break;case"Group":this.visitGroup(t);break;case"GroupBackReference":this.visitGroupBackReference(t);break;case"Quantifier":this.visitQuantifier(t);break}this.visitChildren(t)}visitPattern(t){}visitFlags(t){}visitDisjunction(t){}visitAlternative(t){}visitStartAnchor(t){}visitEndAnchor(t){}visitWordBoundary(t){}visitNonWordBoundary(t){}visitLookahead(t){}visitNegativeLookahead(t){}visitCharacter(t){}visitSet(t){}visitGroup(t){}visitGroupBackReference(t){}visitQuantifier(t){}}});var b2=R(()=>{"use strict";$at();Gat()});var bk={};xr(bk,{NEWLINE_REGEXP:()=>VN,escapeRegExp:()=>o0,getCaseInsensitivePattern:()=>HN,getTerminalParts:()=>ZPt,isMultilineComment:()=>UN,isWhitespace:()=>xk,partialMatches:()=>WN,partialRegExp:()=>Uat});function ZPt(e){try{typeof e!="string"&&(e=e.source),e=`/${e}/`;let t=Vat.pattern(e),r=[];for(let n of t.value.value)s0.reset(e),s0.visit(n),r.push({start:s0.startRegexp,end:s0.endRegex});return r}catch{return[]}}function UN(e){try{return typeof e=="string"&&(e=new RegExp(e)),e=e.toString(),s0.reset(e),s0.visit(Vat.pattern(e)),s0.multiline}catch{return!1}}function xk(e){return(typeof e=="string"?new RegExp(e):e).test(" ")}function o0(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function HN(e){return Array.prototype.map.call(e,t=>/\w/.test(t)?`[${t.toLowerCase()}${t.toUpperCase()}]`:o0(t)).join("")}function WN(e,t){let r=Uat(e),n=t.match(r);return!!n&&n[0].length>0}function Uat(e){typeof e=="string"&&(e=new RegExp(e));let t=e,r=e.source,n=0;function i(){let a="",s;function l(h){a+=r.substr(n,h),n+=h}o(l,"appendRaw");function u(h){a+="(?:"+r.substr(n,h)+"|$)",n+=h}for(o(u,"appendOptional");n",n)-n+1);break;default:u(2);break}break;case"[":s=/\[(?:\\.|.)*?\]/g,s.lastIndex=n,s=s.exec(r)||[],u(s[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":l(1);break;case"{":s=/\{\d+,?\d*\}/g,s.lastIndex=n,s=s.exec(r),s?l(s[0].length):u(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":a+="(?:",n+=3,a+=i()+"|$)";break;case"=":a+="(?=",n+=3,a+=i()+")";break;case"!":s=n,n+=3,i(),a+=r.substr(s,n-s);break;case"<":switch(r[n+3]){case"=":case"!":s=n,n+=4,i(),a+=r.substr(s,n-s);break;default:l(r.indexOf(">",n)-n+1),a+=i()+"|$)";break}break}else l(1),a+=i()+"|$)";break;case")":return++n,a;default:u(1);break}return a}return o(i,"process"),new RegExp(i(),e.flags)}var VN,Vat,GN,s0,ig=R(()=>{"use strict";b2();VN=/\r?\n/gm,Vat=new a0,GN=class extends Bc{static{o(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(t){this.multiline=!1,this.regex=t,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(t){t.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(t){let r=String.fromCharCode(t.value);if(!this.multiline&&r===` `&&(this.multiline=!0),t.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=o0(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(t){if(!this.multiline){let r=this.regex.substring(t.loc.begin,t.loc.end),n=new RegExp(r);this.multiline=!!` `.match(n)}if(t.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(t.loc.begin,t.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(t){t.type==="Group"&&t.quantifier||super.visitChildren(t)}},s0=new GN;o(ZPt,"getTerminalParts");o(UN,"isMultilineComment");o(xk,"isWhitespace");o(o0,"escapeRegExp");o(HN,"getCaseInsensitivePattern");o(WN,"partialMatches");o(Uat,"partialRegExp")});var Tk={};xr(Tk,{findAssignment:()=>tM,findNameAssignment:()=>wk,findNodeForKeyword:()=>ZN,findNodeForProperty:()=>T2,findNodesForKeyword:()=>JPt,findNodesForKeywordInternal:()=>JN,findNodesForProperty:()=>KN,getActionAtElement:()=>Xat,getActionType:()=>Kat,getAllReachableRules:()=>w2,getCrossReferenceTerminal:()=>XN,getEntryRule:()=>Hat,getExplicitRuleType:()=>eM,getHiddenRules:()=>Wat,getRuleType:()=>rM,getTypeName:()=>l0,isArrayCardinality:()=>eBt,isArrayOperator:()=>rBt,isCommentTerminal:()=>jN,isDataType:()=>nBt,isDataTypeRule:()=>k2,isOptionalCardinality:()=>tBt,terminalRegex:()=>ag});function Hat(e){return e.rules.find(t=>$a(t)&&t.entry)}function Wat(e){return e.rules.filter(t=>qo(t)&&t.hidden)}function w2(e,t){let r=new Set,n=Hat(e);if(!n)return new Set(e.rules);let i=[n].concat(Wat(e));for(let s of i)Yat(s,r,t);let a=new Set;for(let s of e.rules)(r.has(s.name)||qo(s)&&s.hidden)&&a.add(s);return a}function Yat(e,t,r){t.add(e.name),Pc(e).forEach(n=>{if(Fl(n)||r&&dk(n)){let i=n.rule.ref;i&&!t.has(i.name)&&Yat(i,t,r)}})}function XN(e){if(e.terminal)return e.terminal;if(e.type.ref){let t=wk(e.type.ref);return t?.terminal}}function jN(e){return e.hidden&&!ag(e).test(" ")}function KN(e,t){return!e||!t?[]:QN(e,t,e.astNode,!0)}function T2(e,t,r){if(!e||!t)return;let n=QN(e,t,e.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function QN(e,t,r,n){if(!n){let i=n0(e.grammarSource,Bl);if(i&&i.feature===t)return[e]}return uo(e)&&e.astNode===r?e.content.flatMap(i=>QN(i,t,r,!1)):[]}function JPt(e,t){return e?JN(e,t,e?.astNode):[]}function ZN(e,t,r){if(!e)return;let n=JN(e,t,e?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function JN(e,t,r){if(e.astNode!==r)return[];if(Xo(e.grammarSource)&&e.grammarSource.value===t)return[e];let n=Jd(e).iterator(),i,a=[];do if(i=n.next(),!i.done){let s=i.value;s.astNode===r?Xo(s.grammarSource)&&s.grammarSource.value===t&&a.push(s):n.prune()}while(!i.done);return a}function tM(e){var t;let r=e.astNode;for(;r===((t=e.container)===null||t===void 0?void 0:t.astNode);){let n=n0(e.grammarSource,Bl);if(n)return n;e=e.container}}function wk(e){let t=e;return ck(t)&&(zu(t.$container)?t=t.$container.$container:$a(t.$container)?t=t.$container:of(t.$container)),qat(e,t,new Map)}function qat(e,t,r){var n;function i(a,s){let l;return n0(a,Bl)||(l=qat(s,s,r)),r.set(e,l),l}if(o(i,"go"),r.has(e))return r.get(e);r.set(e,void 0);for(let a of Pc(t)){if(Bl(a)&&a.feature.toLowerCase()==="name")return r.set(e,a),a;if(Fl(a)&&$a(a.rule.ref))return i(a,a.rule.ref);if(hk(a)&&(!((n=a.typeRef)===null||n===void 0)&&n.ref))return i(a,a.typeRef.ref)}}function Xat(e){let t=e.$container;if(lf(t)){let r=t.elements,n=r.indexOf(e);for(let i=n-1;i>=0;i--){let a=r[i];if(zu(a))return a;{let s=Pc(r[i]).find(zu);if(s)return s}}}if(d2(t))return Xat(t)}function tBt(e,t){return e==="?"||e==="*"||lf(t)&&!!t.guardCondition}function eBt(e){return e==="*"||e==="+"}function rBt(e){return e==="+="}function k2(e){return jat(e,new Set)}function jat(e,t){if(t.has(e))return!0;t.add(e);for(let r of Pc(e))if(Fl(r)){if(!r.rule.ref||$a(r.rule.ref)&&!jat(r.rule.ref,t))return!1}else{if(Bl(r))return!1;if(zu(r))return!1}return!!e.definition}function nBt(e){return qN(e.type,new Set)}function qN(e,t){if(t.has(e))return!0;if(t.add(e),zR(e))return!1;if(nN(e))return!1;if(cN(e))return e.types.every(r=>qN(r,t));if(hk(e)){if(e.primitiveType!==void 0)return!0;if(e.stringType!==void 0)return!0;if(e.typeRef!==void 0){let r=e.typeRef.ref;return p2(r)?qN(r.type,t):!1}else return!1}else return!1}function eM(e){if(e.inferredType)return e.inferredType.name;if(e.dataType)return e.dataType;if(e.returnType){let t=e.returnType.ref;if(t){if($a(t))return t.name;if(uk(t)||p2(t))return t.name}}}function l0(e){var t;if($a(e))return k2(e)?e.name:(t=eM(e))!==null&&t!==void 0?t:e.name;if(uk(e)||p2(e)||iN(e))return e.name;if(zu(e)){let r=Kat(e);if(r)return r}else if(ck(e))return e.name;throw new Error("Cannot get name of Unknown Type")}function Kat(e){var t;if(e.inferredType)return e.inferredType.name;if(!((t=e.type)===null||t===void 0)&&t.ref)return l0(e.type.ref)}function rM(e){var t,r,n;return qo(e)?(r=(t=e.type)===null||t===void 0?void 0:t.name)!==null&&r!==void 0?r:"string":k2(e)?e.name:(n=eM(e))!==null&&n!==void 0?n:e.name}function ag(e){let t={s:!1,i:!1,u:!1},r=sg(e.definition,t),n=Object.entries(t).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}function sg(e,t){if(SN(e))return iBt(e);if(_N(e))return aBt(e);if(pN(e))return lBt(e);if(dk(e)){let r=e.rule.ref;if(!r)throw new Error("Missing rule reference.");return $u(sg(r.definition),{cardinality:e.cardinality,lookahead:e.lookahead})}else{if(wN(e))return oBt(e);if(NN(e))return sBt(e);if(kN(e)){let r=e.regex.lastIndexOf("/"),n=e.regex.substring(1,r),i=e.regex.substring(r+1);return t&&(t.i=i.includes("i"),t.s=i.includes("s"),t.u=i.includes("u")),$u(n,{cardinality:e.cardinality,lookahead:e.lookahead,wrap:!1})}else{if(IN(e))return $u(nM,{cardinality:e.cardinality,lookahead:e.lookahead});throw new Error(`Invalid terminal element: ${e?.$type}`)}}}function iBt(e){return $u(e.elements.map(t=>sg(t)).join("|"),{cardinality:e.cardinality,lookahead:e.lookahead})}function aBt(e){return $u(e.elements.map(t=>sg(t)).join(""),{cardinality:e.cardinality,lookahead:e.lookahead})}function sBt(e){return $u(`${nM}*?${sg(e.terminal)}`,{cardinality:e.cardinality,lookahead:e.lookahead})}function oBt(e){return $u(`(?!${sg(e.terminal)})${nM}*?`,{cardinality:e.cardinality,lookahead:e.lookahead})}function lBt(e){return e.right?$u(`[${YN(e.left)}-${YN(e.right)}]`,{cardinality:e.cardinality,lookahead:e.lookahead,wrap:!1}):$u(YN(e.left),{cardinality:e.cardinality,lookahead:e.lookahead,wrap:!1})}function YN(e){return o0(e.value)}function $u(e,t){var r;return(t.wrap!==!1||t.lookahead)&&(e=`(${(r=t.lookahead)!==null&&r!==void 0?r:""}${e})`),t.cardinality?`${e}${t.cardinality}`:e}var nM,zl=R(()=>{"use strict";ak();Oc();Yo();is();Pl();ig();o(Hat,"getEntryRule");o(Wat,"getHiddenRules");o(w2,"getAllReachableRules");o(Yat,"ruleDfs");o(XN,"getCrossReferenceTerminal");o(jN,"isCommentTerminal");o(KN,"findNodesForProperty");o(T2,"findNodeForProperty");o(QN,"findNodesForPropertyInternal");o(JPt,"findNodesForKeyword");o(ZN,"findNodeForKeyword");o(JN,"findNodesForKeywordInternal");o(tM,"findAssignment");o(wk,"findNameAssignment");o(qat,"findNameAssignmentInternal");o(Xat,"getActionAtElement");o(tBt,"isOptionalCardinality");o(eBt,"isArrayCardinality");o(rBt,"isArrayOperator");o(k2,"isDataTypeRule");o(jat,"isDataTypeRuleInternal");o(nBt,"isDataType");o(qN,"isDataTypeInternal");o(eM,"getExplicitRuleType");o(l0,"getTypeName");o(Kat,"getActionType");o(rM,"getRuleType");o(ag,"terminalRegex");nM=/[\s\S]/.source;o(sg,"abstractElementToRegex");o(iBt,"terminalAlternativesToRegex");o(aBt,"terminalGroupToRegex");o(sBt,"untilTokenToRegex");o(oBt,"negateTokenToRegex");o(lBt,"characterRangeToRegex");o(YN,"keywordToRegex");o($u,"withCardinality")});function iM(e){let t=[],r=e.Grammar;for(let n of r.rules)qo(n)&&jN(n)&&UN(ag(n))&&t.push(n.name);return{multilineCommentRules:t,nameRegexp:nk}}var aM=R(()=>{"use strict";Pl();zl();ig();Oc();o(iM,"createGrammarConfig")});var sM=R(()=>{"use strict"});function og(e){console&&console.error&&console.error(`Error: ${e}`)}function E2(e){console&&console.warn&&console.warn(`Warning: ${e}`)}var Qat=R(()=>{"use strict";o(og,"PRINT_ERROR");o(E2,"PRINT_WARNING")});function C2(e){let t=new Date().getTime(),r=e();return{time:new Date().getTime()-t,value:r}}var Zat=R(()=>{"use strict";o(C2,"timer")});function S2(e){function t(){}o(t,"FakeConstructor"),t.prototype=e;let r=new t;function n(){return typeof r.bar}return o(n,"fakeAccess"),n(),n(),e;(0,eval)(e)}var Jat=R(()=>{"use strict";o(S2,"toFastProperties")});var lg=R(()=>{"use strict";Qat();Zat();Jat()});function cBt(e){return uBt(e)?e.LABEL:e.name}function uBt(e){return yi(e.LABEL)&&e.LABEL!==""}function kk(e){return Xt(e,cg)}function cg(e){function t(r){return Xt(r,cg)}if(o(t,"convertDefinition"),e instanceof nn){let r={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return yi(e.label)&&(r.label=e.label),r}else{if(e instanceof Ln)return{type:"Alternative",definition:t(e.definition)};if(e instanceof an)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof Dn)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof Rn)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:cg(new br({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof bn)return{type:"RepetitionWithSeparator",idx:e.idx,separator:cg(new br({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Lr)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};if(e instanceof wn)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};if(e instanceof br){let r={type:"Terminal",name:e.terminalType.name,label:cBt(e.terminalType),idx:e.idx};yi(e.label)&&(r.terminalLabel=e.label);let n=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(r.pattern=Uo(n)?n.source:n),r}else{if(e instanceof as)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};throw Error("non exhaustive match")}}}var fo,nn,as,Ln,an,Dn,Rn,Lr,bn,wn,br,Ek=R(()=>{"use strict";Ve();o(cBt,"tokenLabel");o(uBt,"hasTokenLabel");fo=class{static{o(this,"AbstractProduction")}get definition(){return this._definition}set definition(t){this._definition=t}constructor(t){this._definition=t}accept(t){t.visit(this),Et(this.definition,r=>{r.accept(t)})}},nn=class extends fo{static{o(this,"NonTerminal")}constructor(t){super([]),this.idx=1,va(this,Os(t,r=>r!==void 0))}set definition(t){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(t){t.visit(this)}},as=class extends fo{static{o(this,"Rule")}constructor(t){super(t.definition),this.orgText="",va(this,Os(t,r=>r!==void 0))}},Ln=class extends fo{static{o(this,"Alternative")}constructor(t){super(t.definition),this.ignoreAmbiguities=!1,va(this,Os(t,r=>r!==void 0))}},an=class extends fo{static{o(this,"Option")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},Dn=class extends fo{static{o(this,"RepetitionMandatory")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},Rn=class extends fo{static{o(this,"RepetitionMandatoryWithSeparator")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},Lr=class extends fo{static{o(this,"Repetition")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},bn=class extends fo{static{o(this,"RepetitionWithSeparator")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},wn=class extends fo{static{o(this,"Alternation")}get definition(){return this._definition}set definition(t){this._definition=t}constructor(t){super(t.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,va(this,Os(t,r=>r!==void 0))}},br=class{static{o(this,"Terminal")}constructor(t){this.idx=1,va(this,Os(t,r=>r!==void 0))}accept(t){t.visit(this)}};o(kk,"serializeGrammar");o(cg,"serializeProduction")});var ss,tst=R(()=>{"use strict";Ek();ss=class{static{o(this,"GAstVisitor")}visit(t){let r=t;switch(r.constructor){case nn:return this.visitNonTerminal(r);case Ln:return this.visitAlternative(r);case an:return this.visitOption(r);case Dn:return this.visitRepetitionMandatory(r);case Rn:return this.visitRepetitionMandatoryWithSeparator(r);case bn:return this.visitRepetitionWithSeparator(r);case Lr:return this.visitRepetition(r);case wn:return this.visitAlternation(r);case br:return this.visitTerminal(r);case as:return this.visitRule(r);default:throw Error("non exhaustive match")}}visitNonTerminal(t){}visitAlternative(t){}visitOption(t){}visitRepetition(t){}visitRepetitionMandatory(t){}visitRepetitionMandatoryWithSeparator(t){}visitRepetitionWithSeparator(t){}visitAlternation(t){}visitTerminal(t){}visitRule(t){}}});function oM(e){return e instanceof Ln||e instanceof an||e instanceof Lr||e instanceof Dn||e instanceof Rn||e instanceof bn||e instanceof br||e instanceof as}function c0(e,t=[]){return e instanceof an||e instanceof Lr||e instanceof bn?!0:e instanceof wn?r2(e.definition,n=>c0(n,t)):e instanceof nn&&Wn(t,e)?!1:e instanceof fo?(e instanceof nn&&t.push(e),za(e.definition,n=>c0(n,t))):!1}function lM(e){return e instanceof wn}function Bs(e){if(e instanceof nn)return"SUBRULE";if(e instanceof an)return"OPTION";if(e instanceof wn)return"OR";if(e instanceof Dn)return"AT_LEAST_ONE";if(e instanceof Rn)return"AT_LEAST_ONE_SEP";if(e instanceof bn)return"MANY_SEP";if(e instanceof Lr)return"MANY";if(e instanceof br)return"CONSUME";throw Error("non exhaustive match")}var est=R(()=>{"use strict";Ve();Ek();o(oM,"isSequenceProd");o(c0,"isOptionalProd");o(lM,"isBranchingProd");o(Bs,"getProductionDslName")});var os=R(()=>{"use strict";Ek();tst();est()});function rst(e,t,r){return[new an({definition:[new br({terminalType:e.separator})].concat(e.definition)})].concat(t,r)}var Gu,Ck=R(()=>{"use strict";Ve();os();Gu=class{static{o(this,"RestWalker")}walk(t,r=[]){Et(t.definition,(n,i)=>{let a=gi(t.definition,i+1);if(n instanceof nn)this.walkProdRef(n,a,r);else if(n instanceof br)this.walkTerminal(n,a,r);else if(n instanceof Ln)this.walkFlat(n,a,r);else if(n instanceof an)this.walkOption(n,a,r);else if(n instanceof Dn)this.walkAtLeastOne(n,a,r);else if(n instanceof Rn)this.walkAtLeastOneSep(n,a,r);else if(n instanceof bn)this.walkManySep(n,a,r);else if(n instanceof Lr)this.walkMany(n,a,r);else if(n instanceof wn)this.walkOr(n,a,r);else throw Error("non exhaustive match")})}walkTerminal(t,r,n){}walkProdRef(t,r,n){}walkFlat(t,r,n){let i=r.concat(n);this.walk(t,i)}walkOption(t,r,n){let i=r.concat(n);this.walk(t,i)}walkAtLeastOne(t,r,n){let i=[new an({definition:t.definition})].concat(r,n);this.walk(t,i)}walkAtLeastOneSep(t,r,n){let i=rst(t,r,n);this.walk(t,i)}walkMany(t,r,n){let i=[new an({definition:t.definition})].concat(r,n);this.walk(t,i)}walkManySep(t,r,n){let i=rst(t,r,n);this.walk(t,i)}walkOr(t,r,n){let i=r.concat(n);Et(t.definition,a=>{let s=new Ln({definition:[a]});this.walk(s,i)})}};o(rst,"restForRepetitionWithSeparator")});function u0(e){if(e instanceof nn)return u0(e.referencedRule);if(e instanceof br)return dBt(e);if(oM(e))return hBt(e);if(lM(e))return fBt(e);throw Error("non exhaustive match")}function hBt(e){let t=[],r=e.definition,n=0,i=r.length>n,a,s=!0;for(;i&&s;)a=r[n],s=c0(a),t=t.concat(u0(a)),n=n+1,i=r.length>n;return Qm(t)}function fBt(e){let t=Xt(e.definition,r=>u0(r));return Qm(Wr(t))}function dBt(e){return[e.terminalType]}var cM=R(()=>{"use strict";Ve();os();o(u0,"first");o(hBt,"firstForSequence");o(fBt,"firstForBranching");o(dBt,"firstForTerminal")});var Sk,uM=R(()=>{"use strict";Sk="_~IN~_"});function nst(e){let t={};return Et(e,r=>{let n=new hM(r).startWalking();va(t,n)}),t}function pBt(e,t){return e.name+t+Sk}var hM,ist=R(()=>{"use strict";Ck();cM();Ve();uM();os();hM=class extends Gu{static{o(this,"ResyncFollowsWalker")}constructor(t){super(),this.topProd=t,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(t,r,n){}walkProdRef(t,r,n){let i=pBt(t.referencedRule,t.idx)+this.topProd.name,a=r.concat(n),s=new Ln({definition:a}),l=u0(s);this.follows[i]=l}};o(nst,"computeAllProdsFollows");o(pBt,"buildBetweenProdsFollowPrefix")});function ug(e){let t=e.toString();if(Ak.hasOwnProperty(t))return Ak[t];{let r=mBt.pattern(t);return Ak[t]=r,r}}function ast(){Ak={}}var Ak,mBt,_k=R(()=>{"use strict";b2();Ak={},mBt=new a0;o(ug,"getRegExpAst");o(ast,"clearRegExpParserCache")});function lst(e,t=!1){try{let r=ug(e);return fM(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===ost)t&&E2(`${A2} Unable to optimize: < ${e.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 n="";t&&(n=` This will disable the lexer's first char optimizations. See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),og(`${A2} Failed parsing: < ${e.toString()} > Using the @chevrotain/regexp-to-ast library Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function fM(e,t,r){switch(e.type){case"Disjunction":for(let i=0;i{if(typeof u=="number")Lk(u,t,r);else{let h=u;if(r===!0)for(let f=h.from;f<=h.to;f++)Lk(f,t,r);else{for(let f=h.from;f<=h.to&&f=hg){let f=h.from>=hg?h.from:hg,d=h.to,p=Fc(f),m=Fc(d);for(let g=p;g<=m;g++)t[g]=g}}}});break;case"Group":fM(s.value,t,r);break;default:throw Error("Non Exhaustive Match")}let l=s.quantifier!==void 0&&s.quantifier.atLeast===0;if(s.type==="Group"&&dM(s)===!1||s.type!=="Group"&&l===!1)break}break;default:throw Error("non exhaustive match!")}return gr(t)}function Lk(e,t,r){let n=Fc(e);t[n]=n,r===!0&&gBt(e,t)}function gBt(e,t){let r=String.fromCharCode(e),n=r.toUpperCase();if(n!==r){let i=Fc(n.charCodeAt(0));t[i]=i}else{let i=r.toLowerCase();if(i!==r){let a=Fc(i.charCodeAt(0));t[a]=a}}}function sst(e,t){return rs(e.value,r=>{if(typeof r=="number")return Wn(t,r);{let n=r;return rs(t,i=>n.from<=i&&i<=n.to)!==void 0}})}function dM(e){let t=e.quantifier;return t&&t.atLeast===0?!0:e.value?Le(e.value)?za(e.value,dM):dM(e.value):!1}function Dk(e,t){if(t instanceof RegExp){let r=ug(t),n=new pM(e);return n.visit(r),n.found}else return rs(t,r=>Wn(e,r.charCodeAt(0)))!==void 0}var ost,A2,pM,cst=R(()=>{"use strict";b2();Ve();lg();_k();mM();ost="Complement Sets are not supported for first char optimization",A2=`Unable to use "first char" lexer optimizations: `;o(lst,"getOptimizedStartCodesIndices");o(fM,"firstCharOptimizedIndices");o(Lk,"addOptimizedIdxToResult");o(gBt,"handleIgnoreCase");o(sst,"findCode");o(dM,"isWholeOptional");pM=class extends Bc{static{o(this,"CharCodeFinder")}constructor(t){super(),this.targetCharCodes=t,this.found=!1}visitChildren(t){if(this.found!==!0){switch(t.type){case"Lookahead":this.visitLookahead(t);return;case"NegativeLookahead":this.visitNegativeLookahead(t);return}super.visitChildren(t)}}visitCharacter(t){Wn(this.targetCharCodes,t.value)&&(this.found=!0)}visitSet(t){t.complement?sst(t,this.targetCharCodes)===void 0&&(this.found=!0):sst(t,this.targetCharCodes)!==void 0&&(this.found=!0)}};o(Dk,"canMatchCharCode")});function fst(e,t){t=Jh(t,{useSticky:yM,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` `],tracer:o((b,w)=>w(),"tracer")});let r=t.tracer;r("initCharCodeToOptimizedIndexMap",()=>{IBt()});let n;r("Reject Lexer.NA",()=>{n=ef(e,b=>b[h0]===li.NA)});let i=!1,a;r("Transform Patterns",()=>{i=!1,a=Xt(n,b=>{let w=b[h0];if(Uo(w)){let S=w.source;return S.length===1&&S!=="^"&&S!=="$"&&S!=="."&&!w.ignoreCase?S:S.length===2&&S[0]==="\\"&&!Wn(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],S[1])?S[1]:t.useSticky?hst(w):ust(w)}else{if(Si(w))return i=!0,{exec:w};if(typeof w=="object")return i=!0,w;if(typeof w=="string"){if(w.length===1)return w;{let S=w.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),T=new RegExp(S);return t.useSticky?hst(T):ust(T)}}else throw Error("non exhaustive match")}})});let s,l,u,h,f;r("misc mapping",()=>{s=Xt(n,b=>b.tokenTypeIdx),l=Xt(n,b=>{let w=b.GROUP;if(w!==li.SKIPPED){if(yi(w))return w;if(fr(w))return!1;throw Error("non exhaustive match")}}),u=Xt(n,b=>{let w=b.LONGER_ALT;if(w)return Le(w)?Xt(w,T=>PT(n,T)):[PT(n,w)]}),h=Xt(n,b=>b.PUSH_MODE),f=Xt(n,b=>jt(b,"POP_MODE"))});let d;r("Line Terminator Handling",()=>{let b=bst(t.lineTerminatorCharacters);d=Xt(n,w=>!1),t.positionTracking!=="onlyOffset"&&(d=Xt(n,w=>jt(w,"LINE_BREAKS")?!!w.LINE_BREAKS:xst(w,b)===!1&&Dk(b,w.PATTERN)))});let p,m,g,y;r("Misc Mapping #2",()=>{p=Xt(n,yst),m=Xt(a,NBt),g=qr(n,(b,w)=>{let S=w.GROUP;return yi(S)&&S!==li.SKIPPED&&(b[S]=[]),b},{}),y=Xt(a,(b,w)=>({pattern:a[w],longerAlt:u[w],canLineTerminator:d[w],isCustom:p[w],short:m[w],group:l[w],push:h[w],pop:f[w],tokenTypeIdx:s[w],tokenType:n[w]}))});let v=!0,x=[];return t.safeMode||r("First Char Optimization",()=>{x=qr(n,(b,w,S)=>{if(typeof w.PATTERN=="string"){let T=w.PATTERN.charCodeAt(0),E=Fc(T);gM(b,E,y[S])}else if(Le(w.START_CHARS_HINT)){let T;Et(w.START_CHARS_HINT,E=>{let _=typeof E=="string"?E.charCodeAt(0):E,A=Fc(_);T!==A&&(T=A,gM(b,A,y[S]))})}else if(Uo(w.PATTERN))if(w.PATTERN.unicode)v=!1,t.ensureOptimizations&&og(`${A2} Unable to analyze < ${w.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 T=lst(w.PATTERN,t.ensureOptimizations);cr(T)&&(v=!1),Et(T,E=>{gM(b,E,y[S])})}else t.ensureOptimizations&&og(`${A2} TokenType: <${w.name}> is using a custom token pattern without providing parameter. This will disable the lexer's first char optimizations. For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),v=!1;return b},[])}),{emptyGroups:g,patternIdxToConfig:y,charCodeToPatternIdxToConfig:x,hasCustom:i,canBeOptimized:v}}function dst(e,t){let r=[],n=vBt(e);r=r.concat(n.errors);let i=xBt(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat(yBt(a)),r=r.concat(ABt(a)),r=r.concat(_Bt(a,t)),r=r.concat(LBt(a)),r}function yBt(e){let t=[],r=Yr(e,n=>Uo(n[h0]));return t=t.concat(wBt(r)),t=t.concat(EBt(r)),t=t.concat(CBt(r)),t=t.concat(SBt(r)),t=t.concat(TBt(r)),t}function vBt(e){let t=Yr(e,i=>!jt(i,h0)),r=Xt(t,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:qn.MISSING_PATTERN,tokenTypes:[i]})),n=tf(e,t);return{errors:r,valid:n}}function xBt(e){let t=Yr(e,i=>{let a=i[h0];return!Uo(a)&&!Si(a)&&!jt(a,"exec")&&!yi(a)}),r=Xt(t,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:qn.INVALID_PATTERN,tokenTypes:[i]})),n=tf(e,t);return{errors:r,valid:n}}function wBt(e){class t extends Bc{static{o(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(a){this.found=!0}}let r=Yr(e,i=>{let a=i.PATTERN;try{let s=ug(a),l=new t;return l.visit(s),l.found}catch{return bBt.test(a.source)}});return Xt(r,i=>({message:`Unexpected RegExp Anchor Error: Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$' See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:qn.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function TBt(e){let t=Yr(e,n=>n.PATTERN.test(""));return Xt(t,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:qn.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}function EBt(e){class t extends Bc{static{o(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(a){this.found=!0}}let r=Yr(e,i=>{let a=i.PATTERN;try{let s=ug(a),l=new t;return l.visit(s),l.found}catch{return kBt.test(a.source)}});return Xt(r,i=>({message:`Unexpected RegExp Anchor Error: Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^' See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:qn.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function CBt(e){let t=Yr(e,n=>{let i=n[h0];return i instanceof RegExp&&(i.multiline||i.global)});return Xt(t,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:qn.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function SBt(e){let t=[],r=Xt(e,a=>qr(e,(s,l)=>(a.PATTERN.source===l.PATTERN.source&&!Wn(t,l)&&l.PATTERN!==li.NA&&(t.push(l),s.push(l)),s),[]));r=Dc(r);let n=Yr(r,a=>a.length>1);return Xt(n,a=>{let s=Xt(a,u=>u.name);return{message:`The same RegExp pattern ->${aa(a).PATTERN}<-has been used in all of the following Token Types: ${s.join(", ")} <-`,type:qn.DUPLICATE_PATTERNS_FOUND,tokenTypes:a}})}function ABt(e){let t=Yr(e,n=>{if(!jt(n,"GROUP"))return!1;let i=n.GROUP;return i!==li.SKIPPED&&i!==li.NA&&!yi(i)});return Xt(t,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:qn.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}function _Bt(e,t){let r=Yr(e,i=>i.PUSH_MODE!==void 0&&!Wn(t,i.PUSH_MODE));return Xt(r,i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:qn.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function LBt(e){let t=[],r=qr(e,(n,i,a)=>{let s=i.PATTERN;return s===li.NA||(yi(s)?n.push({str:s,idx:a,tokenType:i}):Uo(s)&&RBt(s)&&n.push({str:s.source,idx:a,tokenType:i})),n},[]);return Et(e,(n,i)=>{Et(r,({str:a,idx:s,tokenType:l})=>{if(i${l.name}<- can never be matched. Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition. See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:u,type:qn.UNREACHABLE_PATTERN,tokenTypes:[n,l]})}})}),t}function DBt(e,t){if(Uo(t)){let r=t.exec(e);return r!==null&&r.index===0}else{if(Si(t))return t(e,0,[],{});if(jt(t,"exec"))return t.exec(e,0,[],{});if(typeof t=="string")return t===e;throw Error("non exhaustive match")}}function RBt(e){return rs([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>e.source.indexOf(r)!==-1)===void 0}function ust(e){let t=e.ignoreCase?"i":"";return new RegExp(`^(?:${e.source})`,t)}function hst(e){let t=e.ignoreCase?"iy":"y";return new RegExp(`${e.source}`,t)}function pst(e,t,r){let n=[];return jt(e,fg)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+fg+`> property in its definition `,type:qn.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),jt(e,Rk)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Rk+`> property in its definition `,type:qn.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),jt(e,Rk)&&jt(e,fg)&&!jt(e.modes,e.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${fg}: <${e.defaultMode}>which does not exist `,type:qn.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),jt(e,Rk)&&Et(e.modes,(i,a)=>{Et(i,(s,l)=>{if(fr(s))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${a}> at index: <${l}> `,type:qn.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(jt(s,"LONGER_ALT")){let u=Le(s.LONGER_ALT)?s.LONGER_ALT:[s.LONGER_ALT];Et(u,h=>{!fr(h)&&!Wn(i,h)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${h.name}> on token <${s.name}> outside of mode <${a}> `,type:qn.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function mst(e,t,r){let n=[],i=!1,a=Dc(Wr(gr(e.modes))),s=ef(a,u=>u[h0]===li.NA),l=bst(r);return t&&Et(s,u=>{let h=xst(u,l);if(h!==!1){let d={message:MBt(u,h),type:h.issue,tokenType:u};n.push(d)}else jt(u,"LINE_BREAKS")?u.LINE_BREAKS===!0&&(i=!0):Dk(l,u.PATTERN)&&(i=!0)}),t&&!i&&n.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:qn.NO_LINE_BREAKS_FLAGS}),n}function gst(e){let t={},r=$r(e);return Et(r,n=>{let i=e[n];if(Le(i))t[n]=[];else throw Error("non exhaustive match")}),t}function yst(e){let t=e.PATTERN;if(Uo(t))return!1;if(Si(t))return!0;if(jt(t,"exec"))return!0;if(yi(t))return!1;throw Error("non exhaustive match")}function NBt(e){return yi(e)&&e.length===1?e.charCodeAt(0):!1}function xst(e,t){if(jt(e,"LINE_BREAKS"))return!1;if(Uo(e.PATTERN)){try{Dk(t,e.PATTERN)}catch(r){return{issue:qn.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(yi(e.PATTERN))return!1;if(yst(e))return{issue:qn.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function MBt(e,t){if(t.issue===qn.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern. The problem is in the <${e.name}> Token Type Root cause: ${t.errMsg}. For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===qn.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. The problem is in the <${e.name}> Token Type For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function bst(e){return Xt(e,r=>yi(r)?r.charCodeAt(0):r)}function gM(e,t,r){e[t]===void 0?e[t]=[r]:e[t].push(r)}function Fc(e){return e255?255+~~(e/255):e}}var h0,fg,Rk,yM,bBt,kBt,vst,hg,Nk,mM=R(()=>{"use strict";b2();_2();Ve();lg();cst();_k();h0="PATTERN",fg="defaultMode",Rk="modes",yM=typeof new RegExp("(?:)").sticky=="boolean";o(fst,"analyzeTokenTypes");o(dst,"validatePatterns");o(yBt,"validateRegExpPattern");o(vBt,"findMissingPatterns");o(xBt,"findInvalidPatterns");bBt=/[^\\][$]/;o(wBt,"findEndOfInputAnchor");o(TBt,"findEmptyMatchRegExps");kBt=/[^\\[][\^]|^\^/;o(EBt,"findStartOfInputAnchor");o(CBt,"findUnsupportedFlags");o(SBt,"findDuplicatePatterns");o(ABt,"findInvalidGroupType");o(_Bt,"findModesThatDoNotExist");o(LBt,"findUnreachablePatterns");o(DBt,"testTokenType");o(RBt,"noMetaChar");o(ust,"addStartOfInput");o(hst,"addStickyFlag");o(pst,"performRuntimeChecks");o(mst,"performWarningRuntimeChecks");o(gst,"cloneEmptyGroups");o(yst,"isCustomPattern");o(NBt,"isShortPattern");vst={test:o(function(e){let t=e.length;for(let r=this.lastIndex;r{r.isParent=r.categoryMatches.length>0})}function OBt(e){let t=rn(e),r=e,n=!0;for(;n;){r=Dc(Wr(Xt(r,a=>a.CATEGORIES)));let i=tf(r,t);t=t.concat(i),cr(i)?n=!1:r=i}return t}function PBt(e){Et(e,t=>{vM(t)||(kst[wst]=t,t.tokenTypeIdx=wst++),Tst(t)&&!Le(t.CATEGORIES)&&(t.CATEGORIES=[t.CATEGORIES]),Tst(t)||(t.CATEGORIES=[]),zBt(t)||(t.categoryMatches=[]),$Bt(t)||(t.categoryMatchesMap={})})}function BBt(e){Et(e,t=>{t.categoryMatches=[],Et(t.categoryMatchesMap,(r,n)=>{t.categoryMatches.push(kst[n].tokenTypeIdx)})})}function FBt(e){Et(e,t=>{Est([],t)})}function Est(e,t){Et(e,r=>{t.categoryMatchesMap[r.tokenTypeIdx]=!0}),Et(t.CATEGORIES,r=>{let n=e.concat(t);Wn(n,r)||Est(n,r)})}function vM(e){return jt(e,"tokenTypeIdx")}function Tst(e){return jt(e,"CATEGORIES")}function zBt(e){return jt(e,"categoryMatches")}function $Bt(e){return jt(e,"categoryMatchesMap")}function Cst(e){return jt(e,"tokenTypeIdx")}var wst,kst,f0=R(()=>{"use strict";Ve();o(Vu,"tokenStructuredMatcher");o(dg,"tokenStructuredMatcherNoCategories");wst=1,kst={};o(Uu,"augmentTokenTypes");o(OBt,"expandCategories");o(PBt,"assignTokenDefaultProps");o(BBt,"assignCategoriesTokensProp");o(FBt,"assignCategoriesMapProp");o(Est,"singleAssignCategoriesToksMap");o(vM,"hasShortKeyProperty");o(Tst,"hasCategoriesProperty");o(zBt,"hasExtendingTokensTypesProperty");o($Bt,"hasExtendingTokensTypesMapProperty");o(Cst,"isTokenType")});var xM,bM=R(()=>{"use strict";xM={buildUnableToPopLexerModeMessage(e){return`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(e,t,r,n,i){return`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${r} characters.`}}});var qn,L2,li,_2=R(()=>{"use strict";mM();Ve();lg();f0();bM();_k();(function(e){e[e.MISSING_PATTERN=0]="MISSING_PATTERN",e[e.INVALID_PATTERN=1]="INVALID_PATTERN",e[e.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",e[e.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",e[e.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",e[e.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",e[e.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",e[e.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",e[e.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",e[e.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",e[e.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",e[e.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",e[e.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",e[e.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",e[e.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",e[e.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",e[e.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",e[e.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(qn||(qn={}));L2={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` `,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:xM,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(L2);li=class{static{o(this,"Lexer")}constructor(t,r=L2){if(this.lexerDefinition=t,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=(i,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let s=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${i}>`);let{time:l,value:u}=C2(a),h=l>10?console.warn:console.log;return this.traceInitIndent time: ${l}ms`),this.traceInitIndent--,u}else return a()},typeof r=="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=va({},L2,r);let n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let i,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===L2.lineTerminatorsPattern)this.config.lineTerminatorsPattern=vst;else if(this.config.lineTerminatorCharacters===L2.lineTerminatorCharacters)throw Error(`Error: Missing property on the Lexer config. For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Le(t)?i={modes:{defaultMode:rn(t)},defaultMode:fg}:(a=!1,i=rn(t))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(pst(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(mst(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},Et(i.modes,(l,u)=>{i.modes[u]=ef(l,h=>fr(h))});let s=$r(i.modes);if(Et(i.modes,(l,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(dst(l,s))}),cr(this.lexerDefinitionErrors)){Uu(l);let h;this.TRACE_INIT("analyzeTokenTypes",()=>{h=fst(l,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[u]=h.patternIdxToConfig,this.charCodeToPatternIdxToConfig[u]=h.charCodeToPatternIdxToConfig,this.emptyGroups=va({},this.emptyGroups,h.emptyGroups),this.hasCustom=h.hasCustom||this.hasCustom,this.canModeBeOptimized[u]=h.canBeOptimized}})}),this.defaultMode=i.defaultMode,!cr(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let u=Xt(this.lexerDefinitionErrors,h=>h.message).join(`----------------------- `);throw new Error(`Errors detected in definition of Lexer: `+u)}Et(this.lexerDefinitionWarning,l=>{E2(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(yM?(this.chopInput=na,this.match=this.matchWithTest):(this.updateLastIndex=ei,this.match=this.matchWithExec),a&&(this.handleModes=ei),this.trackStartLines===!1&&(this.computeNewColumn=na),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=ei),/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 config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let l=qr(this.canModeBeOptimized,(u,h,f)=>(h===!1&&u.push(f),u),[]);if(r.ensureOptimizations&&!cr(l))throw Error(`Lexer Modes: < ${l.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",()=>{ast()}),this.TRACE_INIT("toFastProperties",()=>{S2(this)})})}tokenize(t,r=this.defaultMode){if(!cr(this.lexerDefinitionErrors)){let i=Xt(this.lexerDefinitionErrors,a=>a.message).join(`----------------------- `);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: `+i)}return this.tokenizeInternal(t,r)}tokenizeInternal(t,r){let n,i,a,s,l,u,h,f,d,p,m,g,y,v,x,b,w=t,S=w.length,T=0,E=0,_=this.hasCustom?0:Math.floor(t.length/10),A=new Array(_),L=[],M=this.trackStartLines?1:void 0,N=this.trackStartLines?1:void 0,k=gst(this.emptyGroups),I=this.trackStartLines,C=this.config.lineTerminatorsPattern,O=0,D=[],P=[],F=[],B=[];Object.freeze(B);let G;function z(){return D}o(z,"getPossiblePatternsSlow");function W(J){let Z=Fc(J),H=P[Z];return H===void 0?B:H}o(W,"getPossiblePatternsOptimized");let Q=o(J=>{if(F.length===1&&J.tokenType.PUSH_MODE===void 0){let Z=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(J);L.push({offset:J.startOffset,line:J.startLine,column:J.startColumn,length:J.image.length,message:Z})}else{F.pop();let Z=xa(F);D=this.patternIdxToConfig[Z],P=this.charCodeToPatternIdxToConfig[Z],O=D.length;let H=this.canModeBeOptimized[Z]&&this.config.safeMode===!1;P&&H?G=W:G=z}},"pop_mode");function j(J){F.push(J),P=this.charCodeToPatternIdxToConfig[J],D=this.patternIdxToConfig[J],O=D.length,O=D.length;let Z=this.canModeBeOptimized[J]&&this.config.safeMode===!1;P&&Z?G=W:G=z}o(j,"push_mode"),j.call(this,r);let at,X=this.config.recoveryEnabled;for(;Tu.length){u=s,h=f,at=ct;break}}}break}}if(u!==null){if(d=u.length,p=at.group,p!==void 0&&(m=at.tokenTypeIdx,g=this.createTokenInstance(u,T,m,at.tokenType,M,N,d),this.handlePayload(g,h),p===!1?E=this.addToken(A,E,g):k[p].push(g)),t=this.chopInput(t,d),T=T+d,N=this.computeNewColumn(N,d),I===!0&&at.canLineTerminator===!0){let q=0,K,ot;C.lastIndex=0;do K=C.test(u),K===!0&&(ot=C.lastIndex-1,q++);while(K===!0);q!==0&&(M=M+q,N=d-ot,this.updateTokenEndLineColumnLocation(g,p,ot,q,M,N,d))}this.handleModes(at,Q,j,g)}else{let q=T,K=M,ot=N,ct=X===!1;for(;ct===!1&&T{"use strict";Ve();_2();f0();o(Hu,"tokenLabel");o(wM,"hasTokenLabel");GBt="parent",Sst="categories",Ast="label",_st="group",Lst="push_mode",Dst="pop_mode",Rst="longer_alt",Nst="line_breaks",Mst="start_chars_hint";o(Mk,"createToken");o(VBt,"createTokenInternal");po=Mk({name:"EOF",pattern:li.NA});Uu([po]);o(d0,"createTokenInstance");o(D2,"tokenMatcher")});var Wu,Ist,$l,pg=R(()=>{"use strict";p0();Ve();os();Wu={buildMismatchTokenMessage({expected:e,actual:t,previous:r,ruleName:n}){return`Expecting ${wM(e)?`--> ${Hu(e)} <--`:`token of type --> ${e.name} <--`} but found --> '${t.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:e,ruleName:t}){return"Redundant input, expecting EOF but found: "+e.image},buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",l=` but found: '`+aa(t).image+"'";if(n)return a+n+l;{let u=qr(e,(p,m)=>p.concat(m),[]),h=Xt(u,p=>`[${Xt(p,m=>Hu(m)).join(", ")}]`),d=`one of these possible Token sequences: ${Xt(h,(p,m)=>` ${m+1}. ${p}`).join(` `)}`;return a+d+l}},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:r,ruleName:n}){let i="Expecting: ",s=` but found: '`+aa(t).image+"'";if(r)return i+r+s;{let u=`expecting at least one iteration which starts with one of these possible Token sequences:: <${Xt(e,h=>`[${Xt(h,f=>Hu(f)).join(",")}]`).join(" ,")}>`;return i+u+s}}};Object.freeze(Wu);Ist={buildRuleNotFoundError(e,t){return"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+`<- inside top level rule: ->`+e.name+"<-"}},$l={buildDuplicateFoundError(e,t){function r(f){return f instanceof br?f.terminalType.name:f instanceof nn?f.nonTerminalName:""}o(r,"getExtraProductionArgument");let n=e.name,i=aa(t),a=i.idx,s=Bs(i),l=r(i),u=a>0,h=`->${s}${u?a:""}<- ${l?`with argument: ->${l}<-`:""} appears more than once (${t.length} times) in the top level rule: ->${n}<-. For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES `;return h=h.replace(/[ \t]+/g," "),h=h.replace(/\s\s+/g,` `),h},buildNamespaceConflictError(e){return`Namespace conflict found in grammar. The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.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(e){let t=Xt(e.prefixPath,i=>Hu(i)).join(", "),r=e.alternation.idx===0?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix in inside <${e.topLevelRule.name}> Rule, <${t}> 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(e){let t=Xt(e.prefixPath,i=>Hu(i)).join(", "),r=e.alternation.idx===0?"":e.alternation.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in inside <${e.topLevelRule.name}> Rule, <${t}> may appears as a prefix path in all these alternatives. `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES For Further details.`,n},buildEmptyRepetitionError(e){let t=Bs(e.repetition);return e.repetition.idx!==0&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens. This could lead to an infinite loop.`},buildTokenNameError(e){return"deprecated"},buildEmptyAlternationError(e){return`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in inside <${e.topLevelRule.name}> Rule. Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(e){return`An Alternation cannot have more than 256 alternatives: inside <${e.topLevelRule.name}> Rule. has ${e.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(e){let t=e.topLevelRule.name,r=Xt(e.leftRecursionPath,a=>a.name),n=`${t} --> ${r.concat([t]).join(" --> ")}`;return`Left Recursion found in grammar. rule: <${t}> can be invoked from itself (directly or indirectly) without consuming any Tokens. The grammar path that causes this is: ${n} To fix this refactor your grammar to remove the left recursion. see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(e){return"deprecated"},buildDuplicateRuleNameError(e){let t;return e.topLevelRule instanceof as?t=e.topLevelRule.name:t=e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}}});function Ost(e,t){let r=new TM(e,t);return r.resolveRefs(),r.errors}var TM,Pst=R(()=>{"use strict";Fs();Ve();os();o(Ost,"resolveGrammar");TM=class extends ss{static{o(this,"GastRefResolverVisitor")}constructor(t,r){super(),this.nameToTopRule=t,this.errMsgProvider=r,this.errors=[]}resolveRefs(){Et(gr(this.nameToTopRule),t=>{this.currTopLevel=t,t.accept(this)})}visitNonTerminal(t){let r=this.nameToTopRule[t.nonTerminalName];if(r)t.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,t);this.errors.push({message:n,type:Gi.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:t.nonTerminalName})}}}});function Bk(e,t,r=[]){r=rn(r);let n=[],i=0;function a(l){return l.concat(gi(e,i+1))}o(a,"remainingPathWith");function s(l){let u=Bk(a(l),t,r);return n.concat(u)}for(o(s,"getAlternativesForProd");r.length{cr(u.definition)===!1&&(n=s(u.definition))}),n;if(l instanceof br)r.push(l.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:gi(e,i)}),n}function Fk(e,t,r,n){let i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE",l=!1,u=t.length,h=u-n-1,f=[],d=[];for(d.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});!cr(d);){let p=d.pop();if(p===s){l&&xa(d).idx<=h&&d.pop();continue}let m=p.def,g=p.idx,y=p.ruleStack,v=p.occurrenceStack;if(cr(m))continue;let x=m[0];if(x===i){let b={idx:g,def:gi(m),ruleStack:Pu(y),occurrenceStack:Pu(v)};d.push(b)}else if(x instanceof br)if(g=0;b--){let w=x.definition[b],S={idx:g,def:w.definition.concat(gi(m)),ruleStack:y,occurrenceStack:v};d.push(S),d.push(s)}else if(x instanceof Ln)d.push({idx:g,def:x.definition.concat(gi(m)),ruleStack:y,occurrenceStack:v});else if(x instanceof as)d.push(UBt(x,g,y,v));else throw Error("non exhaustive match")}return f}function UBt(e,t,r,n){let i=rn(r);i.push(e.name);let a=rn(n);return a.push(1),{idx:t,def:e.definition,ruleStack:i,occurrenceStack:a}}var kM,Ik,mg,Ok,R2,Pk,N2,M2=R(()=>{"use strict";Ve();cM();Ck();os();kM=class extends Gu{static{o(this,"AbstractNextPossibleTokensWalker")}constructor(t,r){super(),this.topProd=t,this.path=r,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=rn(this.path.ruleStack).reverse(),this.occurrenceStack=rn(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(t,r=[]){this.found||super.walk(t,r)}walkProdRef(t,r,n){if(t.referencedRule.name===this.nextProductionName&&t.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(t.referencedRule,i)}}updateExpectedNext(){cr(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},Ik=class extends kM{static{o(this,"NextAfterTokenWalker")}constructor(t,r){super(t,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(t,r,n){if(this.isAtEndOfPath&&t.terminalType.name===this.nextTerminalName&&t.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),a=new Ln({definition:i});this.possibleTokTypes=u0(a),this.found=!0}}},mg=class extends Gu{static{o(this,"AbstractNextTerminalAfterProductionWalker")}constructor(t,r){super(),this.topRule=t,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},Ok=class extends mg{static{o(this,"NextTerminalAfterManyWalker")}walkMany(t,r,n){if(t.idx===this.occurrence){let i=aa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof br&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(t,r,n)}},R2=class extends mg{static{o(this,"NextTerminalAfterManySepWalker")}walkManySep(t,r,n){if(t.idx===this.occurrence){let i=aa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof br&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(t,r,n)}},Pk=class extends mg{static{o(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(t,r,n){if(t.idx===this.occurrence){let i=aa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof br&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(t,r,n)}},N2=class extends mg{static{o(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(t,r,n){if(t.idx===this.occurrence){let i=aa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof br&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(t,r,n)}};o(Bk,"possiblePathsFrom");o(Fk,"nextPossibleTokensAfter");o(UBt,"expandTopLevelRule")});function I2(e){if(e instanceof an||e==="Option")return Xn.OPTION;if(e instanceof Lr||e==="Repetition")return Xn.REPETITION;if(e instanceof Dn||e==="RepetitionMandatory")return Xn.REPETITION_MANDATORY;if(e instanceof Rn||e==="RepetitionMandatoryWithSeparator")return Xn.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof bn||e==="RepetitionWithSeparator")return Xn.REPETITION_WITH_SEPARATOR;if(e instanceof wn||e==="Alternation")return Xn.ALTERNATION;throw Error("non exhaustive match")}function $k(e){let{occurrence:t,rule:r,prodType:n,maxLookahead:i}=e,a=I2(n);return a===Xn.ALTERNATION?gg(t,r,i):yg(t,r,a,i)}function Fst(e,t,r,n,i,a){let s=gg(e,t,r),l=Hst(s)?dg:Vu;return a(s,n,l,i)}function zst(e,t,r,n,i,a){let s=yg(e,t,i,r),l=Hst(s)?dg:Vu;return a(s[0],l,n)}function $st(e,t,r,n){let i=e.length,a=za(e,s=>za(s,l=>l.length===1));if(t)return function(s){let l=Xt(s,u=>u.GATE);for(let u=0;uWr(u)),l=qr(s,(u,h,f)=>(Et(h,d=>{jt(u,d.tokenTypeIdx)||(u[d.tokenTypeIdx]=f),Et(d.categoryMatches,p=>{jt(u,p)||(u[p]=f)})}),u),{});return function(){let u=this.LA(1);return l[u.tokenTypeIdx]}}else return function(){for(let s=0;sa.length===1),i=e.length;if(n&&!r){let a=Wr(e);if(a.length===1&&cr(a[0].categoryMatches)){let l=a[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===l}}else{let s=qr(a,(l,u,h)=>(l[u.tokenTypeIdx]=!0,Et(u.categoryMatches,f=>{l[f]=!0}),l),[]);return function(){let l=this.LA(1);return s[l.tokenTypeIdx]===!0}}}else return function(){t:for(let a=0;aBk([s],1)),n=Bst(r.length),i=Xt(r,s=>{let l={};return Et(s,u=>{let h=EM(u.partialPath);Et(h,f=>{l[f]=!0})}),l}),a=r;for(let s=1;s<=t;s++){let l=a;a=Bst(l.length);for(let u=0;u{let x=EM(v.partialPath);Et(x,b=>{i[u][b]=!0})})}}}}return n}function gg(e,t,r,n){let i=new zk(e,Xn.ALTERNATION,n);return t.accept(i),Vst(i.result,r)}function yg(e,t,r,n){let i=new zk(e,r);t.accept(i);let a=i.result,l=new CM(t,e,r).startWalking(),u=new Ln({definition:a}),h=new Ln({definition:l});return Vst([u,h],n)}function Gk(e,t){t:for(let r=0;r{let i=t[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function Hst(e){return za(e,t=>za(t,r=>za(r,n=>cr(n.categoryMatches))))}var Xn,CM,zk,vg=R(()=>{"use strict";Ve();M2();Ck();f0();os();(function(e){e[e.OPTION=0]="OPTION",e[e.REPETITION=1]="REPETITION",e[e.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",e[e.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",e[e.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",e[e.ALTERNATION=5]="ALTERNATION"})(Xn||(Xn={}));o(I2,"getProdType");o($k,"getLookaheadPaths");o(Fst,"buildLookaheadFuncForOr");o(zst,"buildLookaheadFuncForOptionalProd");o($st,"buildAlternativesLookAheadFunc");o(Gst,"buildSingleAlternativeLookaheadFunction");CM=class extends Gu{static{o(this,"RestDefinitionFinderWalker")}constructor(t,r,n){super(),this.topProd=t,this.targetOccurrence=r,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(t,r,n,i){return t.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(i),!0):!1}walkOption(t,r,n){this.checkIsTarget(t,Xn.OPTION,r,n)||super.walkOption(t,r,n)}walkAtLeastOne(t,r,n){this.checkIsTarget(t,Xn.REPETITION_MANDATORY,r,n)||super.walkOption(t,r,n)}walkAtLeastOneSep(t,r,n){this.checkIsTarget(t,Xn.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(t,r,n)}walkMany(t,r,n){this.checkIsTarget(t,Xn.REPETITION,r,n)||super.walkOption(t,r,n)}walkManySep(t,r,n){this.checkIsTarget(t,Xn.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(t,r,n)}},zk=class extends ss{static{o(this,"InsideDefinitionFinderVisitor")}constructor(t,r,n){super(),this.targetOccurrence=t,this.targetProdType=r,this.targetRef=n,this.result=[]}checkIsTarget(t,r){t.idx===this.targetOccurrence&&this.targetProdType===r&&(this.targetRef===void 0||t===this.targetRef)&&(this.result=t.definition)}visitOption(t){this.checkIsTarget(t,Xn.OPTION)}visitRepetition(t){this.checkIsTarget(t,Xn.REPETITION)}visitRepetitionMandatory(t){this.checkIsTarget(t,Xn.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(t){this.checkIsTarget(t,Xn.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(t){this.checkIsTarget(t,Xn.REPETITION_WITH_SEPARATOR)}visitAlternation(t){this.checkIsTarget(t,Xn.ALTERNATION)}};o(Bst,"initializeArrayOfArrays");o(EM,"pathToHashKeys");o(HBt,"isUniquePrefixHash");o(Vst,"lookAheadSequenceFromAlternatives");o(gg,"getLookaheadPathsForOr");o(yg,"getLookaheadPathsForOptionalProd");o(Gk,"containsPath");o(Ust,"isStrictPrefixOfPath");o(Hst,"areTokenCategoriesNotUsed")});function Wst(e){let t=e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName});return Xt(t,r=>Object.assign({type:Gi.CUSTOM_LOOKAHEAD_VALIDATION},r))}function Yst(e,t,r,n){let i=ba(e,u=>WBt(u,r)),a=QBt(e,t,r),s=ba(e,u=>XBt(u,r)),l=ba(e,u=>qBt(u,e,n,r));return i.concat(a,s,l)}function WBt(e,t){let r=new SM;e.accept(r);let n=r.allProductions,i=zD(n,YBt),a=Os(i,l=>l.length>1);return Xt(gr(a),l=>{let u=aa(l),h=t.buildDuplicateFoundError(e,l),f=Bs(u),d={message:h,type:Gi.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:f,occurrence:u.idx},p=qst(u);return p&&(d.parameter=p),d})}function YBt(e){return`${Bs(e)}_#_${e.idx}_#_${qst(e)}`}function qst(e){return e instanceof br?e.terminalType.name:e instanceof nn?e.nonTerminalName:""}function qBt(e,t,r,n){let i=[];if(qr(t,(s,l)=>l.name===e.name?s+1:s,0)>1){let s=n.buildDuplicateRuleNameError({topLevelRule:e,grammarName:r});i.push({message:s,type:Gi.DUPLICATE_RULE_NAME,ruleName:e.name})}return i}function Xst(e,t,r){let n=[],i;return Wn(t,e)||(i=`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:Gi.INVALID_RULE_OVERRIDE,ruleName:e})),n}function _M(e,t,r,n=[]){let i=[],a=Vk(t.definition);if(cr(a))return[];{let s=e.name;Wn(a,e)&&i.push({message:r.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:n}),type:Gi.LEFT_RECURSION,ruleName:s});let u=tf(a,n.concat([e])),h=ba(u,f=>{let d=rn(n);return d.push(f),_M(e,f,r,d)});return i.concat(h)}}function Vk(e){let t=[];if(cr(e))return t;let r=aa(e);if(r instanceof nn)t.push(r.referencedRule);else if(r instanceof Ln||r instanceof an||r instanceof Dn||r instanceof Rn||r instanceof bn||r instanceof Lr)t=t.concat(Vk(r.definition));else if(r instanceof wn)t=Wr(Xt(r.definition,a=>Vk(a.definition)));else if(!(r instanceof br))throw Error("non exhaustive match");let n=c0(r),i=e.length>1;if(n&&i){let a=gi(e);return t.concat(Vk(a))}else return t}function jst(e,t){let r=new O2;e.accept(r);let n=r.alternations;return ba(n,a=>{let s=Pu(a.definition);return ba(s,(l,u)=>{let h=Fk([l],[],Vu,1);return cr(h)?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:a,emptyChoiceIdx:u}),type:Gi.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:a.idx,alternative:u+1}]:[]})})}function Kst(e,t,r){let n=new O2;e.accept(n);let i=n.alternations;return i=ef(i,s=>s.ignoreAmbiguities===!0),ba(i,s=>{let l=s.idx,u=s.maxLookahead||t,h=gg(l,e,u,s),f=jBt(h,s,e,r),d=KBt(h,s,e,r);return f.concat(d)})}function XBt(e,t){let r=new O2;e.accept(r);let n=r.alternations;return ba(n,a=>a.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:a}),type:Gi.TOO_MANY_ALTS,ruleName:e.name,occurrence:a.idx}]:[])}function Qst(e,t,r){let n=[];return Et(e,i=>{let a=new AM;i.accept(a);let s=a.allProductions;Et(s,l=>{let u=I2(l),h=l.maxLookahead||t,f=l.idx,p=yg(f,i,u,h)[0];if(cr(Wr(p))){let m=r.buildEmptyRepetitionError({topLevelRule:i,repetition:l});n.push({message:m,type:Gi.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function jBt(e,t,r,n){let i=[],a=qr(e,(l,u,h)=>(t.definition[h].ignoreAmbiguities===!0||Et(u,f=>{let d=[h];Et(e,(p,m)=>{h!==m&&Gk(p,f)&&t.definition[m].ignoreAmbiguities!==!0&&d.push(m)}),d.length>1&&!Gk(i,f)&&(i.push(f),l.push({alts:d,path:f}))}),l),[]);return Xt(a,l=>{let u=Xt(l.alts,f=>f+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:u,prefixPath:l.path}),type:Gi.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:t.idx,alternatives:l.alts}})}function KBt(e,t,r,n){let i=qr(e,(s,l,u)=>{let h=Xt(l,f=>({idx:u,path:f}));return s.concat(h)},[]);return Dc(ba(i,s=>{if(t.definition[s.idx].ignoreAmbiguities===!0)return[];let u=s.idx,h=s.path,f=Yr(i,p=>t.definition[p.idx].ignoreAmbiguities!==!0&&p.idx{let m=[p.idx+1,u+1],g=t.idx===0?"":t.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:m,prefixPath:p.path}),type:Gi.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:g,alternatives:m}})}))}function QBt(e,t,r){let n=[],i=Xt(t,a=>a.name);return Et(e,a=>{let s=a.name;if(Wn(i,s)){let l=r.buildNamespaceConflictError(a);n.push({message:l,type:Gi.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:s})}}),n}var SM,O2,AM,P2=R(()=>{"use strict";Ve();Fs();os();vg();M2();f0();o(Wst,"validateLookahead");o(Yst,"validateGrammar");o(WBt,"validateDuplicateProductions");o(YBt,"identifyProductionForDuplicates");o(qst,"getExtraProductionArgument");SM=class extends ss{static{o(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(t){this.allProductions.push(t)}visitOption(t){this.allProductions.push(t)}visitRepetitionWithSeparator(t){this.allProductions.push(t)}visitRepetitionMandatory(t){this.allProductions.push(t)}visitRepetitionMandatoryWithSeparator(t){this.allProductions.push(t)}visitRepetition(t){this.allProductions.push(t)}visitAlternation(t){this.allProductions.push(t)}visitTerminal(t){this.allProductions.push(t)}};o(qBt,"validateRuleDoesNotAlreadyExist");o(Xst,"validateRuleIsOverridden");o(_M,"validateNoLeftRecursion");o(Vk,"getFirstNoneTerminal");O2=class extends ss{static{o(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(t){this.alternations.push(t)}};o(jst,"validateEmptyOrAlternative");o(Kst,"validateAmbiguousAlternationAlternatives");AM=class extends ss{static{o(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(t){this.allProductions.push(t)}visitRepetitionMandatory(t){this.allProductions.push(t)}visitRepetitionMandatoryWithSeparator(t){this.allProductions.push(t)}visitRepetition(t){this.allProductions.push(t)}};o(XBt,"validateTooManyAlts");o(Qst,"validateSomeNonEmptyLookaheadPath");o(jBt,"checkAlternativesAmbiguities");o(KBt,"checkPrefixAlternativesAmbiguities");o(QBt,"checkTerminalAndNoneTerminalsNameSpace")});function Zst(e){let t=Jh(e,{errMsgProvider:Ist}),r={};return Et(e.rules,n=>{r[n.name]=n}),Ost(r,t.errMsgProvider)}function Jst(e){return e=Jh(e,{errMsgProvider:$l}),Yst(e.rules,e.tokenTypes,e.errMsgProvider,e.grammarName)}var tot=R(()=>{"use strict";Ve();Pst();P2();pg();o(Zst,"resolveGrammar");o(Jst,"validateGrammar")});function cf(e){return Wn(aot,e.name)}var eot,rot,not,iot,aot,xg,m0,B2,F2,z2,bg=R(()=>{"use strict";Ve();eot="MismatchedTokenException",rot="NoViableAltException",not="EarlyExitException",iot="NotAllInputParsedException",aot=[eot,rot,not,iot];Object.freeze(aot);o(cf,"isRecognitionException");xg=class extends Error{static{o(this,"RecognitionException")}constructor(t,r){super(t),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},m0=class extends xg{static{o(this,"MismatchedTokenException")}constructor(t,r,n){super(t,r),this.previousToken=n,this.name=eot}},B2=class extends xg{static{o(this,"NoViableAltException")}constructor(t,r,n){super(t,r),this.previousToken=n,this.name=rot}},F2=class extends xg{static{o(this,"NotAllInputParsedException")}constructor(t,r){super(t,r),this.name=iot}},z2=class extends xg{static{o(this,"EarlyExitException")}constructor(t,r,n){super(t,r),this.previousToken=n,this.name=not}}});function ZBt(e,t,r,n,i,a,s){let l=this.getKeyForAutomaticLookahead(n,i),u=this.firstAfterRepMap[l];if(u===void 0){let p=this.getCurrRuleFullName(),m=this.getGAstProductions()[p];u=new a(m,i).startWalking(),this.firstAfterRepMap[l]=u}let h=u.token,f=u.occurrence,d=u.isEndOfRule;this.RULE_STACK.length===1&&d&&h===void 0&&(h=po,f=1),!(h===void 0||f===void 0)&&this.shouldInRepetitionRecoveryBeTried(h,f,s)&&this.tryInRepetitionRecovery(e,t,r,h)}var LM,RM,DM,Uk,NM=R(()=>{"use strict";p0();Ve();bg();uM();Fs();LM={},RM="InRuleRecoveryException",DM=class extends Error{static{o(this,"InRuleRecoveryException")}constructor(t){super(t),this.name=RM}},Uk=class{static{o(this,"Recoverable")}initRecoverable(t){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=jt(t,"recoveryEnabled")?t.recoveryEnabled:ls.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=ZBt)}getTokenToInsert(t){let r=d0(t,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(t){return!0}canTokenTypeBeDeletedInRecovery(t){return!0}tryInRepetitionRecovery(t,r,n,i){let a=this.findReSyncTokenType(),s=this.exportLexerState(),l=[],u=!1,h=this.LA(1),f=this.LA(1),d=o(()=>{let p=this.LA(0),m=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:h,previous:p,ruleName:this.getCurrRuleFullName()}),g=new m0(m,h,this.LA(0));g.resyncedTokens=Pu(l),this.SAVE_ERROR(g)},"generateErrorMessage");for(;!u;)if(this.tokenMatcher(f,i)){d();return}else if(n.call(this)){d(),t.apply(this,r);return}else this.tokenMatcher(f,a)?u=!0:(f=this.SKIP_TOKEN(),this.addToResyncTokens(f,l));this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(t,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),t)||this.isBackTracking()||this.canPerformInRuleRecovery(t,this.getFollowsForInRuleRecovery(t,r)))}getFollowsForInRuleRecovery(t,r){let n=this.getCurrentGrammarPath(t,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(t,r){if(this.canRecoverWithSingleTokenInsertion(t,r))return this.getTokenToInsert(t);if(this.canRecoverWithSingleTokenDeletion(t)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new DM("sad sad panda")}canPerformInRuleRecovery(t,r){return this.canRecoverWithSingleTokenInsertion(t,r)||this.canRecoverWithSingleTokenDeletion(t)}canRecoverWithSingleTokenInsertion(t,r){if(!this.canTokenTypeBeInsertedInRecovery(t)||cr(r))return!1;let n=this.LA(1);return rs(r,a=>this.tokenMatcher(n,a))!==void 0}canRecoverWithSingleTokenDeletion(t){return this.canTokenTypeBeDeletedInRecovery(t)?this.tokenMatcher(this.LA(2),t):!1}isInCurrentRuleReSyncSet(t){let r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return Wn(n,t)}findReSyncTokenType(){let t=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=rs(t,a=>D2(r,a));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return LM;let t=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(t),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let t=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return Xt(t,(n,i)=>i===0?LM:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(t[i-1])})}flattenFollowSet(){let t=Xt(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return Wr(t)}getFollowSetFromFollowKey(t){if(t===LM)return[po];let r=t.ruleName+t.idxInCallingRule+Sk+t.inRule;return this.resyncFollows[r]}addToResyncTokens(t,r){return this.tokenMatcher(t,po)||r.push(t),r}reSyncTo(t){let r=[],n=this.LA(1);for(;this.tokenMatcher(n,t)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return Pu(r)}attemptInRepetitionRecovery(t,r,n,i,a,s,l){}getCurrentGrammarPath(t,r){let n=this.getHumanReadableRuleStack(),i=rn(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:t,lastTokOccurrence:r}}getHumanReadableRuleStack(){return Xt(this.RULE_STACK,t=>this.shortRuleNameToFullName(t))}};o(ZBt,"attemptInRepetitionRecovery")});function Hk(e,t,r){return r|t|e}var Wk=R(()=>{"use strict";o(Hk,"getKeyForAutomaticLookahead")});var Yu,MM=R(()=>{"use strict";Ve();pg();Fs();P2();vg();Yu=class{static{o(this,"LLkLookaheadStrategy")}constructor(t){var r;this.maxLookahead=(r=t?.maxLookahead)!==null&&r!==void 0?r:ls.maxLookahead}validate(t){let r=this.validateNoLeftRecursion(t.rules);if(cr(r)){let n=this.validateEmptyOrAlternatives(t.rules),i=this.validateAmbiguousAlternationAlternatives(t.rules,this.maxLookahead),a=this.validateSomeNonEmptyLookaheadPath(t.rules,this.maxLookahead);return[...r,...n,...i,...a]}return r}validateNoLeftRecursion(t){return ba(t,r=>_M(r,r,$l))}validateEmptyOrAlternatives(t){return ba(t,r=>jst(r,$l))}validateAmbiguousAlternationAlternatives(t,r){return ba(t,n=>Kst(n,r,$l))}validateSomeNonEmptyLookaheadPath(t,r){return Qst(t,r,$l)}buildLookaheadForAlternation(t){return Fst(t.prodOccurrence,t.rule,t.maxLookahead,t.hasPredicates,t.dynamicTokensEnabled,$st)}buildLookaheadForOptional(t){return zst(t.prodOccurrence,t.rule,t.maxLookahead,t.dynamicTokensEnabled,I2(t.prodType),Gst)}}});function JBt(e){Yk.reset(),e.accept(Yk);let t=Yk.dslMethods;return Yk.reset(),t}var qk,IM,Yk,sot=R(()=>{"use strict";Ve();Fs();Wk();os();MM();qk=class{static{o(this,"LooksAhead")}initLooksAhead(t){this.dynamicTokensEnabled=jt(t,"dynamicTokensEnabled")?t.dynamicTokensEnabled:ls.dynamicTokensEnabled,this.maxLookahead=jt(t,"maxLookahead")?t.maxLookahead:ls.maxLookahead,this.lookaheadStrategy=jt(t,"lookaheadStrategy")?t.lookaheadStrategy:new Yu({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(t){Et(t,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:a,repetitionMandatory:s,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:u}=JBt(r);Et(n,h=>{let f=h.idx===0?"":h.idx;this.TRACE_INIT(`${Bs(h)}${f}`,()=>{let d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:h.idx,rule:r,maxLookahead:h.maxLookahead||this.maxLookahead,hasPredicates:h.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=Hk(this.fullRuleNameToShort[r.name],256,h.idx);this.setLaFuncCache(p,d)})}),Et(i,h=>{this.computeLookaheadFunc(r,h.idx,768,"Repetition",h.maxLookahead,Bs(h))}),Et(a,h=>{this.computeLookaheadFunc(r,h.idx,512,"Option",h.maxLookahead,Bs(h))}),Et(s,h=>{this.computeLookaheadFunc(r,h.idx,1024,"RepetitionMandatory",h.maxLookahead,Bs(h))}),Et(l,h=>{this.computeLookaheadFunc(r,h.idx,1536,"RepetitionMandatoryWithSeparator",h.maxLookahead,Bs(h))}),Et(u,h=>{this.computeLookaheadFunc(r,h.idx,1280,"RepetitionWithSeparator",h.maxLookahead,Bs(h))})})})}computeLookaheadFunc(t,r,n,i,a,s){this.TRACE_INIT(`${s}${r===0?"":r}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:t,maxLookahead:a||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),u=Hk(this.fullRuleNameToShort[t.name],n,r);this.setLaFuncCache(u,l)})}getKeyForAutomaticLookahead(t,r){let n=this.getLastExplicitRuleShortName();return Hk(n,t,r)}getLaFuncFromCache(t){return this.lookAheadFuncsCache.get(t)}setLaFuncCache(t,r){this.lookAheadFuncsCache.set(t,r)}},IM=class extends ss{static{o(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(t){this.dslMethods.option.push(t)}visitRepetitionWithSeparator(t){this.dslMethods.repetitionWithSeparator.push(t)}visitRepetitionMandatory(t){this.dslMethods.repetitionMandatory.push(t)}visitRepetitionMandatoryWithSeparator(t){this.dslMethods.repetitionMandatoryWithSeparator.push(t)}visitRepetition(t){this.dslMethods.repetition.push(t)}visitAlternation(t){this.dslMethods.alternation.push(t)}},Yk=new IM;o(JBt,"collectMethods")});function BM(e,t){isNaN(e.startOffset)===!0?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset{"use strict";o(BM,"setNodeLocationOnlyOffset");o(FM,"setNodeLocationFull");o(oot,"addTerminalToCst");o(lot,"addNoneTerminalToCst")});function zM(e,t){Object.defineProperty(e,tFt,{enumerable:!1,configurable:!0,writable:!1,value:t})}var tFt,uot=R(()=>{"use strict";tFt="name";o(zM,"defineNameProp")});function eFt(e,t){let r=$r(e),n=r.length;for(let i=0;is.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>: ${a.join(` `).replace(/\n/g,` `)}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=t,r}function fot(e,t,r){let n=o(function(){},"derivedConstructor");zM(n,e+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return Et(t,a=>{i[a]=eFt}),n.prototype=i,n.prototype.constructor=n,n}function rFt(e,t){return nFt(e,t)}function nFt(e,t){let r=Yr(t,i=>Si(e[i])===!1),n=Xt(r,i=>({msg:`Missing visitor method: <${i}> on ${e.constructor.name} CST Visitor.`,type:$M.MISSING_METHOD,methodName:i}));return Dc(n)}var $M,dot=R(()=>{"use strict";Ve();uot();o(eFt,"defaultVisit");o(hot,"createBaseSemanticVisitorConstructor");o(fot,"createBaseVisitorConstructorWithDefaults");(function(e){e[e.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",e[e.MISSING_METHOD=1]="MISSING_METHOD"})($M||($M={}));o(rFt,"validateVisitor");o(nFt,"validateMissingCstMethods")});var Qk,pot=R(()=>{"use strict";cot();Ve();dot();Fs();Qk=class{static{o(this,"TreeBuilder")}initTreeBuilder(t){if(this.CST_STACK=[],this.outputCst=t.outputCst,this.nodeLocationTracking=jt(t,"nodeLocationTracking")?t.nodeLocationTracking:ls.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=ei,this.cstFinallyStateUpdate=ei,this.cstPostTerminal=ei,this.cstPostNonTerminal=ei,this.cstPostRule=ei;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=FM,this.setNodeLocationFromNode=FM,this.cstPostRule=ei,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=ei,this.setNodeLocationFromNode=ei,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=BM,this.setNodeLocationFromNode=BM,this.cstPostRule=ei,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=ei,this.setNodeLocationFromNode=ei,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=ei,this.setNodeLocationFromNode=ei,this.cstPostRule=ei,this.setInitialNodeLocation=ei;else throw Error(`Invalid config option: "${t.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(t){t.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(t){t.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(t){t.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(t){let r=this.LA(1);t.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(t){let r={name:t,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(t){let r=this.LA(0),n=t.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(t){let r=this.LA(0),n=t.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(t,r){let n=this.CST_STACK[this.CST_STACK.length-1];oot(n,r,t),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(t,r){let n=this.CST_STACK[this.CST_STACK.length-1];lot(n,r,t),this.setNodeLocationFromNode(n.location,t.location)}getBaseCstVisitorConstructor(){if(fr(this.baseCstVisitorConstructor)){let t=hot(this.className,$r(this.gastProductionsCache));return this.baseCstVisitorConstructor=t,t}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(fr(this.baseCstVisitorWithDefaultsConstructor)){let t=fot(this.className,$r(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=t,t}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let t=this.RULE_STACK;return t[t.length-1]}getPreviousExplicitRuleShortName(){let t=this.RULE_STACK;return t[t.length-2]}getLastExplicitRuleOccurrenceIndex(){let t=this.RULE_OCCURRENCE_STACK;return t[t.length-1]}}});var Zk,mot=R(()=>{"use strict";Fs();Zk=class{static{o(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(t){if(this.selfAnalysisDone!==!0)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=t,this.tokVectorLength=t.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):wg}LA(t){let r=this.currIdx+t;return r<0||this.tokVectorLength<=r?wg:this.tokVector[r]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(t){this.currIdx=t}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}}});var Jk,got=R(()=>{"use strict";Ve();bg();Fs();pg();P2();os();Jk=class{static{o(this,"RecognizerApi")}ACTION(t){return t.call(this)}consume(t,r,n){return this.consumeInternal(r,t,n)}subrule(t,r,n){return this.subruleInternal(r,t,n)}option(t,r){return this.optionInternal(r,t)}or(t,r){return this.orInternal(r,t)}many(t,r){return this.manyInternal(t,r)}atLeastOne(t,r){return this.atLeastOneInternal(t,r)}CONSUME(t,r){return this.consumeInternal(t,0,r)}CONSUME1(t,r){return this.consumeInternal(t,1,r)}CONSUME2(t,r){return this.consumeInternal(t,2,r)}CONSUME3(t,r){return this.consumeInternal(t,3,r)}CONSUME4(t,r){return this.consumeInternal(t,4,r)}CONSUME5(t,r){return this.consumeInternal(t,5,r)}CONSUME6(t,r){return this.consumeInternal(t,6,r)}CONSUME7(t,r){return this.consumeInternal(t,7,r)}CONSUME8(t,r){return this.consumeInternal(t,8,r)}CONSUME9(t,r){return this.consumeInternal(t,9,r)}SUBRULE(t,r){return this.subruleInternal(t,0,r)}SUBRULE1(t,r){return this.subruleInternal(t,1,r)}SUBRULE2(t,r){return this.subruleInternal(t,2,r)}SUBRULE3(t,r){return this.subruleInternal(t,3,r)}SUBRULE4(t,r){return this.subruleInternal(t,4,r)}SUBRULE5(t,r){return this.subruleInternal(t,5,r)}SUBRULE6(t,r){return this.subruleInternal(t,6,r)}SUBRULE7(t,r){return this.subruleInternal(t,7,r)}SUBRULE8(t,r){return this.subruleInternal(t,8,r)}SUBRULE9(t,r){return this.subruleInternal(t,9,r)}OPTION(t){return this.optionInternal(t,0)}OPTION1(t){return this.optionInternal(t,1)}OPTION2(t){return this.optionInternal(t,2)}OPTION3(t){return this.optionInternal(t,3)}OPTION4(t){return this.optionInternal(t,4)}OPTION5(t){return this.optionInternal(t,5)}OPTION6(t){return this.optionInternal(t,6)}OPTION7(t){return this.optionInternal(t,7)}OPTION8(t){return this.optionInternal(t,8)}OPTION9(t){return this.optionInternal(t,9)}OR(t){return this.orInternal(t,0)}OR1(t){return this.orInternal(t,1)}OR2(t){return this.orInternal(t,2)}OR3(t){return this.orInternal(t,3)}OR4(t){return this.orInternal(t,4)}OR5(t){return this.orInternal(t,5)}OR6(t){return this.orInternal(t,6)}OR7(t){return this.orInternal(t,7)}OR8(t){return this.orInternal(t,8)}OR9(t){return this.orInternal(t,9)}MANY(t){this.manyInternal(0,t)}MANY1(t){this.manyInternal(1,t)}MANY2(t){this.manyInternal(2,t)}MANY3(t){this.manyInternal(3,t)}MANY4(t){this.manyInternal(4,t)}MANY5(t){this.manyInternal(5,t)}MANY6(t){this.manyInternal(6,t)}MANY7(t){this.manyInternal(7,t)}MANY8(t){this.manyInternal(8,t)}MANY9(t){this.manyInternal(9,t)}MANY_SEP(t){this.manySepFirstInternal(0,t)}MANY_SEP1(t){this.manySepFirstInternal(1,t)}MANY_SEP2(t){this.manySepFirstInternal(2,t)}MANY_SEP3(t){this.manySepFirstInternal(3,t)}MANY_SEP4(t){this.manySepFirstInternal(4,t)}MANY_SEP5(t){this.manySepFirstInternal(5,t)}MANY_SEP6(t){this.manySepFirstInternal(6,t)}MANY_SEP7(t){this.manySepFirstInternal(7,t)}MANY_SEP8(t){this.manySepFirstInternal(8,t)}MANY_SEP9(t){this.manySepFirstInternal(9,t)}AT_LEAST_ONE(t){this.atLeastOneInternal(0,t)}AT_LEAST_ONE1(t){return this.atLeastOneInternal(1,t)}AT_LEAST_ONE2(t){this.atLeastOneInternal(2,t)}AT_LEAST_ONE3(t){this.atLeastOneInternal(3,t)}AT_LEAST_ONE4(t){this.atLeastOneInternal(4,t)}AT_LEAST_ONE5(t){this.atLeastOneInternal(5,t)}AT_LEAST_ONE6(t){this.atLeastOneInternal(6,t)}AT_LEAST_ONE7(t){this.atLeastOneInternal(7,t)}AT_LEAST_ONE8(t){this.atLeastOneInternal(8,t)}AT_LEAST_ONE9(t){this.atLeastOneInternal(9,t)}AT_LEAST_ONE_SEP(t){this.atLeastOneSepFirstInternal(0,t)}AT_LEAST_ONE_SEP1(t){this.atLeastOneSepFirstInternal(1,t)}AT_LEAST_ONE_SEP2(t){this.atLeastOneSepFirstInternal(2,t)}AT_LEAST_ONE_SEP3(t){this.atLeastOneSepFirstInternal(3,t)}AT_LEAST_ONE_SEP4(t){this.atLeastOneSepFirstInternal(4,t)}AT_LEAST_ONE_SEP5(t){this.atLeastOneSepFirstInternal(5,t)}AT_LEAST_ONE_SEP6(t){this.atLeastOneSepFirstInternal(6,t)}AT_LEAST_ONE_SEP7(t){this.atLeastOneSepFirstInternal(7,t)}AT_LEAST_ONE_SEP8(t){this.atLeastOneSepFirstInternal(8,t)}AT_LEAST_ONE_SEP9(t){this.atLeastOneSepFirstInternal(9,t)}RULE(t,r,n=Tg){if(Wn(this.definedRulesNames,t)){let s={message:$l.buildDuplicateRuleNameError({topLevelRule:t,grammarName:this.className}),type:Gi.DUPLICATE_RULE_NAME,ruleName:t};this.definitionErrors.push(s)}this.definedRulesNames.push(t);let i=this.defineRule(t,r,n);return this[t]=i,i}OVERRIDE_RULE(t,r,n=Tg){let i=Xst(t,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let a=this.defineRule(t,r,n);return this[t]=a,a}BACKTRACK(t,r){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return t.apply(this,r),!0}catch(i){if(cf(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return kk(gr(this.gastProductionsCache))}}});var tE,yot=R(()=>{"use strict";Ve();Wk();bg();vg();M2();Fs();NM();p0();f0();tE=class{static{o(this,"RecognizerEngine")}initRecognizerEngine(t,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=dg,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},jt(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a property. See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0 For Further details.`);if(Le(t)){if(cr(t))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 t[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(Le(t))this.tokensMap=qr(t,(a,s)=>(a[s.name]=s,a),{});else if(jt(t,"modes")&&za(Wr(gr(t.modes)),Cst)){let a=Wr(gr(t.modes)),s=Qm(a);this.tokensMap=qr(s,(l,u)=>(l[u.name]=u,l),{})}else if(xn(t))this.tokensMap=rn(t);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=po;let n=jt(t,"modes")?Wr(gr(t.modes)):gr(t),i=za(n,a=>cr(a.categoryMatches));this.tokenMatcher=i?dg:Vu,Uu(gr(this.tokensMap))}defineRule(t,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${t}> 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 i=jt(n,"resyncEnabled")?n.resyncEnabled:Tg.resyncEnabled,a=jt(n,"recoveryValueFunc")?n.recoveryValueFunc:Tg.recoveryValueFunc,s=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[s]=t,this.fullRuleNameToShort[t]=s;let l;return this.outputCst===!0?l=o(function(...f){try{this.ruleInvocationStateUpdate(s,t,this.subruleIdx),r.apply(this,f);let d=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(d),d}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):l=o(function(...f){try{return this.ruleInvocationStateUpdate(s,t,this.subruleIdx),r.apply(this,f)}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(l,{ruleName:t,originalGrammarAction:r})}invokeRuleCatch(t,r,n){let i=this.RULE_STACK.length===1,a=r&&!this.isBackTracking()&&this.recoveryEnabled;if(cf(t)){let s=t;if(a){let l=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(l))if(s.resyncedTokens=this.reSyncTo(l),this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];return u.recoveredNode=!0,u}else return n(t);else{if(this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];u.recoveredNode=!0,s.partialCstResult=u}throw s}}else{if(i)return this.moveToTerminatedState(),n(t);throw s}}else throw t}optionInternal(t,r){let n=this.getKeyForAutomaticLookahead(512,r);return this.optionInternalLogic(t,r,n)}optionInternalLogic(t,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof t!="function"){a=t.DEF;let s=t.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=t;if(i.call(this)===!0)return a.call(this)}atLeastOneInternal(t,r){let n=this.getKeyForAutomaticLookahead(1024,t);return this.atLeastOneInternalLogic(t,r,n)}atLeastOneInternalLogic(t,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let s=r.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=r;if(i.call(this)===!0){let s=this.doSingleRepetition(a);for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a)}else throw this.raiseEarlyExitException(t,Xn.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[t,r],i,1024,t,Pk)}atLeastOneSepFirstInternal(t,r){let n=this.getKeyForAutomaticLookahead(1536,t);this.atLeastOneSepFirstInternalLogic(t,r,n)}atLeastOneSepFirstInternalLogic(t,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,a,l,i,N2],l,1536,t,N2)}else throw this.raiseEarlyExitException(t,Xn.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(t,r){let n=this.getKeyForAutomaticLookahead(768,t);return this.manyInternalLogic(t,r,n)}manyInternalLogic(t,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let l=r.GATE;if(l!==void 0){let u=i;i=o(()=>l.call(this)&&u.call(this),"lookaheadFunction")}}else a=r;let s=!0;for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a);this.attemptInRepetitionRecovery(this.manyInternal,[t,r],i,768,t,Ok,s)}manySepFirstInternal(t,r){let n=this.getKeyForAutomaticLookahead(1280,t);this.manySepFirstInternalLogic(t,r,n)}manySepFirstInternalLogic(t,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,a,l,i,R2],l,1280,t,R2)}}repetitionSepSecondInternal(t,r,n,i,a){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,r,n,i,a],n,1536,t,a)}doSingleRepetition(t){let r=this.getLexerPosition();return t.call(this),this.getLexerPosition()>r}orInternal(t,r){let n=this.getKeyForAutomaticLookahead(256,r),i=Le(t)?t:t.DEF,s=this.getLaFuncFromCache(n).call(this,i);if(s!==void 0)return i[s].ALT.call(this);this.raiseNoAltException(r,t.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let t=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:t,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new F2(r,t))}}subruleInternal(t,r,n){let i;try{let a=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=t.apply(this,a),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:t.ruleName),i}catch(a){throw this.subruleInternalError(a,n,t.ruleName)}}subruleInternalError(t,r,n){throw cf(t)&&t.partialCstResult!==void 0&&(this.cstPostNonTerminal(t.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete t.partialCstResult),t}consumeInternal(t,r,n){let i;try{let a=this.LA(1);this.tokenMatcher(a,t)===!0?(this.consumeToken(),i=a):this.consumeInternalError(t,a,n)}catch(a){i=this.consumeInternalRecovery(t,r,a)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:t.name,i),i}consumeInternalError(t,r,n){let i,a=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:t,actual:r,previous:a,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new m0(i,r,a))}consumeInternalRecovery(t,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(t,r);try{return this.tryInRuleRecovery(t,i)}catch(a){throw a.name===RM?n:a}}else throw n}saveRecogState(){let t=this.errors,r=rn(this.RULE_STACK);return{errors:t,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(t){this.errors=t.errors,this.importLexerState(t.lexerState),this.RULE_STACK=t.RULE_STACK}ruleInvocationStateUpdate(t,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(t),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let t=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[t]}shortRuleNameToFullName(t){return this.shortRuleNameToFull[t]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),po)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}});var eE,vot=R(()=>{"use strict";bg();Ve();vg();Fs();eE=class{static{o(this,"ErrorHandler")}initErrorHandler(t){this._errors=[],this.errorMessageProvider=jt(t,"errorMessageProvider")?t.errorMessageProvider:ls.errorMessageProvider}SAVE_ERROR(t){if(cf(t))return t.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:rn(this.RULE_OCCURRENCE_STACK)},this._errors.push(t),t;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return rn(this._errors)}set errors(t){this._errors=t}raiseEarlyExitException(t,r,n){let i=this.getCurrRuleFullName(),a=this.getGAstProductions()[i],l=yg(t,a,r,this.maxLookahead)[0],u=[];for(let f=1;f<=this.maxLookahead;f++)u.push(this.LA(f));let h=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:l,actual:u,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new z2(h,this.LA(1),this.LA(0)))}raiseNoAltException(t,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],a=gg(t,i,this.maxLookahead),s=[];for(let h=1;h<=this.maxLookahead;h++)s.push(this.LA(h));let l=this.LA(0),u=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:a,actual:s,previous:l,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new B2(u,this.LA(1),l))}}});var rE,xot=R(()=>{"use strict";M2();Ve();rE=class{static{o(this,"ContentAssist")}initContentAssist(){}computeContentAssist(t,r){let n=this.gastProductionsCache[t];if(fr(n))throw Error(`Rule ->${t}<- does not exist in this grammar.`);return Fk([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(t){let r=aa(t.ruleStack),i=this.getGAstProductions()[r];return new Ik(i,t).startWalking()}}});function G2(e,t,r,n=!1){iE(r);let i=xa(this.recordingProdStack),a=Si(t)?t:t.DEF,s=new e({definition:[],idx:r});return n&&(s.separator=t.SEP),jt(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),aE}function sFt(e,t){iE(t);let r=xa(this.recordingProdStack),n=Le(e)===!1,i=n===!1?e:e.DEF,a=new wn({definition:[],idx:t,ignoreAmbiguities:n&&e.IGNORE_AMBIGUITIES===!0});jt(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD);let s=r2(i,l=>Si(l.GATE));return a.hasPredicates=s,r.definition.push(a),Et(i,l=>{let u=new Ln({definition:[]});a.definition.push(u),jt(l,"IGNORE_AMBIGUITIES")?u.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:jt(l,"GATE")&&(u.ignoreAmbiguities=!0),this.recordingProdStack.push(u),l.ALT.call(this),this.recordingProdStack.pop()}),aE}function Tot(e){return e===0?"":`${e}`}function iE(e){if(e<0||e>wot){let t=new Error(`Invalid DSL Method idx value: <${e}> Idx value must be a none negative value smaller than ${wot+1}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}var aE,bot,wot,kot,Eot,aFt,nE,Cot=R(()=>{"use strict";Ve();os();_2();f0();p0();Fs();Wk();aE={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(aE);bot=!0,wot=Math.pow(2,8)-1,kot=Mk({name:"RECORDING_PHASE_TOKEN",pattern:li.NA});Uu([kot]);Eot=d0(kot,`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(Eot);aFt={name:`This CSTNode indicates the Parser is in Recording Phase See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},nE=class{static{o(this,"GastRecorder")}initGastRecorder(t){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let t=0;t<10;t++){let r=t>0?t:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,t,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,t,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,t)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,t)},this[`MANY${r}`]=function(n){this.manyInternalRecord(t,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(t,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(t,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(t,n)}}this.consume=function(t,r,n){return this.consumeInternalRecord(r,t,n)},this.subrule=function(t,r,n){return this.subruleInternalRecord(r,t,n)},this.option=function(t,r){return this.optionInternalRecord(r,t)},this.or=function(t,r){return this.orInternalRecord(r,t)},this.many=function(t,r){this.manyInternalRecord(t,r)},this.atLeastOne=function(t,r){this.atLeastOneInternalRecord(t,r)},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 t=this;for(let r=0;r<10;r++){let n=r>0?r:"";delete t[`CONSUME${n}`],delete t[`SUBRULE${n}`],delete t[`OPTION${n}`],delete t[`OR${n}`],delete t[`MANY${n}`],delete t[`MANY_SEP${n}`],delete t[`AT_LEAST_ONE${n}`],delete t[`AT_LEAST_ONE_SEP${n}`]}delete t.consume,delete t.subrule,delete t.option,delete t.or,delete t.many,delete t.atLeastOne,delete t.ACTION,delete t.BACKTRACK,delete t.LA})}ACTION_RECORD(t){}BACKTRACK_RECORD(t,r){return()=>!0}LA_RECORD(t){return wg}topLevelRuleRecord(t,r){try{let n=new as({definition:[],name:t});return n.name=t,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+` This error was thrown during the "grammar recording phase" For more info see: https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(t,r){return G2.call(this,an,t,r)}atLeastOneInternalRecord(t,r){G2.call(this,Dn,r,t)}atLeastOneSepFirstInternalRecord(t,r){G2.call(this,Rn,r,t,bot)}manyInternalRecord(t,r){G2.call(this,Lr,r,t)}manySepFirstInternalRecord(t,r){G2.call(this,bn,r,t,bot)}orInternalRecord(t,r){return sFt.call(this,t,r)}subruleInternalRecord(t,r,n){if(iE(r),!t||jt(t,"ruleName")===!1){let l=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(t)}> inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let i=xa(this.recordingProdStack),a=t.ruleName,s=new nn({idx:r,nonTerminalName:a,label:n?.LABEL,referencedRule:void 0});return i.definition.push(s),this.outputCst?aFt:aE}consumeInternalRecord(t,r,n){if(iE(r),!vM(t)){let s=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(t)}> inside top level rule: <${this.recordingProdStack[0].name}>`);throw s.KNOWN_RECORDER_ERROR=!0,s}let i=xa(this.recordingProdStack),a=new br({idx:r,terminalType:t,label:n?.LABEL});return i.definition.push(a),Eot}};o(G2,"recordProd");o(sFt,"recordOrProd");o(Tot,"getIdxSuffix");o(iE,"assertMethodIdxIsValid")});var sE,Sot=R(()=>{"use strict";Ve();lg();Fs();sE=class{static{o(this,"PerformanceTracer")}initPerformanceTracer(t){if(jt(t,"traceInitPerf")){let r=t.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=ls.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(t,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${t}>`);let{time:i,value:a}=C2(r),s=i>10?console.warn:console.log;return this.traceInitIndent time: ${i}ms`),this.traceInitIndent--,a}else return r()}}});function Aot(e,t){t.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let a=Object.getOwnPropertyDescriptor(n,i);a&&(a.get||a.set)?Object.defineProperty(e.prototype,i,a):e.prototype[i]=r.prototype[i]})})}var _ot=R(()=>{"use strict";o(Aot,"applyMixins")});function oE(e=void 0){return function(){return e}}var wg,ls,Tg,Gi,V2,U2,Fs=R(()=>{"use strict";Ve();lg();ist();p0();pg();tot();NM();sot();pot();mot();got();yot();vot();xot();Cot();Sot();_ot();P2();wg=d0(po,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(wg);ls=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Wu,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Tg=Object.freeze({recoveryValueFunc:o(()=>{},"recoveryValueFunc"),resyncEnabled:!0});(function(e){e[e.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",e[e.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",e[e.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",e[e.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",e[e.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",e[e.LEFT_RECURSION=5]="LEFT_RECURSION",e[e.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",e[e.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",e[e.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",e[e.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",e[e.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",e[e.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",e[e.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",e[e.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(Gi||(Gi={}));o(oE,"EMPTY_ALT");V2=class e{static{o(this,"Parser")}static performSelfAnalysis(t){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let t;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{S2(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Et(this.definedRulesNames,i=>{let s=this[i].originalGrammarAction,l;this.TRACE_INIT(`${i} Rule`,()=>{l=this.topLevelRuleRecord(i,s)}),this.gastProductionsCache[i]=l})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=Zst({rules:gr(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(cr(n)&&this.skipValidations===!1){let i=Jst({rules:gr(this.gastProductionsCache),tokenTypes:gr(this.tokensMap),errMsgProvider:$l,grammarName:r}),a=Wst({lookaheadStrategy:this.lookaheadStrategy,rules:gr(this.gastProductionsCache),tokenTypes:gr(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(i,a)}}),cr(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let i=nst(gr(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,a;(a=(i=this.lookaheadStrategy).initialize)===null||a===void 0||a.call(i,{rules:gr(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(gr(this.gastProductionsCache))})),!e.DEFER_DEFINITION_ERRORS_HANDLING&&!cr(this.definitionErrors))throw t=Xt(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected: ${t.join(` ------------------------------- `)}`)})}constructor(t,r){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(t,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),jt(r,"ignoredIssues"))throw new Error(`The IParserConfig property has been deprecated. Please use the flag on the relevant DSL method instead. See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES For further details.`);this.skipValidations=jt(r,"skipValidations")?r.skipValidations:ls.skipValidations}};V2.DEFER_DEFINITION_ERRORS_HANDLING=!1;Aot(V2,[Uk,qk,Qk,Zk,tE,Jk,eE,rE,nE,sE]);U2=class extends V2{static{o(this,"EmbeddedActionsParser")}constructor(t,r=ls){let n=rn(r);n.outputCst=!1,super(t,n)}}});var Lot=R(()=>{"use strict";os()});var Dot=R(()=>{"use strict"});var Rot=R(()=>{"use strict";Lot();Dot()});var Not=R(()=>{"use strict";sM()});var g0=R(()=>{"use strict";sM();Fs();_2();p0();vg();MM();pg();bg();bM();os();os();Rot();Not()});function y0(e,t,r){return`${e.name}_${t}_${r}`}function Pot(e){let t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};dFt(t,e);let r=e.length;for(let n=0;nBot(e,t,s));return Sg(e,t,n,r,...i)}function xFt(e,t,r){let n=sa(e,t,r,{type:uf});hf(e,n);let i=Sg(e,t,n,r,v0(e,t,r));return bFt(e,t,r,i)}function v0(e,t,r){let n=Yr(Xt(r.definition,i=>Bot(e,t,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:TFt(e,n)}function Fot(e,t,r,n,i){let a=n.left,s=n.right,l=sa(e,t,r,{type:fFt});hf(e,l);let u=sa(e,t,r,{type:Oot});return a.loopback=l,u.loopback=l,e.decisionMap[y0(t,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=l,_i(s,l),i===void 0?(_i(l,a),_i(l,u)):(_i(l,u),_i(l,i.left),_i(i.right,a)),{left:a,right:u}}function zot(e,t,r,n,i){let a=n.left,s=n.right,l=sa(e,t,r,{type:hFt});hf(e,l);let u=sa(e,t,r,{type:Oot}),h=sa(e,t,r,{type:uFt});return l.loopback=h,u.loopback=h,_i(l,a),_i(l,u),_i(s,h),i!==void 0?(_i(h,u),_i(h,i.left),_i(i.right,a)):_i(h,l),e.decisionMap[y0(t,i?"RepetitionWithSeparator":"Repetition",r.idx)]=l,{left:l,right:u}}function bFt(e,t,r,n){let i=n.left,a=n.right;return _i(i,a),e.decisionMap[y0(t,"Option",r.idx)]=i,n}function hf(e,t){return e.decisionStates.push(t),t.decision=e.decisionStates.length-1,t.decision}function Sg(e,t,r,n,...i){let a=sa(e,t,n,{type:cFt,start:r});r.end=a;for(let l of i)l!==void 0?(_i(r,l.left),_i(l.right,a)):_i(r,a);let s={left:r,right:a};return e.decisionMap[y0(t,wFt(n),n.idx)]=r,s}function wFt(e){if(e instanceof wn)return"Alternation";if(e instanceof an)return"Option";if(e instanceof Lr)return"Repetition";if(e instanceof bn)return"RepetitionWithSeparator";if(e instanceof Dn)return"RepetitionMandatory";if(e instanceof Rn)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function TFt(e,t){let r=t.length;for(let a=0;a{"use strict";Xm();ID();g0();o(y0,"buildATNKey");uf=1,lFt=2,Mot=4,Iot=5,Cg=7,cFt=8,uFt=9,hFt=10,fFt=11,Oot=12,H2=class{static{o(this,"AbstractTransition")}constructor(t){this.target=t}isEpsilon(){return!1}},kg=class extends H2{static{o(this,"AtomTransition")}constructor(t,r){super(t),this.tokenType=r}},W2=class extends H2{static{o(this,"EpsilonTransition")}constructor(t){super(t)}isEpsilon(){return!0}},Eg=class extends H2{static{o(this,"RuleTransition")}constructor(t,r,n){super(t),this.rule=r,this.followState=n}isEpsilon(){return!0}};o(Pot,"createATN");o(dFt,"createRuleStartAndStopATNStates");o(Bot,"atom");o(pFt,"repetition");o(mFt,"repetitionSep");o(gFt,"repetitionMandatory");o(yFt,"repetitionMandatorySep");o(vFt,"alternation");o(xFt,"option");o(v0,"block");o(Fot,"plus");o(zot,"star");o(bFt,"optional");o(hf,"defineDecisionState");o(Sg,"makeAlts");o(wFt,"getProdType");o(TFt,"makeBlock");o(VM,"tokenRef");o(kFt,"ruleRef");o(EFt,"buildRuleHandle");o(_i,"epsilon");o(sa,"newState");o(UM,"addTransition");o(CFt,"removeState")});function HM(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map(r=>r.stateNumber.toString()).join("_")}`}var Y2,Ag,Got=R(()=>{"use strict";Xm();Y2={},Ag=class{static{o(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(t){let r=HM(t);r in this.map||(this.map[r]=this.configs.length,this.configs.push(t))}get elements(){return this.configs}get alts(){return Xt(this.configs,t=>t.alt)}get key(){let t="";for(let r in this.map)t+=r+":";return t}};o(HM,"getATNConfigKey")});function SFt(e,t){let r={};return n=>{let i=n.toString(),a=r[i];return a!==void 0||(a={atnStartState:e,decision:t,states:{}},r[i]=a),a}}function Uot(e,t=!0){let r=new Set;for(let n of e){let i=new Set;for(let a of n){if(a===void 0){if(t)break;return!1}let s=[a.tokenTypeIdx].concat(a.categoryMatches);for(let l of s)if(r.has(l)){if(!i.has(l))return!1}else r.add(l),i.add(l)}}return!0}function AFt(e){let t=e.decisionStates.length,r=Array(t);for(let n=0;nHu(i)).join(", "),r=e.production.idx===0?"":e.production.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(", ")}> in <${NFt(e.production)}${r}> inside <${e.topLevelRule.name}> Rule, <${t}> may appears as a prefix path in all these alternatives. `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES For Further details.`,n}function NFt(e){if(e instanceof nn)return"SUBRULE";if(e instanceof an)return"OPTION";if(e instanceof wn)return"OR";if(e instanceof Dn)return"AT_LEAST_ONE";if(e instanceof Rn)return"AT_LEAST_ONE_SEP";if(e instanceof bn)return"MANY_SEP";if(e instanceof Lr)return"MANY";if(e instanceof br)return"CONSUME";throw Error("non exhaustive match")}function MFt(e,t,r){let n=ba(t.configs.elements,a=>a.state.transitions),i=Zrt(n.filter(a=>a instanceof kg).map(a=>a.tokenType),a=>a.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:e}}function IFt(e,t){return e.edges[t.tokenTypeIdx]}function OFt(e,t,r){let n=new Ag,i=[];for(let s of e.elements){if(r.is(s.alt)===!1)continue;if(s.state.type===Cg){i.push(s);continue}let l=s.state.transitions.length;for(let u=0;u0&&!$Ft(a))for(let s of i)a.add(s);return a}function PFt(e,t){if(e instanceof kg&&D2(t,e.tokenType))return e.target}function BFt(e,t){let r;for(let n of e.elements)if(t.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function Wot(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}function Hot(e,t,r,n){return n=Yot(e,n),t.edges[r.tokenTypeIdx]=n,n}function Yot(e,t){if(t===Y2)return t;let r=t.configs.key,n=e.states[r];return n!==void 0?n:(t.configs.finalize(),e.states[r]=t,t)}function FFt(e){let t=new Ag,r=e.transitions.length;for(let n=0;n0){let i=[...e.stack],s={state:i.pop(),alt:e.alt,stack:i};cE(s,t)}else t.add(e);return}r.epsilonOnlyTransitions||t.add(e);let n=r.transitions.length;for(let i=0;i1)return!0;return!1}function WFt(e){for(let t of Array.from(e.values()))if(Object.keys(t).length===1)return!0;return!1}var lE,Vot,q2,qot=R(()=>{"use strict";g0();$ot();Got();VD();PD();Jrt();Xm();nT();NT();BT();YD();o(SFt,"createDFACache");lE=class{static{o(this,"PredicateSet")}constructor(){this.predicates=[]}is(t){return t>=this.predicates.length||this.predicates[t]}set(t,r){this.predicates[t]=r}toString(){let t="",r=this.predicates.length;for(let n=0;nconsole.log(n)}initialize(t){this.atn=Pot(t.rules),this.dfas=AFt(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(t){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:a}=t,s=this.dfas,l=this.logging,u=y0(n,"Alternation",r),f=this.atn.decisionMap[u].decision,d=Xt($k({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),p=>Xt(p,m=>m[0]));if(Uot(d,!1)&&!a){let p=qr(d,(m,g,y)=>(Et(g,v=>{v&&(m[v.tokenTypeIdx]=y,Et(v.categoryMatches,x=>{m[x]=y}))}),m),{});return i?function(m){var g;let y=this.LA(1),v=p[y.tokenTypeIdx];if(m!==void 0&&v!==void 0){let x=(g=m[v])===null||g===void 0?void 0:g.GATE;if(x!==void 0&&x.call(this)===!1)return}return v}:function(){let m=this.LA(1);return p[m.tokenTypeIdx]}}else return i?function(p){let m=new lE,g=p===void 0?0:p.length;for(let v=0;vXt(p,m=>m[0]));if(Uot(d)&&d[0][0]&&!a){let p=d[0],m=Wr(p);if(m.length===1&&cr(m[0].categoryMatches)){let y=m[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===y}}else{let g=qr(m,(y,v)=>(v!==void 0&&(y[v.tokenTypeIdx]=!0,Et(v.categoryMatches,x=>{y[x]=!0})),y),{});return function(){let y=this.LA(1);return g[y.tokenTypeIdx]===!0}}}return function(){let p=WM.call(this,s,f,Vot,l);return typeof p=="object"?!1:p===0}}};o(Uot,"isLL1Sequence");o(AFt,"initATNSimulator");o(WM,"adaptivePredict");o(_Ft,"performLookahead");o(LFt,"computeLookaheadTarget");o(DFt,"reportLookaheadAmbiguity");o(RFt,"buildAmbiguityError");o(NFt,"getProductionDslName");o(MFt,"buildAdaptivePredictError");o(IFt,"getExistingTargetState");o(OFt,"computeReachSet");o(PFt,"getReachableTarget");o(BFt,"getUniqueAlt");o(Wot,"newDFAState");o(Hot,"addDFAEdge");o(Yot,"addDFAState");o(FFt,"computeStartState");o(cE,"closure");o(zFt,"getEpsilonTarget");o($Ft,"hasConfigInRuleStopState");o(GFt,"allConfigsInRuleStopStates");o(VFt,"hasConflictTerminatingPrediction");o(UFt,"getConflictingAltSets");o(HFt,"hasConflictingAltSet");o(WFt,"hasStateAssociatedWithOneAlt")});var Xot=R(()=>{"use strict";qot()});var jot,YM,Kot,uE,Xr,Dr,hE,Qot,qM,Zot,Jot,tlt,elt,XM,rlt,nlt,ilt,fE,_g,Lg,jM,Dg,alt,KM,QM,ZM,JM,tI,slt,olt,eI,llt,rI,X2,clt,ult,hlt,flt,dlt,plt,mlt,glt,dE,ylt,vlt,xlt,blt,wlt,Tlt,klt,Elt,Clt,Slt,Alt,pE,_lt,Llt,Dlt,Rlt,Nlt,Mlt,Ilt,Olt,Plt,Blt,Flt,zlt,$lt,nI,iI,Glt,Vlt,Ult,Hlt,Wlt,Ylt,qlt,Xlt,jlt,aI,Ft,sI=R(()=>{"use strict";(function(e){function t(r){return typeof r=="string"}o(t,"is"),e.is=t})(jot||(jot={}));(function(e){function t(r){return typeof r=="string"}o(t,"is"),e.is=t})(YM||(YM={}));(function(e){e.MIN_VALUE=-2147483648,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}o(t,"is"),e.is=t})(Kot||(Kot={}));(function(e){e.MIN_VALUE=0,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}o(t,"is"),e.is=t})(uE||(uE={}));(function(e){function t(n,i){return n===Number.MAX_VALUE&&(n=uE.MAX_VALUE),i===Number.MAX_VALUE&&(i=uE.MAX_VALUE),{line:n,character:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.uinteger(i.line)&&Ft.uinteger(i.character)}o(r,"is"),e.is=r})(Xr||(Xr={}));(function(e){function t(n,i,a,s){if(Ft.uinteger(n)&&Ft.uinteger(i)&&Ft.uinteger(a)&&Ft.uinteger(s))return{start:Xr.create(n,i),end:Xr.create(a,s)};if(Xr.is(n)&&Xr.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${a}, ${s}]`)}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Xr.is(i.start)&&Xr.is(i.end)}o(r,"is"),e.is=r})(Dr||(Dr={}));(function(e){function t(n,i){return{uri:n,range:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Dr.is(i.range)&&(Ft.string(i.uri)||Ft.undefined(i.uri))}o(r,"is"),e.is=r})(hE||(hE={}));(function(e){function t(n,i,a,s){return{targetUri:n,targetRange:i,targetSelectionRange:a,originSelectionRange:s}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Dr.is(i.targetRange)&&Ft.string(i.targetUri)&&Dr.is(i.targetSelectionRange)&&(Dr.is(i.originSelectionRange)||Ft.undefined(i.originSelectionRange))}o(r,"is"),e.is=r})(Qot||(Qot={}));(function(e){function t(n,i,a,s){return{red:n,green:i,blue:a,alpha:s}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.numberRange(i.red,0,1)&&Ft.numberRange(i.green,0,1)&&Ft.numberRange(i.blue,0,1)&&Ft.numberRange(i.alpha,0,1)}o(r,"is"),e.is=r})(qM||(qM={}));(function(e){function t(n,i){return{range:n,color:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Dr.is(i.range)&&qM.is(i.color)}o(r,"is"),e.is=r})(Zot||(Zot={}));(function(e){function t(n,i,a){return{label:n,textEdit:i,additionalTextEdits:a}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.string(i.label)&&(Ft.undefined(i.textEdit)||Lg.is(i))&&(Ft.undefined(i.additionalTextEdits)||Ft.typedArray(i.additionalTextEdits,Lg.is))}o(r,"is"),e.is=r})(Jot||(Jot={}));(function(e){e.Comment="comment",e.Imports="imports",e.Region="region"})(tlt||(tlt={}));(function(e){function t(n,i,a,s,l,u){let h={startLine:n,endLine:i};return Ft.defined(a)&&(h.startCharacter=a),Ft.defined(s)&&(h.endCharacter=s),Ft.defined(l)&&(h.kind=l),Ft.defined(u)&&(h.collapsedText=u),h}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.uinteger(i.startLine)&&Ft.uinteger(i.startLine)&&(Ft.undefined(i.startCharacter)||Ft.uinteger(i.startCharacter))&&(Ft.undefined(i.endCharacter)||Ft.uinteger(i.endCharacter))&&(Ft.undefined(i.kind)||Ft.string(i.kind))}o(r,"is"),e.is=r})(elt||(elt={}));(function(e){function t(n,i){return{location:n,message:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&hE.is(i.location)&&Ft.string(i.message)}o(r,"is"),e.is=r})(XM||(XM={}));(function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4})(rlt||(rlt={}));(function(e){e.Unnecessary=1,e.Deprecated=2})(nlt||(nlt={}));(function(e){function t(r){let n=r;return Ft.objectLiteral(n)&&Ft.string(n.href)}o(t,"is"),e.is=t})(ilt||(ilt={}));(function(e){function t(n,i,a,s,l,u){let h={range:n,message:i};return Ft.defined(a)&&(h.severity=a),Ft.defined(s)&&(h.code=s),Ft.defined(l)&&(h.source=l),Ft.defined(u)&&(h.relatedInformation=u),h}o(t,"create"),e.create=t;function r(n){var i;let a=n;return Ft.defined(a)&&Dr.is(a.range)&&Ft.string(a.message)&&(Ft.number(a.severity)||Ft.undefined(a.severity))&&(Ft.integer(a.code)||Ft.string(a.code)||Ft.undefined(a.code))&&(Ft.undefined(a.codeDescription)||Ft.string((i=a.codeDescription)===null||i===void 0?void 0:i.href))&&(Ft.string(a.source)||Ft.undefined(a.source))&&(Ft.undefined(a.relatedInformation)||Ft.typedArray(a.relatedInformation,XM.is))}o(r,"is"),e.is=r})(fE||(fE={}));(function(e){function t(n,i,...a){let s={title:n,command:i};return Ft.defined(a)&&a.length>0&&(s.arguments=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.title)&&Ft.string(i.command)}o(r,"is"),e.is=r})(_g||(_g={}));(function(e){function t(a,s){return{range:a,newText:s}}o(t,"replace"),e.replace=t;function r(a,s){return{range:{start:a,end:a},newText:s}}o(r,"insert"),e.insert=r;function n(a){return{range:a,newText:""}}o(n,"del"),e.del=n;function i(a){let s=a;return Ft.objectLiteral(s)&&Ft.string(s.newText)&&Dr.is(s.range)}o(i,"is"),e.is=i})(Lg||(Lg={}));(function(e){function t(n,i,a){let s={label:n};return i!==void 0&&(s.needsConfirmation=i),a!==void 0&&(s.description=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.string(i.label)&&(Ft.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(Ft.string(i.description)||i.description===void 0)}o(r,"is"),e.is=r})(jM||(jM={}));(function(e){function t(r){let n=r;return Ft.string(n)}o(t,"is"),e.is=t})(Dg||(Dg={}));(function(e){function t(a,s,l){return{range:a,newText:s,annotationId:l}}o(t,"replace"),e.replace=t;function r(a,s,l){return{range:{start:a,end:a},newText:s,annotationId:l}}o(r,"insert"),e.insert=r;function n(a,s){return{range:a,newText:"",annotationId:s}}o(n,"del"),e.del=n;function i(a){let s=a;return Lg.is(s)&&(jM.is(s.annotationId)||Dg.is(s.annotationId))}o(i,"is"),e.is=i})(alt||(alt={}));(function(e){function t(n,i){return{textDocument:n,edits:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&eI.is(i.textDocument)&&Array.isArray(i.edits)}o(r,"is"),e.is=r})(KM||(KM={}));(function(e){function t(n,i,a){let s={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return i&&i.kind==="create"&&Ft.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||Ft.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Ft.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Dg.is(i.annotationId))}o(r,"is"),e.is=r})(QM||(QM={}));(function(e){function t(n,i,a,s){let l={kind:"rename",oldUri:n,newUri:i};return a!==void 0&&(a.overwrite!==void 0||a.ignoreIfExists!==void 0)&&(l.options=a),s!==void 0&&(l.annotationId=s),l}o(t,"create"),e.create=t;function r(n){let i=n;return i&&i.kind==="rename"&&Ft.string(i.oldUri)&&Ft.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||Ft.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Ft.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Dg.is(i.annotationId))}o(r,"is"),e.is=r})(ZM||(ZM={}));(function(e){function t(n,i,a){let s={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return i&&i.kind==="delete"&&Ft.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||Ft.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||Ft.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||Dg.is(i.annotationId))}o(r,"is"),e.is=r})(JM||(JM={}));(function(e){function t(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>Ft.string(i.kind)?QM.is(i)||ZM.is(i)||JM.is(i):KM.is(i)))}o(t,"is"),e.is=t})(tI||(tI={}));(function(e){function t(n){return{uri:n}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.uri)}o(r,"is"),e.is=r})(slt||(slt={}));(function(e){function t(n,i){return{uri:n,version:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.uri)&&Ft.integer(i.version)}o(r,"is"),e.is=r})(olt||(olt={}));(function(e){function t(n,i){return{uri:n,version:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.uri)&&(i.version===null||Ft.integer(i.version))}o(r,"is"),e.is=r})(eI||(eI={}));(function(e){function t(n,i,a,s){return{uri:n,languageId:i,version:a,text:s}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.uri)&&Ft.string(i.languageId)&&Ft.integer(i.version)&&Ft.string(i.text)}o(r,"is"),e.is=r})(llt||(llt={}));(function(e){e.PlainText="plaintext",e.Markdown="markdown";function t(r){let n=r;return n===e.PlainText||n===e.Markdown}o(t,"is"),e.is=t})(rI||(rI={}));(function(e){function t(r){let n=r;return Ft.objectLiteral(r)&&rI.is(n.kind)&&Ft.string(n.value)}o(t,"is"),e.is=t})(X2||(X2={}));(function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25})(clt||(clt={}));(function(e){e.PlainText=1,e.Snippet=2})(ult||(ult={}));(function(e){e.Deprecated=1})(hlt||(hlt={}));(function(e){function t(n,i,a){return{newText:n,insert:i,replace:a}}o(t,"create"),e.create=t;function r(n){let i=n;return i&&Ft.string(i.newText)&&Dr.is(i.insert)&&Dr.is(i.replace)}o(r,"is"),e.is=r})(flt||(flt={}));(function(e){e.asIs=1,e.adjustIndentation=2})(dlt||(dlt={}));(function(e){function t(r){let n=r;return n&&(Ft.string(n.detail)||n.detail===void 0)&&(Ft.string(n.description)||n.description===void 0)}o(t,"is"),e.is=t})(plt||(plt={}));(function(e){function t(r){return{label:r}}o(t,"create"),e.create=t})(mlt||(mlt={}));(function(e){function t(r,n){return{items:r||[],isIncomplete:!!n}}o(t,"create"),e.create=t})(glt||(glt={}));(function(e){function t(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}o(t,"fromPlainText"),e.fromPlainText=t;function r(n){let i=n;return Ft.string(i)||Ft.objectLiteral(i)&&Ft.string(i.language)&&Ft.string(i.value)}o(r,"is"),e.is=r})(dE||(dE={}));(function(e){function t(r){let n=r;return!!n&&Ft.objectLiteral(n)&&(X2.is(n.contents)||dE.is(n.contents)||Ft.typedArray(n.contents,dE.is))&&(r.range===void 0||Dr.is(r.range))}o(t,"is"),e.is=t})(ylt||(ylt={}));(function(e){function t(r,n){return n?{label:r,documentation:n}:{label:r}}o(t,"create"),e.create=t})(vlt||(vlt={}));(function(e){function t(r,n,...i){let a={label:r};return Ft.defined(n)&&(a.documentation=n),Ft.defined(i)?a.parameters=i:a.parameters=[],a}o(t,"create"),e.create=t})(xlt||(xlt={}));(function(e){e.Text=1,e.Read=2,e.Write=3})(blt||(blt={}));(function(e){function t(r,n){let i={range:r};return Ft.number(n)&&(i.kind=n),i}o(t,"create"),e.create=t})(wlt||(wlt={}));(function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26})(Tlt||(Tlt={}));(function(e){e.Deprecated=1})(klt||(klt={}));(function(e){function t(r,n,i,a,s){let l={name:r,kind:n,location:{uri:a,range:i}};return s&&(l.containerName=s),l}o(t,"create"),e.create=t})(Elt||(Elt={}));(function(e){function t(r,n,i,a){return a!==void 0?{name:r,kind:n,location:{uri:i,range:a}}:{name:r,kind:n,location:{uri:i}}}o(t,"create"),e.create=t})(Clt||(Clt={}));(function(e){function t(n,i,a,s,l,u){let h={name:n,detail:i,kind:a,range:s,selectionRange:l};return u!==void 0&&(h.children=u),h}o(t,"create"),e.create=t;function r(n){let i=n;return i&&Ft.string(i.name)&&Ft.number(i.kind)&&Dr.is(i.range)&&Dr.is(i.selectionRange)&&(i.detail===void 0||Ft.string(i.detail))&&(i.deprecated===void 0||Ft.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}o(r,"is"),e.is=r})(Slt||(Slt={}));(function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"})(Alt||(Alt={}));(function(e){e.Invoked=1,e.Automatic=2})(pE||(pE={}));(function(e){function t(n,i,a){let s={diagnostics:n};return i!=null&&(s.only=i),a!=null&&(s.triggerKind=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.typedArray(i.diagnostics,fE.is)&&(i.only===void 0||Ft.typedArray(i.only,Ft.string))&&(i.triggerKind===void 0||i.triggerKind===pE.Invoked||i.triggerKind===pE.Automatic)}o(r,"is"),e.is=r})(_lt||(_lt={}));(function(e){function t(n,i,a){let s={title:n},l=!0;return typeof i=="string"?(l=!1,s.kind=i):_g.is(i)?s.command=i:s.edit=i,l&&a!==void 0&&(s.kind=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return i&&Ft.string(i.title)&&(i.diagnostics===void 0||Ft.typedArray(i.diagnostics,fE.is))&&(i.kind===void 0||Ft.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||_g.is(i.command))&&(i.isPreferred===void 0||Ft.boolean(i.isPreferred))&&(i.edit===void 0||tI.is(i.edit))}o(r,"is"),e.is=r})(Llt||(Llt={}));(function(e){function t(n,i){let a={range:n};return Ft.defined(i)&&(a.data=i),a}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Dr.is(i.range)&&(Ft.undefined(i.command)||_g.is(i.command))}o(r,"is"),e.is=r})(Dlt||(Dlt={}));(function(e){function t(n,i){return{tabSize:n,insertSpaces:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.uinteger(i.tabSize)&&Ft.boolean(i.insertSpaces)}o(r,"is"),e.is=r})(Rlt||(Rlt={}));(function(e){function t(n,i,a){return{range:n,target:i,data:a}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Dr.is(i.range)&&(Ft.undefined(i.target)||Ft.string(i.target))}o(r,"is"),e.is=r})(Nlt||(Nlt={}));(function(e){function t(n,i){return{range:n,parent:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Dr.is(i.range)&&(i.parent===void 0||e.is(i.parent))}o(r,"is"),e.is=r})(Mlt||(Mlt={}));(function(e){e.namespace="namespace",e.type="type",e.class="class",e.enum="enum",e.interface="interface",e.struct="struct",e.typeParameter="typeParameter",e.parameter="parameter",e.variable="variable",e.property="property",e.enumMember="enumMember",e.event="event",e.function="function",e.method="method",e.macro="macro",e.keyword="keyword",e.modifier="modifier",e.comment="comment",e.string="string",e.number="number",e.regexp="regexp",e.operator="operator",e.decorator="decorator"})(Ilt||(Ilt={}));(function(e){e.declaration="declaration",e.definition="definition",e.readonly="readonly",e.static="static",e.deprecated="deprecated",e.abstract="abstract",e.async="async",e.modification="modification",e.documentation="documentation",e.defaultLibrary="defaultLibrary"})(Olt||(Olt={}));(function(e){function t(r){let n=r;return Ft.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}o(t,"is"),e.is=t})(Plt||(Plt={}));(function(e){function t(n,i){return{range:n,text:i}}o(t,"create"),e.create=t;function r(n){let i=n;return i!=null&&Dr.is(i.range)&&Ft.string(i.text)}o(r,"is"),e.is=r})(Blt||(Blt={}));(function(e){function t(n,i,a){return{range:n,variableName:i,caseSensitiveLookup:a}}o(t,"create"),e.create=t;function r(n){let i=n;return i!=null&&Dr.is(i.range)&&Ft.boolean(i.caseSensitiveLookup)&&(Ft.string(i.variableName)||i.variableName===void 0)}o(r,"is"),e.is=r})(Flt||(Flt={}));(function(e){function t(n,i){return{range:n,expression:i}}o(t,"create"),e.create=t;function r(n){let i=n;return i!=null&&Dr.is(i.range)&&(Ft.string(i.expression)||i.expression===void 0)}o(r,"is"),e.is=r})(zlt||(zlt={}));(function(e){function t(n,i){return{frameId:n,stoppedLocation:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Dr.is(n.stoppedLocation)}o(r,"is"),e.is=r})($lt||($lt={}));(function(e){e.Type=1,e.Parameter=2;function t(r){return r===1||r===2}o(t,"is"),e.is=t})(nI||(nI={}));(function(e){function t(n){return{value:n}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&(i.tooltip===void 0||Ft.string(i.tooltip)||X2.is(i.tooltip))&&(i.location===void 0||hE.is(i.location))&&(i.command===void 0||_g.is(i.command))}o(r,"is"),e.is=r})(iI||(iI={}));(function(e){function t(n,i,a){let s={position:n,label:i};return a!==void 0&&(s.kind=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Xr.is(i.position)&&(Ft.string(i.label)||Ft.typedArray(i.label,iI.is))&&(i.kind===void 0||nI.is(i.kind))&&i.textEdits===void 0||Ft.typedArray(i.textEdits,Lg.is)&&(i.tooltip===void 0||Ft.string(i.tooltip)||X2.is(i.tooltip))&&(i.paddingLeft===void 0||Ft.boolean(i.paddingLeft))&&(i.paddingRight===void 0||Ft.boolean(i.paddingRight))}o(r,"is"),e.is=r})(Glt||(Glt={}));(function(e){function t(r){return{kind:"snippet",value:r}}o(t,"createSnippet"),e.createSnippet=t})(Vlt||(Vlt={}));(function(e){function t(r,n,i,a){return{insertText:r,filterText:n,range:i,command:a}}o(t,"create"),e.create=t})(Ult||(Ult={}));(function(e){function t(r){return{items:r}}o(t,"create"),e.create=t})(Hlt||(Hlt={}));(function(e){e.Invoked=0,e.Automatic=1})(Wlt||(Wlt={}));(function(e){function t(r,n){return{range:r,text:n}}o(t,"create"),e.create=t})(Ylt||(Ylt={}));(function(e){function t(r,n){return{triggerKind:r,selectedCompletionInfo:n}}o(t,"create"),e.create=t})(qlt||(qlt={}));(function(e){function t(r){let n=r;return Ft.objectLiteral(n)&&YM.is(n.uri)&&Ft.string(n.name)}o(t,"is"),e.is=t})(Xlt||(Xlt={}));(function(e){function t(a,s,l,u){return new aI(a,s,l,u)}o(t,"create"),e.create=t;function r(a){let s=a;return!!(Ft.defined(s)&&Ft.string(s.uri)&&(Ft.undefined(s.languageId)||Ft.string(s.languageId))&&Ft.uinteger(s.lineCount)&&Ft.func(s.getText)&&Ft.func(s.positionAt)&&Ft.func(s.offsetAt))}o(r,"is"),e.is=r;function n(a,s){let l=a.getText(),u=i(s,(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),h=l.length;for(let f=u.length-1;f>=0;f--){let d=u[f],p=a.offsetAt(d.range.start),m=a.offsetAt(d.range.end);if(m<=h)l=l.substring(0,p)+d.newText+l.substring(m,l.length);else throw new Error("Overlapping edit");h=p}return l}o(n,"applyEdits"),e.applyEdits=n;function i(a,s){if(a.length<=1)return a;let l=a.length/2|0,u=a.slice(0,l),h=a.slice(l);i(u,s),i(h,s);let f=0,d=0,p=0;for(;f0&&t.push(r.length),this._lineOffsets=t}return this._lineOffsets}positionAt(t){t=Math.max(Math.min(t,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return Xr.create(0,t);for(;nt?i=s:n=s+1}let a=n-1;return Xr.create(a,t-r[a])}offsetAt(t){let r=this.getLineOffsets();if(t.line>=r.length)return this._content.length;if(t.line<0)return 0;let n=r[t.line],i=t.line+1"u"}o(n,"undefined"),e.undefined=n;function i(m){return m===!0||m===!1}o(i,"boolean"),e.boolean=i;function a(m){return t.call(m)==="[object String]"}o(a,"string"),e.string=a;function s(m){return t.call(m)==="[object Number]"}o(s,"number"),e.number=s;function l(m,g,y){return t.call(m)==="[object Number]"&&g<=m&&m<=y}o(l,"numberRange"),e.numberRange=l;function u(m){return t.call(m)==="[object Number]"&&-2147483648<=m&&m<=2147483647}o(u,"integer"),e.integer=u;function h(m){return t.call(m)==="[object Number]"&&0<=m&&m<=2147483647}o(h,"uinteger"),e.uinteger=h;function f(m){return t.call(m)==="[object Function]"}o(f,"func"),e.func=f;function d(m){return m!==null&&typeof m=="object"}o(d,"objectLiteral"),e.objectLiteral=d;function p(m,g){return Array.isArray(m)&&m.every(g)}o(p,"typedArray"),e.typedArray=p})(Ft||(Ft={}))});var j2,K2,x0,b0,oI,Rg,mE=R(()=>{"use strict";sI();Yo();Pl();j2=class{static{o(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]}buildRootNode(t){return this.rootNode=new Rg(t),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(t){let r=new b0;return r.grammarSource=t,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(t,r){let n=new x0(t.startOffset,t.image.length,tg(t),t.tokenType,!1);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(t){let r=t.container;if(r){let n=r.content.indexOf(t);n>=0&&r.content.splice(n,1)}}construct(t){let r=this.current;typeof t.$type=="string"&&(this.current.astNode=t),t.$cstNode=r;let n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}addHiddenTokens(t){for(let r of t){let n=new x0(r.startOffset,r.image.length,tg(r),r.tokenType,!0);n.root=this.rootNode,this.addHiddenToken(this.rootNode,n)}}addHiddenToken(t,r){let{offset:n,end:i}=r;for(let a=0;al&&i=0;t--){let r=this.content[t];if(!r.hidden)return r}return this.content[this.content.length-1]}},oI=class e extends Array{static{o(this,"CstNodeContainer")}constructor(t){super(),this.parent=t,Object.setPrototypeOf(this,e.prototype)}push(...t){return this.addParents(t),super.push(...t)}unshift(...t){return this.addParents(t),super.unshift(...t)}splice(t,r,...n){return this.addParents(n),super.splice(t,r,...n)}addParents(t){for(let r of t)r.container=this.parent}},Rg=class extends b0{static{o(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(t){super(),this._text="",this._text=t??""}}});function lI(e){return e.$type===gE}var gE,Klt,Qlt,Q2,Z2,yE,Ng,J2,YFt,cI,tx=R(()=>{"use strict";g0();Xot();Oc();zl();is();mE();gE=Symbol("Datatype");o(lI,"isDataTypeNode");Klt="\u200B",Qlt=o(e=>e.endsWith(Klt)?e:e+Klt,"withRuleSuffix"),Q2=class{static{o(this,"AbstractLangiumParser")}constructor(t){this._unorderedGroups=new Map,this.lexer=t.parser.Lexer;let r=this.lexer.definition;this.wrapper=new cI(r,Object.assign(Object.assign({},t.parser.ParserConfig),{errorMessageProvider:t.parser.ParserErrorMessageProvider}))}alternatives(t,r){this.wrapper.wrapOr(t,r)}optional(t,r){this.wrapper.wrapOption(t,r)}many(t,r){this.wrapper.wrapMany(t,r)}atLeastOne(t,r){this.wrapper.wrapAtLeastOne(t,r)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},Z2=class extends Q2{static{o(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(t){super(t),this.nodeBuilder=new j2,this.stack=[],this.assignmentMap=new Map,this.linker=t.references.Linker,this.converter=t.parser.ValueConverter,this.astReflection=t.shared.AstReflection}rule(t,r){let n=t.fragment?void 0:k2(t)?gE:l0(t),i=this.wrapper.DEFINE_RULE(Qlt(t.name),this.startImplementation(n,r).bind(this));return t.entry&&(this.mainRule=i),i}parse(t){this.nodeBuilder.buildRootNode(t);let r=this.lexer.tokenize(t);this.wrapper.input=r.tokens;let n=this.mainRule.call(this.wrapper,{});return this.nodeBuilder.addHiddenTokens(r.hidden),this.unorderedGroups.clear(),{value:n,lexerErrors:r.errors,parserErrors:this.wrapper.errors}}startImplementation(t,r){return n=>{if(!this.isRecording()){let a={$type:t};this.stack.push(a),t===gE&&(a.value="")}let i;try{i=r(n)}catch{i=void 0}return!this.isRecording()&&i===void 0&&(i=this.construct()),i}}consume(t,r,n){let i=this.wrapper.wrapConsume(t,r);if(!this.isRecording()&&this.isValidToken(i)){let a=this.nodeBuilder.buildLeafNode(i,n),{assignment:s,isCrossRef:l}=this.getAssignment(n),u=this.current;if(s){let h=Xo(n)?i.image:this.converter.convert(i.image,a);this.assign(s.operator,s.feature,h,a,l)}else if(lI(u)){let h=i.image;Xo(n)||(h=this.converter.convert(h,a).toString()),u.value+=h}}}isValidToken(t){return!t.isInsertedInRecovery&&!isNaN(t.startOffset)&&typeof t.endOffset=="number"&&!isNaN(t.endOffset)}subrule(t,r,n,i){let a;this.isRecording()||(a=this.nodeBuilder.buildCompositeNode(n));let s=this.wrapper.wrapSubrule(t,r,i);!this.isRecording()&&a&&a.length>0&&this.performSubruleAssignment(s,n,a)}performSubruleAssignment(t,r,n){let{assignment:i,isCrossRef:a}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,t,n,a);else if(!i){let s=this.current;if(lI(s))s.value+=t.toString();else if(typeof t=="object"&&t){let l=t.$type,u=this.assignWithoutOverride(t,s);l&&(u.$type=l);let h=u;this.stack.pop(),this.stack.push(h)}}}action(t,r){if(!this.isRecording()){let n=this.current;if(!n.$cstNode&&r.feature&&r.operator){n=this.construct(!1);let a=n.$cstNode.feature;this.nodeBuilder.buildCompositeNode(a)}let i={$type:t};this.stack.pop(),this.stack.push(i),r.feature&&r.operator&&this.assign(r.operator,r.feature,n,n.$cstNode,!1)}}construct(t=!0){if(this.isRecording())return;let r=this.current;return mk(r),this.nodeBuilder.construct(r),t&&this.stack.pop(),lI(r)?this.converter.convert(r.value,r.$cstNode):(BN(this.astReflection,r),r)}getAssignment(t){if(!this.assignmentMap.has(t)){let r=n0(t,Bl);this.assignmentMap.set(t,{assignment:r,isCrossRef:r?r0(r.terminal):!1})}return this.assignmentMap.get(t)}assign(t,r,n,i,a){let s=this.current,l;switch(a&&typeof n=="string"?l=this.linker.buildReference(s,r,i,n):l=n,t){case"=":{s[r]=l;break}case"?=":{s[r]=!0;break}case"+=":Array.isArray(s[r])||(s[r]=[]),s[r].push(l)}}assignWithoutOverride(t,r){for(let[n,i]of Object.entries(r)){let a=t[n];a===void 0?t[n]=i:Array.isArray(a)&&Array.isArray(i)&&(i.push(...a),t[n]=i)}return t}get definitionErrors(){return this.wrapper.definitionErrors}},yE=class{static{o(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(t){return Wu.buildMismatchTokenMessage(t)}buildNotAllInputParsedMessage(t){return Wu.buildNotAllInputParsedMessage(t)}buildNoViableAltMessage(t){return Wu.buildNoViableAltMessage(t)}buildEarlyExitMessage(t){return Wu.buildEarlyExitMessage(t)}},Ng=class extends yE{static{o(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:t,actual:r}){return`Expecting ${t.LABEL?"`"+t.LABEL+"`":t.name.endsWith(":KW")?`keyword '${t.name.substring(0,t.name.length-3)}'`:`token of type '${t.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:t}){return`Expecting end of file but found \`${t.image}\`.`}},J2=class extends Q2{static{o(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(t){this.resetState();let r=this.lexer.tokenize(t);return this.tokens=r.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(t,r){let n=this.wrapper.DEFINE_RULE(Qlt(t.name),this.startImplementation(r).bind(this));return t.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(t){return r=>{let n=this.keepStackSize();try{t(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let t=this.elementStack.length;return this.stackSize=t,t}resetStackSize(t){this.removeUnexpectedElements(),this.stackSize=t}consume(t,r,n){this.wrapper.wrapConsume(t,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(t,r,n,i){this.before(n),this.wrapper.wrapSubrule(t,r,i),this.after(n)}before(t){this.isRecording()||this.elementStack.push(t)}after(t){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(t);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},YFt={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new Ng},cI=class extends U2{static{o(this,"ChevrotainWrapper")}constructor(t,r){let n=r&&"maxLookahead"in r;super(t,Object.assign(Object.assign(Object.assign({},YFt),{lookaheadStrategy:n?new Yu({maxLookahead:r.maxLookahead}):new q2}),r))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(t,r){return this.RULE(t,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(t,r){return this.consume(t,r)}wrapSubrule(t,r,n){return this.subrule(t,r,{ARGS:[n]})}wrapOr(t,r){this.or(t,r)}wrapOption(t,r){this.option(t,r)}wrapMany(t,r){this.many(t,r)}wrapAtLeastOne(t,r){this.atLeastOne(t,r)}}});function xE(e,t,r){return qFt({parser:t,tokens:r,rules:new Map,ruleNames:new Map},e),t}function qFt(e,t){let r=w2(t,!1),n=en(t.rules).filter($a).filter(i=>r.has(i));for(let i of n){let a=Object.assign(Object.assign({},e),{consume:1,optional:1,subrule:1,many:1,or:1});a.rules.set(i.name,e.parser.rule(i,w0(a,i.definition)))}}function w0(e,t,r=!1){let n;if(Xo(t))n=tzt(e,t);else if(zu(t))n=XFt(e,t);else if(Bl(t))n=w0(e,t.terminal);else if(r0(t))n=Zlt(e,t);else if(Fl(t))n=jFt(e,t);else if(fk(t))n=QFt(e,t);else if(pk(t))n=ZFt(e,t);else if(lf(t))n=JFt(e,t);else if(yN(t)){let i=e.consume++;n=o(()=>e.parser.consume(i,po,t),"method")}else throw new e0(t.$cstNode,`Unexpected element type: ${t.$type}`);return Jlt(e,r?void 0:vE(t),n,t.cardinality)}function XFt(e,t){let r=l0(t);return()=>e.parser.action(r,t)}function jFt(e,t){let r=t.rule.ref;if($a(r)){let n=e.subrule++,i=t.arguments.length>0?KFt(r,t.arguments):()=>({});return a=>e.parser.subrule(n,tct(e,r),t,i(a))}else if(qo(r)){let n=e.consume++,i=uI(e,r.name);return()=>e.parser.consume(n,i,t)}else if(r)of(r);else throw new e0(t.$cstNode,`Undefined rule type: ${t.$type}`)}function KFt(e,t){let r=t.map(n=>qu(n.value));return n=>{let i={};for(let a=0;at(n)||r(n)}else if(UR(e)){let t=qu(e.left),r=qu(e.right);return n=>t(n)&&r(n)}else if(KR(e)){let t=qu(e.value);return r=>!t(r)}else if(tN(e)){let t=e.parameter.ref.name;return r=>r!==void 0&&r[t]===!0}else if(GR(e)){let t=!!e.true;return()=>t}of(e)}function QFt(e,t){if(t.elements.length===1)return w0(e,t.elements[0]);{let r=[];for(let i of t.elements){let a={ALT:w0(e,i,!0)},s=vE(i);s&&(a.GATE=qu(s)),r.push(a)}let n=e.or++;return i=>e.parser.alternatives(n,r.map(a=>{let s={ALT:o(()=>a.ALT(i),"ALT")},l=a.GATE;return l&&(s.GATE=()=>l(i)),s}))}}function ZFt(e,t){if(t.elements.length===1)return w0(e,t.elements[0]);let r=[];for(let l of t.elements){let u={ALT:w0(e,l,!0)},h=vE(l);h&&(u.GATE=qu(h)),r.push(u)}let n=e.or++,i=o((l,u)=>{let h=u.getRuleStack().join("-");return`uGroup_${l}_${h}`},"idFunc"),a=o(l=>e.parser.alternatives(n,r.map((u,h)=>{let f={ALT:o(()=>!0,"ALT")},d=e.parser;f.ALT=()=>{if(u.ALT(l),!d.isRecording()){let m=i(n,d);d.unorderedGroups.get(m)||d.unorderedGroups.set(m,[]);let g=d.unorderedGroups.get(m);typeof g?.[h]>"u"&&(g[h]=!0)}};let p=u.GATE;return p?f.GATE=()=>p(l):f.GATE=()=>{let m=d.unorderedGroups.get(i(n,d));return!m?.[h]},f})),"alternatives"),s=Jlt(e,vE(t),a,"*");return l=>{s(l),e.parser.isRecording()||e.parser.unorderedGroups.delete(i(n,e.parser))}}function JFt(e,t){let r=t.elements.map(n=>w0(e,n));return n=>r.forEach(i=>i(n))}function vE(e){if(lf(e))return e.guardCondition}function Zlt(e,t,r=t.terminal){if(r)if(Fl(r)&&$a(r.rule.ref)){let n=e.subrule++;return i=>e.parser.subrule(n,tct(e,r.rule.ref),t,i)}else if(Fl(r)&&qo(r.rule.ref)){let n=e.consume++,i=uI(e,r.rule.ref.name);return()=>e.parser.consume(n,i,t)}else if(Xo(r)){let n=e.consume++,i=uI(e,r.value);return()=>e.parser.consume(n,i,t)}else throw new Error("Could not build cross reference parser");else{if(!t.type.ref)throw new Error("Could not resolve reference to type: "+t.type.$refText);let n=wk(t.type.ref),i=n?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+l0(t.type.ref));return Zlt(e,t,i)}}function tzt(e,t){let r=e.consume++,n=e.tokens[t.value];if(!n)throw new Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(r,n,t)}function Jlt(e,t,r,n){let i=t&&qu(t);if(!n)if(i){let a=e.or++;return s=>e.parser.alternatives(a,[{ALT:o(()=>r(s),"ALT"),GATE:o(()=>i(s),"GATE")},{ALT:oE(),GATE:o(()=>!i(s),"GATE")}])}else return r;if(n==="*"){let a=e.many++;return s=>e.parser.many(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else if(n==="+"){let a=e.many++;if(i){let s=e.or++;return l=>e.parser.alternatives(s,[{ALT:o(()=>e.parser.atLeastOne(a,{DEF:o(()=>r(l),"DEF")}),"ALT"),GATE:o(()=>i(l),"GATE")},{ALT:oE(),GATE:o(()=>!i(l),"GATE")}])}else return s=>e.parser.atLeastOne(a,{DEF:o(()=>r(s),"DEF")})}else if(n==="?"){let a=e.optional++;return s=>e.parser.optional(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else of(n)}function tct(e,t){let r=ezt(e,t),n=e.rules.get(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function ezt(e,t){if($a(t))return t.name;if(e.ruleNames.has(t))return e.ruleNames.get(t);{let r=t,n=r.$container,i=t.$type;for(;!$a(n);)(lf(n)||fk(n)||pk(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,e.ruleNames.set(t,i),i}}function uI(e,t){let r=e.tokens[t];if(!r)throw new Error(`Token "${t}" not found."`);return r}var hI=R(()=>{"use strict";g0();Oc();ak();Ps();zl();o(xE,"createParser");o(qFt,"buildRules");o(w0,"buildElement");o(XFt,"buildAction");o(jFt,"buildRuleCall");o(KFt,"buildRuleCallPredicate");o(qu,"buildPredicate");o(QFt,"buildAlternatives");o(ZFt,"buildUnorderedGroup");o(JFt,"buildGroup");o(vE,"getGuardCondition");o(Zlt,"buildCrossReference");o(tzt,"buildKeyword");o(Jlt,"wrap");o(tct,"getRule");o(ezt,"getRuleName");o(uI,"getToken")});function fI(e){let t=e.Grammar,r=e.parser.Lexer,n=new J2(e);return xE(t,n,r.definition),n.finalize(),n}var dI=R(()=>{"use strict";tx();hI();o(fI,"createCompletionParser")});function pI(e){let t=ect(e);return t.finalize(),t}function ect(e){let t=e.Grammar,r=e.parser.Lexer,n=new Z2(e);return xE(t,n,r.definition)}var mI=R(()=>{"use strict";tx();hI();o(pI,"createLangiumParser");o(ect,"prepareLangiumParser")});var T0,gI=R(()=>{"use strict";g0();Oc();is();zl();ig();Ps();T0=class{static{o(this,"DefaultTokenBuilder")}buildTokens(t,r){let n=en(w2(t,!1)),i=this.buildTerminalTokens(n),a=this.buildKeywordTokens(n,i,r);return i.forEach(s=>{let l=s.PATTERN;typeof l=="object"&&l&&"test"in l&&xk(l)?a.unshift(s):a.push(s)}),a}buildTerminalTokens(t){return t.filter(qo).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(t){let r=ag(t),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:t.name,PATTERN:n,LINE_BREAKS:!0};return t.hidden&&(i.GROUP=xk(r)?li.SKIPPED:"hidden"),i}requiresCustomPattern(t){return t.flags.includes("u")?!0:!!(t.source.includes("?<=")||t.source.includes("?(r.lastIndex=i,r.exec(n))}buildKeywordTokens(t,r,n){return t.filter($a).flatMap(i=>Pc(i).filter(Xo)).distinct(i=>i.value).toArray().sort((i,a)=>a.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!n?.caseInsensitive))}buildKeywordToken(t,r,n){return{name:t.value,PATTERN:this.buildKeywordPattern(t,n),LONGER_ALT:this.findLongerAlt(t,r)}}buildKeywordPattern(t,r){return r?new RegExp(HN(t.value)):t.value}findLongerAlt(t,r){return r.reduce((n,i)=>{let a=i?.PATTERN;return a?.source&&WN("^"+a.source+"$",t.value)&&n.push(i),n},[])}}});var k0,zc,yI=R(()=>{"use strict";Oc();zl();k0=class{static{o(this,"DefaultValueConverter")}convert(t,r){let n=r.grammarSource;if(r0(n)&&(n=XN(n)),Fl(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,t,r)}return t}runConverter(t,r,n){var i;switch(t.name.toUpperCase()){case"INT":return zc.convertInt(r);case"STRING":return zc.convertString(r);case"ID":return zc.convertID(r)}switch((i=rM(t))===null||i===void 0?void 0:i.toLowerCase()){case"number":return zc.convertNumber(r);case"boolean":return zc.convertBoolean(r);case"bigint":return zc.convertBigint(r);case"date":return zc.convertDate(r);default:return r}}};(function(e){function t(h){let f="";for(let d=1;d{"use strict";Object.defineProperty(bI,"__esModule",{value:!0});var vI;function xI(){if(vI===void 0)throw new Error("No runtime abstraction layer installed");return vI}o(xI,"RAL");(function(e){function t(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");vI=r}o(t,"install"),e.install=t})(xI||(xI={}));bI.default=xI});var ict=Ti(Ga=>{"use strict";Object.defineProperty(Ga,"__esModule",{value:!0});Ga.stringArray=Ga.array=Ga.func=Ga.error=Ga.number=Ga.string=Ga.boolean=void 0;function rzt(e){return e===!0||e===!1}o(rzt,"boolean");Ga.boolean=rzt;function rct(e){return typeof e=="string"||e instanceof String}o(rct,"string");Ga.string=rct;function nzt(e){return typeof e=="number"||e instanceof Number}o(nzt,"number");Ga.number=nzt;function izt(e){return e instanceof Error}o(izt,"error");Ga.error=izt;function azt(e){return typeof e=="function"}o(azt,"func");Ga.func=azt;function nct(e){return Array.isArray(e)}o(nct,"array");Ga.array=nct;function szt(e){return nct(e)&&e.every(t=>rct(t))}o(szt,"stringArray");Ga.stringArray=szt});var kI=Ti(Mg=>{"use strict";Object.defineProperty(Mg,"__esModule",{value:!0});Mg.Emitter=Mg.Event=void 0;var ozt=wI(),act;(function(e){let t={dispose(){}};e.None=function(){return t}})(act||(Mg.Event=act={}));var TI=class{static{o(this,"CallbackList")}add(t,r=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(t),this._contexts.push(r),Array.isArray(n)&&n.push({dispose:o(()=>this.remove(t,r),"dispose")})}remove(t,r=null){if(!this._callbacks)return;let n=!1;for(let i=0,a=this._callbacks.length;i{this._callbacks||(this._callbacks=new TI),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(t,r);let i={dispose:o(()=>{this._callbacks&&(this._callbacks.remove(t,r),i.dispose=e._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(n)&&n.push(i),i}),this._event}fire(t){this._callbacks&&this._callbacks.invoke.call(this._callbacks,t)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};Mg.Emitter=bE;bE._noop=function(){}});var sct=Ti(Ig=>{"use strict";Object.defineProperty(Ig,"__esModule",{value:!0});Ig.CancellationTokenSource=Ig.CancellationToken=void 0;var lzt=wI(),czt=ict(),EI=kI(),wE;(function(e){e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:EI.Event.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:EI.Event.None});function t(r){let n=r;return n&&(n===e.None||n===e.Cancelled||czt.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}o(t,"is"),e.is=t})(wE||(Ig.CancellationToken=wE={}));var uzt=Object.freeze(function(e,t){let r=(0,lzt.default)().timer.setTimeout(e.bind(t),0);return{dispose(){r.dispose()}}}),TE=class{static{o(this,"MutableToken")}constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?uzt:(this._emitter||(this._emitter=new EI.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},CI=class{static{o(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new TE),this._token}cancel(){this._token?this._token.cancel():this._token=wE.Cancelled}dispose(){this._token?this._token instanceof TE&&this._token.dispose():this._token=wE.None}};Ig.CancellationTokenSource=CI});var kr={};var Ko=R(()=>{"use strict";wr(kr,Qi(sct(),1))});function AI(){return new Promise(e=>{typeof setImmediate>"u"?setTimeout(e,0):setImmediate(e)})}function lct(){return SI=Date.now(),new kr.CancellationTokenSource}function cct(e){oct=e}function ff(e){return e===$c}async function Vi(e){if(e===kr.CancellationToken.None)return;let t=Date.now();if(t-SI>=oct&&(SI=t,await AI()),e.isCancellationRequested)throw $c}var SI,oct,$c,cs,Qo=R(()=>{"use strict";Ko();o(AI,"delayNextTick");SI=0,oct=10;o(lct,"startCancelableOperation");o(cct,"setInterruptionPeriod");$c=Symbol("OperationCancelled");o(ff,"isOperationCancelled");o(Vi,"interruptAndCheck");cs=class{static{o(this,"Deferred")}constructor(){this.promise=new Promise((t,r)=>{this.resolve=n=>(t(n),this),this.reject=n=>(r(n),this)})}}});function _I(e,t){if(e.length<=1)return e;let r=e.length/2|0,n=e.slice(0,r),i=e.slice(r);_I(n,t),_I(i,t);let a=0,s=0,l=0;for(;ar.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function hzt(e){let t=fct(e.range);return t!==e.range?{newText:e.newText,range:t}:e}var kE,Og,dct=R(()=>{"use strict";kE=class e{static{o(this,"FullTextDocument")}constructor(t,r,n,i){this._uri=t,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(t){if(t){let r=this.offsetAt(t.start),n=this.offsetAt(t.end);return this._content.substring(r,n)}return this._content}update(t,r){for(let n of t)if(e.isIncremental(n)){let i=fct(n.range),a=this.offsetAt(i.start),s=this.offsetAt(i.end);this._content=this._content.substring(0,a)+n.text+this._content.substring(s,this._content.length);let l=Math.max(i.start.line,0),u=Math.max(i.end.line,0),h=this._lineOffsets,f=uct(n.text,!1,a);if(u-l===f.length)for(let p=0,m=f.length;pt?i=s:n=s+1}let a=n-1;return t=this.ensureBeforeEOL(t,r[a]),{line:a,character:t-r[a]}}offsetAt(t){let r=this.getLineOffsets();if(t.line>=r.length)return this._content.length;if(t.line<0)return 0;let n=r[t.line];if(t.character<=0)return n;let i=t.line+1r&&hct(this._content.charCodeAt(t-1));)t--;return t}get lineCount(){return this.getLineOffsets().length}static isIncremental(t){let r=t;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(t){let r=t;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}};(function(e){function t(i,a,s,l){return new kE(i,a,s,l)}o(t,"create"),e.create=t;function r(i,a,s){if(i instanceof kE)return i.update(a,s),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}o(r,"update"),e.update=r;function n(i,a){let s=i.getText(),l=_I(a.map(hzt),(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),u=0,h=[];for(let f of l){let d=i.offsetAt(f.range.start);if(du&&h.push(s.substring(u,d)),f.newText.length&&h.push(f.newText),u=i.offsetAt(f.range.end)}return h.push(s.substr(u)),h.join("")}o(n,"applyEdits"),e.applyEdits=n})(Og||(Og={}));o(_I,"mergeSort");o(uct,"computeLineOffsets");o(hct,"isEOL");o(fct,"getWellformedRange");o(hzt,"getWellformedEdit")});var pct,zs,Pg,LI=R(()=>{"use strict";(()=>{"use strict";var e={470:i=>{function a(u){if(typeof u!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(u))}o(a,"e");function s(u,h){for(var f,d="",p=0,m=-1,g=0,y=0;y<=u.length;++y){if(y2){var v=d.lastIndexOf("/");if(v!==d.length-1){v===-1?(d="",p=0):p=(d=d.slice(0,v)).length-1-d.lastIndexOf("/"),m=y,g=0;continue}}else if(d.length===2||d.length===1){d="",p=0,m=y,g=0;continue}}h&&(d.length>0?d+="/..":d="..",p=2)}else d.length>0?d+="/"+u.slice(m+1,y):d=u.slice(m+1,y),p=y-m-1;m=y,g=0}else f===46&&g!==-1?++g:g=-1}return d}o(s,"r");var l={resolve:o(function(){for(var u,h="",f=!1,d=arguments.length-1;d>=-1&&!f;d--){var p;d>=0?p=arguments[d]:(u===void 0&&(u=process.cwd()),p=u),a(p),p.length!==0&&(h=p+"/"+h,f=p.charCodeAt(0)===47)}return h=s(h,!f),f?h.length>0?"/"+h:"/":h.length>0?h:"."},"resolve"),normalize:o(function(u){if(a(u),u.length===0)return".";var h=u.charCodeAt(0)===47,f=u.charCodeAt(u.length-1)===47;return(u=s(u,!h)).length!==0||h||(u="."),u.length>0&&f&&(u+="/"),h?"/"+u:u},"normalize"),isAbsolute:o(function(u){return a(u),u.length>0&&u.charCodeAt(0)===47},"isAbsolute"),join:o(function(){if(arguments.length===0)return".";for(var u,h=0;h0&&(u===void 0?u=f:u+="/"+f)}return u===void 0?".":l.normalize(u)},"join"),relative:o(function(u,h){if(a(u),a(h),u===h||(u=l.resolve(u))===(h=l.resolve(h)))return"";for(var f=1;fy){if(h.charCodeAt(m+x)===47)return h.slice(m+x+1);if(x===0)return h.slice(m+x)}else p>y&&(u.charCodeAt(f+x)===47?v=x:x===0&&(v=0));break}var b=u.charCodeAt(f+x);if(b!==h.charCodeAt(m+x))break;b===47&&(v=x)}var w="";for(x=f+v+1;x<=d;++x)x!==d&&u.charCodeAt(x)!==47||(w.length===0?w+="..":w+="/..");return w.length>0?w+h.slice(m+v):(m+=v,h.charCodeAt(m)===47&&++m,h.slice(m))},"relative"),_makeLong:o(function(u){return u},"_makeLong"),dirname:o(function(u){if(a(u),u.length===0)return".";for(var h=u.charCodeAt(0),f=h===47,d=-1,p=!0,m=u.length-1;m>=1;--m)if((h=u.charCodeAt(m))===47){if(!p){d=m;break}}else p=!1;return d===-1?f?"/":".":f&&d===1?"//":u.slice(0,d)},"dirname"),basename:o(function(u,h){if(h!==void 0&&typeof h!="string")throw new TypeError('"ext" argument must be a string');a(u);var f,d=0,p=-1,m=!0;if(h!==void 0&&h.length>0&&h.length<=u.length){if(h.length===u.length&&h===u)return"";var g=h.length-1,y=-1;for(f=u.length-1;f>=0;--f){var v=u.charCodeAt(f);if(v===47){if(!m){d=f+1;break}}else y===-1&&(m=!1,y=f+1),g>=0&&(v===h.charCodeAt(g)?--g==-1&&(p=f):(g=-1,p=y))}return d===p?p=y:p===-1&&(p=u.length),u.slice(d,p)}for(f=u.length-1;f>=0;--f)if(u.charCodeAt(f)===47){if(!m){d=f+1;break}}else p===-1&&(m=!1,p=f+1);return p===-1?"":u.slice(d,p)},"basename"),extname:o(function(u){a(u);for(var h=-1,f=0,d=-1,p=!0,m=0,g=u.length-1;g>=0;--g){var y=u.charCodeAt(g);if(y!==47)d===-1&&(p=!1,d=g+1),y===46?h===-1?h=g:m!==1&&(m=1):h!==-1&&(m=-1);else if(!p){f=g+1;break}}return h===-1||d===-1||m===0||m===1&&h===d-1&&h===f+1?"":u.slice(h,d)},"extname"),format:o(function(u){if(u===null||typeof u!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof u);return function(h,f){var d=f.dir||f.root,p=f.base||(f.name||"")+(f.ext||"");return d?d===f.root?d+p:d+"/"+p:p}(0,u)},"format"),parse:o(function(u){a(u);var h={root:"",dir:"",base:"",ext:"",name:""};if(u.length===0)return h;var f,d=u.charCodeAt(0),p=d===47;p?(h.root="/",f=1):f=0;for(var m=-1,g=0,y=-1,v=!0,x=u.length-1,b=0;x>=f;--x)if((d=u.charCodeAt(x))!==47)y===-1&&(v=!1,y=x+1),d===46?m===-1?m=x:b!==1&&(b=1):m!==-1&&(b=-1);else if(!v){g=x+1;break}return m===-1||y===-1||b===0||b===1&&m===y-1&&m===g+1?y!==-1&&(h.base=h.name=g===0&&p?u.slice(1,y):u.slice(g,y)):(g===0&&p?(h.name=u.slice(1,m),h.base=u.slice(1,y)):(h.name=u.slice(g,m),h.base=u.slice(g,y)),h.ext=u.slice(m,y)),g>0?h.dir=u.slice(0,g-1):p&&(h.dir="/"),h},"parse"),sep:"/",delimiter:":",win32:null,posix:null};l.posix=l,i.exports=l}},t={};function r(i){var a=t[i];if(a!==void 0)return a.exports;var s=t[i]={exports:{}};return e[i](s,s.exports,r),s.exports}o(r,"r"),r.d=(i,a)=>{for(var s in a)r.o(a,s)&&!r.o(i,s)&&Object.defineProperty(i,s,{enumerable:!0,get:a[s]})},r.o=(i,a)=>Object.prototype.hasOwnProperty.call(i,a),r.r=i=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var n={};(()=>{let i;r.r(n),r.d(n,{URI:o(()=>p,"URI"),Utils:o(()=>M,"Utils")}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let a=/^\w[\w\d+.-]*$/,s=/^\//,l=/^\/\//;function u(N,k){if(!N.scheme&&k)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${N.authority}", path: "${N.path}", query: "${N.query}", fragment: "${N.fragment}"}`);if(N.scheme&&!a.test(N.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(N.path){if(N.authority){if(!s.test(N.path))throw new 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(l.test(N.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}o(u,"s");let h="",f="/",d=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class p{static{o(this,"f")}static isUri(k){return k instanceof p||!!k&&typeof k.authority=="string"&&typeof k.fragment=="string"&&typeof k.path=="string"&&typeof k.query=="string"&&typeof k.scheme=="string"&&typeof k.fsPath=="string"&&typeof k.with=="function"&&typeof k.toString=="function"}scheme;authority;path;query;fragment;constructor(k,I,C,O,D,P=!1){typeof k=="object"?(this.scheme=k.scheme||h,this.authority=k.authority||h,this.path=k.path||h,this.query=k.query||h,this.fragment=k.fragment||h):(this.scheme=function(F,B){return F||B?F:"file"}(k,P),this.authority=I||h,this.path=function(F,B){switch(F){case"https":case"http":case"file":B?B[0]!==f&&(B=f+B):B=f}return B}(this.scheme,C||h),this.query=O||h,this.fragment=D||h,u(this,P))}get fsPath(){return b(this,!1)}with(k){if(!k)return this;let{scheme:I,authority:C,path:O,query:D,fragment:P}=k;return I===void 0?I=this.scheme:I===null&&(I=h),C===void 0?C=this.authority:C===null&&(C=h),O===void 0?O=this.path:O===null&&(O=h),D===void 0?D=this.query:D===null&&(D=h),P===void 0?P=this.fragment:P===null&&(P=h),I===this.scheme&&C===this.authority&&O===this.path&&D===this.query&&P===this.fragment?this:new g(I,C,O,D,P)}static parse(k,I=!1){let C=d.exec(k);return C?new g(C[2]||h,E(C[4]||h),E(C[5]||h),E(C[7]||h),E(C[9]||h),I):new g(h,h,h,h,h)}static file(k){let I=h;if(i&&(k=k.replace(/\\/g,f)),k[0]===f&&k[1]===f){let C=k.indexOf(f,2);C===-1?(I=k.substring(2),k=f):(I=k.substring(2,C),k=k.substring(C)||f)}return new g("file",I,k,h,h)}static from(k){let I=new g(k.scheme,k.authority,k.path,k.query,k.fragment);return u(I,!0),I}toString(k=!1){return w(this,k)}toJSON(){return this}static revive(k){if(k){if(k instanceof p)return k;{let I=new g(k);return I._formatted=k.external,I._fsPath=k._sep===m?k.fsPath:null,I}}return k}}let m=i?1:void 0;class g extends p{static{o(this,"l")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=b(this,!1)),this._fsPath}toString(k=!1){return k?w(this,!0):(this._formatted||(this._formatted=w(this,!1)),this._formatted)}toJSON(){let k={$mid:1};return this._fsPath&&(k.fsPath=this._fsPath,k._sep=m),this._formatted&&(k.external=this._formatted),this.path&&(k.path=this.path),this.scheme&&(k.scheme=this.scheme),this.authority&&(k.authority=this.authority),this.query&&(k.query=this.query),this.fragment&&(k.fragment=this.fragment),k}}let y={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 v(N,k,I){let C,O=-1;for(let D=0;D=97&&P<=122||P>=65&&P<=90||P>=48&&P<=57||P===45||P===46||P===95||P===126||k&&P===47||I&&P===91||I&&P===93||I&&P===58)O!==-1&&(C+=encodeURIComponent(N.substring(O,D)),O=-1),C!==void 0&&(C+=N.charAt(D));else{C===void 0&&(C=N.substr(0,D));let F=y[P];F!==void 0?(O!==-1&&(C+=encodeURIComponent(N.substring(O,D)),O=-1),C+=F):O===-1&&(O=D)}}return O!==-1&&(C+=encodeURIComponent(N.substring(O))),C!==void 0?C:N}o(v,"d");function x(N){let k;for(let I=0;I1&&N.scheme==="file"?`//${N.authority}${N.path}`:N.path.charCodeAt(0)===47&&(N.path.charCodeAt(1)>=65&&N.path.charCodeAt(1)<=90||N.path.charCodeAt(1)>=97&&N.path.charCodeAt(1)<=122)&&N.path.charCodeAt(2)===58?k?N.path.substr(1):N.path[1].toLowerCase()+N.path.substr(2):N.path,i&&(I=I.replace(/\//g,"\\")),I}o(b,"m");function w(N,k){let I=k?x:v,C="",{scheme:O,authority:D,path:P,query:F,fragment:B}=N;if(O&&(C+=O,C+=":"),(D||O==="file")&&(C+=f,C+=f),D){let G=D.indexOf("@");if(G!==-1){let z=D.substr(0,G);D=D.substr(G+1),G=z.lastIndexOf(":"),G===-1?C+=I(z,!1,!1):(C+=I(z.substr(0,G),!1,!1),C+=":",C+=I(z.substr(G+1),!1,!0)),C+="@"}D=D.toLowerCase(),G=D.lastIndexOf(":"),G===-1?C+=I(D,!1,!0):(C+=I(D.substr(0,G),!1,!0),C+=D.substr(G))}if(P){if(P.length>=3&&P.charCodeAt(0)===47&&P.charCodeAt(2)===58){let G=P.charCodeAt(1);G>=65&&G<=90&&(P=`/${String.fromCharCode(G+32)}:${P.substr(3)}`)}else if(P.length>=2&&P.charCodeAt(1)===58){let G=P.charCodeAt(0);G>=65&&G<=90&&(P=`${String.fromCharCode(G+32)}:${P.substr(2)}`)}C+=I(P,!0,!1)}return F&&(C+="?",C+=I(F,!1,!1)),B&&(C+="#",C+=k?B:v(B,!1,!1)),C}o(w,"y");function S(N){try{return decodeURIComponent(N)}catch{return N.length>3?N.substr(0,3)+S(N.substr(3)):N}}o(S,"v");let T=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function E(N){return N.match(T)?N.replace(T,k=>S(k)):N}o(E,"C");var _=r(470);let A=_.posix||_,L="/";var M;(function(N){N.joinPath=function(k,...I){return k.with({path:A.join(k.path,...I)})},N.resolvePath=function(k,...I){let C=k.path,O=!1;C[0]!==L&&(C=L+C,O=!0);let D=A.resolve(C,...I);return O&&D[0]===L&&!k.authority&&(D=D.substring(1)),k.with({path:D})},N.dirname=function(k){if(k.path.length===0||k.path===L)return k;let I=A.dirname(k.path);return I.length===1&&I.charCodeAt(0)===46&&(I=""),k.with({path:I})},N.basename=function(k){return A.basename(k.path)},N.extname=function(k){return A.extname(k.path)}})(M||(M={}))})(),pct=n})();({URI:zs,Utils:Pg}=pct)});var us,Gc=R(()=>{"use strict";LI();(function(e){e.basename=Pg.basename,e.dirname=Pg.dirname,e.extname=Pg.extname,e.joinPath=Pg.joinPath,e.resolvePath=Pg.resolvePath;function t(n,i){return n?.toString()===i?.toString()}o(t,"equals"),e.equals=t;function r(n,i){let a=typeof n=="string"?n:n.path,s=typeof i=="string"?i:i.path,l=a.split("/").filter(p=>p.length>0),u=s.split("/").filter(p=>p.length>0),h=0;for(;h{"use strict";dct();Bg();Ko();Ps();Gc();(function(e){e[e.Changed=0]="Changed",e[e.Parsed=1]="Parsed",e[e.IndexedContent=2]="IndexedContent",e[e.ComputedScopes=3]="ComputedScopes",e[e.Linked=4]="Linked",e[e.IndexedReferences=5]="IndexedReferences",e[e.Validated=6]="Validated"})(Tn||(Tn={}));ex=class{static{o(this,"DefaultLangiumDocumentFactory")}constructor(t){this.serviceRegistry=t.ServiceRegistry,this.textDocuments=t.workspace.TextDocuments,this.fileSystemProvider=t.workspace.FileSystemProvider}async fromUri(t,r=kr.CancellationToken.None){let n=await this.fileSystemProvider.readFile(t);return this.createAsync(t,n,r)}fromTextDocument(t,r,n){return r=r??zs.parse(t.uri),n?this.createAsync(r,t,n):this.create(r,t)}fromString(t,r,n){return n?this.createAsync(r,t,n):this.create(r,t)}fromModel(t,r){return this.create(r,{$model:t})}create(t,r){if(typeof r=="string"){let n=this.parse(t,r);return this.createLangiumDocument(n,t,void 0,r)}else if("$model"in r){let n={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(n,t)}else{let n=this.parse(t,r.getText());return this.createLangiumDocument(n,t,r)}}async createAsync(t,r,n){if(typeof r=="string"){let i=await this.parseAsync(t,r,n);return this.createLangiumDocument(i,t,void 0,r)}else{let i=await this.parseAsync(t,r.getText(),n);return this.createLangiumDocument(i,t,r)}}createLangiumDocument(t,r,n,i){let a;if(n)a={parseResult:t,uri:r,state:Tn.Parsed,references:[],textDocument:n};else{let s=this.createTextDocumentGetter(r,i);a={parseResult:t,uri:r,state:Tn.Parsed,references:[],get textDocument(){return s()}}}return t.value.$document=a,a}async update(t,r){var n,i;let a=(n=t.parseResult.value.$cstNode)===null||n===void 0?void 0:n.root.fullText,s=(i=this.textDocuments)===null||i===void 0?void 0:i.get(t.uri.toString()),l=s?s.getText():await this.fileSystemProvider.readFile(t.uri);if(s)Object.defineProperty(t,"textDocument",{value:s});else{let u=this.createTextDocumentGetter(t.uri,l);Object.defineProperty(t,"textDocument",{get:u})}return a!==l&&(t.parseResult=await this.parseAsync(t.uri,l,r),t.parseResult.value.$document=t),t.state=Tn.Parsed,t}parse(t,r){return this.serviceRegistry.getServices(t).parser.LangiumParser.parse(r)}parseAsync(t,r,n){return this.serviceRegistry.getServices(t).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(t,r){let n=this.serviceRegistry,i;return()=>i??(i=Og.create(t.toString(),n.getServices(t).LanguageMetaData.languageId,0,r??""))}},rx=class{static{o(this,"DefaultLangiumDocuments")}constructor(t){this.documentMap=new Map,this.langiumDocumentFactory=t.workspace.LangiumDocumentFactory}get all(){return en(this.documentMap.values())}addDocument(t){let r=t.uri.toString();if(this.documentMap.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentMap.set(r,t)}getDocument(t){let r=t.toString();return this.documentMap.get(r)}async getOrCreateDocument(t,r){let n=this.getDocument(t);return n||(n=await this.langiumDocumentFactory.fromUri(t,r),this.addDocument(n),n)}createDocument(t,r,n){if(n)return this.langiumDocumentFactory.fromString(r,t,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,t);return this.addDocument(i),i}}hasDocument(t){return this.documentMap.has(t.toString())}invalidateDocument(t){let r=t.toString(),n=this.documentMap.get(r);return n&&(n.state=Tn.Changed,n.precomputedScopes=void 0,n.references=[],n.diagnostics=void 0),n}deleteDocument(t){let r=t.toString(),n=this.documentMap.get(r);return n&&(n.state=Tn.Changed,this.documentMap.delete(r)),n}}});var nx,DI=R(()=>{"use strict";Ko();Yo();is();Qo();Bg();nx=class{static{o(this,"DefaultLinker")}constructor(t){this.reflection=t.shared.AstReflection,this.langiumDocuments=()=>t.shared.workspace.LangiumDocuments,this.scopeProvider=t.references.ScopeProvider,this.astNodeLocator=t.workspace.AstNodeLocator}async link(t,r=kr.CancellationToken.None){for(let n of jo(t.parseResult.value))await Vi(r),rg(n).forEach(i=>this.doLink(i,t))}doLink(t,r){let n=t.reference;if(n._ref===void 0)try{let i=this.getCandidate(t);if(Zd(i))n._ref=i;else if(n._nodeDescription=i,this.langiumDocuments().hasDocument(i.documentUri)){let a=this.loadAstNode(i);n._ref=a??this.createLinkingError(t,i)}}catch(i){n._ref=Object.assign(Object.assign({},t),{message:`An error occurred while resolving reference to '${n.$refText}': ${i}`})}r.references.push(n)}unlink(t){for(let r of t.references)delete r._ref,delete r._nodeDescription;t.references=[]}getCandidate(t){let n=this.scopeProvider.getScope(t).getElement(t.reference.$refText);return n??this.createLinkingError(t)}buildReference(t,r,n,i){let a=this,s={$refNode:n,$refText:i,get ref(){var l;if(ri(this._ref))return this._ref;if(LR(this._nodeDescription)){let u=a.loadAstNode(this._nodeDescription);this._ref=u??a.createLinkingError({reference:s,container:t,property:r},this._nodeDescription)}else if(this._ref===void 0){let u=a.getLinkedNode({reference:s,container:t,property:r});if(u.error&&$i(t).state{"use strict";zl();o(mct,"isNamed");ix=class{static{o(this,"DefaultNameProvider")}getName(t){if(mct(t))return t.name}getNameNode(t){return T2(t.$cstNode,"name")}}});var ax,NI=R(()=>{"use strict";zl();Yo();is();Pl();Ps();Gc();ax=class{static{o(this,"DefaultReferences")}constructor(t){this.nameProvider=t.references.NameProvider,this.index=t.shared.workspace.IndexManager,this.nodeLocator=t.workspace.AstNodeLocator}findDeclaration(t){if(t){let r=tM(t),n=t.astNode;if(r&&n){let i=n[r.feature];if(ka(i))return i.ref;if(Array.isArray(i)){for(let a of i)if(ka(a)&&a.$refNode&&a.$refNode.offset<=t.offset&&a.$refNode.end>=t.end)return a.ref}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===t||RR(t,i)))return n}}}findDeclarationNode(t){let r=this.findDeclaration(t);if(r?.$cstNode){let n=this.nameProvider.getNameNode(r);return n??r.$cstNode}}findReferences(t,r){let n=[];if(r.includeDeclaration){let a=this.getReferenceToSelf(t);a&&n.push(a)}let i=this.index.findAllReferences(t,this.nodeLocator.getAstNodePath(t));return r.documentUri&&(i=i.filter(a=>us.equals(a.sourceUri,r.documentUri))),n.push(...i),en(n)}getReferenceToSelf(t){let r=this.nameProvider.getNameNode(t);if(r){let n=$i(t),i=this.nodeLocator.getAstNodePath(t);return{sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:t0(r),local:!0}}}}});var Vc,E0,Fg=R(()=>{"use strict";Ps();Vc=class{static{o(this,"MultiMap")}constructor(t){if(this.map=new Map,t)for(let[r,n]of t)this.add(r,n)}get size(){return Jm.sum(en(this.map.values()).map(t=>t.length))}clear(){this.map.clear()}delete(t,r){if(r===void 0)return this.map.delete(t);{let n=this.map.get(t);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(t):n.splice(i,1),!0}return!1}}get(t){var r;return(r=this.map.get(t))!==null&&r!==void 0?r:[]}has(t,r){if(r===void 0)return this.map.has(t);{let n=this.map.get(t);return n?n.indexOf(r)>=0:!1}}add(t,r){return this.map.has(t)?this.map.get(t).push(r):this.map.set(t,[r]),this}addAll(t,r){return this.map.has(t)?this.map.get(t).push(...r):this.map.set(t,Array.from(r)),this}forEach(t){this.map.forEach((r,n)=>r.forEach(i=>t(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return en(this.map.entries()).flatMap(([t,r])=>r.map(n=>[t,n]))}keys(){return en(this.map.keys())}values(){return en(this.map.values()).flat()}entriesGroupedByKey(){return en(this.map.entries())}},E0=class{static{o(this,"BiMap")}get size(){return this.map.size}constructor(t){if(this.map=new Map,this.inverse=new Map,t)for(let[r,n]of t)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(t,r){return this.map.set(t,r),this.inverse.set(r,t),this}get(t){return this.map.get(t)}getKey(t){return this.inverse.get(t)}delete(t){let r=this.map.get(t);return r!==void 0?(this.map.delete(t),this.inverse.delete(r),!0):!1}}});var sx,MI=R(()=>{"use strict";Ko();is();Fg();Qo();sx=class{static{o(this,"DefaultScopeComputation")}constructor(t){this.nameProvider=t.references.NameProvider,this.descriptions=t.workspace.AstNodeDescriptionProvider}async computeExports(t,r=kr.CancellationToken.None){return this.computeExportsForNode(t.parseResult.value,t,void 0,r)}async computeExportsForNode(t,r,n=g2,i=kr.CancellationToken.None){let a=[];this.exportNode(t,a,r);for(let s of n(t))await Vi(i),this.exportNode(s,a,r);return a}exportNode(t,r,n){let i=this.nameProvider.getName(t);i&&r.push(this.descriptions.createDescription(t,i,n))}async computeLocalScopes(t,r=kr.CancellationToken.None){let n=t.parseResult.value,i=new Vc;for(let a of Pc(n))await Vi(r),this.processNode(a,t,i);return i}processNode(t,r,n){let i=t.$container;if(i){let a=this.nameProvider.getName(t);a&&n.add(i,this.descriptions.createDescription(t,a,r))}}}});var zg,ox,fzt,II=R(()=>{"use strict";Ps();zg=class{static{o(this,"StreamScope")}constructor(t,r,n){var i;this.elements=t,this.outerScope=r,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(t){let r=this.caseInsensitive?this.elements.find(n=>n.name.toLowerCase()===t.toLowerCase()):this.elements.find(n=>n.name===t);if(r)return r;if(this.outerScope)return this.outerScope.getElement(t)}},ox=class{static{o(this,"MapScope")}constructor(t,r,n){var i;this.elements=new Map,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1;for(let a of t){let s=this.caseInsensitive?a.name.toLowerCase():a.name;this.elements.set(s,a)}this.outerScope=r}getElement(t){let r=this.caseInsensitive?t.toLowerCase():t,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(t)}getAllElements(){let t=en(this.elements.values());return this.outerScope&&(t=t.concat(this.outerScope.getAllElements())),t}},fzt={getElement(){},getAllElements(){return u2}}});var $g,lx,C0,EE,Gg,CE=R(()=>{"use strict";$g=class{static{o(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(t){this.toDispose.push(t)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(t=>t.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},lx=class extends $g{static{o(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(t){return this.throwIfDisposed(),this.cache.has(t)}set(t,r){this.throwIfDisposed(),this.cache.set(t,r)}get(t,r){if(this.throwIfDisposed(),this.cache.has(t))return this.cache.get(t);if(r){let n=r();return this.cache.set(t,n),n}else return}delete(t){return this.throwIfDisposed(),this.cache.delete(t)}clear(){this.throwIfDisposed(),this.cache.clear()}},C0=class extends $g{static{o(this,"ContextCache")}constructor(t){super(),this.cache=new Map,this.converter=t??(r=>r)}has(t,r){return this.throwIfDisposed(),this.cacheForContext(t).has(r)}set(t,r,n){this.throwIfDisposed(),this.cacheForContext(t).set(r,n)}get(t,r,n){this.throwIfDisposed();let i=this.cacheForContext(t);if(i.has(r))return i.get(r);if(n){let a=n();return i.set(r,a),a}else return}delete(t,r){return this.throwIfDisposed(),this.cacheForContext(t).delete(r)}clear(t){if(this.throwIfDisposed(),t){let r=this.converter(t);this.cache.delete(r)}else this.cache.clear()}cacheForContext(t){let r=this.converter(t),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},EE=class extends C0{static{o(this,"DocumentCache")}constructor(t){super(r=>r.toString()),this.onDispose(t.workspace.DocumentBuilder.onUpdate((r,n)=>{let i=r.concat(n);for(let a of i)this.clear(a)}))}},Gg=class extends lx{static{o(this,"WorkspaceCache")}constructor(t){super(),this.onDispose(t.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}});var cx,OI=R(()=>{"use strict";II();is();Ps();CE();cx=class{static{o(this,"DefaultScopeProvider")}constructor(t){this.reflection=t.shared.AstReflection,this.nameProvider=t.references.NameProvider,this.descriptions=t.workspace.AstNodeDescriptionProvider,this.indexManager=t.shared.workspace.IndexManager,this.globalScopeCache=new Gg(t.shared)}getScope(t){let r=[],n=this.reflection.getReferenceType(t),i=$i(t.container).precomputedScopes;if(i){let s=t.container;do{let l=i.get(s);l.length>0&&r.push(en(l).filter(u=>this.reflection.isSubtype(u.type,n))),s=s.$container}while(s)}let a=this.getGlobalScope(n,t);for(let s=r.length-1;s>=0;s--)a=this.createScope(r[s],a);return a}createScope(t,r,n){return new zg(en(t),r,n)}createScopeForNodes(t,r,n){let i=en(t).map(a=>{let s=this.nameProvider.getName(a);if(s)return this.descriptions.createDescription(a,s)}).nonNullable();return new zg(i,r,n)}getGlobalScope(t,r){return this.globalScopeCache.get(t,()=>new ox(this.indexManager.allElements(t)))}}});function PI(e){return typeof e.$comment=="string"}function gct(e){return typeof e=="object"&&!!e&&("$ref"in e||"$error"in e)}var ux,SE=R(()=>{"use strict";LI();Yo();is();zl();o(PI,"isAstNodeWithComment");o(gct,"isIntermediateReference");ux=class{static{o(this,"DefaultJsonSerializer")}constructor(t){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=t.shared.workspace.LangiumDocuments,this.astNodeLocator=t.workspace.AstNodeLocator,this.nameProvider=t.references.NameProvider,this.commentProvider=t.documentation.CommentProvider}serialize(t,r={}){let n=r?.replacer,i=o((s,l)=>this.replacer(s,l,r),"defaultReplacer"),a=n?(s,l)=>n(s,l,i):i;try{return this.currentDocument=$i(t),JSON.stringify(t,a,r?.space)}finally{this.currentDocument=void 0}}deserialize(t,r={}){let n=JSON.parse(t);return this.linkNode(n,n,r),n}replacer(t,r,{refText:n,sourceText:i,textRegions:a,comments:s,uriConverter:l}){var u,h,f,d;if(!this.ignoreProperties.has(t))if(ka(r)){let p=r.ref,m=n?r.$refText:void 0;if(p){let g=$i(p),y="";this.currentDocument&&this.currentDocument!==g&&(l?y=l(g.uri,r):y=g.uri.toString());let v=this.astNodeLocator.getAstNodePath(p);return{$ref:`${y}#${v}`,$refText:m}}else return{$error:(h=(u=r.error)===null||u===void 0?void 0:u.message)!==null&&h!==void 0?h:"Could not resolve reference",$refText:m}}else if(ri(r)){let p;if(a&&(p=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},r)),(!t||r.$document)&&p?.$textRegion&&(p.$textRegion.documentURI=(f=this.currentDocument)===null||f===void 0?void 0:f.uri.toString())),i&&!t&&(p??(p=Object.assign({},r)),p.$sourceText=(d=r.$cstNode)===null||d===void 0?void 0:d.text),s){p??(p=Object.assign({},r));let m=this.commentProvider.getComment(r);m&&(p.$comment=m.replace(/\r/g,""))}return p??r}else return r}addAstNodeRegionWithAssignmentsTo(t){let r=o(n=>({offset:n.offset,end:n.end,length:n.length,range:n.range}),"createDocumentSegment");if(t.$cstNode){let n=t.$textRegion=r(t.$cstNode),i=n.assignments={};return Object.keys(t).filter(a=>!a.startsWith("$")).forEach(a=>{let s=KN(t.$cstNode,a).map(r);s.length!==0&&(i[a]=s)}),t}}linkNode(t,r,n,i,a,s){for(let[u,h]of Object.entries(t))if(Array.isArray(h))for(let f=0;f{"use strict";Gc();hx=class{static{o(this,"DefaultServiceRegistry")}register(t){if(!this.singleton&&!this.map){this.singleton=t;return}if(!this.map&&(this.map={},this.singleton)){for(let r of this.singleton.LanguageMetaData.fileExtensions)this.map[r]=this.singleton;this.singleton=void 0}for(let r of t.LanguageMetaData.fileExtensions)this.map[r]!==void 0&&this.map[r]!==t&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${t.LanguageMetaData.languageId}'.`),this.map[r]=t}getServices(t){if(this.singleton!==void 0)return this.singleton;if(this.map===void 0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");let r=us.extname(t),n=this.map[r];if(!n)throw new Error(`The service registry contains no services for the extension '${r}'.`);return n}get all(){return this.singleton!==void 0?[this.singleton]:this.map!==void 0?Object.values(this.map):[]}}});function AE(e){return{code:e}}var Vg,fx,dx=R(()=>{"use strict";Fg();Qo();Ps();o(AE,"diagnosticData");(function(e){e.all=["fast","slow","built-in"]})(Vg||(Vg={}));fx=class{static{o(this,"ValidationRegistry")}constructor(t){this.entries=new Vc,this.reflection=t.shared.AstReflection}register(t,r=this,n="fast"){if(n==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[i,a]of Object.entries(t)){let s=a;if(Array.isArray(s))for(let l of s){let u={check:this.wrapValidationException(l,r),category:n};this.addEntry(i,u)}else if(typeof s=="function"){let l={check:this.wrapValidationException(s,r),category:n};this.addEntry(i,l)}}}wrapValidationException(t,r){return async(n,i,a)=>{try{await t.call(r,n,i,a)}catch(s){if(ff(s))throw s;console.error("An error occurred during validation:",s);let l=s instanceof Error?s.message:String(s);s instanceof Error&&s.stack&&console.error(s.stack),i("error","An error occurred during validation: "+l,{node:n})}}}addEntry(t,r){if(t==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(t))this.entries.add(n,r)}getChecks(t,r){let n=en(this.entries.get(t)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}}});function yct(e){if(e.range)return e.range;let t;return typeof e.property=="string"?t=T2(e.node.$cstNode,e.property,e.index):typeof e.keyword=="string"&&(t=ZN(e.node.$cstNode,e.keyword,e.index)),t??(t=e.node.$cstNode),t?t.range:{start:{line:0,character:0},end:{line:0,character:0}}}function _E(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+e)}}var px,Xu,FI=R(()=>{"use strict";Ko();zl();is();Pl();Qo();dx();px=class{static{o(this,"DefaultDocumentValidator")}constructor(t){this.validationRegistry=t.validation.ValidationRegistry,this.metadata=t.LanguageMetaData}async validateDocument(t,r={},n=kr.CancellationToken.None){let i=t.parseResult,a=[];if(await Vi(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(i,a,r),r.stopAfterLexingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===Xu.LexingError})||(this.processParsingErrors(i,a,r),r.stopAfterParsingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===Xu.ParsingError}))||(this.processLinkingErrors(t,a,r),r.stopAfterLinkingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===Xu.LinkingError}))))return a;try{a.push(...await this.validateAst(i.value,r,n))}catch(s){if(ff(s))throw s;console.error("An error occurred during validation:",s)}return await Vi(n),a}processLexingErrors(t,r,n){for(let i of t.lexerErrors){let a={severity:_E("error"),range:{start:{line:i.line-1,character:i.column-1},end:{line:i.line-1,character:i.column+i.length-1}},message:i.message,data:AE(Xu.LexingError),source:this.getSource()};r.push(a)}}processParsingErrors(t,r,n){for(let i of t.parserErrors){let a;if(isNaN(i.token.startOffset)){if("previousToken"in i){let s=i.previousToken;if(isNaN(s.startOffset)){let l={line:0,character:0};a={start:l,end:l}}else{let l={line:s.endLine-1,character:s.endColumn};a={start:l,end:l}}}}else a=tg(i.token);if(a){let s={severity:_E("error"),range:a,message:i.message,data:AE(Xu.ParsingError),source:this.getSource()};r.push(s)}}}processLinkingErrors(t,r,n){for(let i of t.references){let a=i.error;if(a){let s={node:a.container,property:a.property,index:a.index,data:{code:Xu.LinkingError,containerType:a.container.$type,property:a.property,refText:a.reference.$refText}};r.push(this.toDiagnostic("error",a.message,s))}}}async validateAst(t,r,n=kr.CancellationToken.None){let i=[],a=o((s,l,u)=>{i.push(this.toDiagnostic(s,l,u))},"acceptor");return await Promise.all(jo(t).map(async s=>{await Vi(n);let l=this.validationRegistry.getChecks(s.$type,r.categories);for(let u of l)await u(s,a,n)})),i}toDiagnostic(t,r,n){return{message:r,range:yct(n),severity:_E(t),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};o(yct,"getDiagnosticRange");o(_E,"toDiagnosticSeverity");(function(e){e.LexingError="lexing-error",e.ParsingError="parsing-error",e.LinkingError="linking-error"})(Xu||(Xu={}))});var mx,gx,zI=R(()=>{"use strict";Ko();Yo();is();Pl();Qo();Gc();mx=class{static{o(this,"DefaultAstNodeDescriptionProvider")}constructor(t){this.astNodeLocator=t.workspace.AstNodeLocator,this.nameProvider=t.references.NameProvider}createDescription(t,r,n=$i(t)){r??(r=this.nameProvider.getName(t));let i=this.astNodeLocator.getAstNodePath(t);if(!r)throw new Error(`Node at path ${i} has no name.`);let a,s=o(()=>{var l;return a??(a=t0((l=this.nameProvider.getNameNode(t))!==null&&l!==void 0?l:t.$cstNode))},"nameSegmentGetter");return{node:t,name:r,get nameSegment(){return s()},selectionSegment:t0(t.$cstNode),type:t.$type,documentUri:n.uri,path:i}}},gx=class{static{o(this,"DefaultReferenceDescriptionProvider")}constructor(t){this.nodeLocator=t.workspace.AstNodeLocator}async createDescriptions(t,r=kr.CancellationToken.None){let n=[],i=t.parseResult.value;for(let a of jo(i))await Vi(r),rg(a).filter(s=>!Zd(s)).forEach(s=>{let l=this.createDescription(s);l&&n.push(l)});return n}createDescription(t){let r=t.reference.$nodeDescription,n=t.reference.$refNode;if(!r||!n)return;let i=$i(t.container).uri;return{sourceUri:i,sourcePath:this.nodeLocator.getAstNodePath(t.container),targetUri:r.documentUri,targetPath:r.path,segment:t0(n),local:us.equals(r.documentUri,i)}}}});var yx,$I=R(()=>{"use strict";yx=class{static{o(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(t){if(t.$container){let r=this.getAstNodePath(t.$container),n=this.getPathSegment(t);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:t,$containerIndex:r}){if(!t)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?t+this.indexSeparator+r:t}getAstNode(t,r){return r.split(this.segmentSeparator).reduce((i,a)=>{if(!i||a.length===0)return i;let s=a.indexOf(this.indexSeparator);if(s>0){let l=a.substring(0,s),u=parseInt(a.substring(s+1)),h=i[l];return h?.[u]}return i[a]},t)}}});var vx,GI=R(()=>{"use strict";Qo();vx=class{static{o(this,"DefaultConfigurationProvider")}constructor(t){this._ready=new cs,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=t.ServiceRegistry}get ready(){return this._ready.promise}initialize(t){var r,n;this.workspaceConfig=(n=(r=t.capabilities.workspace)===null||r===void 0?void 0:r.configuration)!==null&&n!==void 0?n:!1}async initialized(t){if(this.workspaceConfig){if(t.register){let r=this.serviceRegistry.all;t.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(t.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=await t.fetchConfiguration(r);r.forEach((i,a)=>{this.updateSectionConfiguration(i.section,n[a])})}}this._ready.resolve()}updateConfiguration(t){t.settings&&Object.keys(t.settings).forEach(r=>{this.updateSectionConfiguration(r,t.settings[r])})}updateSectionConfiguration(t,r){this.settings[t]=r}async getConfiguration(t,r){await this.ready;let n=this.toSectionName(t);if(this.settings[n])return this.settings[n][r]}toSectionName(t){return`${t}`}}});var S0,VI=R(()=>{"use strict";(function(e){function t(r){return{dispose:o(async()=>await r(),"dispose")}}o(t,"create"),e.create=t})(S0||(S0={}))});var xx,UI=R(()=>{"use strict";Ko();VI();Fg();Qo();Ps();dx();Bg();xx=class{static{o(this,"DefaultDocumentBuilder")}constructor(t){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Vc,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Tn.Changed,this.langiumDocuments=t.workspace.LangiumDocuments,this.langiumDocumentFactory=t.workspace.LangiumDocumentFactory,this.indexManager=t.workspace.IndexManager,this.serviceRegistry=t.ServiceRegistry}async build(t,r={},n=kr.CancellationToken.None){var i,a;for(let s of t){let l=s.uri.toString();if(s.state===Tn.Validated){if(typeof r.validation=="boolean"&&r.validation)s.state=Tn.IndexedReferences,s.diagnostics=void 0,this.buildState.delete(l);else if(typeof r.validation=="object"){let u=this.buildState.get(l),h=(i=u?.result)===null||i===void 0?void 0:i.validationChecks;if(h){let d=((a=r.validation.categories)!==null&&a!==void 0?a:Vg.all).filter(p=>!h.includes(p));d.length>0&&(this.buildState.set(l,{completed:!1,options:{validation:Object.assign(Object.assign({},r.validation),{categories:d})},result:u.result}),s.state=Tn.IndexedReferences)}}}else this.buildState.delete(l)}this.currentState=Tn.Changed,await this.emitUpdate(t.map(s=>s.uri),[]),await this.buildDocuments(t,r,n)}async update(t,r,n=kr.CancellationToken.None){this.currentState=Tn.Changed;for(let s of r)this.langiumDocuments.deleteDocument(s),this.buildState.delete(s.toString()),this.indexManager.remove(s);for(let s of t){if(!this.langiumDocuments.invalidateDocument(s)){let u=this.langiumDocumentFactory.fromModel({$type:"INVALID"},s);u.state=Tn.Changed,this.langiumDocuments.addDocument(u)}this.buildState.delete(s.toString())}let i=en(t).concat(r).map(s=>s.toString()).toSet();this.langiumDocuments.all.filter(s=>!i.has(s.uri.toString())&&this.shouldRelink(s,i)).forEach(s=>{this.serviceRegistry.getServices(s.uri).references.Linker.unlink(s),s.state=Math.min(s.state,Tn.ComputedScopes),s.diagnostics=void 0}),await this.emitUpdate(t,r),await Vi(n);let a=this.langiumDocuments.all.filter(s=>{var l;return s.staten(t,r)))}shouldRelink(t,r){return t.references.some(n=>n.error!==void 0)?!0:this.indexManager.isAffected(t,r)}onUpdate(t){return this.updateListeners.push(t),S0.create(()=>{let r=this.updateListeners.indexOf(t);r>=0&&this.updateListeners.splice(r,1)})}async buildDocuments(t,r,n){this.prepareBuild(t,r),await this.runCancelable(t,Tn.Parsed,n,a=>this.langiumDocumentFactory.update(a,n)),await this.runCancelable(t,Tn.IndexedContent,n,a=>this.indexManager.updateContent(a,n)),await this.runCancelable(t,Tn.ComputedScopes,n,async a=>{let s=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.precomputedScopes=await s.computeLocalScopes(a,n)}),await this.runCancelable(t,Tn.Linked,n,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,n)),await this.runCancelable(t,Tn.IndexedReferences,n,a=>this.indexManager.updateReferences(a,n));let i=t.filter(a=>this.shouldValidate(a));await this.runCancelable(i,Tn.Validated,n,a=>this.validate(a,n));for(let a of t){let s=this.buildState.get(a.uri.toString());s&&(s.completed=!0)}}prepareBuild(t,r){for(let n of t){let i=n.uri.toString(),a=this.buildState.get(i);(!a||a.completed)&&this.buildState.set(i,{completed:!1,options:r,result:a?.result})}}async runCancelable(t,r,n,i){let a=t.filter(s=>s.state{this.buildPhaseListeners.delete(t,r)})}waitUntil(t,r,n){let i;if(r&&"path"in r?i=r:n=r,n??(n=kr.CancellationToken.None),i){let a=this.langiumDocuments.getDocument(i);if(a&&a.state>t)return Promise.resolve(i)}return this.currentState>=t?Promise.resolve(void 0):n.isCancellationRequested?Promise.reject($c):new Promise((a,s)=>{let l=this.onBuildPhase(t,()=>{if(l.dispose(),u.dispose(),i){let h=this.langiumDocuments.getDocument(i);a(h?.uri)}else a(void 0)}),u=n.onCancellationRequested(()=>{l.dispose(),u.dispose(),s($c)})})}async notifyBuildPhase(t,r,n){if(t.length===0)return;let i=this.buildPhaseListeners.get(r);for(let a of i)await Vi(n),await a(t,n)}shouldValidate(t){return!!this.getBuildOptions(t).validation}async validate(t,r){var n,i;let a=this.serviceRegistry.getServices(t.uri).validation.DocumentValidator,s=this.getBuildOptions(t).validation,l=typeof s=="object"?s:void 0,u=await a.validateDocument(t,l,r);t.diagnostics?t.diagnostics.push(...u):t.diagnostics=u;let h=this.buildState.get(t.uri.toString());if(h){(n=h.result)!==null&&n!==void 0||(h.result={});let f=(i=l?.categories)!==null&&i!==void 0?i:Vg.all;h.result.validationChecks?h.result.validationChecks.push(...f):h.result.validationChecks=[...f]}}getBuildOptions(t){var r,n;return(n=(r=this.buildState.get(t.uri.toString()))===null||r===void 0?void 0:r.options)!==null&&n!==void 0?n:{}}}});var bx,HI=R(()=>{"use strict";is();CE();Ko();Ps();Gc();bx=class{static{o(this,"DefaultIndexManager")}constructor(t){this.symbolIndex=new Map,this.symbolByTypeIndex=new C0,this.referenceIndex=new Map,this.documents=t.workspace.LangiumDocuments,this.serviceRegistry=t.ServiceRegistry,this.astReflection=t.AstReflection}findAllReferences(t,r){let n=$i(t).uri,i=[];return this.referenceIndex.forEach(a=>{a.forEach(s=>{us.equals(s.targetUri,n)&&s.targetPath===r&&i.push(s)})}),en(i)}allElements(t,r){let n=en(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,t)).flat()}getFileDescriptions(t,r){var n;return r?this.symbolByTypeIndex.get(t,r,()=>{var a;return((a=this.symbolIndex.get(t))!==null&&a!==void 0?a:[]).filter(l=>this.astReflection.isSubtype(l.type,r))}):(n=this.symbolIndex.get(t))!==null&&n!==void 0?n:[]}remove(t){let r=t.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r),this.referenceIndex.delete(r)}async updateContent(t,r=kr.CancellationToken.None){let i=await this.serviceRegistry.getServices(t.uri).references.ScopeComputation.computeExports(t,r),a=t.uri.toString();this.symbolIndex.set(a,i),this.symbolByTypeIndex.clear(a)}async updateReferences(t,r=kr.CancellationToken.None){let i=await this.serviceRegistry.getServices(t.uri).workspace.ReferenceDescriptionProvider.createDescriptions(t,r);this.referenceIndex.set(t.uri.toString(),i)}isAffected(t,r){let n=this.referenceIndex.get(t.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}}});var wx,WI=R(()=>{"use strict";Ko();Qo();Gc();wx=class{static{o(this,"DefaultWorkspaceManager")}constructor(t){this.initialBuildOptions={},this._ready=new cs,this.serviceRegistry=t.ServiceRegistry,this.langiumDocuments=t.workspace.LangiumDocuments,this.documentBuilder=t.workspace.DocumentBuilder,this.fileSystemProvider=t.workspace.FileSystemProvider,this.mutex=t.workspace.WorkspaceLock}get ready(){return this._ready.promise}initialize(t){var r;this.folders=(r=t.workspaceFolders)!==null&&r!==void 0?r:void 0}initialized(t){return this.mutex.write(r=>{var n;return this.initializeWorkspace((n=this.folders)!==null&&n!==void 0?n:[],r)})}async initializeWorkspace(t,r=kr.CancellationToken.None){let n=await this.performStartup(t);await Vi(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(t){let r=this.serviceRegistry.all.flatMap(a=>a.LanguageMetaData.fileExtensions),n=[],i=o(a=>{n.push(a),this.langiumDocuments.hasDocument(a.uri)||this.langiumDocuments.addDocument(a)},"collector");return await this.loadAdditionalDocuments(t,i),await Promise.all(t.map(a=>[a,this.getRootFolder(a)]).map(async a=>this.traverseFolder(...a,r,i))),this._ready.resolve(),n}loadAdditionalDocuments(t,r){return Promise.resolve()}getRootFolder(t){return zs.parse(t.uri)}async traverseFolder(t,r,n,i){let a=await this.fileSystemProvider.readDirectory(r);await Promise.all(a.map(async s=>{if(this.includeEntry(t,s,n)){if(s.isDirectory)await this.traverseFolder(t,s.uri,n,i);else if(s.isFile){let l=await this.langiumDocuments.getOrCreateDocument(s.uri);i(l)}}}))}includeEntry(t,r,n){let i=us.basename(r.uri);if(i.startsWith("."))return!1;if(r.isDirectory)return i!=="node_modules"&&i!=="out";if(r.isFile){let a=us.extname(r.uri);return n.includes(a)}return!1}}});function vct(e){return Array.isArray(e)&&(e.length===0||"name"in e[0])}function qI(e){return e&&"modes"in e&&"defaultMode"in e}function YI(e){return!vct(e)&&!qI(e)}var Tx,XI=R(()=>{"use strict";g0();Tx=class{static{o(this,"DefaultLexer")}constructor(t){let r=t.parser.TokenBuilder.buildTokens(t.Grammar,{caseInsensitive:t.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=YI(r)?Object.values(r):r;this.chevrotainLexer=new li(n,{positionTracking:"full"})}get definition(){return this.tokenTypes}tokenize(t){var r;let n=this.chevrotainLexer.tokenize(t);return{tokens:n.tokens,errors:n.errors,hidden:(r=n.groups.hidden)!==null&&r!==void 0?r:[]}}toTokenTypeDictionary(t){if(YI(t))return t;let r=qI(t)?Object.values(t.modes).flat():t,n={};return r.forEach(i=>n[i.name]=i),n}};o(vct,"isTokenTypeArray");o(qI,"isIMultiModeLexerDefinition");o(YI,"isTokenTypeDictionary")});function QI(e,t,r){let n,i;typeof e=="string"?(i=t,n=r):(i=e.range.start,n=t),i||(i=Xr.create(0,0));let a=wct(e),s=JI(n),l=pzt({lines:a,position:i,options:s});return xzt({index:0,tokens:l,position:i})}function ZI(e,t){let r=JI(t),n=wct(e);if(n.length===0)return!1;let i=n[0],a=n[n.length-1],s=r.start,l=r.end;return!!s?.exec(i)&&!!l?.exec(a)}function wct(e){let t="";return typeof e=="string"?t=e:t=e.text,t.split(VN)}function pzt(e){var t,r,n;let i=[],a=e.position.line,s=e.position.character;for(let l=0;l=f.length){if(i.length>0){let m=Xr.create(a,s);i.push({type:"break",content:"",range:Dr.create(m,m)})}}else{xct.lastIndex=d;let m=xct.exec(f);if(m){let g=m[0],y=m[1],v=Xr.create(a,s+d),x=Xr.create(a,s+d+g.length);i.push({type:"tag",content:y,range:Dr.create(v,x)}),d+=g.length,d=KI(f,d)}if(d0&&i[i.length-1].type==="break"?i.slice(0,-1):i}function mzt(e,t,r,n){let i=[];if(e.length===0){let a=Xr.create(r,n),s=Xr.create(r,n+t.length);i.push({type:"text",content:t,range:Dr.create(a,s)})}else{let a=0;for(let l of e){let u=l.index,h=t.substring(a,u);h.length>0&&i.push({type:"text",content:t.substring(a,u),range:Dr.create(Xr.create(r,a+n),Xr.create(r,u+n))});let f=h.length+1,d=l[1];if(i.push({type:"inline-tag",content:d,range:Dr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+d.length+n))}),f+=d.length,l.length===4){f+=l[2].length;let p=l[3];i.push({type:"text",content:p,range:Dr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+p.length+n))})}else i.push({type:"text",content:"",range:Dr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+n))});a=u+l[0].length}let s=t.substring(a);s.length>0&&i.push({type:"text",content:s,range:Dr.create(Xr.create(r,a+n),Xr.create(r,a+n+s.length))})}return i}function KI(e,t){let r=e.substring(t).match(gzt);return r?t+r.index:e.length}function vzt(e){let t=e.match(yzt);if(t&&typeof t.index=="number")return t.index}function xzt(e){var t,r,n,i;let a=Xr.create(e.position.line,e.position.character);if(e.tokens.length===0)return new LE([],Dr.create(a,a));let s=[];for(;e.index0){let u=KI(t,a);s=t.substring(u),t=t.substring(0,a)}return(e==="linkcode"||e==="link"&&r.link==="code")&&(s=`\`${s}\``),(i=(n=r.renderLink)===null||n===void 0?void 0:n.call(r,t,s))!==null&&i!==void 0?i:Ezt(t,s)}}function Ezt(e,t){try{return zs.parse(e,!0),`[${t}](${e})`}catch{return e}}function bct(e){return e.endsWith(` `)?` `:` `}var xct,dzt,gzt,yzt,LE,kx,Ex,DE,tO=R(()=>{"use strict";sI();ig();Gc();o(QI,"parseJSDoc");o(ZI,"isJSDoc");o(wct,"getLines");xct=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,dzt=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;o(pzt,"tokenize");o(mzt,"buildInlineTokens");gzt=/\S/,yzt=/\s*$/;o(KI,"skipWhitespace");o(vzt,"lastCharacter");o(xzt,"parseJSDocComment");o(bzt,"parseJSDocElement");o(wzt,"appendEmptyLine");o(Tct,"parseJSDocText");o(Tzt,"parseJSDocInline");o(kct,"parseJSDocTag");o(Ect,"parseJSDocLine");o(JI,"normalizeOptions");o(jI,"normalizeOption");LE=class{static{o(this,"JSDocCommentImpl")}constructor(t,r){this.elements=t,this.range=r}getTag(t){return this.getAllTags().find(r=>r.name===t)}getTags(t){return this.getAllTags().filter(r=>r.name===t)}getAllTags(){return this.elements.filter(t=>"name"in t)}toString(){let t="";for(let r of this.elements)if(t.length===0)t=r.toString();else{let n=r.toString();t+=bct(t)+n}return t.trim()}toMarkdown(t){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(t);else{let i=n.toMarkdown(t);r+=bct(r)+i}return r.trim()}},kx=class{static{o(this,"JSDocTagImpl")}constructor(t,r,n,i){this.name=t,this.content=r,this.inline=n,this.range=i}toString(){let t=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?t=`${t} ${r}`:this.content.inlines.length>1&&(t=`${t} ${r}`),this.inline?`{${t}}`:t}toMarkdown(t){var r,n;return(n=(r=t?.renderTag)===null||r===void 0?void 0:r.call(t,this))!==null&&n!==void 0?n:this.toMarkdownDefault(t)}toMarkdownDefault(t){let r=this.content.toMarkdown(t);if(this.inline){let a=kzt(this.name,r,t??{});if(typeof a=="string")return a}let n="";t?.tag==="italic"||t?.tag===void 0?n="*":t?.tag==="bold"?n="**":t?.tag==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} \u2014 ${r}`:this.content.inlines.length>1&&(i=`${i} ${r}`),this.inline?`{${i}}`:i}};o(kzt,"renderInlineTag");o(Ezt,"renderLinkDefault");Ex=class{static{o(this,"JSDocTextImpl")}constructor(t,r){this.inlines=t,this.range=r}toString(){let t="";for(let r=0;rn.range.start.line&&(t+=` `)}return t}toMarkdown(t){let r="";for(let n=0;ni.range.start.line&&(r+=` `)}return r}},DE=class{static{o(this,"JSDocLineImpl")}constructor(t,r){this.text=t,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};o(bct,"fillNewlines")});var Cx,eO=R(()=>{"use strict";is();tO();Cx=class{static{o(this,"JSDocDocumentationProvider")}constructor(t){this.indexManager=t.shared.workspace.IndexManager,this.commentProvider=t.documentation.CommentProvider}getDocumentation(t){let r=this.commentProvider.getComment(t);if(r&&ZI(r))return QI(r).toMarkdown({renderLink:o((i,a)=>this.documentationLinkRenderer(t,i,a),"renderLink"),renderTag:o(i=>this.documentationTagRenderer(t,i),"renderTag")})}documentationLinkRenderer(t,r,n){var i;let a=(i=this.findNameInPrecomputedScopes(t,r))!==null&&i!==void 0?i:this.findNameInGlobalScope(t,r);if(a&&a.nameSegment){let s=a.nameSegment.range.start.line+1,l=a.nameSegment.range.start.character+1,u=a.documentUri.with({fragment:`L${s},${l}`});return`[${n}](${u.toString()})`}else return}documentationTagRenderer(t,r){}findNameInPrecomputedScopes(t,r){let i=$i(t).precomputedScopes;if(!i)return;let a=t;do{let l=i.get(a).find(u=>u.name===r);if(l)return l;a=a.$container}while(a)}findNameInGlobalScope(t,r){return this.indexManager.allElements().find(i=>i.name===r)}}});var Sx,rO=R(()=>{"use strict";SE();Pl();Sx=class{static{o(this,"DefaultCommentProvider")}constructor(t){this.grammarConfig=()=>t.parser.GrammarConfig}getComment(t){var r;return PI(t)?t.$comment:(r=MR(t.$cstNode,this.grammarConfig().multilineCommentRules))===null||r===void 0?void 0:r.text}}});var ci={};var nO=R(()=>{"use strict";wr(ci,Qi(kI(),1))});var Ax,iO,aO,sO=R(()=>{"use strict";Qo();nO();Ax=class{static{o(this,"DefaultAsyncParser")}constructor(t){this.syncParser=t.parser.LangiumParser}parse(t){return Promise.resolve(this.syncParser.parse(t))}},iO=class{static{o(this,"AbstractThreadedAsyncParser")}constructor(t){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=t.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length{if(this.queue.length>0){let r=this.queue.shift();r&&(t.lock(),r.resolve(t))}}),this.workerPool.push(t)}}async parse(t,r){let n=await this.acquireParserWorker(r),i=new cs,a,s=r.onCancellationRequested(()=>{a=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(t).then(l=>{let u=this.hydrator.hydrate(l);i.resolve(u)}).catch(l=>{i.reject(l)}).finally(()=>{s.dispose(),clearTimeout(a)}),i.promise}terminateWorker(t){t.terminate();let r=this.workerPool.indexOf(t);r>=0&&this.workerPool.splice(r,1)}async acquireParserWorker(t){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new cs;return t.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject($c)}),this.queue.push(r),r.promise}},aO=class{static{o(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(t,r,n,i){this.onReadyEmitter=new ci.Emitter,this.deferred=new cs,this._ready=!0,this._parsing=!1,this.sendMessage=t,this._terminate=i,r(a=>{let s=a;this.deferred.resolve(s),this.unlock()}),n(a=>{this.deferred.reject(a),this.unlock()})}terminate(){this.deferred.reject($c),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(t){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new cs,this.sendMessage(t),this.deferred.promise}}});var _x,oO=R(()=>{"use strict";Ko();Qo();_x=class{static{o(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new kr.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(t){this.cancelWrite();let r=new kr.CancellationTokenSource;return this.previousTokenSource=r,this.enqueue(this.writeQueue,t,r.token)}read(t){return this.enqueue(this.readQueue,t)}enqueue(t,r,n){let i=new cs,a={action:r,deferred:i,cancellationToken:n??kr.CancellationToken.None};return t.push(a),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;let t=[];if(this.writeQueue.length>0)t.push(this.writeQueue.shift());else if(this.readQueue.length>0)t.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(t.map(async({action:r,deferred:n,cancellationToken:i})=>{try{let a=await Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){ff(a)?n.resolve(void 0):n.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}});var Lx,lO=R(()=>{"use strict";mE();Oc();Yo();is();Fg();Pl();Lx=class{static{o(this,"DefaultHydrator")}constructor(t){this.grammarElementIdMap=new E0,this.tokenTypeIdMap=new E0,this.grammar=t.Grammar,this.lexer=t.parser.Lexer,this.linker=t.references.Linker}dehydrate(t){return{lexerErrors:t.lexerErrors.map(r=>Object.assign({},r)),parserErrors:t.parserErrors.map(r=>Object.assign({},r)),value:this.dehydrateAstNode(t.value,this.createDehyrationContext(t.value))}}createDehyrationContext(t){let r=new Map,n=new Map;for(let i of jo(t))r.set(i,{});if(t.$cstNode)for(let i of Jd(t.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(t,r){let n=r.astNodes.get(t);n.$type=t.$type,n.$containerIndex=t.$containerIndex,n.$containerProperty=t.$containerProperty,t.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(t.$cstNode,r));for(let[i,a]of Object.entries(t))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)ri(l)?s.push(this.dehydrateAstNode(l,r)):ka(l)?s.push(this.dehydrateReference(l,r)):s.push(l)}else ri(a)?n[i]=this.dehydrateAstNode(a,r):ka(a)?n[i]=this.dehydrateReference(a,r):a!==void 0&&(n[i]=a);return n}dehydrateReference(t,r){let n={};return n.$refText=t.$refText,t.$refNode&&(n.$refNode=r.cstNodes.get(t.$refNode)),n}dehydrateCstNode(t,r){let n=r.cstNodes.get(t);return c2(t)?n.fullText=t.fullText:n.grammarSource=this.getGrammarElementId(t.grammarSource),n.hidden=t.hidden,n.astNode=r.astNodes.get(t.astNode),uo(t)?n.content=t.content.map(i=>this.dehydrateCstNode(i,r)):sf(t)&&(n.tokenType=t.tokenType.name,n.offset=t.offset,n.length=t.length,n.startLine=t.range.start.line,n.startColumn=t.range.start.character,n.endLine=t.range.end.line,n.endColumn=t.range.end.character),n}hydrate(t){let r=t.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:t.lexerErrors,parserErrors:t.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(t){let r=new Map,n=new Map;for(let a of jo(t))r.set(a,{});let i;if(t.$cstNode)for(let a of Jd(t.$cstNode)){let s;"fullText"in a?(s=new Rg(a.fullText),i=s):"content"in a?s=new b0:"tokenType"in a&&(s=this.hydrateCstLeafNode(a)),s&&(n.set(a,s),s.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(t,r){let n=r.astNodes.get(t);n.$type=t.$type,n.$containerIndex=t.$containerIndex,n.$containerProperty=t.$containerProperty,t.$cstNode&&(n.$cstNode=r.cstNodes.get(t.$cstNode));for(let[i,a]of Object.entries(t))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)ri(l)?s.push(this.setParent(this.hydrateAstNode(l,r),n)):ka(l)?s.push(this.hydrateReference(l,n,i,r)):s.push(l)}else ri(a)?n[i]=this.setParent(this.hydrateAstNode(a,r),n):ka(a)?n[i]=this.hydrateReference(a,n,i,r):a!==void 0&&(n[i]=a);return n}setParent(t,r){return t.$container=r,t}hydrateReference(t,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(t.$refNode),t.$refText)}hydrateCstNode(t,r,n=0){let i=r.cstNodes.get(t);if(typeof t.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(t.grammarSource)),i.astNode=r.astNodes.get(t.astNode),uo(i))for(let a of t.content){let s=this.hydrateCstNode(a,r,n++);i.content.push(s)}return i}hydrateCstLeafNode(t){let r=this.getTokenType(t.tokenType),n=t.offset,i=t.length,a=t.startLine,s=t.startColumn,l=t.endLine,u=t.endColumn,h=t.hidden;return new x0(n,i,{start:{line:a,character:s},end:{line:l,character:u}},r,h)}getTokenType(t){return this.lexer.definition[t]}getGrammarElementId(t){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(t)}getGrammarElement(t){this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap();let r=this.grammarElementIdMap.getKey(t);if(r)return r;throw new Error("Invalid grammar element id: "+t)}createGrammarElementIdMap(){let t=0;for(let r of jo(this.grammar))d2(r)&&this.grammarElementIdMap.set(r,t++)}}});function mo(e){return{documentation:{CommentProvider:o(t=>new Sx(t),"CommentProvider"),DocumentationProvider:o(t=>new Cx(t),"DocumentationProvider")},parser:{AsyncParser:o(t=>new Ax(t),"AsyncParser"),GrammarConfig:o(t=>iM(t),"GrammarConfig"),LangiumParser:o(t=>pI(t),"LangiumParser"),CompletionParser:o(t=>fI(t),"CompletionParser"),ValueConverter:o(()=>new k0,"ValueConverter"),TokenBuilder:o(()=>new T0,"TokenBuilder"),Lexer:o(t=>new Tx(t),"Lexer"),ParserErrorMessageProvider:o(()=>new Ng,"ParserErrorMessageProvider")},workspace:{AstNodeLocator:o(()=>new yx,"AstNodeLocator"),AstNodeDescriptionProvider:o(t=>new mx(t),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:o(t=>new gx(t),"ReferenceDescriptionProvider")},references:{Linker:o(t=>new nx(t),"Linker"),NameProvider:o(()=>new ix,"NameProvider"),ScopeProvider:o(t=>new cx(t),"ScopeProvider"),ScopeComputation:o(t=>new sx(t),"ScopeComputation"),References:o(t=>new ax(t),"References")},serializer:{Hydrator:o(t=>new Lx(t),"Hydrator"),JsonSerializer:o(t=>new ux(t),"JsonSerializer")},validation:{DocumentValidator:o(t=>new px(t),"DocumentValidator"),ValidationRegistry:o(t=>new fx(t),"ValidationRegistry")},shared:o(()=>e.shared,"shared")}}function go(e){return{ServiceRegistry:o(()=>new hx,"ServiceRegistry"),workspace:{LangiumDocuments:o(t=>new rx(t),"LangiumDocuments"),LangiumDocumentFactory:o(t=>new ex(t),"LangiumDocumentFactory"),DocumentBuilder:o(t=>new xx(t),"DocumentBuilder"),IndexManager:o(t=>new bx(t),"IndexManager"),WorkspaceManager:o(t=>new wx(t),"WorkspaceManager"),FileSystemProvider:o(t=>e.fileSystemProvider(t),"FileSystemProvider"),WorkspaceLock:o(()=>new _x,"WorkspaceLock"),ConfigurationProvider:o(t=>new vx(t),"ConfigurationProvider")}}}var cO=R(()=>{"use strict";aM();dI();mI();gI();yI();DI();RI();NI();MI();OI();SE();BI();FI();dx();zI();$I();GI();UI();Bg();HI();WI();XI();eO();rO();tx();sO();oO();lO();o(mo,"createDefaultCoreModule");o(go,"createDefaultSharedCoreModule")});function Ui(e,t,r,n,i,a,s,l,u){let h=[e,t,r,n,i,a,s,l,u].reduce(RE,{});return _ct(h)}function Act(e){if(e&&e[hO])for(let t of Object.values(e))Act(t);return e}function _ct(e,t){let r=new Proxy({},{deleteProperty:o(()=>!1,"deleteProperty"),get:o((n,i)=>Sct(n,i,e,t||r),"get"),getOwnPropertyDescriptor:o((n,i)=>(Sct(n,i,e,t||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:o((n,i)=>i in e,"has"),ownKeys:o(()=>[...Reflect.ownKeys(e),hO],"ownKeys")});return r[hO]=!0,r}function Sct(e,t,r,n){if(t in e){if(e[t]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:e[t]});if(e[t]===Cct)throw new Error('Cycle detected. Please make "'+String(t)+'" lazy. See https://langium.org/docs/configuration-services/#resolving-cyclic-dependencies');return e[t]}else if(t in r){let i=r[t];e[t]=Cct;try{e[t]=typeof i=="function"?i(n):_ct(i,n)}catch(a){throw e[t]=a instanceof Error?a:void 0,a}return e[t]}else return}function RE(e,t){if(t){for(let[r,n]of Object.entries(t))if(n!==void 0){let i=e[r];i!==null&&n!==null&&typeof i=="object"&&typeof n=="object"?e[r]=RE(i,n):e[r]=n}}return e}var uO,hO,Cct,fO=R(()=>{"use strict";(function(e){e.merge=(t,r)=>RE(RE({},t),r)})(uO||(uO={}));o(Ui,"inject");hO=Symbol("isProxy");o(Act,"eagerLoad");o(_ct,"_inject");Cct=Symbol();o(Sct,"_resolve");o(RE,"_merge")});var Lct=R(()=>{"use strict"});var Dct=R(()=>{"use strict";rO();eO();tO()});var Rct=R(()=>{"use strict"});var Nct=R(()=>{"use strict";aM();Rct()});var Mct=R(()=>{"use strict"});var Ict=R(()=>{"use strict";sO();dI();mE();mI();tx();XI();Mct();gI();yI()});var Oct=R(()=>{"use strict";DI();RI();NI();II();MI();OI()});var Pct=R(()=>{"use strict";lO();SE()});var NE,yo,dO=R(()=>{"use strict";NE=class{static{o(this,"EmptyFileSystemProvider")}readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}},yo={fileSystemProvider:o(()=>new NE,"fileSystemProvider")}});function Azt(){let e=Ui(go(yo),Szt),t=Ui(mo({shared:e}),Czt);return e.ServiceRegistry.register(t),t}function df(e){var t;let r=Azt(),n=r.serializer.JsonSerializer.deserialize(e);return r.shared.workspace.LangiumDocumentFactory.fromModel(n,zs.parse(`memory://${(t=n.name)!==null&&t!==void 0?t:"grammar"}.langium`)),n}var Czt,Szt,Bct=R(()=>{"use strict";cO();fO();Oc();dO();Gc();Czt={Grammar:o(()=>{},"Grammar"),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},Szt={AstReflection:o(()=>new eg,"AstReflection")};o(Azt,"createMinimalGrammarServices");o(df,"loadGrammarFromJson")});var Gr={};xr(Gr,{AstUtils:()=>gk,BiMap:()=>E0,Cancellation:()=>kr,ContextCache:()=>C0,CstUtils:()=>ik,DONE_RESULT:()=>ns,Deferred:()=>cs,Disposable:()=>S0,DisposableCache:()=>$g,DocumentCache:()=>EE,EMPTY_STREAM:()=>u2,ErrorWithLocation:()=>e0,GrammarUtils:()=>Tk,MultiMap:()=>Vc,OperationCancelled:()=>$c,Reduction:()=>Jm,RegExpUtils:()=>bk,SimpleCache:()=>lx,StreamImpl:()=>ho,TreeStreamImpl:()=>Ic,URI:()=>zs,UriUtils:()=>us,WorkspaceCache:()=>Gg,assertUnreachable:()=>of,delayNextTick:()=>AI,interruptAndCheck:()=>Vi,isOperationCancelled:()=>ff,loadGrammarFromJson:()=>df,setInterruptionPeriod:()=>cct,startCancelableOperation:()=>lct,stream:()=>en});var Fct=R(()=>{"use strict";CE();nO();wr(Gr,ci);Fg();VI();ak();Bct();Qo();Ps();Gc();is();Ko();Pl();zl();ig()});var zct=R(()=>{"use strict";FI();dx()});var $ct=R(()=>{"use strict";zI();$I();GI();UI();Bg();dO();HI();oO();WI()});var Ea={};xr(Ea,{AbstractAstReflection:()=>Qd,AbstractCstNode:()=>K2,AbstractLangiumParser:()=>Q2,AbstractParserErrorMessageProvider:()=>yE,AbstractThreadedAsyncParser:()=>iO,AstUtils:()=>gk,BiMap:()=>E0,Cancellation:()=>kr,CompositeCstNodeImpl:()=>b0,ContextCache:()=>C0,CstNodeBuilder:()=>j2,CstUtils:()=>ik,DONE_RESULT:()=>ns,DatatypeSymbol:()=>gE,DefaultAstNodeDescriptionProvider:()=>mx,DefaultAstNodeLocator:()=>yx,DefaultAsyncParser:()=>Ax,DefaultCommentProvider:()=>Sx,DefaultConfigurationProvider:()=>vx,DefaultDocumentBuilder:()=>xx,DefaultDocumentValidator:()=>px,DefaultHydrator:()=>Lx,DefaultIndexManager:()=>bx,DefaultJsonSerializer:()=>ux,DefaultLangiumDocumentFactory:()=>ex,DefaultLangiumDocuments:()=>rx,DefaultLexer:()=>Tx,DefaultLinker:()=>nx,DefaultNameProvider:()=>ix,DefaultReferenceDescriptionProvider:()=>gx,DefaultReferences:()=>ax,DefaultScopeComputation:()=>sx,DefaultScopeProvider:()=>cx,DefaultServiceRegistry:()=>hx,DefaultTokenBuilder:()=>T0,DefaultValueConverter:()=>k0,DefaultWorkspaceLock:()=>_x,DefaultWorkspaceManager:()=>wx,Deferred:()=>cs,Disposable:()=>S0,DisposableCache:()=>$g,DocumentCache:()=>EE,DocumentState:()=>Tn,DocumentValidator:()=>Xu,EMPTY_SCOPE:()=>fzt,EMPTY_STREAM:()=>u2,EmptyFileSystem:()=>yo,EmptyFileSystemProvider:()=>NE,ErrorWithLocation:()=>e0,GrammarAST:()=>m2,GrammarUtils:()=>Tk,JSDocDocumentationProvider:()=>Cx,LangiumCompletionParser:()=>J2,LangiumParser:()=>Z2,LangiumParserErrorMessageProvider:()=>Ng,LeafCstNodeImpl:()=>x0,MapScope:()=>ox,Module:()=>uO,MultiMap:()=>Vc,OperationCancelled:()=>$c,ParserWorker:()=>aO,Reduction:()=>Jm,RegExpUtils:()=>bk,RootCstNodeImpl:()=>Rg,SimpleCache:()=>lx,StreamImpl:()=>ho,StreamScope:()=>zg,TextDocument:()=>Og,TreeStreamImpl:()=>Ic,URI:()=>zs,UriUtils:()=>us,ValidationCategory:()=>Vg,ValidationRegistry:()=>fx,ValueConverter:()=>zc,WorkspaceCache:()=>Gg,assertUnreachable:()=>of,createCompletionParser:()=>fI,createDefaultCoreModule:()=>mo,createDefaultSharedCoreModule:()=>go,createGrammarConfig:()=>iM,createLangiumParser:()=>pI,delayNextTick:()=>AI,diagnosticData:()=>AE,eagerLoad:()=>Act,getDiagnosticRange:()=>yct,inject:()=>Ui,interruptAndCheck:()=>Vi,isAstNode:()=>ri,isAstNodeDescription:()=>LR,isAstNodeWithComment:()=>PI,isCompositeCstNode:()=>uo,isIMultiModeLexerDefinition:()=>qI,isJSDoc:()=>ZI,isLeafCstNode:()=>sf,isLinkingError:()=>Zd,isNamed:()=>mct,isOperationCancelled:()=>ff,isReference:()=>ka,isRootCstNode:()=>c2,isTokenTypeArray:()=>vct,isTokenTypeDictionary:()=>YI,loadGrammarFromJson:()=>df,parseJSDoc:()=>QI,prepareLangiumParser:()=>ect,setInterruptionPeriod:()=>cct,startCancelableOperation:()=>lct,stream:()=>en,toDiagnosticSeverity:()=>_E});var Uc=R(()=>{"use strict";cO();fO();BI();Lct();Yo();Dct();Nct();Ict();Oct();Pct();Fct();wr(Ea,Gr);zct();$ct();Oc()});function Xct(e){return Gl.isInstance(e,qct)}function jct(e){return Gl.isInstance(e,pO)}function Kct(e){return Gl.isInstance(e,mO)}function Qct(e){return Gl.isInstance(e,Rzt)}function Zct(e){return Gl.isInstance(e,gO)}function tut(e){return Gl.isInstance(e,Jct)}function eut(e){return Gl.isInstance(e,yO)}function nut(e){return Gl.isInstance(e,rut)}function aut(e){return Gl.isInstance(e,iut)}function out(e){return Gl.isInstance(e,sut)}function cut(e){return Gl.isInstance(e,lut)}var _zt,De,Yct,qct,pO,Lzt,Dzt,mO,Rzt,gO,Jct,yO,rut,iut,sut,lut,Nzt,uut,Gl,Gct,Mzt,Vct,Izt,Uct,Ozt,Hct,Pzt,Wct,Bzt,Fzt,zzt,$zt,Gzt,Vzt,Vl,vO,xO,bO,wO,TO,Uzt,Hzt,Wzt,Yzt,Ug,A0,Zo,qzt,Jo=R(()=>{"use strict";Uc();Uc();Uc();Uc();_zt=Object.defineProperty,De=o((e,t)=>_zt(e,"name",{value:t,configurable:!0}),"__name"),Yct="Statement",qct="Architecture";o(Xct,"isArchitecture");De(Xct,"isArchitecture");pO="Branch";o(jct,"isBranch");De(jct,"isBranch");Lzt="Checkout",Dzt="CherryPicking",mO="Commit";o(Kct,"isCommit");De(Kct,"isCommit");Rzt="Common";o(Qct,"isCommon");De(Qct,"isCommon");gO="GitGraph";o(Zct,"isGitGraph");De(Zct,"isGitGraph");Jct="Info";o(tut,"isInfo");De(tut,"isInfo");yO="Merge";o(eut,"isMerge");De(eut,"isMerge");rut="Packet";o(nut,"isPacket");De(nut,"isPacket");iut="PacketBlock";o(aut,"isPacketBlock");De(aut,"isPacketBlock");sut="Pie";o(out,"isPie");De(out,"isPie");lut="PieSection";o(cut,"isPieSection");De(cut,"isPieSection");Nzt="Direction",uut=class extends Qd{static{o(this,"MermaidAstReflection")}static{De(this,"MermaidAstReflection")}getAllTypes(){return["Architecture","Branch","Checkout","CherryPicking","Commit","Common","Direction","Edge","GitGraph","Group","Info","Junction","Merge","Packet","PacketBlock","Pie","PieSection","Service","Statement"]}computeIsSubtype(e,t){switch(e){case pO:case Lzt:case Dzt:case mO:case yO:return this.isSubtype(Yct,t);case Nzt:return this.isSubtype(gO,t);default:return!1}}getReferenceType(e){let t=`${e.container.$type}:${e.property}`;switch(t){default:throw new Error(`${t} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case"Architecture":return{name:"Architecture",properties:[{name:"accDescr"},{name:"accTitle"},{name:"edges",defaultValue:[]},{name:"groups",defaultValue:[]},{name:"junctions",defaultValue:[]},{name:"services",defaultValue:[]},{name:"title"}]};case"Branch":return{name:"Branch",properties:[{name:"name"},{name:"order"}]};case"Checkout":return{name:"Checkout",properties:[{name:"branch"}]};case"CherryPicking":return{name:"CherryPicking",properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case"Commit":return{name:"Commit",properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case"Common":return{name:"Common",properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case"Edge":return{name:"Edge",properties:[{name:"lhsDir"},{name:"lhsGroup",defaultValue:!1},{name:"lhsId"},{name:"lhsInto",defaultValue:!1},{name:"rhsDir"},{name:"rhsGroup",defaultValue:!1},{name:"rhsId"},{name:"rhsInto",defaultValue:!1},{name:"title"}]};case"GitGraph":return{name:"GitGraph",properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case"Group":return{name:"Group",properties:[{name:"icon"},{name:"id"},{name:"in"},{name:"title"}]};case"Info":return{name:"Info",properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case"Junction":return{name:"Junction",properties:[{name:"id"},{name:"in"}]};case"Merge":return{name:"Merge",properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case"Packet":return{name:"Packet",properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case"PacketBlock":return{name:"PacketBlock",properties:[{name:"end"},{name:"label"},{name:"start"}]};case"Pie":return{name:"Pie",properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case"PieSection":return{name:"PieSection",properties:[{name:"label"},{name:"value"}]};case"Service":return{name:"Service",properties:[{name:"icon"},{name:"iconText"},{name:"id"},{name:"in"},{name:"title"}]};case"Direction":return{name:"Direction",properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};default:return{name:e,properties:[]}}}},Gl=new uut,Mzt=De(()=>Gct??(Gct=df('{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","name":"Info","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"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@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"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":[]}],"types":[],"usedGrammars":[]}')),"InfoGrammar"),Izt=De(()=>Vct??(Vct=df(`{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","name":"Packet","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"packet-beta"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"?"},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"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":[]}],"types":[],"usedGrammars":[]}`)),"PacketGrammar"),Ozt=De(()=>Uct??(Uct=df('{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","name":"Pie","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"PIE_SECTION_LABEL","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]+\\"/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PIE_SECTION_VALUE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/(0|[1-9][0-9]*)(\\\\.[0-9]+)?/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"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":[]}],"types":[],"usedGrammars":[]}')),"PieGrammar"),Pzt=De(()=>Hct??(Hct=df('{"$type":"Grammar","isDeclared":true,"name":"Architecture","imports":[],"rules":[{"$type":"ParserRule","name":"Architecture","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","fragment":true,"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":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"LeftPort","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"RightPort","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Arrow","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"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@13"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_ID","definition":{"$type":"RegexToken","regex":"/[\\\\w]+/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TEXT_ICON","definition":{"$type":"RegexToken","regex":"/\\\\(\\"[^\\"]+\\"\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"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":[]}],"types":[],"usedGrammars":[]}')),"ArchitectureGrammar"),Bzt=De(()=>Wct??(Wct=df(`{"$type":"Grammar","isDeclared":true,"name":"GitGraph","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","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"ParserRule","name":"GitGraph","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"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@12"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","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":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$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"}]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$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@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"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@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$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@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$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@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"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@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$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@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$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@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+(?=\\\\s)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[]}`)),"GitGraphGrammar"),Fzt={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},zzt={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},$zt={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},Gzt={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},Vzt={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},Vl={AstReflection:De(()=>new uut,"AstReflection")},vO={Grammar:De(()=>Mzt(),"Grammar"),LanguageMetaData:De(()=>Fzt,"LanguageMetaData"),parser:{}},xO={Grammar:De(()=>Izt(),"Grammar"),LanguageMetaData:De(()=>zzt,"LanguageMetaData"),parser:{}},bO={Grammar:De(()=>Ozt(),"Grammar"),LanguageMetaData:De(()=>$zt,"LanguageMetaData"),parser:{}},wO={Grammar:De(()=>Pzt(),"Grammar"),LanguageMetaData:De(()=>Gzt,"LanguageMetaData"),parser:{}},TO={Grammar:De(()=>Bzt(),"Grammar"),LanguageMetaData:De(()=>Vzt,"LanguageMetaData"),parser:{}},Uzt=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,Hzt=/accTitle[\t ]*:([^\n\r]*)/,Wzt=/title([\t ][^\n\r]*|)/,Yzt={ACC_DESCR:Uzt,ACC_TITLE:Hzt,TITLE:Wzt},Ug=class extends k0{static{o(this,"AbstractMermaidValueConverter")}static{De(this,"AbstractMermaidValueConverter")}runConverter(e,t,r){let n=this.runCommonConverter(e,t,r);return n===void 0&&(n=this.runCustomConverter(e,t,r)),n===void 0?super.runConverter(e,t,r):n}runCommonConverter(e,t,r){let n=Yzt[e.name];if(n===void 0)return;let i=n.exec(t);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,` `)}}},A0=class extends Ug{static{o(this,"CommonValueConverter")}static{De(this,"CommonValueConverter")}runCustomConverter(e,t,r){}},Zo=class extends T0{static{o(this,"AbstractMermaidTokenBuilder")}static{De(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,r){let n=super.buildKeywordTokens(e,t,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},qzt=class extends Zo{static{o(this,"CommonTokenBuilder")}static{De(this,"CommonTokenBuilder")}}});function IE(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),TO,ME);return t.ServiceRegistry.register(r),{shared:t,GitGraph:r}}var Xzt,ME,kO=R(()=>{"use strict";Jo();Uc();Xzt=class extends Zo{static{o(this,"GitGraphTokenBuilder")}static{De(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},ME={parser:{TokenBuilder:De(()=>new Xzt,"TokenBuilder"),ValueConverter:De(()=>new A0,"ValueConverter")}};o(IE,"createGitGraphServices");De(IE,"createGitGraphServices")});function PE(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),vO,OE);return t.ServiceRegistry.register(r),{shared:t,Info:r}}var jzt,OE,EO=R(()=>{"use strict";Jo();Uc();jzt=class extends Zo{static{o(this,"InfoTokenBuilder")}static{De(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},OE={parser:{TokenBuilder:De(()=>new jzt,"TokenBuilder"),ValueConverter:De(()=>new A0,"ValueConverter")}};o(PE,"createInfoServices");De(PE,"createInfoServices")});function FE(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),xO,BE);return t.ServiceRegistry.register(r),{shared:t,Packet:r}}var Kzt,BE,CO=R(()=>{"use strict";Jo();Uc();Kzt=class extends Zo{static{o(this,"PacketTokenBuilder")}static{De(this,"PacketTokenBuilder")}constructor(){super(["packet-beta"])}},BE={parser:{TokenBuilder:De(()=>new Kzt,"TokenBuilder"),ValueConverter:De(()=>new A0,"ValueConverter")}};o(FE,"createPacketServices");De(FE,"createPacketServices")});function $E(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),bO,zE);return t.ServiceRegistry.register(r),{shared:t,Pie:r}}var Qzt,Zzt,zE,SO=R(()=>{"use strict";Jo();Uc();Qzt=class extends Zo{static{o(this,"PieTokenBuilder")}static{De(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},Zzt=class extends Ug{static{o(this,"PieValueConverter")}static{De(this,"PieValueConverter")}runCustomConverter(e,t,r){if(e.name==="PIE_SECTION_LABEL")return t.replace(/"/g,"").trim()}},zE={parser:{TokenBuilder:De(()=>new Qzt,"TokenBuilder"),ValueConverter:De(()=>new Zzt,"ValueConverter")}};o($E,"createPieServices");De($E,"createPieServices")});function VE(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),wO,GE);return t.ServiceRegistry.register(r),{shared:t,Architecture:r}}var Jzt,t$t,GE,AO=R(()=>{"use strict";Jo();Uc();Jzt=class extends Zo{static{o(this,"ArchitectureTokenBuilder")}static{De(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},t$t=class extends Ug{static{o(this,"ArchitectureValueConverter")}static{De(this,"ArchitectureValueConverter")}runCustomConverter(e,t,r){if(e.name==="ARCH_ICON")return t.replace(/[()]/g,"").trim();if(e.name==="ARCH_TEXT_ICON")return t.replace(/["()]/g,"");if(e.name==="ARCH_TITLE")return t.replace(/[[\]]/g,"").trim()}},GE={parser:{TokenBuilder:De(()=>new Jzt,"TokenBuilder"),ValueConverter:De(()=>new t$t,"ValueConverter")}};o(VE,"createArchitectureServices");De(VE,"createArchitectureServices")});var hut={};xr(hut,{InfoModule:()=>OE,createInfoServices:()=>PE});var fut=R(()=>{"use strict";EO();Jo()});var dut={};xr(dut,{PacketModule:()=>BE,createPacketServices:()=>FE});var put=R(()=>{"use strict";CO();Jo()});var mut={};xr(mut,{PieModule:()=>zE,createPieServices:()=>$E});var gut=R(()=>{"use strict";SO();Jo()});var yut={};xr(yut,{ArchitectureModule:()=>GE,createArchitectureServices:()=>VE});var vut=R(()=>{"use strict";AO();Jo()});var xut={};xr(xut,{GitGraphModule:()=>ME,createGitGraphServices:()=>IE});var but=R(()=>{"use strict";kO();Jo()});async function Ul(e,t){let r=e$t[e];if(!r)throw new Error(`Unknown diagram type: ${e}`);_0[e]||await r();let i=_0[e].parse(t);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new r$t(i);return i.value}var _0,e$t,r$t,Hg=R(()=>{"use strict";kO();EO();CO();SO();AO();Jo();_0={},e$t={info:De(async()=>{let{createInfoServices:e}=await Promise.resolve().then(()=>(fut(),hut)),t=e().Info.parser.LangiumParser;_0.info=t},"info"),packet:De(async()=>{let{createPacketServices:e}=await Promise.resolve().then(()=>(put(),dut)),t=e().Packet.parser.LangiumParser;_0.packet=t},"packet"),pie:De(async()=>{let{createPieServices:e}=await Promise.resolve().then(()=>(gut(),mut)),t=e().Pie.parser.LangiumParser;_0.pie=t},"pie"),architecture:De(async()=>{let{createArchitectureServices:e}=await Promise.resolve().then(()=>(vut(),yut)),t=e().Architecture.parser.LangiumParser;_0.architecture=t},"architecture"),gitGraph:De(async()=>{let{createGitGraphServices:e}=await Promise.resolve().then(()=>(but(),xut)),t=e().GitGraph.parser.LangiumParser;_0.gitGraph=t},"gitGraph")};o(Ul,"parse");De(Ul,"parse");r$t=class extends Error{static{o(this,"MermaidParseError")}constructor(e){let t=e.lexerErrors.map(n=>n.message).join(` `),r=e.parserErrors.map(n=>n.message).join(` `);super(`Parsing failed: ${t} ${r}`),this.result=e}static{De(this,"MermaidParseError")}}});function pf(e,t){e.accDescr&&t.setAccDescription?.(e.accDescr),e.accTitle&&t.setAccTitle?.(e.accTitle),e.title&&t.setDiagramTitle?.(e.title)}var Dx=R(()=>{"use strict";o(pf,"populateCommonDb")});var jr,UE=R(()=>{"use strict";jr={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4}});var mf,HE=R(()=>{"use strict";mf=class{constructor(t){this.init=t;this.records=this.init()}static{o(this,"ImperativeState")}reset(){this.records=this.init()}}});function _O(){return $9({length:7})}function i$t(e,t){let r=Object.create(null);return e.reduce((n,i)=>{let a=t(i);return r[a]||(r[a]=!0,n.push(i)),n},[])}function wut(e,t,r){let n=e.indexOf(t);n===-1?e.push(r):e.splice(n,1,r)}function kut(e){let t=e.reduce((i,a)=>i.seq>a.seq?i:a,e[0]),r="";e.forEach(function(i){i===t?r+=" *":r+=" |"});let n=[r,t.id,t.seq];for(let i in Te.records.branches)Te.records.branches.get(i)===t.id&&n.push(i);if(V.debug(n.join(" ")),t.parents&&t.parents.length==2&&t.parents[0]&&t.parents[1]){let i=Te.records.commits.get(t.parents[0]);wut(e,t,i),t.parents[1]&&e.push(Te.records.commits.get(t.parents[1]))}else{if(t.parents.length==0)return;if(t.parents[0]){let i=Te.records.commits.get(t.parents[0]);wut(e,t,i)}}e=i$t(e,i=>i.id),kut(e)}var n$t,L0,Te,a$t,s$t,o$t,l$t,c$t,u$t,h$t,Tut,f$t,d$t,p$t,m$t,g$t,Eut,y$t,v$t,x$t,WE,LO=R(()=>{"use strict";ce();_r();js();hr();Ci();UE();HE();hl();n$t=Er.gitGraph,L0=o(()=>Ss({...n$t,...Nr().gitGraph}),"getConfig"),Te=new mf(()=>{let e=L0(),t=e.mainBranchName,r=e.mainBranchOrder;return{mainBranchName:t,commits:new Map,head:null,branchConfig:new Map([[t,{name:t,order:r}]]),branches:new Map([[t,null]]),currBranch:t,direction:"LR",seq:0,options:{}}});o(_O,"getID");o(i$t,"uniqBy");a$t=o(function(e){Te.records.direction=e},"setDirection"),s$t=o(function(e){V.debug("options str",e),e=e?.trim(),e=e||"{}";try{Te.records.options=JSON.parse(e)}catch(t){V.error("error while parsing gitGraph options",t.message)}},"setOptions"),o$t=o(function(){return Te.records.options},"getOptions"),l$t=o(function(e){let t=e.msg,r=e.id,n=e.type,i=e.tags;V.info("commit",t,r,n,i),V.debug("Entering commit:",t,r,n,i);let a=L0();r=Yt.sanitizeText(r,a),t=Yt.sanitizeText(t,a),i=i?.map(l=>Yt.sanitizeText(l,a));let s={id:r||Te.records.seq+"-"+_O(),message:t,seq:Te.records.seq++,type:n??jr.NORMAL,tags:i??[],parents:Te.records.head==null?[]:[Te.records.head.id],branch:Te.records.currBranch};Te.records.head=s,V.info("main branch",a.mainBranchName),Te.records.commits.set(s.id,s),Te.records.branches.set(Te.records.currBranch,s.id),V.debug("in pushCommit "+s.id)},"commit"),c$t=o(function(e){let t=e.name,r=e.order;if(t=Yt.sanitizeText(t,L0()),Te.records.branches.has(t))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${t}")`);Te.records.branches.set(t,Te.records.head!=null?Te.records.head.id:null),Te.records.branchConfig.set(t,{name:t,order:r}),Tut(t),V.debug("in createBranch")},"branch"),u$t=o(e=>{let t=e.branch,r=e.id,n=e.type,i=e.tags,a=L0();t=Yt.sanitizeText(t,a),r&&(r=Yt.sanitizeText(r,a));let s=Te.records.branches.get(Te.records.currBranch),l=Te.records.branches.get(t),u=s?Te.records.commits.get(s):void 0,h=l?Te.records.commits.get(l):void 0;if(u&&h&&u.branch===t)throw new Error(`Cannot merge branch '${t}' into itself.`);if(Te.records.currBranch===t){let p=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:["branch abc"]},p}if(u===void 0||!u){let p=new Error(`Incorrect usage of "merge". Current branch (${Te.records.currBranch})has no commits`);throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:["commit"]},p}if(!Te.records.branches.has(t)){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") does not exist");throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:[`branch ${t}`]},p}if(h===void 0||!h){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") has no commits");throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:['"commit"']},p}if(u===h){let p=new Error('Incorrect usage of "merge". Both branches have same head');throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:["branch abc"]},p}if(r&&Te.records.commits.has(r)){let p=new Error('Incorrect usage of "merge". Commit with id:'+r+" already exists, use different custom Id");throw p.hash={text:`merge ${t} ${r} ${n} ${i?.join(" ")}`,token:`merge ${t} ${r} ${n} ${i?.join(" ")}`,expected:[`merge ${t} ${r}_UNIQUE ${n} ${i?.join(" ")}`]},p}let f=l||"",d={id:r||`${Te.records.seq}-${_O()}`,message:`merged branch ${t} into ${Te.records.currBranch}`,seq:Te.records.seq++,parents:Te.records.head==null?[]:[Te.records.head.id,f],branch:Te.records.currBranch,type:jr.MERGE,customType:n,customId:!!r,tags:i??[]};Te.records.head=d,Te.records.commits.set(d.id,d),Te.records.branches.set(Te.records.currBranch,d.id),V.debug(Te.records.branches),V.debug("in mergeBranch")},"merge"),h$t=o(function(e){let t=e.id,r=e.targetId,n=e.tags,i=e.parent;V.debug("Entering cherryPick:",t,r,n);let a=L0();if(t=Yt.sanitizeText(t,a),r=Yt.sanitizeText(r,a),n=n?.map(u=>Yt.sanitizeText(u,a)),i=Yt.sanitizeText(i,a),!t||!Te.records.commits.has(t)){let u=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw u.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},u}let s=Te.records.commits.get(t);if(s===void 0||!s)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(i&&!(Array.isArray(s.parents)&&s.parents.includes(i)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let l=s.branch;if(s.type===jr.MERGE&&!i)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!r||!Te.records.commits.has(r)){if(l===Te.records.currBranch){let d=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw d.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},d}let u=Te.records.branches.get(Te.records.currBranch);if(u===void 0||!u){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Te.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},d}let h=Te.records.commits.get(u);if(h===void 0||!h){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Te.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},d}let f={id:Te.records.seq+"-"+_O(),message:`cherry-picked ${s?.message} into ${Te.records.currBranch}`,seq:Te.records.seq++,parents:Te.records.head==null?[]:[Te.records.head.id,s.id],branch:Te.records.currBranch,type:jr.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===jr.MERGE?`|parent:${i}`:""}`]};Te.records.head=f,Te.records.commits.set(f.id,f),Te.records.branches.set(Te.records.currBranch,f.id),V.debug(Te.records.branches),V.debug("in cherryPick")}},"cherryPick"),Tut=o(function(e){if(e=Yt.sanitizeText(e,L0()),Te.records.branches.has(e)){Te.records.currBranch=e;let t=Te.records.branches.get(Te.records.currBranch);t===void 0||!t?Te.records.head=null:Te.records.head=Te.records.commits.get(t)??null}else{let t=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${e}")`);throw t.hash={text:`checkout ${e}`,token:`checkout ${e}`,expected:[`branch ${e}`]},t}},"checkout");o(wut,"upsert");o(kut,"prettyPrintCommitHistory");f$t=o(function(){V.debug(Te.records.commits);let e=Eut()[0];kut([e])},"prettyPrint"),d$t=o(function(){Te.reset(),Ar()},"clear"),p$t=o(function(){return[...Te.records.branchConfig.values()].map((t,r)=>t.order!==null&&t.order!==void 0?t:{...t,order:parseFloat(`0.${r}`)}).sort((t,r)=>(t.order??0)-(r.order??0)).map(({name:t})=>({name:t}))},"getBranchesAsObjArray"),m$t=o(function(){return Te.records.branches},"getBranches"),g$t=o(function(){return Te.records.commits},"getCommits"),Eut=o(function(){let e=[...Te.records.commits.values()];return e.forEach(function(t){V.debug(t.id)}),e.sort((t,r)=>t.seq-r.seq),e},"getCommitsArray"),y$t=o(function(){return Te.records.currBranch},"getCurrentBranch"),v$t=o(function(){return Te.records.direction},"getDirection"),x$t=o(function(){return Te.records.head},"getHead"),WE={commitType:jr,getConfig:L0,setDirection:a$t,setOptions:s$t,getOptions:o$t,commit:l$t,branch:c$t,merge:u$t,cherryPick:h$t,checkout:Tut,prettyPrint:f$t,clear:d$t,getBranchesAsObjArray:p$t,getBranches:m$t,getCommits:g$t,getCommitsArray:Eut,getCurrentBranch:y$t,getDirection:v$t,getHead:x$t,setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,setAccDescription:Fr,setDiagramTitle:cn,getDiagramTitle:Jr}});var b$t,w$t,T$t,k$t,E$t,C$t,S$t,Cut,Sut=R(()=>{"use strict";Hg();ce();Dx();LO();UE();b$t=o((e,t)=>{pf(e,t),e.dir&&t.setDirection(e.dir);for(let r of e.statements)w$t(r,t)},"populate"),w$t=o((e,t)=>{let n={Commit:o(i=>t.commit(T$t(i)),"Commit"),Branch:o(i=>t.branch(k$t(i)),"Branch"),Merge:o(i=>t.merge(E$t(i)),"Merge"),Checkout:o(i=>t.checkout(C$t(i)),"Checkout"),CherryPicking:o(i=>t.cherryPick(S$t(i)),"CherryPicking")}[e.$type];n?n(e):V.error(`Unknown statement type: ${e.$type}`)},"parseStatement"),T$t=o(e=>({id:e.id,msg:e.message??"",type:e.type!==void 0?jr[e.type]:jr.NORMAL,tags:e.tags??void 0}),"parseCommit"),k$t=o(e=>({name:e.name,order:e.order??0}),"parseBranch"),E$t=o(e=>({branch:e.branch,id:e.id??"",type:e.type!==void 0?jr[e.type]:void 0,tags:e.tags??void 0}),"parseMerge"),C$t=o(e=>e.branch,"parseCheckout"),S$t=o(e=>({id:e.id,targetId:"",tags:e.tags?.length===0?void 0:e.tags,parent:e.parent}),"parseCherryPicking"),Cut={parse:o(async e=>{let t=await Ul("gitGraph",e);V.debug(t),b$t(t,WE)},"parse")}});var A$t,tl,yf,vf,Hc,ju,D0,$s,Gs,YE,Rx,qE,gf,Rr,_$t,_ut,Lut,L$t,D$t,R$t,N$t,M$t,I$t,O$t,P$t,B$t,F$t,z$t,$$t,Aut,G$t,Nx,V$t,U$t,H$t,W$t,Y$t,Dut,Rut=R(()=>{"use strict";ur();Ue();ce();_r();UE();A$t=pt(),tl=A$t?.gitGraph,yf=10,vf=40,Hc=4,ju=2,D0=8,$s=new Map,Gs=new Map,YE=30,Rx=new Map,qE=[],gf=0,Rr="LR",_$t=o(()=>{$s.clear(),Gs.clear(),Rx.clear(),gf=0,qE=[],Rr="LR"},"clear"),_ut=o(e=>{let t=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof e=="string"?e.split(/\\n|\n|/gi):e).forEach(n=>{let i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),i.setAttribute("class","row"),i.textContent=n.trim(),t.appendChild(i)}),t},"drawText"),Lut=o(e=>{let t,r,n;return Rr==="BT"?(r=o((i,a)=>i<=a,"comparisonFunc"),n=1/0):(r=o((i,a)=>i>=a,"comparisonFunc"),n=0),e.forEach(i=>{let a=Rr==="TB"||Rr=="BT"?Gs.get(i)?.y:Gs.get(i)?.x;a!==void 0&&r(a,n)&&(t=i,n=a)}),t},"findClosestParent"),L$t=o(e=>{let t="",r=1/0;return e.forEach(n=>{let i=Gs.get(n).y;i<=r&&(t=n,r=i)}),t||void 0},"findClosestParentBT"),D$t=o((e,t,r)=>{let n=r,i=r,a=[];e.forEach(s=>{let l=t.get(s);if(!l)throw new Error(`Commit not found for key ${s}`);l.parents.length?(n=N$t(l),i=Math.max(n,i)):a.push(l),M$t(l,n)}),n=i,a.forEach(s=>{I$t(s,n,r)}),e.forEach(s=>{let l=t.get(s);if(l?.parents.length){let u=L$t(l.parents);n=Gs.get(u).y-vf,n<=i&&(i=n);let h=$s.get(l.branch).pos,f=n-yf;Gs.set(l.id,{x:h,y:f})}})},"setParallelBTPos"),R$t=o(e=>{let t=Lut(e.parents.filter(n=>n!==null));if(!t)throw new Error(`Closest parent not found for commit ${e.id}`);let r=Gs.get(t)?.y;if(r===void 0)throw new Error(`Closest parent position not found for commit ${e.id}`);return r},"findClosestParentPos"),N$t=o(e=>R$t(e)+vf,"calculateCommitPosition"),M$t=o((e,t)=>{let r=$s.get(e.branch);if(!r)throw new Error(`Branch not found for commit ${e.id}`);let n=r.pos,i=t+yf;return Gs.set(e.id,{x:n,y:i}),{x:n,y:i}},"setCommitPosition"),I$t=o((e,t,r)=>{let n=$s.get(e.branch);if(!n)throw new Error(`Branch not found for commit ${e.id}`);let i=t+r,a=n.pos;Gs.set(e.id,{x:a,y:i})},"setRootPosition"),O$t=o((e,t,r,n,i,a)=>{if(a===jr.HIGHLIGHT)e.append("rect").attr("x",r.x-10).attr("y",r.y-10).attr("width",20).attr("height",20).attr("class",`commit ${t.id} commit-highlight${i%D0} ${n}-outer`),e.append("rect").attr("x",r.x-6).attr("y",r.y-6).attr("width",12).attr("height",12).attr("class",`commit ${t.id} commit${i%D0} ${n}-inner`);else if(a===jr.CHERRY_PICK)e.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",10).attr("class",`commit ${t.id} ${n}`),e.append("circle").attr("cx",r.x-3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${t.id} ${n}`),e.append("circle").attr("cx",r.x+3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${t.id} ${n}`),e.append("line").attr("x1",r.x+3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${t.id} ${n}`),e.append("line").attr("x1",r.x-3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${t.id} ${n}`);else{let s=e.append("circle");if(s.attr("cx",r.x),s.attr("cy",r.y),s.attr("r",t.type===jr.MERGE?9:10),s.attr("class",`commit ${t.id} commit${i%D0}`),a===jr.MERGE){let l=e.append("circle");l.attr("cx",r.x),l.attr("cy",r.y),l.attr("r",6),l.attr("class",`commit ${n} ${t.id} commit${i%D0}`)}a===jr.REVERSE&&e.append("path").attr("d",`M ${r.x-5},${r.y-5}L${r.x+5},${r.y+5}M${r.x-5},${r.y+5}L${r.x+5},${r.y-5}`).attr("class",`commit ${n} ${t.id} commit${i%D0}`)}},"drawCommitBullet"),P$t=o((e,t,r,n)=>{if(t.type!==jr.CHERRY_PICK&&(t.customId&&t.type===jr.MERGE||t.type!==jr.MERGE)&&tl?.showCommitLabel){let i=e.append("g"),a=i.insert("rect").attr("class","commit-label-bkg"),s=i.append("text").attr("x",n).attr("y",r.y+25).attr("class","commit-label").text(t.id),l=s.node()?.getBBox();if(l&&(a.attr("x",r.posWithOffset-l.width/2-ju).attr("y",r.y+13.5).attr("width",l.width+2*ju).attr("height",l.height+2*ju),Rr==="TB"||Rr==="BT"?(a.attr("x",r.x-(l.width+4*Hc+5)).attr("y",r.y-12),s.attr("x",r.x-(l.width+4*Hc)).attr("y",r.y+l.height-12)):s.attr("x",r.posWithOffset-l.width/2),tl.rotateCommitLabel))if(Rr==="TB"||Rr==="BT")s.attr("transform","rotate(-45, "+r.x+", "+r.y+")"),a.attr("transform","rotate(-45, "+r.x+", "+r.y+")");else{let u=-7.5-(l.width+10)/25*9.5,h=10+l.width/25*8.5;i.attr("transform","translate("+u+", "+h+") rotate(-45, "+n+", "+r.y+")")}}},"drawCommitLabel"),B$t=o((e,t,r,n)=>{if(t.tags.length>0){let i=0,a=0,s=0,l=[];for(let u of t.tags.reverse()){let h=e.insert("polygon"),f=e.append("circle"),d=e.append("text").attr("y",r.y-16-i).attr("class","tag-label").text(u),p=d.node()?.getBBox();if(!p)throw new Error("Tag bbox not found");a=Math.max(a,p.width),s=Math.max(s,p.height),d.attr("x",r.posWithOffset-p.width/2),l.push({tag:d,hole:f,rect:h,yOffset:i}),i+=20}for(let{tag:u,hole:h,rect:f,yOffset:d}of l){let p=s/2,m=r.y-19.2-d;if(f.attr("class","tag-label-bkg").attr("points",` ${n-a/2-Hc/2},${m+ju} ${n-a/2-Hc/2},${m-ju} ${r.posWithOffset-a/2-Hc},${m-p-ju} ${r.posWithOffset+a/2+Hc},${m-p-ju} ${r.posWithOffset+a/2+Hc},${m+p+ju} ${r.posWithOffset-a/2-Hc},${m+p+ju}`),h.attr("cy",m).attr("cx",n-a/2+Hc/2).attr("r",1.5).attr("class","tag-hole"),Rr==="TB"||Rr==="BT"){let g=n+d;f.attr("class","tag-label-bkg").attr("points",` ${r.x},${g+2} ${r.x},${g-2} ${r.x+yf},${g-p-2} ${r.x+yf+a+4},${g-p-2} ${r.x+yf+a+4},${g+p+2} ${r.x+yf},${g+p+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),h.attr("cx",r.x+Hc/2).attr("cy",g).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),u.attr("x",r.x+5).attr("y",g+3).attr("transform","translate(14,14) rotate(45, "+r.x+","+n+")")}}}},"drawCommitTags"),F$t=o(e=>{switch(e.customType??e.type){case jr.NORMAL:return"commit-normal";case jr.REVERSE:return"commit-reverse";case jr.HIGHLIGHT:return"commit-highlight";case jr.MERGE:return"commit-merge";case jr.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),z$t=o((e,t,r,n)=>{let i={x:0,y:0};if(e.parents.length>0){let a=Lut(e.parents);if(a){let s=n.get(a)??i;return t==="TB"?s.y+vf:t==="BT"?(n.get(e.id)??i).y-vf:s.x+vf}}else return t==="TB"?YE:t==="BT"?(n.get(e.id)??i).y-vf:0;return 0},"calculatePosition"),$$t=o((e,t,r)=>{let n=Rr==="BT"&&r?t:t+yf,i=Rr==="TB"||Rr==="BT"?n:$s.get(e.branch)?.pos,a=Rr==="TB"||Rr==="BT"?$s.get(e.branch)?.pos:n;if(a===void 0||i===void 0)throw new Error(`Position were undefined for commit ${e.id}`);return{x:a,y:i,posWithOffset:n}},"getCommitPosition"),Aut=o((e,t,r)=>{if(!tl)throw new Error("GitGraph config not found");let n=e.append("g").attr("class","commit-bullets"),i=e.append("g").attr("class","commit-labels"),a=Rr==="TB"||Rr==="BT"?YE:0,s=[...t.keys()],l=tl?.parallelCommits??!1,u=o((f,d)=>{let p=t.get(f)?.seq,m=t.get(d)?.seq;return p!==void 0&&m!==void 0?p-m:0},"sortKeys"),h=s.sort(u);Rr==="BT"&&(l&&D$t(h,t,a),h=h.reverse()),h.forEach(f=>{let d=t.get(f);if(!d)throw new Error(`Commit not found for key ${f}`);l&&(a=z$t(d,Rr,a,Gs));let p=$$t(d,a,l);if(r){let m=F$t(d),g=d.customType??d.type,y=$s.get(d.branch)?.index??0;O$t(n,d,p,m,y,g),P$t(i,d,p,a),B$t(i,d,p,a)}Rr==="TB"||Rr==="BT"?Gs.set(d.id,{x:p.x,y:p.posWithOffset}):Gs.set(d.id,{x:p.posWithOffset,y:p.y}),a=Rr==="BT"&&l?a+vf:a+vf+yf,a>gf&&(gf=a)})},"drawCommits"),G$t=o((e,t,r,n,i)=>{let s=(Rr==="TB"||Rr==="BT"?r.xh.branch===s,"isOnBranchToGetCurve"),u=o(h=>h.seq>e.seq&&h.sequ(h)&&l(h))},"shouldRerouteArrow"),Nx=o((e,t,r=0)=>{let n=e+Math.abs(e-t)/2;if(r>5)return n;if(qE.every(s=>Math.abs(s-n)>=10))return qE.push(n),n;let a=Math.abs(e-t);return Nx(e,t-a/5,r+1)},"findLane"),V$t=o((e,t,r,n)=>{let i=Gs.get(t.id),a=Gs.get(r.id);if(i===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${t.id} and ${r.id}`);let s=G$t(t,r,i,a,n),l="",u="",h=0,f=0,d=$s.get(r.branch)?.index;r.type===jr.MERGE&&t.id!==r.parents[0]&&(d=$s.get(t.branch)?.index);let p;if(s){l="A 10 10, 0, 0, 0,",u="A 10 10, 0, 0, 1,",h=10,f=10;let m=i.ya.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===jr.MERGE&&t.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y-h} ${u} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x+h} ${i.y} ${l} ${a.x} ${i.y+f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):Rr==="BT"?(i.xa.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===jr.MERGE&&t.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${l} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):(i.ya.y&&(r.type===jr.MERGE&&t.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${u} ${i.x+f} ${a.y} L ${a.x} ${a.y}`),i.y===a.y&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`));if(p===void 0)throw new Error("Line definition not found");e.append("path").attr("d",p).attr("class","arrow arrow"+d%D0)},"drawArrow"),U$t=o((e,t)=>{let r=e.append("g").attr("class","commit-arrows");[...t.keys()].forEach(n=>{let i=t.get(n);i.parents&&i.parents.length>0&&i.parents.forEach(a=>{V$t(r,t.get(a),i,t)})})},"drawArrows"),H$t=o((e,t)=>{let r=e.append("g");t.forEach((n,i)=>{let a=i%D0,s=$s.get(n.name)?.pos;if(s===void 0)throw new Error(`Position not found for branch ${n.name}`);let l=r.append("line");l.attr("x1",0),l.attr("y1",s),l.attr("x2",gf),l.attr("y2",s),l.attr("class","branch branch"+a),Rr==="TB"?(l.attr("y1",YE),l.attr("x1",s),l.attr("y2",gf),l.attr("x2",s)):Rr==="BT"&&(l.attr("y1",gf),l.attr("x1",s),l.attr("y2",YE),l.attr("x2",s)),qE.push(s);let u=n.name,h=_ut(u),f=r.insert("rect"),p=r.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+a);p.node().appendChild(h);let m=h.getBBox();f.attr("class","branchLabelBkg label"+a).attr("rx",4).attr("ry",4).attr("x",-m.width-4-(tl?.rotateCommitLabel===!0?30:0)).attr("y",-m.height/2+8).attr("width",m.width+18).attr("height",m.height+4),p.attr("transform","translate("+(-m.width-14-(tl?.rotateCommitLabel===!0?30:0))+", "+(s-m.height/2-1)+")"),Rr==="TB"?(f.attr("x",s-m.width/2-10).attr("y",0),p.attr("transform","translate("+(s-m.width/2-5)+", 0)")):Rr==="BT"?(f.attr("x",s-m.width/2-10).attr("y",gf),p.attr("transform","translate("+(s-m.width/2-5)+", "+gf+")")):f.attr("transform","translate(-19, "+(s-m.height/2)+")")})},"drawBranches"),W$t=o(function(e,t,r,n,i){return $s.set(e,{pos:t,index:r}),t+=50+(i?40:0)+(Rr==="TB"||Rr==="BT"?n.width/2:0),t},"setBranchPosition"),Y$t=o(function(e,t,r,n){if(_$t(),V.debug("in gitgraph renderer",e+` `,"id:",t,r),!tl)throw new Error("GitGraph config not found");let i=tl.rotateCommitLabel??!1,a=n.db;Rx=a.getCommits();let s=a.getBranchesAsObjArray();Rr=a.getDirection();let l=Gt(`[id="${t}"]`),u=0;s.forEach((h,f)=>{let d=_ut(h.name),p=l.append("g"),m=p.insert("g").attr("class","branchLabel"),g=m.insert("g").attr("class","label branch-label");g.node()?.appendChild(d);let y=d.getBBox();u=W$t(h.name,u,f,y,i),g.remove(),m.remove(),p.remove()}),Aut(l,Rx,!1),tl.showBranches&&H$t(l,s),U$t(l,Rx),Aut(l,Rx,!0),Oe.insertTitle(l,"gitTitleText",tl.titleTopMargin??0,a.getDiagramTitle()),Y7(void 0,l,tl.diagramPadding,tl.useMaxWidth)},"draw"),Dut={draw:Y$t}});var q$t,Nut,Mut=R(()=>{"use strict";q$t=o(e=>` .commit-id, .commit-msg, .branch-label { fill: lightgrey; color: lightgrey; font-family: 'trebuchet ms', verdana, arial, sans-serif; font-family: var(--mermaid-font-family); } ${[0,1,2,3,4,5,6,7].map(t=>` .branch-label${t} { fill: ${e["gitBranchLabel"+t]}; } .commit${t} { stroke: ${e["git"+t]}; fill: ${e["git"+t]}; } .commit-highlight${t} { stroke: ${e["gitInv"+t]}; fill: ${e["gitInv"+t]}; } .label${t} { fill: ${e["git"+t]}; } .arrow${t} { stroke: ${e["git"+t]}; } `).join(` `)} .branch { stroke-width: 1; stroke: ${e.lineColor}; stroke-dasharray: 2; } .commit-label { font-size: ${e.commitLabelFontSize}; fill: ${e.commitLabelColor};} .commit-label-bkg { font-size: ${e.commitLabelFontSize}; fill: ${e.commitLabelBackground}; opacity: 0.5; } .tag-label { font-size: ${e.tagLabelFontSize}; fill: ${e.tagLabelColor};} .tag-label-bkg { fill: ${e.tagLabelBackground}; stroke: ${e.tagLabelBorder}; } .tag-hole { fill: ${e.textColor}; } .commit-merge { stroke: ${e.primaryColor}; fill: ${e.primaryColor}; } .commit-reverse { stroke: ${e.primaryColor}; fill: ${e.primaryColor}; stroke-width: 3; } .commit-highlight-outer { } .commit-highlight-inner { stroke: ${e.primaryColor}; fill: ${e.primaryColor}; } .arrow { stroke-width: 8; stroke-linecap: round; fill: none} .gitTitleText { text-anchor: middle; font-size: 18px; fill: ${e.textColor}; } `,"getStyles"),Nut=q$t});var Iut={};xr(Iut,{diagram:()=>X$t});var X$t,Out=R(()=>{"use strict";Sut();LO();Rut();Mut();X$t={parser:Cut,db:WE,renderer:Dut,styles:Nut}});var DO,Fut,zut=R(()=>{"use strict";DO=function(){var e=o(function(I,C,O,D){for(O=O||{},D=I.length;D--;O[I[D]]=C);return O},"o"),t=[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],r=[1,26],n=[1,27],i=[1,28],a=[1,29],s=[1,30],l=[1,31],u=[1,32],h=[1,33],f=[1,34],d=[1,9],p=[1,10],m=[1,11],g=[1,12],y=[1,13],v=[1,14],x=[1,15],b=[1,16],w=[1,19],S=[1,20],T=[1,21],E=[1,22],_=[1,23],A=[1,25],L=[1,35],M={trace:o(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:o(function(C,O,D,P,F,B,G){var z=B.length-1;switch(F){case 1:return B[z-1];case 2:this.$=[];break;case 3:B[z-1].push(B[z]),this.$=B[z-1];break;case 4:case 5:this.$=B[z];break;case 6:case 7:this.$=[];break;case 8:P.setWeekday("monday");break;case 9:P.setWeekday("tuesday");break;case 10:P.setWeekday("wednesday");break;case 11:P.setWeekday("thursday");break;case 12:P.setWeekday("friday");break;case 13:P.setWeekday("saturday");break;case 14:P.setWeekday("sunday");break;case 15:P.setWeekend("friday");break;case 16:P.setWeekend("saturday");break;case 17:P.setDateFormat(B[z].substr(11)),this.$=B[z].substr(11);break;case 18:P.enableInclusiveEndDates(),this.$=B[z].substr(18);break;case 19:P.TopAxis(),this.$=B[z].substr(8);break;case 20:P.setAxisFormat(B[z].substr(11)),this.$=B[z].substr(11);break;case 21:P.setTickInterval(B[z].substr(13)),this.$=B[z].substr(13);break;case 22:P.setExcludes(B[z].substr(9)),this.$=B[z].substr(9);break;case 23:P.setIncludes(B[z].substr(9)),this.$=B[z].substr(9);break;case 24:P.setTodayMarker(B[z].substr(12)),this.$=B[z].substr(12);break;case 27:P.setDiagramTitle(B[z].substr(6)),this.$=B[z].substr(6);break;case 28:this.$=B[z].trim(),P.setAccTitle(this.$);break;case 29:case 30:this.$=B[z].trim(),P.setAccDescription(this.$);break;case 31:P.addSection(B[z].substr(8)),this.$=B[z].substr(8);break;case 33:P.addTask(B[z-1],B[z]),this.$="task";break;case 34:this.$=B[z-1],P.setClickEvent(B[z-1],B[z],null);break;case 35:this.$=B[z-2],P.setClickEvent(B[z-2],B[z-1],B[z]);break;case 36:this.$=B[z-2],P.setClickEvent(B[z-2],B[z-1],null),P.setLink(B[z-2],B[z]);break;case 37:this.$=B[z-3],P.setClickEvent(B[z-3],B[z-2],B[z-1]),P.setLink(B[z-3],B[z]);break;case 38:this.$=B[z-2],P.setClickEvent(B[z-2],B[z],null),P.setLink(B[z-2],B[z-1]);break;case 39:this.$=B[z-3],P.setClickEvent(B[z-3],B[z-1],B[z]),P.setLink(B[z-3],B[z-2]);break;case 40:this.$=B[z-1],P.setLink(B[z-1],B[z]);break;case 41:case 47:this.$=B[z-1]+" "+B[z];break;case 42:case 43:case 45:this.$=B[z-2]+" "+B[z-1]+" "+B[z];break;case 44:case 46:this.$=B[z-3]+" "+B[z-2]+" "+B[z-1]+" "+B[z];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},e(t,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:w,31:S,33:T,35:E,36:_,37:24,38:A,40:L},e(t,[2,7],{1:[2,1]}),e(t,[2,3]),{9:36,11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:w,31:S,33:T,35:E,36:_,37:24,38:A,40:L},e(t,[2,5]),e(t,[2,6]),e(t,[2,17]),e(t,[2,18]),e(t,[2,19]),e(t,[2,20]),e(t,[2,21]),e(t,[2,22]),e(t,[2,23]),e(t,[2,24]),e(t,[2,25]),e(t,[2,26]),e(t,[2,27]),{32:[1,37]},{34:[1,38]},e(t,[2,30]),e(t,[2,31]),e(t,[2,32]),{39:[1,39]},e(t,[2,8]),e(t,[2,9]),e(t,[2,10]),e(t,[2,11]),e(t,[2,12]),e(t,[2,13]),e(t,[2,14]),e(t,[2,15]),e(t,[2,16]),{41:[1,40],43:[1,41]},e(t,[2,4]),e(t,[2,28]),e(t,[2,29]),e(t,[2,33]),e(t,[2,34],{42:[1,42],43:[1,43]}),e(t,[2,40],{41:[1,44]}),e(t,[2,35],{43:[1,45]}),e(t,[2,36]),e(t,[2,38],{42:[1,46]}),e(t,[2,37]),e(t,[2,39])],defaultActions:{},parseError:o(function(C,O){if(O.recoverable)this.trace(C);else{var D=new Error(C);throw D.hash=O,D}},"parseError"),parse:o(function(C){var O=this,D=[0],P=[],F=[null],B=[],G=this.table,z="",W=0,Q=0,j=0,at=2,X=1,J=B.slice.call(arguments,1),Z=Object.create(this.lexer),H={yy:{}};for(var q in this.yy)Object.prototype.hasOwnProperty.call(this.yy,q)&&(H.yy[q]=this.yy[q]);Z.setInput(C,H.yy),H.yy.lexer=Z,H.yy.parser=this,typeof Z.yylloc>"u"&&(Z.yylloc={});var K=Z.yylloc;B.push(K);var ot=Z.options&&Z.options.ranges;typeof H.yy.parseError=="function"?this.parseError=H.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ct(mt){D.length=D.length-2*mt,F.length=F.length-mt,B.length=B.length-mt}o(ct,"popStack");function ut(){var mt;return mt=P.pop()||Z.lex()||X,typeof mt!="number"&&(mt instanceof Array&&(P=mt,mt=P.pop()),mt=O.symbols_[mt]||mt),mt}o(ut,"lex");for(var et,Mt,it,wt,Ot,St,Vt={},Pt,_t,dt,Y;;){if(it=D[D.length-1],this.defaultActions[it]?wt=this.defaultActions[it]:((et===null||typeof et>"u")&&(et=ut()),wt=G[it]&&G[it][et]),typeof wt>"u"||!wt.length||!wt[0]){var ft="";Y=[];for(Pt in G[it])this.terminals_[Pt]&&Pt>at&&Y.push("'"+this.terminals_[Pt]+"'");Z.showPosition?ft="Parse error on line "+(W+1)+`: `+Z.showPosition()+` Expecting `+Y.join(", ")+", got '"+(this.terminals_[et]||et)+"'":ft="Parse error on line "+(W+1)+": Unexpected "+(et==X?"end of input":"'"+(this.terminals_[et]||et)+"'"),this.parseError(ft,{text:Z.match,token:this.terminals_[et]||et,line:Z.yylineno,loc:K,expected:Y})}if(wt[0]instanceof Array&&wt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+it+", token: "+et);switch(wt[0]){case 1:D.push(et),F.push(Z.yytext),B.push(Z.yylloc),D.push(wt[1]),et=null,Mt?(et=Mt,Mt=null):(Q=Z.yyleng,z=Z.yytext,W=Z.yylineno,K=Z.yylloc,j>0&&j--);break;case 2:if(_t=this.productions_[wt[1]][1],Vt.$=F[F.length-_t],Vt._$={first_line:B[B.length-(_t||1)].first_line,last_line:B[B.length-1].last_line,first_column:B[B.length-(_t||1)].first_column,last_column:B[B.length-1].last_column},ot&&(Vt._$.range=[B[B.length-(_t||1)].range[0],B[B.length-1].range[1]]),St=this.performAction.apply(Vt,[z,Q,W,H.yy,wt[1],F,B].concat(J)),typeof St<"u")return St;_t&&(D=D.slice(0,-1*_t*2),F=F.slice(0,-1*_t),B=B.slice(0,-1*_t)),D.push(this.productions_[wt[1]][0]),F.push(Vt.$),B.push(Vt._$),dt=G[D[D.length-2]][D[D.length-1]],D.push(dt);break;case 3:return!0}}return!0},"parse")},N=function(){var I={EOF:1,parseError:o(function(O,D){if(this.yy.parser)this.yy.parser.parseError(O,D);else throw new Error(O)},"parseError"),setInput:o(function(C,O){return this.yy=O||this.yy||{},this._input=C,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var O=C.match(/(?:\r\n?|\n).*/g);return O?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),C},"input"),unput:o(function(C){var O=C.length,D=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-O),this.offset-=O;var P=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),D.length-1&&(this.yylineno-=D.length-1);var F=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:D?(D.length===P.length?this.yylloc.first_column:0)+P[P.length-D.length].length-D[0].length:this.yylloc.first_column-O},this.options.ranges&&(this.yylloc.range=[F[0],F[0]+this.yyleng-O]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(C){this.unput(this.match.slice(C))},"less"),pastInput:o(function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var C=this.match;return C.length<20&&(C+=this._input.substr(0,20-C.length)),(C.substr(0,20)+(C.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var C=this.pastInput(),O=new Array(C.length+1).join("-");return C+this.upcomingInput()+` `+O+"^"},"showPosition"),test_match:o(function(C,O){var D,P,F;if(this.options.backtrack_lexer&&(F={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(F.yylloc.range=this.yylloc.range.slice(0))),P=C[0].match(/(?:\r\n?|\n).*/g),P&&(this.yylineno+=P.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:P?P[P.length-1].length-P[P.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+C[0].length},this.yytext+=C[0],this.match+=C[0],this.matches=C,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(C[0].length),this.matched+=C[0],D=this.performAction.call(this,this.yy,this,O,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),D)return D;if(this._backtrack){for(var B in F)this[B]=F[B];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var C,O,D,P;this._more||(this.yytext="",this.match="");for(var F=this._currentRules(),B=0;BO[0].length)){if(O=D,P=B,this.options.backtrack_lexer){if(C=this.test_match(D,F[B]),C!==!1)return C;if(this._backtrack){O=!1;continue}else return!1}else if(!this.options.flex)break}return O?(C=this.test_match(O,F[P]),C!==!1?C:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var O=this.next();return O||this.lex()},"lex"),begin:o(function(O){this.conditionStack.push(O)},"begin"),popState:o(function(){var O=this.conditionStack.length-1;return O>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(O){return O=this.conditionStack.length-1-Math.abs(O||0),O>=0?this.conditionStack[O]:"INITIAL"},"topState"),pushState:o(function(O){this.begin(O)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(O,D,P,F){var B=F;switch(P){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 I}();M.lexer=N;function k(){this.yy={}}return o(k,"Parser"),k.prototype=M,M.Parser=k,new k}();DO.parser=DO;Fut=DO});var $ut=Ti((RO,NO)=>{"use strict";(function(e,t){typeof RO=="object"&&typeof NO<"u"?NO.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs_plugin_isoWeek=t()})(RO,function(){"use strict";var e="day";return function(t,r,n){var i=o(function(l){return l.add(4-l.isoWeekday(),e)},"a"),a=r.prototype;a.isoWeekYear=function(){return i(this).year()},a.isoWeek=function(l){if(!this.$utils().u(l))return this.add(7*(l-this.isoWeek()),e);var u,h,f,d,p=i(this),m=(u=this.isoWeekYear(),h=this.$u,f=(h?n.utc:n)().year(u).startOf("year"),d=4-f.isoWeekday(),f.isoWeekday()>4&&(d+=7),f.add(d,e));return p.diff(m,"week")+1},a.isoWeekday=function(l){return this.$utils().u(l)?this.day()||7:this.day(this.day()%7?l:l-7)};var s=a.startOf;a.startOf=function(l,u){var h=this.$utils(),f=!!h.u(u)||u;return h.p(l)==="isoweek"?f?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):s.bind(this)(l,u)}}})});var Gut=Ti((MO,IO)=>{"use strict";(function(e,t){typeof MO=="object"&&typeof IO<"u"?IO.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs_plugin_customParseFormat=t()})(MO,function(){"use strict";var e={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"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d/,n=/\d\d/,i=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,s={},l=o(function(g){return(g=+g)+(g>68?1900:2e3)},"a"),u=o(function(g){return function(y){this[g]=+y}},"f"),h=[/[+-]\d\d:?(\d\d)?|Z/,function(g){(this.zone||(this.zone={})).offset=function(y){if(!y||y==="Z")return 0;var v=y.match(/([+-]|\d\d)/g),x=60*v[1]+(+v[2]||0);return x===0?0:v[0]==="+"?-x:x}(g)}],f=o(function(g){var y=s[g];return y&&(y.indexOf?y:y.s.concat(y.f))},"u"),d=o(function(g,y){var v,x=s.meridiem;if(x){for(var b=1;b<=24;b+=1)if(g.indexOf(x(b,0,y))>-1){v=b>12;break}}else v=g===(y?"pm":"PM");return v},"d"),p={A:[a,function(g){this.afternoon=d(g,!1)}],a:[a,function(g){this.afternoon=d(g,!0)}],Q:[r,function(g){this.month=3*(g-1)+1}],S:[r,function(g){this.milliseconds=100*+g}],SS:[n,function(g){this.milliseconds=10*+g}],SSS:[/\d{3}/,function(g){this.milliseconds=+g}],s:[i,u("seconds")],ss:[i,u("seconds")],m:[i,u("minutes")],mm:[i,u("minutes")],H:[i,u("hours")],h:[i,u("hours")],HH:[i,u("hours")],hh:[i,u("hours")],D:[i,u("day")],DD:[n,u("day")],Do:[a,function(g){var y=s.ordinal,v=g.match(/\d+/);if(this.day=v[0],y)for(var x=1;x<=31;x+=1)y(x).replace(/\[|\]/g,"")===g&&(this.day=x)}],w:[i,u("week")],ww:[n,u("week")],M:[i,u("month")],MM:[n,u("month")],MMM:[a,function(g){var y=f("months"),v=(f("monthsShort")||y.map(function(x){return x.slice(0,3)})).indexOf(g)+1;if(v<1)throw new Error;this.month=v%12||v}],MMMM:[a,function(g){var y=f("months").indexOf(g)+1;if(y<1)throw new Error;this.month=y%12||y}],Y:[/[+-]?\d+/,u("year")],YY:[n,function(g){this.year=l(g)}],YYYY:[/\d{4}/,u("year")],Z:h,ZZ:h};function m(g){var y,v;y=g,v=s&&s.formats;for(var x=(g=y.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(A,L,M){var N=M&&M.toUpperCase();return L||v[M]||e[M]||v[N].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(k,I,C){return I||C.slice(1)})})).match(t),b=x.length,w=0;w-1)return new Date((D==="X"?1e3:1)*O);var B=m(D)(O),G=B.year,z=B.month,W=B.day,Q=B.hours,j=B.minutes,at=B.seconds,X=B.milliseconds,J=B.zone,Z=B.week,H=new Date,q=W||(G||z?1:H.getDate()),K=G||H.getFullYear(),ot=0;G&&!z||(ot=z>0?z-1:H.getMonth());var ct,ut=Q||0,et=j||0,Mt=at||0,it=X||0;return J?new Date(Date.UTC(K,ot,q,ut,et,Mt,it+60*J.offset*1e3)):P?new Date(Date.UTC(K,ot,q,ut,et,Mt,it)):(ct=new Date(K,ot,q,ut,et,Mt,it),Z&&(ct=F(ct).week(Z).toDate()),ct)}catch{return new Date("")}}(S,_,T,v),this.init(),N&&N!==!0&&(this.$L=this.locale(N).$L),M&&S!=this.format(_)&&(this.$d=new Date("")),s={}}else if(_ instanceof Array)for(var k=_.length,I=1;I<=k;I+=1){E[1]=_[I-1];var C=v.apply(this,E);if(C.isValid()){this.$d=C.$d,this.$L=C.$L,this.init();break}I===k&&(this.$d=new Date(""))}else b.call(this,w)}}})});var Vut=Ti((OO,PO)=>{"use strict";(function(e,t){typeof OO=="object"&&typeof PO<"u"?PO.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs_plugin_advancedFormat=t()})(OO,function(){"use strict";return function(e,t){var r=t.prototype,n=r.format;r.format=function(i){var a=this,s=this.$locale();if(!this.isValid())return n.bind(this)(i);var l=this.$utils(),u=(i||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(h){switch(h){case"Q":return Math.ceil((a.$M+1)/3);case"Do":return s.ordinal(a.$D);case"gggg":return a.weekYear();case"GGGG":return a.isoWeekYear();case"wo":return s.ordinal(a.week(),"W");case"w":case"ww":return l.s(a.week(),h==="w"?1:2,"0");case"W":case"WW":return l.s(a.isoWeek(),h==="W"?1:2,"0");case"k":case"kk":return l.s(String(a.$H===0?24:a.$H),h==="k"?1:2,"0");case"X":return Math.floor(a.$d.getTime()/1e3);case"x":return a.$d.getTime();case"z":return"["+a.offsetName()+"]";case"zzz":return"["+a.offsetName("long")+"]";default:return h}});return n.bind(this)(u)}}})});function iht(e,t,r){let n=!0;for(;n;)n=!1,r.forEach(function(i){let a="^\\s*"+i+"\\s*$",s=new RegExp(a);e[0].match(s)&&(t[i]=!0,e.shift(1),n=!0)})}var Wut,vo,Yut,qut,Xut,Uut,Wc,$O,GO,VO,Mx,Ix,UO,HO,KE,Yg,WO,jut,YO,Ox,qO,XO,QE,BO,Z$t,J$t,tGt,eGt,rGt,nGt,iGt,aGt,sGt,oGt,lGt,cGt,uGt,hGt,fGt,dGt,pGt,mGt,gGt,yGt,vGt,xGt,bGt,Kut,wGt,TGt,kGt,Qut,EGt,FO,Zut,Jut,XE,Wg,CGt,SGt,zO,jE,Hi,tht,AGt,R0,_Gt,Hut,LGt,eht,DGt,rht,RGt,NGt,nht,aht=R(()=>{"use strict";Wut=Qi(Qp(),1),vo=Qi(Jb(),1),Yut=Qi($ut(),1),qut=Qi(Gut(),1),Xut=Qi(Vut(),1);ce();Ue();_r();Ci();vo.default.extend(Yut.default);vo.default.extend(qut.default);vo.default.extend(Xut.default);Uut={friday:5,saturday:6},Wc="",$O="",VO="",Mx=[],Ix=[],UO=new Map,HO=[],KE=[],Yg="",WO="",jut=["active","done","crit","milestone"],YO=[],Ox=!1,qO=!1,XO="sunday",QE="saturday",BO=0,Z$t=o(function(){HO=[],KE=[],Yg="",YO=[],XE=0,zO=void 0,jE=void 0,Hi=[],Wc="",$O="",WO="",GO=void 0,VO="",Mx=[],Ix=[],Ox=!1,qO=!1,BO=0,UO=new Map,Ar(),XO="sunday",QE="saturday"},"clear"),J$t=o(function(e){$O=e},"setAxisFormat"),tGt=o(function(){return $O},"getAxisFormat"),eGt=o(function(e){GO=e},"setTickInterval"),rGt=o(function(){return GO},"getTickInterval"),nGt=o(function(e){VO=e},"setTodayMarker"),iGt=o(function(){return VO},"getTodayMarker"),aGt=o(function(e){Wc=e},"setDateFormat"),sGt=o(function(){Ox=!0},"enableInclusiveEndDates"),oGt=o(function(){return Ox},"endDatesAreInclusive"),lGt=o(function(){qO=!0},"enableTopAxis"),cGt=o(function(){return qO},"topAxisEnabled"),uGt=o(function(e){WO=e},"setDisplayMode"),hGt=o(function(){return WO},"getDisplayMode"),fGt=o(function(){return Wc},"getDateFormat"),dGt=o(function(e){Mx=e.toLowerCase().split(/[\s,]+/)},"setIncludes"),pGt=o(function(){return Mx},"getIncludes"),mGt=o(function(e){Ix=e.toLowerCase().split(/[\s,]+/)},"setExcludes"),gGt=o(function(){return Ix},"getExcludes"),yGt=o(function(){return UO},"getLinks"),vGt=o(function(e){Yg=e,HO.push(e)},"addSection"),xGt=o(function(){return HO},"getSections"),bGt=o(function(){let e=Hut(),t=10,r=0;for(;!e&&r[\d\w- ]+)/.exec(r);if(i!==null){let s=null;for(let u of i.groups.ids.split(" ")){let h=R0(u);h!==void 0&&(!s||h.endTime>s.endTime)&&(s=h)}if(s)return s.endTime;let l=new Date;return l.setHours(0,0,0,0),l}let a=(0,vo.default)(r,t.trim(),!0);if(a.isValid())return a.toDate();{V.debug("Invalid date:"+r),V.debug("With date format:"+t.trim());let s=new Date(r);if(s===void 0||isNaN(s.getTime())||s.getFullYear()<-1e4||s.getFullYear()>1e4)throw new Error("Invalid date:"+r);return s}},"getStartDate"),Zut=o(function(e){let t=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(e.trim());return t!==null?[Number.parseFloat(t[1]),t[2]]:[NaN,"ms"]},"parseDuration"),Jut=o(function(e,t,r,n=!1){r=r.trim();let a=/^until\s+(?[\d\w- ]+)/.exec(r);if(a!==null){let f=null;for(let p of a.groups.ids.split(" ")){let m=R0(p);m!==void 0&&(!f||m.startTime{window.open(r,"_self")}),UO.set(n,r))}),eht(e,"clickable")},"setLink"),eht=o(function(e,t){e.split(",").forEach(function(r){let n=R0(r);n!==void 0&&n.classes.push(t)})},"setClass"),DGt=o(function(e,t,r){if(pt().securityLevel!=="loose"||t===void 0)return;let n=[];if(typeof r=="string"){n=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let a=0;a{Oe.runFunc(t,...n)})},"setClickFun"),rht=o(function(e,t){YO.push(function(){let r=document.querySelector(`[id="${e}"]`);r!==null&&r.addEventListener("click",function(){t()})},function(){let r=document.querySelector(`[id="${e}-text"]`);r!==null&&r.addEventListener("click",function(){t()})})},"pushFun"),RGt=o(function(e,t,r){e.split(",").forEach(function(n){DGt(n,t,r)}),eht(e,"clickable")},"setClickEvent"),NGt=o(function(e){YO.forEach(function(t){t(e)})},"bindFunctions"),nht={getConfig:o(()=>pt().gantt,"getConfig"),clear:Z$t,setDateFormat:aGt,getDateFormat:fGt,enableInclusiveEndDates:sGt,endDatesAreInclusive:oGt,enableTopAxis:lGt,topAxisEnabled:cGt,setAxisFormat:J$t,getAxisFormat:tGt,setTickInterval:eGt,getTickInterval:rGt,setTodayMarker:nGt,getTodayMarker:iGt,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,setDisplayMode:uGt,getDisplayMode:hGt,setAccDescription:Fr,getAccDescription:zr,addSection:vGt,getSections:xGt,getTasks:bGt,addTask:AGt,findTaskById:R0,addTaskOrg:_Gt,setIncludes:dGt,getIncludes:pGt,setExcludes:mGt,getExcludes:gGt,setClickEvent:RGt,setLink:LGt,getLinks:yGt,bindFunctions:NGt,parseDuration:Zut,isInvalidDate:Kut,setWeekday:wGt,getWeekday:TGt,setWeekend:kGt};o(iht,"getTaskTags")});var ZE,MGt,sht,IGt,Ku,OGt,oht,lht=R(()=>{"use strict";ZE=Qi(Jb(),1);ce();ur();hr();Ue();Jn();MGt=o(function(){V.debug("Something is calling, setConf, remove the call")},"setConf"),sht={monday:Lh,tuesday:U3,wednesday:H3,thursday:gc,friday:W3,saturday:Y3,sunday:Tl},IGt=o((e,t)=>{let r=[...e].map(()=>-1/0),n=[...e].sort((a,s)=>a.startTime-s.startTime||a.order-s.order),i=0;for(let a of n)for(let s=0;s=r[s]){r[s]=a.endTime,a.order=s+t,s>i&&(i=s);break}return i},"getMaxIntersections"),OGt=o(function(e,t,r,n){let i=pt().gantt,a=pt().securityLevel,s;a==="sandbox"&&(s=Gt("#i"+t));let l=a==="sandbox"?Gt(s.nodes()[0].contentDocument.body):Gt("body"),u=a==="sandbox"?s.nodes()[0].contentDocument:document,h=u.getElementById(t);Ku=h.parentElement.offsetWidth,Ku===void 0&&(Ku=1200),i.useWidth!==void 0&&(Ku=i.useWidth);let f=n.db.getTasks(),d=[];for(let A of f)d.push(A.type);d=_(d);let p={},m=2*i.topPadding;if(n.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let A={};for(let M of f)A[M.section]===void 0?A[M.section]=[M]:A[M.section].push(M);let L=0;for(let M of Object.keys(A)){let N=IGt(A[M],L)+1;L+=N,m+=N*(i.barHeight+i.barGap),p[M]=N}}else{m+=f.length*(i.barHeight+i.barGap);for(let A of d)p[A]=f.filter(L=>L.type===A).length}h.setAttribute("viewBox","0 0 "+Ku+" "+m);let g=l.select(`[id="${t}"]`),y=j3().domain([t3(f,function(A){return A.startTime}),J4(f,function(A){return A.endTime})]).rangeRound([0,Ku-i.leftPadding-i.rightPadding]);function v(A,L){let M=A.startTime,N=L.startTime,k=0;return M>N?k=1:MG.order))].map(G=>A.find(z=>z.order===G));g.append("g").selectAll("rect").data(D).enter().append("rect").attr("x",0).attr("y",function(G,z){return z=G.order,z*L+M-2}).attr("width",function(){return C-i.rightPadding/2}).attr("height",L).attr("class",function(G){for(let[z,W]of d.entries())if(G.type===W)return"section section"+z%i.numberSectionStyles;return"section section0"});let P=g.append("g").selectAll("rect").data(A).enter(),F=n.db.getLinks();if(P.append("rect").attr("id",function(G){return G.id}).attr("rx",3).attr("ry",3).attr("x",function(G){return G.milestone?y(G.startTime)+N+.5*(y(G.endTime)-y(G.startTime))-.5*k:y(G.startTime)+N}).attr("y",function(G,z){return z=G.order,z*L+M}).attr("width",function(G){return G.milestone?k:y(G.renderEndTime||G.endTime)-y(G.startTime)}).attr("height",k).attr("transform-origin",function(G,z){return z=G.order,(y(G.startTime)+N+.5*(y(G.endTime)-y(G.startTime))).toString()+"px "+(z*L+M+.5*k).toString()+"px"}).attr("class",function(G){let z="task",W="";G.classes.length>0&&(W=G.classes.join(" "));let Q=0;for(let[at,X]of d.entries())G.type===X&&(Q=at%i.numberSectionStyles);let j="";return G.active?G.crit?j+=" activeCrit":j=" active":G.done?G.crit?j=" doneCrit":j=" done":G.crit&&(j+=" crit"),j.length===0&&(j=" task"),G.milestone&&(j=" milestone "+j),j+=Q,j+=" "+W,z+j}),P.append("text").attr("id",function(G){return G.id+"-text"}).text(function(G){return G.task}).attr("font-size",i.fontSize).attr("x",function(G){let z=y(G.startTime),W=y(G.renderEndTime||G.endTime);G.milestone&&(z+=.5*(y(G.endTime)-y(G.startTime))-.5*k),G.milestone&&(W=z+k);let Q=this.getBBox().width;return Q>W-z?W+Q+1.5*i.leftPadding>C?z+N-5:W+N+5:(W-z)/2+z+N}).attr("y",function(G,z){return z=G.order,z*L+i.barHeight/2+(i.fontSize/2-2)+M}).attr("text-height",k).attr("class",function(G){let z=y(G.startTime),W=y(G.endTime);G.milestone&&(W=z+k);let Q=this.getBBox().width,j="";G.classes.length>0&&(j=G.classes.join(" "));let at=0;for(let[J,Z]of d.entries())G.type===Z&&(at=J%i.numberSectionStyles);let X="";return G.active&&(G.crit?X="activeCritText"+at:X="activeText"+at),G.done?G.crit?X=X+" doneCritText"+at:X=X+" doneText"+at:G.crit&&(X=X+" critText"+at),G.milestone&&(X+=" milestoneText"),Q>W-z?W+Q+1.5*i.leftPadding>C?j+" taskTextOutsideLeft taskTextOutside"+at+" "+X:j+" taskTextOutsideRight taskTextOutside"+at+" "+X+" width-"+Q:j+" taskText taskText"+at+" "+X+" width-"+Q}),pt().securityLevel==="sandbox"){let G;G=Gt("#i"+t);let z=G.nodes()[0].contentDocument;P.filter(function(W){return F.has(W.id)}).each(function(W){var Q=z.querySelector("#"+W.id),j=z.querySelector("#"+W.id+"-text");let at=Q.parentNode;var X=z.createElement("a");X.setAttribute("xlink:href",F.get(W.id)),X.setAttribute("target","_top"),at.appendChild(X),X.appendChild(Q),X.appendChild(j)})}}o(b,"drawRects");function w(A,L,M,N,k,I,C,O){if(C.length===0&&O.length===0)return;let D,P;for(let{startTime:Q,endTime:j}of I)(D===void 0||QP)&&(P=j);if(!D||!P)return;if((0,ZE.default)(P).diff((0,ZE.default)(D),"year")>5){V.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 F=n.db.getDateFormat(),B=[],G=null,z=(0,ZE.default)(D);for(;z.valueOf()<=P;)n.db.isInvalidDate(z,F,C,O)?G?G.end=z:G={start:z,end:z}:G&&(B.push(G),G=null),z=z.add(1,"d");g.append("g").selectAll("rect").data(B).enter().append("rect").attr("id",function(Q){return"exclude-"+Q.start.format("YYYY-MM-DD")}).attr("x",function(Q){return y(Q.start)+M}).attr("y",i.gridLineStartPadding).attr("width",function(Q){let j=Q.end.add(1,"day");return y(j)-y(Q.start)}).attr("height",k-L-i.gridLineStartPadding).attr("transform-origin",function(Q,j){return(y(Q.start)+M+.5*(y(Q.end)-y(Q.start))).toString()+"px "+(j*A+.5*k).toString()+"px"}).attr("class","exclude-range")}o(w,"drawExcludeDays");function S(A,L,M,N){let k=aA(y).tickSize(-N+L+i.gridLineStartPadding).tickFormat(bd(n.db.getAxisFormat()||i.axisFormat||"%Y-%m-%d")),C=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(n.db.getTickInterval()||i.tickInterval);if(C!==null){let O=C[1],D=C[2],P=n.db.getWeekday()||i.weekday;switch(D){case"millisecond":k.ticks(pc.every(O));break;case"second":k.ticks(Zs.every(O));break;case"minute":k.ticks(Tu.every(O));break;case"hour":k.ticks(ku.every(O));break;case"day":k.ticks(Mo.every(O));break;case"week":k.ticks(sht[P].every(O));break;case"month":k.ticks(Eu.every(O));break}}if(g.append("g").attr("class","grid").attr("transform","translate("+A+", "+(N-50)+")").call(k).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),n.db.topAxisEnabled()||i.topAxis){let O=iA(y).tickSize(-N+L+i.gridLineStartPadding).tickFormat(bd(n.db.getAxisFormat()||i.axisFormat||"%Y-%m-%d"));if(C!==null){let D=C[1],P=C[2],F=n.db.getWeekday()||i.weekday;switch(P){case"millisecond":O.ticks(pc.every(D));break;case"second":O.ticks(Zs.every(D));break;case"minute":O.ticks(Tu.every(D));break;case"hour":O.ticks(ku.every(D));break;case"day":O.ticks(Mo.every(D));break;case"week":O.ticks(sht[F].every(D));break;case"month":O.ticks(Eu.every(D));break}}g.append("g").attr("class","grid").attr("transform","translate("+A+", "+L+")").call(O).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}o(S,"makeGrid");function T(A,L){let M=0,N=Object.keys(p).map(k=>[k,p[k]]);g.append("g").selectAll("text").data(N).enter().append(function(k){let I=k[0].split(Yt.lineBreakRegex),C=-(I.length-1)/2,O=u.createElementNS("http://www.w3.org/2000/svg","text");O.setAttribute("dy",C+"em");for(let[D,P]of I.entries()){let F=u.createElementNS("http://www.w3.org/2000/svg","tspan");F.setAttribute("alignment-baseline","central"),F.setAttribute("x","10"),D>0&&F.setAttribute("dy","1em"),F.textContent=P,O.appendChild(F)}return O}).attr("x",10).attr("y",function(k,I){if(I>0)for(let C=0;C{"use strict";PGt=o(e=>` .mermaid-main-font { font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); } .exclude-range { fill: ${e.excludeBkgColor}; } .section { stroke: none; opacity: 0.2; } .section0 { fill: ${e.sectionBkgColor}; } .section2 { fill: ${e.sectionBkgColor2}; } .section1, .section3 { fill: ${e.altSectionBkgColor}; opacity: 0.2; } .sectionTitle0 { fill: ${e.titleColor}; } .sectionTitle1 { fill: ${e.titleColor}; } .sectionTitle2 { fill: ${e.titleColor}; } .sectionTitle3 { fill: ${e.titleColor}; } .sectionTitle { text-anchor: start; font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); } /* Grid and axis */ .grid .tick { stroke: ${e.gridColor}; opacity: 0.8; shape-rendering: crispEdges; } .grid .tick text { font-family: ${e.fontFamily}; fill: ${e.textColor}; } .grid path { stroke-width: 0; } /* Today line */ .today { fill: none; stroke: ${e.todayLineColor}; stroke-width: 2px; } /* Task styling */ /* Default task */ .task { stroke-width: 2; } .taskText { text-anchor: middle; font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); } .taskTextOutsideRight { fill: ${e.taskTextDarkColor}; text-anchor: start; font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); } .taskTextOutsideLeft { fill: ${e.taskTextDarkColor}; text-anchor: end; } /* Special case clickable */ .task.clickable { cursor: pointer; } .taskText.clickable { cursor: pointer; fill: ${e.taskTextClickableColor} !important; font-weight: bold; } .taskTextOutsideLeft.clickable { cursor: pointer; fill: ${e.taskTextClickableColor} !important; font-weight: bold; } .taskTextOutsideRight.clickable { cursor: pointer; fill: ${e.taskTextClickableColor} !important; font-weight: bold; } /* Specific task settings for the sections*/ .taskText0, .taskText1, .taskText2, .taskText3 { fill: ${e.taskTextColor}; } .task0, .task1, .task2, .task3 { fill: ${e.taskBkgColor}; stroke: ${e.taskBorderColor}; } .taskTextOutside0, .taskTextOutside2 { fill: ${e.taskTextOutsideColor}; } .taskTextOutside1, .taskTextOutside3 { fill: ${e.taskTextOutsideColor}; } /* Active task */ .active0, .active1, .active2, .active3 { fill: ${e.activeTaskBkgColor}; stroke: ${e.activeTaskBorderColor}; } .activeText0, .activeText1, .activeText2, .activeText3 { fill: ${e.taskTextDarkColor} !important; } /* Completed task */ .done0, .done1, .done2, .done3 { stroke: ${e.doneTaskBorderColor}; fill: ${e.doneTaskBkgColor}; stroke-width: 2; } .doneText0, .doneText1, .doneText2, .doneText3 { fill: ${e.taskTextDarkColor} !important; } /* Tasks on the critical line */ .crit0, .crit1, .crit2, .crit3 { stroke: ${e.critBorderColor}; fill: ${e.critBkgColor}; stroke-width: 2; } .activeCrit0, .activeCrit1, .activeCrit2, .activeCrit3 { stroke: ${e.critBorderColor}; fill: ${e.activeTaskBkgColor}; stroke-width: 2; } .doneCrit0, .doneCrit1, .doneCrit2, .doneCrit3 { stroke: ${e.critBorderColor}; fill: ${e.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: ${e.taskTextDarkColor} !important; } .activeCritText0, .activeCritText1, .activeCritText2, .activeCritText3 { fill: ${e.taskTextDarkColor} !important; } .titleText { text-anchor: middle; font-size: 18px; fill: ${e.titleColor||e.textColor}; font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); } `,"getStyles"),cht=PGt});var hht={};xr(hht,{diagram:()=>BGt});var BGt,fht=R(()=>{"use strict";zut();aht();lht();uht();BGt={parser:Fut,db:nht,renderer:oht,styles:cht}});var mht,ght=R(()=>{"use strict";Hg();ce();mht={parse:o(async e=>{let t=await Ul("info",e);V.debug(t)},"parse")}});var Px,jO=R(()=>{Px="11.3.0"});var VGt,UGt,yht,vht=R(()=>{"use strict";jO();VGt={version:Px},UGt=o(()=>VGt.version,"getVersion"),yht={getVersion:UGt}});var Vs,xf=R(()=>{"use strict";ur();Ue();Vs=o(e=>{let{securityLevel:t}=pt(),r=Gt("body");if(t==="sandbox"){let a=Gt(`#i${e}`).node()?.contentDocument??document;r=Gt(a.body)}return r.select(`#${e}`)},"selectSvgElement")});var HGt,xht,bht=R(()=>{"use strict";ce();xf();Jn();HGt=o((e,t,r)=>{V.debug(`rendering info diagram `+e);let n=Vs(t);Pr(n,100,400,!0),n.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${r}`)},"draw"),xht={draw:HGt}});var wht={};xr(wht,{diagram:()=>WGt});var WGt,Tht=R(()=>{"use strict";ght();vht();bht();WGt={parser:mht,db:yht,renderer:xht}});var Cht,KO,JE,QO,XGt,jGt,KGt,QGt,ZGt,JGt,tVt,t6,ZO=R(()=>{"use strict";ce();Ci();hl();Cht=Er.pie,KO={sections:new Map,showData:!1,config:Cht},JE=KO.sections,QO=KO.showData,XGt=structuredClone(Cht),jGt=o(()=>structuredClone(XGt),"getConfig"),KGt=o(()=>{JE=new Map,QO=KO.showData,Ar()},"clear"),QGt=o(({label:e,value:t})=>{JE.has(e)||(JE.set(e,t),V.debug(`added new section: ${e}, with value: ${t}`))},"addSection"),ZGt=o(()=>JE,"getSections"),JGt=o(e=>{QO=e},"setShowData"),tVt=o(()=>QO,"getShowData"),t6={getConfig:jGt,clear:KGt,setDiagramTitle:cn,getDiagramTitle:Jr,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addSection:QGt,getSections:ZGt,setShowData:JGt,getShowData:tVt}});var eVt,Sht,Aht=R(()=>{"use strict";Hg();ce();Dx();ZO();eVt=o((e,t)=>{pf(e,t),t.setShowData(e.showData),e.sections.map(t.addSection)},"populateDb"),Sht={parse:o(async e=>{let t=await Ul("pie",e);V.debug(t),eVt(t,t6)},"parse")}});var rVt,_ht,Lht=R(()=>{"use strict";rVt=o(e=>` .pieCircle{ stroke: ${e.pieStrokeColor}; stroke-width : ${e.pieStrokeWidth}; opacity : ${e.pieOpacity}; } .pieOuterCircle{ stroke: ${e.pieOuterStrokeColor}; stroke-width: ${e.pieOuterStrokeWidth}; fill: none; } .pieTitleText { text-anchor: middle; font-size: ${e.pieTitleTextSize}; fill: ${e.pieTitleTextColor}; font-family: ${e.fontFamily}; } .slice { font-family: ${e.fontFamily}; fill: ${e.pieSectionTextColor}; font-size:${e.pieSectionTextSize}; // fill: white; } .legend text { fill: ${e.pieLegendTextColor}; font-family: ${e.fontFamily}; font-size: ${e.pieLegendTextSize}; } `,"getStyles"),_ht=rVt});var nVt,iVt,Dht,Rht=R(()=>{"use strict";ur();Ue();ce();xf();Jn();_r();nVt=o(e=>{let t=[...e.entries()].map(n=>({label:n[0],value:n[1]})).sort((n,i)=>i.value-n.value);return e5().value(n=>n.value)(t)},"createPieArcs"),iVt=o((e,t,r,n)=>{V.debug(`rendering pie chart `+e);let i=n.db,a=pt(),s=Ss(i.getConfig(),a.pie),l=40,u=18,h=4,f=450,d=f,p=Vs(t),m=p.append("g");m.attr("transform","translate("+d/2+","+f/2+")");let{themeVariables:g}=a,[y]=Tc(g.pieOuterStrokeWidth);y??=2;let v=s.textPosition,x=Math.min(d,f)/2-l,b=Cl().innerRadius(0).outerRadius(x),w=Cl().innerRadius(x*v).outerRadius(x*v);m.append("circle").attr("cx",0).attr("cy",0).attr("r",x+y/2).attr("class","pieOuterCircle");let S=i.getSections(),T=nVt(S),E=[g.pie1,g.pie2,g.pie3,g.pie4,g.pie5,g.pie6,g.pie7,g.pie8,g.pie9,g.pie10,g.pie11,g.pie12],_=bu(E);m.selectAll("mySlices").data(T).enter().append("path").attr("d",b).attr("fill",k=>_(k.data.label)).attr("class","pieCircle");let A=0;S.forEach(k=>{A+=k}),m.selectAll("mySlices").data(T).enter().append("text").text(k=>(k.data.value/A*100).toFixed(0)+"%").attr("transform",k=>"translate("+w.centroid(k)+")").style("text-anchor","middle").attr("class","slice"),m.append("text").text(i.getDiagramTitle()).attr("x",0).attr("y",-(f-50)/2).attr("class","pieTitleText");let L=m.selectAll(".legend").data(_.domain()).enter().append("g").attr("class","legend").attr("transform",(k,I)=>{let C=u+h,O=C*_.domain().length/2,D=12*u,P=I*C-O;return"translate("+D+","+P+")"});L.append("rect").attr("width",u).attr("height",u).style("fill",_).style("stroke",_),L.data(T).append("text").attr("x",u+h).attr("y",u-h).text(k=>{let{label:I,value:C}=k.data;return i.getShowData()?`${I} [${C}]`:I});let M=Math.max(...L.selectAll("text").nodes().map(k=>k?.getBoundingClientRect().width??0)),N=d+l+u+h+M;p.attr("viewBox",`0 0 ${N} ${f}`),Pr(p,f,N,s.useMaxWidth)},"draw"),Dht={draw:iVt}});var Nht={};xr(Nht,{diagram:()=>aVt});var aVt,Mht=R(()=>{"use strict";Aht();ZO();Lht();Rht();aVt={parser:Sht,db:t6,renderer:Dht,styles:_ht}});var JO,Pht,Bht=R(()=>{"use strict";JO=function(){var e=o(function(Tt,kt,Ct,At){for(Ct=Ct||{},At=Tt.length;At--;Ct[Tt[At]]=kt);return Ct},"o"),t=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[1,7],s=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],l=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],u=[55,56,57],h=[2,36],f=[1,37],d=[1,36],p=[1,38],m=[1,35],g=[1,43],y=[1,41],v=[1,14],x=[1,23],b=[1,18],w=[1,19],S=[1,20],T=[1,21],E=[1,22],_=[1,24],A=[1,25],L=[1,26],M=[1,27],N=[1,28],k=[1,29],I=[1,32],C=[1,33],O=[1,34],D=[1,39],P=[1,40],F=[1,42],B=[1,44],G=[1,62],z=[1,61],W=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],Q=[1,65],j=[1,66],at=[1,67],X=[1,68],J=[1,69],Z=[1,70],H=[1,71],q=[1,72],K=[1,73],ot=[1,74],ct=[1,75],ut=[1,76],et=[4,5,6,7,8,9,10,11,12,13,14,15,18],Mt=[1,90],it=[1,91],wt=[1,92],Ot=[1,99],St=[1,93],Vt=[1,96],Pt=[1,94],_t=[1,95],dt=[1,97],Y=[1,98],ft=[1,102],mt=[10,55,56,57],rt=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],ht={trace:o(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],[59,1],[59,1],[59,1]],performAction:o(function(kt,Ct,At,$t,Nt,yt,Ut){var zt=yt.length-1;switch(Nt){case 23:this.$=yt[zt];break;case 24:this.$=yt[zt-1]+""+yt[zt];break;case 26:this.$=yt[zt-1]+yt[zt];break;case 27:this.$=[yt[zt].trim()];break;case 28:yt[zt-2].push(yt[zt].trim()),this.$=yt[zt-2];break;case 29:this.$=yt[zt-4],$t.addClass(yt[zt-2],yt[zt]);break;case 37:this.$=[];break;case 42:this.$=yt[zt].trim(),$t.setDiagramTitle(this.$);break;case 43:this.$=yt[zt].trim(),$t.setAccTitle(this.$);break;case 44:case 45:this.$=yt[zt].trim(),$t.setAccDescription(this.$);break;case 46:$t.addSection(yt[zt].substr(8)),this.$=yt[zt].substr(8);break;case 47:$t.addPoint(yt[zt-3],"",yt[zt-1],yt[zt],[]);break;case 48:$t.addPoint(yt[zt-4],yt[zt-3],yt[zt-1],yt[zt],[]);break;case 49:$t.addPoint(yt[zt-4],"",yt[zt-2],yt[zt-1],yt[zt]);break;case 50:$t.addPoint(yt[zt-5],yt[zt-4],yt[zt-2],yt[zt-1],yt[zt]);break;case 51:$t.setXAxisLeftText(yt[zt-2]),$t.setXAxisRightText(yt[zt]);break;case 52:yt[zt-1].text+=" \u27F6 ",$t.setXAxisLeftText(yt[zt-1]);break;case 53:$t.setXAxisLeftText(yt[zt]);break;case 54:$t.setYAxisBottomText(yt[zt-2]),$t.setYAxisTopText(yt[zt]);break;case 55:yt[zt-1].text+=" \u27F6 ",$t.setYAxisBottomText(yt[zt-1]);break;case 56:$t.setYAxisBottomText(yt[zt]);break;case 57:$t.setQuadrant1Text(yt[zt]);break;case 58:$t.setQuadrant2Text(yt[zt]);break;case 59:$t.setQuadrant3Text(yt[zt]);break;case 60:$t.setQuadrant4Text(yt[zt]);break;case 64:this.$={text:yt[zt],type:"text"};break;case 65:this.$={text:yt[zt-1].text+""+yt[zt],type:yt[zt-1].type};break;case 66:this.$={text:yt[zt],type:"text"};break;case 67:this.$={text:yt[zt],type:"markdown"};break;case 68:this.$=yt[zt];break;case 69:this.$=yt[zt-1]+""+yt[zt];break}},"anonymous"),table:[{18:t,26:1,27:2,28:r,55:n,56:i,57:a},{1:[3]},{18:t,26:8,27:2,28:r,55:n,56:i,57:a},{18:t,26:9,27:2,28:r,55:n,56:i,57:a},e(s,[2,33],{29:10}),e(l,[2,61]),e(l,[2,62]),e(l,[2,63]),{1:[2,30]},{1:[2,31]},e(u,h,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:w,39:S,41:T,42:E,48:_,50:A,51:L,52:M,53:N,54:k,60:I,61:C,63:O,64:D,65:P,66:F,67:B}),e(s,[2,34]),{27:45,55:n,56:i,57:a},e(u,[2,37]),e(u,h,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:w,39:S,41:T,42:E,48:_,50:A,51:L,52:M,53:N,54:k,60:I,61:C,63:O,64:D,65:P,66:F,67:B}),e(u,[2,39]),e(u,[2,40]),e(u,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},e(u,[2,45]),e(u,[2,46]),{18:[1,50]},{4:f,5:d,10:p,12:m,13:g,14:y,43:51,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:52,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:53,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:54,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:55,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:56,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:z,44:[1,57],47:[1,58],58:60,59:59,63:O,64:D,65:P,66:F,67:B},e(W,[2,64]),e(W,[2,66]),e(W,[2,67]),e(W,[2,70]),e(W,[2,71]),e(W,[2,72]),e(W,[2,73]),e(W,[2,74]),e(W,[2,75]),e(W,[2,76]),e(W,[2,77]),e(W,[2,78]),e(W,[2,79]),e(W,[2,80]),e(s,[2,35]),e(u,[2,38]),e(u,[2,42]),e(u,[2,43]),e(u,[2,44]),{3:64,4:Q,5:j,6:at,7:X,8:J,9:Z,10:H,11:q,12:K,13:ot,14:ct,15:ut,21:63},e(u,[2,53],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:z,49:[1,77],63:O,64:D,65:P,66:F,67:B}),e(u,[2,56],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:z,49:[1,78],63:O,64:D,65:P,66:F,67:B}),e(u,[2,57],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:z,63:O,64:D,65:P,66:F,67:B}),e(u,[2,58],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:z,63:O,64:D,65:P,66:F,67:B}),e(u,[2,59],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:z,63:O,64:D,65:P,66:F,67:B}),e(u,[2,60],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:z,63:O,64:D,65:P,66:F,67:B}),{45:[1,79]},{44:[1,80]},e(W,[2,65]),e(W,[2,81]),e(W,[2,82]),e(W,[2,83]),{3:82,4:Q,5:j,6:at,7:X,8:J,9:Z,10:H,11:q,12:K,13:ot,14:ct,15:ut,18:[1,81]},e(et,[2,23]),e(et,[2,1]),e(et,[2,2]),e(et,[2,3]),e(et,[2,4]),e(et,[2,5]),e(et,[2,6]),e(et,[2,7]),e(et,[2,8]),e(et,[2,9]),e(et,[2,10]),e(et,[2,11]),e(et,[2,12]),e(u,[2,52],{58:31,43:83,4:f,5:d,10:p,12:m,13:g,14:y,60:I,61:C,63:O,64:D,65:P,66:F,67:B}),e(u,[2,55],{58:31,43:84,4:f,5:d,10:p,12:m,13:g,14:y,60:I,61:C,63:O,64:D,65:P,66:F,67:B}),{46:[1,85]},{45:[1,86]},{4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,16:89,17:Pt,18:_t,19:dt,20:Y,22:88,23:87},e(et,[2,24]),e(u,[2,51],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:z,63:O,64:D,65:P,66:F,67:B}),e(u,[2,54],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:z,63:O,64:D,65:P,66:F,67:B}),e(u,[2,47],{22:88,16:89,23:100,4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,17:Pt,18:_t,19:dt,20:Y}),{46:[1,101]},e(u,[2,29],{10:ft}),e(mt,[2,27],{16:103,4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,17:Pt,18:_t,19:dt,20:Y}),e(rt,[2,25]),e(rt,[2,13]),e(rt,[2,14]),e(rt,[2,15]),e(rt,[2,16]),e(rt,[2,17]),e(rt,[2,18]),e(rt,[2,19]),e(rt,[2,20]),e(rt,[2,21]),e(rt,[2,22]),e(u,[2,49],{10:ft}),e(u,[2,48],{22:88,16:89,23:104,4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,17:Pt,18:_t,19:dt,20:Y}),{4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,16:89,17:Pt,18:_t,19:dt,20:Y,22:105},e(rt,[2,26]),e(u,[2,50],{10:ft}),e(mt,[2,28],{16:103,4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,17:Pt,18:_t,19:dt,20:Y})],defaultActions:{8:[2,30],9:[2,31]},parseError:o(function(kt,Ct){if(Ct.recoverable)this.trace(kt);else{var At=new Error(kt);throw At.hash=Ct,At}},"parseError"),parse:o(function(kt){var Ct=this,At=[0],$t=[],Nt=[null],yt=[],Ut=this.table,zt="",ae=0,ke=0,Ee=0,le=2,Zt=1,me=yt.slice.call(arguments,1),Ht=Object.create(this.lexer),ne={yy:{}};for(var xe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xe)&&(ne.yy[xe]=this.yy[xe]);Ht.setInput(kt,ne.yy),ne.yy.lexer=Ht,ne.yy.parser=this,typeof Ht.yylloc>"u"&&(Ht.yylloc={});var Se=Ht.yylloc;yt.push(Se);var Ye=Ht.options&&Ht.options.ranges;typeof ne.yy.parseError=="function"?this.parseError=ne.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function fe(Sr){At.length=At.length-2*Sr,Nt.length=Nt.length-Sr,yt.length=yt.length-Sr}o(fe,"popStack");function ee(){var Sr;return Sr=$t.pop()||Ht.lex()||Zt,typeof Sr!="number"&&(Sr instanceof Array&&($t=Sr,Sr=$t.pop()),Sr=Ct.symbols_[Sr]||Sr),Sr}o(ee,"lex");for(var pe,Me,oe,qe,Cr,En,or={},ln,Ir,ii,mn;;){if(oe=At[At.length-1],this.defaultActions[oe]?qe=this.defaultActions[oe]:((pe===null||typeof pe>"u")&&(pe=ee()),qe=Ut[oe]&&Ut[oe][pe]),typeof qe>"u"||!qe.length||!qe[0]){var Pn="";mn=[];for(ln in Ut[oe])this.terminals_[ln]&&ln>le&&mn.push("'"+this.terminals_[ln]+"'");Ht.showPosition?Pn="Parse error on line "+(ae+1)+`: `+Ht.showPosition()+` Expecting `+mn.join(", ")+", got '"+(this.terminals_[pe]||pe)+"'":Pn="Parse error on line "+(ae+1)+": Unexpected "+(pe==Zt?"end of input":"'"+(this.terminals_[pe]||pe)+"'"),this.parseError(Pn,{text:Ht.match,token:this.terminals_[pe]||pe,line:Ht.yylineno,loc:Se,expected:mn})}if(qe[0]instanceof Array&&qe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+oe+", token: "+pe);switch(qe[0]){case 1:At.push(pe),Nt.push(Ht.yytext),yt.push(Ht.yylloc),At.push(qe[1]),pe=null,Me?(pe=Me,Me=null):(ke=Ht.yyleng,zt=Ht.yytext,ae=Ht.yylineno,Se=Ht.yylloc,Ee>0&&Ee--);break;case 2:if(Ir=this.productions_[qe[1]][1],or.$=Nt[Nt.length-Ir],or._$={first_line:yt[yt.length-(Ir||1)].first_line,last_line:yt[yt.length-1].last_line,first_column:yt[yt.length-(Ir||1)].first_column,last_column:yt[yt.length-1].last_column},Ye&&(or._$.range=[yt[yt.length-(Ir||1)].range[0],yt[yt.length-1].range[1]]),En=this.performAction.apply(or,[zt,ke,ae,ne.yy,qe[1],Nt,yt].concat(me)),typeof En<"u")return En;Ir&&(At=At.slice(0,-1*Ir*2),Nt=Nt.slice(0,-1*Ir),yt=yt.slice(0,-1*Ir)),At.push(this.productions_[qe[1]][0]),Nt.push(or.$),yt.push(or._$),ii=Ut[At[At.length-2]][At[At.length-1]],At.push(ii);break;case 3:return!0}}return!0},"parse")},nt=function(){var Tt={EOF:1,parseError:o(function(Ct,At){if(this.yy.parser)this.yy.parser.parseError(Ct,At);else throw new Error(Ct)},"parseError"),setInput:o(function(kt,Ct){return this.yy=Ct||this.yy||{},this._input=kt,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]),this.offset=0,this},"setInput"),input:o(function(){var kt=this._input[0];this.yytext+=kt,this.yyleng++,this.offset++,this.match+=kt,this.matched+=kt;var Ct=kt.match(/(?:\r\n?|\n).*/g);return Ct?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),kt},"input"),unput:o(function(kt){var Ct=kt.length,At=kt.split(/(?:\r\n?|\n)/g);this._input=kt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ct),this.offset-=Ct;var $t=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),At.length-1&&(this.yylineno-=At.length-1);var Nt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:At?(At.length===$t.length?this.yylloc.first_column:0)+$t[$t.length-At.length].length-At[0].length:this.yylloc.first_column-Ct},this.options.ranges&&(this.yylloc.range=[Nt[0],Nt[0]+this.yyleng-Ct]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(kt){this.unput(this.match.slice(kt))},"less"),pastInput:o(function(){var kt=this.matched.substr(0,this.matched.length-this.match.length);return(kt.length>20?"...":"")+kt.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var kt=this.match;return kt.length<20&&(kt+=this._input.substr(0,20-kt.length)),(kt.substr(0,20)+(kt.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var kt=this.pastInput(),Ct=new Array(kt.length+1).join("-");return kt+this.upcomingInput()+` `+Ct+"^"},"showPosition"),test_match:o(function(kt,Ct){var At,$t,Nt;if(this.options.backtrack_lexer&&(Nt={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&&(Nt.yylloc.range=this.yylloc.range.slice(0))),$t=kt[0].match(/(?:\r\n?|\n).*/g),$t&&(this.yylineno+=$t.length),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+kt[0].length},this.yytext+=kt[0],this.match+=kt[0],this.matches=kt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(kt[0].length),this.matched+=kt[0],At=this.performAction.call(this,this.yy,this,Ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),At)return At;if(this._backtrack){for(var yt in Nt)this[yt]=Nt[yt];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var kt,Ct,At,$t;this._more||(this.yytext="",this.match="");for(var Nt=this._currentRules(),yt=0;ytCt[0].length)){if(Ct=At,$t=yt,this.options.backtrack_lexer){if(kt=this.test_match(At,Nt[yt]),kt!==!1)return kt;if(this._backtrack){Ct=!1;continue}else return!1}else if(!this.options.flex)break}return Ct?(kt=this.test_match(Ct,Nt[$t]),kt!==!1?kt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Ct=this.next();return Ct||this.lex()},"lex"),begin:o(function(Ct){this.conditionStack.push(Ct)},"begin"),popState:o(function(){var Ct=this.conditionStack.length-1;return Ct>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Ct){return Ct=this.conditionStack.length-1-Math.abs(Ct||0),Ct>=0?this.conditionStack[Ct]:"INITIAL"},"topState"),pushState:o(function(Ct){this.begin(Ct)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(Ct,At,$t,Nt){var yt=Nt;switch($t){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 11;case 37:return 64;case 38:return 10;case 39:return 65;case 40:return 65;case 41:return 14;case 42:return 13;case 43:return 67;case 44:return 66;case 45:return 12;case 46:return 8;case 47:return 5;case 48:return 18;case 49:return 56;case 50:return 63;case 51: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,/^(?::)/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],inclusive:!0}}};return Tt}();ht.lexer=nt;function st(){this.yy={}}return o(st,"Parser"),st.prototype=ht,ht.Parser=st,new st}();JO.parser=JO;Pht=JO});var hs,e6,Fht=R(()=>{"use strict";ur();hl();ce();m4();hs=xp(),e6=class{constructor(){this.classes=new Map;this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{o(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:Er.quadrantChart?.chartWidth||500,chartWidth:Er.quadrantChart?.chartHeight||500,titlePadding:Er.quadrantChart?.titlePadding||10,titleFontSize:Er.quadrantChart?.titleFontSize||20,quadrantPadding:Er.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:Er.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:Er.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:Er.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:Er.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:Er.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:Er.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:Er.quadrantChart?.pointTextPadding||5,pointLabelFontSize:Er.quadrantChart?.pointLabelFontSize||12,pointRadius:Er.quadrantChart?.pointRadius||5,xAxisPosition:Er.quadrantChart?.xAxisPosition||"top",yAxisPosition:Er.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:Er.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:Er.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:hs.quadrant1Fill,quadrant2Fill:hs.quadrant2Fill,quadrant3Fill:hs.quadrant3Fill,quadrant4Fill:hs.quadrant4Fill,quadrant1TextFill:hs.quadrant1TextFill,quadrant2TextFill:hs.quadrant2TextFill,quadrant3TextFill:hs.quadrant3TextFill,quadrant4TextFill:hs.quadrant4TextFill,quadrantPointFill:hs.quadrantPointFill,quadrantPointTextFill:hs.quadrantPointTextFill,quadrantXAxisTextFill:hs.quadrantXAxisTextFill,quadrantYAxisTextFill:hs.quadrantYAxisTextFill,quadrantTitleFill:hs.quadrantTitleFill,quadrantInternalBorderStrokeFill:hs.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:hs.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,V.info("clear called")}setData(t){this.data={...this.data,...t}}addPoints(t){this.data.points=[...t,...this.data.points]}addClass(t,r){this.classes.set(t,r)}setConfig(t){V.trace("setConfig called with: ",t),this.config={...this.config,...t}}setThemeConfig(t){V.trace("setThemeConfig called with: ",t),this.themeConfig={...this.themeConfig,...t}}calculateSpace(t,r,n,i){let a=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,s={top:t==="top"&&r?a:0,bottom:t==="bottom"&&r?a:0},l=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,u={left:this.config.yAxisPosition==="left"&&n?l:0,right:this.config.yAxisPosition==="right"&&n?l:0},h=this.config.titleFontSize+this.config.titlePadding*2,f={top:i?h:0},d=this.config.quadrantPadding+u.left,p=this.config.quadrantPadding+s.top+f.top,m=this.config.chartWidth-this.config.quadrantPadding*2-u.left-u.right,g=this.config.chartHeight-this.config.quadrantPadding*2-s.top-s.bottom-f.top,y=m/2,v=g/2;return{xAxisSpace:s,yAxisSpace:u,titleSpace:f,quadrantSpace:{quadrantLeft:d,quadrantTop:p,quadrantWidth:m,quadrantHalfWidth:y,quadrantHeight:g,quadrantHalfHeight:v}}}getAxisLabels(t,r,n,i){let{quadrantSpace:a,titleSpace:s}=i,{quadrantHalfHeight:l,quadrantHeight:u,quadrantLeft:h,quadrantHalfWidth:f,quadrantTop:d,quadrantWidth:p}=a,m=!!this.data.xAxisRightText,g=!!this.data.yAxisTopText,y=[];return this.data.xAxisLeftText&&r&&y.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+(m?f/2:0),y:t==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&r&&y.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+f+(m?f/2:0),y:t==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&n&&y.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+u-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&n&&y.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+l-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),y}getQuadrants(t){let{quadrantSpace:r}=t,{quadrantHalfHeight:n,quadrantLeft:i,quadrantHalfWidth:a,quadrantTop:s}=r,l=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i+a,y:s,width:a,height:n,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:i,y:s,width:a,height:n,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:i,y:s+n,width:a,height:n,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:i+a,y:s+n,width:a,height:n,fill:this.themeConfig.quadrant4Fill}];for(let u of l)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"):(u.text.y=u.y+this.config.quadrantTextTopPadding,u.text.horizontalPos="top");return l}getQuadrantPoints(t){let{quadrantSpace:r}=t,{quadrantHeight:n,quadrantLeft:i,quadrantTop:a,quadrantWidth:s}=r,l=wl().domain([0,1]).range([i,s+i]),u=wl().domain([0,1]).range([n+a,a]);return this.data.points.map(f=>{let d=this.classes.get(f.className);return d&&(f={...d,...f}),{x:l(f.x),y:u(f.y),fill:f.color??this.themeConfig.quadrantPointFill,radius:f.radius??this.config.pointRadius,text:{text:f.text,fill:this.themeConfig.quadrantPointTextFill,x:l(f.x),y:u(f.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:f.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:f.strokeWidth??"0px"}})}getBorders(t){let r=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:n}=t,{quadrantHalfHeight:i,quadrantHeight:a,quadrantLeft:s,quadrantHalfWidth:l,quadrantTop:u,quadrantWidth:h}=n;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u,x2:s+h+r,y2:u},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s+h,y1:u+r,x2:s+h,y2:u+a-r},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u+a,x2:s+h+r,y2:u+a},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s,y1:u+r,x2:s,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+l,y1:u+r,x2:s+l,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+r,y1:u+i,x2:s+h-r,y2:u+i}]}getTitle(t){if(t)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}}build(){let t=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),r=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),n=this.config.showTitle&&!!this.data.titleText,i=this.data.points.length>0?"bottom":this.config.xAxisPosition,a=this.calculateSpace(i,t,r,n);return{points:this.getQuadrantPoints(a),quadrants:this.getQuadrants(a),axisLabels:this.getAxisLabels(i,t,r,a),borderLines:this.getBorders(a),title:this.getTitle(n)}}}});function tP(e){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(e)}function zht(e){return!/^\d+$/.test(e)}function $ht(e){return!/^\d+px$/.test(e)}var N0,Ght=R(()=>{"use strict";N0=class extends Error{static{o(this,"InvalidStyleError")}constructor(t,r,n){super(`value for ${t} ${r} is invalid, please use a valid ${n}`),this.name="InvalidStyleError"}};o(tP,"validateHexCode");o(zht,"validateNumber");o($ht,"validateSizeInPixels")});function Qu(e){return Zr(e.trim(),lVt)}function cVt(e){Ca.setData({quadrant1Text:Qu(e.text)})}function uVt(e){Ca.setData({quadrant2Text:Qu(e.text)})}function hVt(e){Ca.setData({quadrant3Text:Qu(e.text)})}function fVt(e){Ca.setData({quadrant4Text:Qu(e.text)})}function dVt(e){Ca.setData({xAxisLeftText:Qu(e.text)})}function pVt(e){Ca.setData({xAxisRightText:Qu(e.text)})}function mVt(e){Ca.setData({yAxisTopText:Qu(e.text)})}function gVt(e){Ca.setData({yAxisBottomText:Qu(e.text)})}function eP(e){let t={};for(let r of e){let[n,i]=r.trim().split(/\s*:\s*/);if(n==="radius"){if(zht(i))throw new N0(n,i,"number");t.radius=parseInt(i)}else if(n==="color"){if(tP(i))throw new N0(n,i,"hex code");t.color=i}else if(n==="stroke-color"){if(tP(i))throw new N0(n,i,"hex code");t.strokeColor=i}else if(n==="stroke-width"){if($ht(i))throw new N0(n,i,"number of pixels (eg. 10px)");t.strokeWidth=i}else throw new Error(`style named ${n} is not supported.`)}return t}function yVt(e,t,r,n,i){let a=eP(i);Ca.addPoints([{x:r,y:n,text:Qu(e.text),className:t,...a}])}function vVt(e,t){Ca.addClass(e,eP(t))}function xVt(e){Ca.setConfig({chartWidth:e})}function bVt(e){Ca.setConfig({chartHeight:e})}function wVt(){let e=pt(),{themeVariables:t,quadrantChart:r}=e;return r&&Ca.setConfig(r),Ca.setThemeConfig({quadrant1Fill:t.quadrant1Fill,quadrant2Fill:t.quadrant2Fill,quadrant3Fill:t.quadrant3Fill,quadrant4Fill:t.quadrant4Fill,quadrant1TextFill:t.quadrant1TextFill,quadrant2TextFill:t.quadrant2TextFill,quadrant3TextFill:t.quadrant3TextFill,quadrant4TextFill:t.quadrant4TextFill,quadrantPointFill:t.quadrantPointFill,quadrantPointTextFill:t.quadrantPointTextFill,quadrantXAxisTextFill:t.quadrantXAxisTextFill,quadrantYAxisTextFill:t.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:t.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:t.quadrantInternalBorderStrokeFill,quadrantTitleFill:t.quadrantTitleFill}),Ca.setData({titleText:Jr()}),Ca.build()}var lVt,Ca,TVt,Vht,Uht=R(()=>{"use strict";Ue();hr();Ci();Fht();Ght();lVt=pt();o(Qu,"textSanitizer");Ca=new e6;o(cVt,"setQuadrant1Text");o(uVt,"setQuadrant2Text");o(hVt,"setQuadrant3Text");o(fVt,"setQuadrant4Text");o(dVt,"setXAxisLeftText");o(pVt,"setXAxisRightText");o(mVt,"setYAxisTopText");o(gVt,"setYAxisBottomText");o(eP,"parseStyles");o(yVt,"addPoint");o(vVt,"addClass");o(xVt,"setWidth");o(bVt,"setHeight");o(wVt,"getQuadrantData");TVt=o(function(){Ca.clear(),Ar()},"clear"),Vht={setWidth:xVt,setHeight:bVt,setQuadrant1Text:cVt,setQuadrant2Text:uVt,setQuadrant3Text:hVt,setQuadrant4Text:fVt,setXAxisLeftText:dVt,setXAxisRightText:pVt,setYAxisTopText:mVt,setYAxisBottomText:gVt,parseStyles:eP,addPoint:yVt,addClass:vVt,getQuadrantData:wVt,clear:TVt,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,getAccDescription:zr,setAccDescription:Fr}});var kVt,Hht,Wht=R(()=>{"use strict";ur();Ue();ce();Jn();kVt=o((e,t,r,n)=>{function i(A){return A==="top"?"hanging":"middle"}o(i,"getDominantBaseLine");function a(A){return A==="left"?"start":"middle"}o(a,"getTextAnchor");function s(A){return`translate(${A.x}, ${A.y}) rotate(${A.rotation||0})`}o(s,"getTransformation");let l=pt();V.debug(`Rendering quadrant chart `+e);let u=l.securityLevel,h;u==="sandbox"&&(h=Gt("#i"+t));let d=(u==="sandbox"?Gt(h.nodes()[0].contentDocument.body):Gt("body")).select(`[id="${t}"]`),p=d.append("g").attr("class","main"),m=l.quadrantChart?.chartWidth??500,g=l.quadrantChart?.chartHeight??500;Pr(d,g,m,l.quadrantChart?.useMaxWidth??!0),d.attr("viewBox","0 0 "+m+" "+g),n.db.setHeight(g),n.db.setWidth(m);let y=n.db.getQuadrantData(),v=p.append("g").attr("class","quadrants"),x=p.append("g").attr("class","border"),b=p.append("g").attr("class","data-points"),w=p.append("g").attr("class","labels"),S=p.append("g").attr("class","title");y.title&&S.append("text").attr("x",0).attr("y",0).attr("fill",y.title.fill).attr("font-size",y.title.fontSize).attr("dominant-baseline",i(y.title.horizontalPos)).attr("text-anchor",a(y.title.verticalPos)).attr("transform",s(y.title)).text(y.title.text),y.borderLines&&x.selectAll("line").data(y.borderLines).enter().append("line").attr("x1",A=>A.x1).attr("y1",A=>A.y1).attr("x2",A=>A.x2).attr("y2",A=>A.y2).style("stroke",A=>A.strokeFill).style("stroke-width",A=>A.strokeWidth);let T=v.selectAll("g.quadrant").data(y.quadrants).enter().append("g").attr("class","quadrant");T.append("rect").attr("x",A=>A.x).attr("y",A=>A.y).attr("width",A=>A.width).attr("height",A=>A.height).attr("fill",A=>A.fill),T.append("text").attr("x",0).attr("y",0).attr("fill",A=>A.text.fill).attr("font-size",A=>A.text.fontSize).attr("dominant-baseline",A=>i(A.text.horizontalPos)).attr("text-anchor",A=>a(A.text.verticalPos)).attr("transform",A=>s(A.text)).text(A=>A.text.text),w.selectAll("g.label").data(y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(A=>A.text).attr("fill",A=>A.fill).attr("font-size",A=>A.fontSize).attr("dominant-baseline",A=>i(A.horizontalPos)).attr("text-anchor",A=>a(A.verticalPos)).attr("transform",A=>s(A));let _=b.selectAll("g.data-point").data(y.points).enter().append("g").attr("class","data-point");_.append("circle").attr("cx",A=>A.x).attr("cy",A=>A.y).attr("r",A=>A.radius).attr("fill",A=>A.fill).attr("stroke",A=>A.strokeColor).attr("stroke-width",A=>A.strokeWidth),_.append("text").attr("x",0).attr("y",0).text(A=>A.text.text).attr("fill",A=>A.text.fill).attr("font-size",A=>A.text.fontSize).attr("dominant-baseline",A=>i(A.text.horizontalPos)).attr("text-anchor",A=>a(A.text.verticalPos)).attr("transform",A=>s(A.text))},"draw"),Hht={draw:kVt}});var Yht={};xr(Yht,{diagram:()=>EVt});var EVt,qht=R(()=>{"use strict";Bht();Uht();Wht();EVt={parser:Pht,db:Vht,renderer:Hht,styles:o(()=>"","styles")}});var rP,Kht,Qht=R(()=>{"use strict";rP=function(){var e=o(function(O,D,P,F){for(P=P||{},F=O.length;F--;P[O[F]]=D);return P},"o"),t=[1,10,12,14,16,18,19,21,23],r=[2,6],n=[1,3],i=[1,5],a=[1,6],s=[1,7],l=[1,5,10,12,14,16,18,19,21,23,34,35,36],u=[1,25],h=[1,26],f=[1,28],d=[1,29],p=[1,30],m=[1,31],g=[1,32],y=[1,33],v=[1,34],x=[1,35],b=[1,36],w=[1,37],S=[1,43],T=[1,42],E=[1,47],_=[1,50],A=[1,10,12,14,16,18,19,21,23,34,35,36],L=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],M=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],N=[1,64],k={trace:o(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,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$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",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"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],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:o(function(D,P,F,B,G,z,W){var Q=z.length-1;switch(G){case 5:B.setOrientation(z[Q]);break;case 9:B.setDiagramTitle(z[Q].text.trim());break;case 12:B.setLineData({text:"",type:"text"},z[Q]);break;case 13:B.setLineData(z[Q-1],z[Q]);break;case 14:B.setBarData({text:"",type:"text"},z[Q]);break;case 15:B.setBarData(z[Q-1],z[Q]);break;case 16:this.$=z[Q].trim(),B.setAccTitle(this.$);break;case 17:case 18:this.$=z[Q].trim(),B.setAccDescription(this.$);break;case 19:this.$=z[Q-1];break;case 20:this.$=[Number(z[Q-2]),...z[Q]];break;case 21:this.$=[Number(z[Q])];break;case 22:B.setXAxisTitle(z[Q]);break;case 23:B.setXAxisTitle(z[Q-1]);break;case 24:B.setXAxisTitle({type:"text",text:""});break;case 25:B.setXAxisBand(z[Q]);break;case 26:B.setXAxisRangeData(Number(z[Q-2]),Number(z[Q]));break;case 27:this.$=z[Q-1];break;case 28:this.$=[z[Q-2],...z[Q]];break;case 29:this.$=[z[Q]];break;case 30:B.setYAxisTitle(z[Q]);break;case 31:B.setYAxisTitle(z[Q-1]);break;case 32:B.setYAxisTitle({type:"text",text:""});break;case 33:B.setYAxisRangeData(Number(z[Q-2]),Number(z[Q]));break;case 37:this.$={text:z[Q],type:"text"};break;case 38:this.$={text:z[Q],type:"text"};break;case 39:this.$={text:z[Q],type:"markdown"};break;case 40:this.$=z[Q];break;case 41:this.$=z[Q-1]+""+z[Q];break}},"anonymous"),table:[e(t,r,{3:1,4:2,7:4,5:n,34:i,35:a,36:s}),{1:[3]},e(t,r,{4:2,7:4,3:8,5:n,34:i,35:a,36:s}),e(t,r,{4:2,7:4,6:9,3:10,5:n,8:[1,11],34:i,35:a,36:s}),{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]},e(l,[2,34]),e(l,[2,35]),e(l,[2,36]),{1:[2,1]},e(t,r,{4:2,7:4,3:21,5:n,34:i,35:a,36:s}),{1:[2,3]},e(l,[2,5]),e(t,[2,7],{4:22,34:i,35:a,36:s}),{11:23,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:39,13:38,24:S,27:T,29:40,30:41,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:45,15:44,27:E,33:46,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:49,17:48,24:_,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:52,17:51,24:_,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{20:[1,53]},{22:[1,54]},e(A,[2,18]),{1:[2,2]},e(A,[2,8]),e(A,[2,9]),e(L,[2,37],{40:55,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w}),e(L,[2,38]),e(L,[2,39]),e(M,[2,40]),e(M,[2,42]),e(M,[2,43]),e(M,[2,44]),e(M,[2,45]),e(M,[2,46]),e(M,[2,47]),e(M,[2,48]),e(M,[2,49]),e(M,[2,50]),e(M,[2,51]),e(A,[2,10]),e(A,[2,22],{30:41,29:56,24:S,27:T}),e(A,[2,24]),e(A,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},e(A,[2,11]),e(A,[2,30],{33:60,27:E}),e(A,[2,32]),{31:[1,61]},e(A,[2,12]),{17:62,24:_},{25:63,27:N},e(A,[2,14]),{17:65,24:_},e(A,[2,16]),e(A,[2,17]),e(M,[2,41]),e(A,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},e(A,[2,31]),{27:[1,69]},e(A,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},e(A,[2,15]),e(A,[2,26]),e(A,[2,27]),{11:59,32:72,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},e(A,[2,33]),e(A,[2,19]),{25:73,27:N},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:o(function(D,P){if(P.recoverable)this.trace(D);else{var F=new Error(D);throw F.hash=P,F}},"parseError"),parse:o(function(D){var P=this,F=[0],B=[],G=[null],z=[],W=this.table,Q="",j=0,at=0,X=0,J=2,Z=1,H=z.slice.call(arguments,1),q=Object.create(this.lexer),K={yy:{}};for(var ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ot)&&(K.yy[ot]=this.yy[ot]);q.setInput(D,K.yy),K.yy.lexer=q,K.yy.parser=this,typeof q.yylloc>"u"&&(q.yylloc={});var ct=q.yylloc;z.push(ct);var ut=q.options&&q.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function et(ht){F.length=F.length-2*ht,G.length=G.length-ht,z.length=z.length-ht}o(et,"popStack");function Mt(){var ht;return ht=B.pop()||q.lex()||Z,typeof ht!="number"&&(ht instanceof Array&&(B=ht,ht=B.pop()),ht=P.symbols_[ht]||ht),ht}o(Mt,"lex");for(var it,wt,Ot,St,Vt,Pt,_t={},dt,Y,ft,mt;;){if(Ot=F[F.length-1],this.defaultActions[Ot]?St=this.defaultActions[Ot]:((it===null||typeof it>"u")&&(it=Mt()),St=W[Ot]&&W[Ot][it]),typeof St>"u"||!St.length||!St[0]){var rt="";mt=[];for(dt in W[Ot])this.terminals_[dt]&&dt>J&&mt.push("'"+this.terminals_[dt]+"'");q.showPosition?rt="Parse error on line "+(j+1)+`: `+q.showPosition()+` Expecting `+mt.join(", ")+", got '"+(this.terminals_[it]||it)+"'":rt="Parse error on line "+(j+1)+": Unexpected "+(it==Z?"end of input":"'"+(this.terminals_[it]||it)+"'"),this.parseError(rt,{text:q.match,token:this.terminals_[it]||it,line:q.yylineno,loc:ct,expected:mt})}if(St[0]instanceof Array&&St.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ot+", token: "+it);switch(St[0]){case 1:F.push(it),G.push(q.yytext),z.push(q.yylloc),F.push(St[1]),it=null,wt?(it=wt,wt=null):(at=q.yyleng,Q=q.yytext,j=q.yylineno,ct=q.yylloc,X>0&&X--);break;case 2:if(Y=this.productions_[St[1]][1],_t.$=G[G.length-Y],_t._$={first_line:z[z.length-(Y||1)].first_line,last_line:z[z.length-1].last_line,first_column:z[z.length-(Y||1)].first_column,last_column:z[z.length-1].last_column},ut&&(_t._$.range=[z[z.length-(Y||1)].range[0],z[z.length-1].range[1]]),Pt=this.performAction.apply(_t,[Q,at,j,K.yy,St[1],G,z].concat(H)),typeof Pt<"u")return Pt;Y&&(F=F.slice(0,-1*Y*2),G=G.slice(0,-1*Y),z=z.slice(0,-1*Y)),F.push(this.productions_[St[1]][0]),G.push(_t.$),z.push(_t._$),ft=W[F[F.length-2]][F[F.length-1]],F.push(ft);break;case 3:return!0}}return!0},"parse")},I=function(){var O={EOF:1,parseError:o(function(P,F){if(this.yy.parser)this.yy.parser.parseError(P,F);else throw new Error(P)},"parseError"),setInput:o(function(D,P){return this.yy=P||this.yy||{},this._input=D,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]),this.offset=0,this},"setInput"),input:o(function(){var D=this._input[0];this.yytext+=D,this.yyleng++,this.offset++,this.match+=D,this.matched+=D;var P=D.match(/(?:\r\n?|\n).*/g);return P?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),D},"input"),unput:o(function(D){var P=D.length,F=D.split(/(?:\r\n?|\n)/g);this._input=D+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-P),this.offset-=P;var B=this.match.split(/(?:\r\n?|\n)/g);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 G=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:F?(F.length===B.length?this.yylloc.first_column:0)+B[B.length-F.length].length-F[0].length:this.yylloc.first_column-P},this.options.ranges&&(this.yylloc.range=[G[0],G[0]+this.yyleng-P]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(D){this.unput(this.match.slice(D))},"less"),pastInput:o(function(){var D=this.matched.substr(0,this.matched.length-this.match.length);return(D.length>20?"...":"")+D.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var D=this.match;return D.length<20&&(D+=this._input.substr(0,20-D.length)),(D.substr(0,20)+(D.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var D=this.pastInput(),P=new Array(D.length+1).join("-");return D+this.upcomingInput()+` `+P+"^"},"showPosition"),test_match:o(function(D,P){var F,B,G;if(this.options.backtrack_lexer&&(G={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&&(G.yylloc.range=this.yylloc.range.slice(0))),B=D[0].match(/(?:\r\n?|\n).*/g),B&&(this.yylineno+=B.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:B?B[B.length-1].length-B[B.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+D[0].length},this.yytext+=D[0],this.match+=D[0],this.matches=D,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(D[0].length),this.matched+=D[0],F=this.performAction.call(this,this.yy,this,P,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),F)return F;if(this._backtrack){for(var z in G)this[z]=G[z];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var D,P,F,B;this._more||(this.yytext="",this.match="");for(var G=this._currentRules(),z=0;zP[0].length)){if(P=F,B=z,this.options.backtrack_lexer){if(D=this.test_match(F,G[z]),D!==!1)return D;if(this._backtrack){P=!1;continue}else return!1}else if(!this.options.flex)break}return P?(D=this.test_match(P,G[B]),D!==!1?D:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var P=this.next();return P||this.lex()},"lex"),begin:o(function(P){this.conditionStack.push(P)},"begin"),popState:o(function(){var P=this.conditionStack.length-1;return P>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(P){return P=this.conditionStack.length-1-Math.abs(P||0),P>=0?this.conditionStack[P]:"INITIAL"},"topState"),pushState:o(function(P){this.begin(P)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(P,F,B,G){var z=G;switch(B){case 0:break;case 1:break;case 2:return this.popState(),34;break;case 3:return this.popState(),34;break;case 4:return 34;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 8;case 16:return this.pushState("axis_data"),"X_AXIS";break;case 17:return this.pushState("axis_data"),"Y_AXIS";break;case 18:return this.pushState("axis_band_data"),24;break;case 19:return 31;case 20:return this.pushState("data"),16;break;case 21:return this.pushState("data"),18;break;case 22:return this.pushState("data_inner"),24;break;case 23:return 27;case 24:return this.popState(),26;break;case 25:this.popState();break;case 26:this.pushState("string");break;case 27:this.popState();break;case 28:return"STR";case 29:return 24;case 30:return 26;case 31:return 43;case 32:return"COLON";case 33:return 44;case 34:return 28;case 35:return 45;case 36:return 46;case 37:return 48;case 38:return 50;case 39:return 47;case 40:return 41;case 41:return 49;case 42:return 42;case 43:break;case 44:return 35;case 45:return 36}},"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,/^(?:(?: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\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/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,20,21,23,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,20,21,22,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,23,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],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:[27,28],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0}}};return O}();k.lexer=I;function C(){this.yy={}}return o(C,"Parser"),C.prototype=k,k.Parser=C,new C}();rP.parser=rP;Kht=rP});function nP(e){return e.type==="bar"}function r6(e){return e.type==="band"}function qg(e){return e.type==="linear"}var n6=R(()=>{"use strict";o(nP,"isBarPlot");o(r6,"isBandAxisData");o(qg,"isLinearAxisData")});var Xg,iP=R(()=>{"use strict";Nl();Xg=class{constructor(t){this.parentGroup=t}static{o(this,"TextDimensionCalculatorWithFont")}getMaxDimension(t,r){if(!this.parentGroup)return{width:t.reduce((a,s)=>Math.max(s.length,a),0)*r,height:r};let n={width:0,height:0},i=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",r);for(let a of t){let s=vQ(i,1,a),l=s?s.width:a.length*r,u=s?s.height:r;n.width=Math.max(n.width,l),n.height=Math.max(n.height,u)}return i.remove(),n}}});var jg,aP=R(()=>{"use strict";jg=class{constructor(t,r,n,i){this.axisConfig=t;this.title=r;this.textDimensionCalculator=n;this.axisThemeConfig=i;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.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}static{o(this,"BaseAxis")}setRange(t){this.range=t,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=t[1]-t[0]:this.boundingRect.width=t[1]-t[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(t){this.axisPosition=t,this.setRange(this.range)}getTickDistance(){let t=this.getRange();return Math.abs(t[0]-t[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(t=>t.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){.7*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(.7*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(t){let r=t.height;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*t.width;this.outerPadding=Math.min(n.width/2,i);let a=n.height+this.axisConfig.labelPadding*2;this.labelTextHeight=n.height,a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=t.width,this.boundingRect.height=t.height-r}calculateSpaceIfDrawnVertical(t){let r=t.width;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*t.height;this.outerPadding=Math.min(n.height/2,i);let a=n.width+this.axisConfig.labelPadding*2;a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=t.width-r,this.boundingRect.height=t.height}calculateSpace(t){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(t):this.calculateSpaceIfDrawnHorizontally(t),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}getDrawableElementsForLeftAxis(){let t=[];if(this.showAxisLine){let r=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${r},${this.boundingRect.y} L ${r},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(r=>({text:r.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(r),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){let r=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${r},${this.getScaleValue(n)} L ${r-this.axisConfig.tickLength},${this.getScaleValue(n)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&t.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"}]}),t}getDrawableElementsForBottomAxis(){let t=[];if(this.showAxisLine){let r=this.boundingRect.y+this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let r=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r} L ${this.getScaleValue(n)},${r+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&t.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"}]}),t}getDrawableElementsForTopAxis(){let t=[];if(this.showAxisLine){let r=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),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"}))}),this.showTick){let r=this.boundingRect.y;t.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(n)},${r+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&t.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"}]}),t}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}}});var i6,Zht=R(()=>{"use strict";ur();ce();aP();i6=class extends jg{static{o(this,"BandAxis")}constructor(t,r,n,i,a){super(t,i,a,r),this.categories=n,this.scale=Up().domain(this.categories).range(this.getRange())}setRange(t){super.setRange(t)}recalculateScale(){this.scale=Up().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),V.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(t){return this.scale(t)??this.getRange()[0]}}});var a6,Jht=R(()=>{"use strict";ur();aP();a6=class extends jg{static{o(this,"LinearAxis")}constructor(t,r,n,i,a){super(t,i,a,r),this.domain=n,this.scale=wl().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let t=[...this.domain];this.axisPosition==="left"&&t.reverse(),this.scale=wl().domain(t).range(this.getRange())}getScaleValue(t){return this.scale(t)}}});function sP(e,t,r,n){let i=new Xg(n);return r6(e)?new i6(t,r,e.categories,e.title,i):new a6(t,r,[e.min,e.max],e.title,i)}var tft=R(()=>{"use strict";n6();iP();Zht();Jht();o(sP,"getAxis")});function eft(e,t,r,n){let i=new Xg(n);return new oP(i,e,t,r)}var oP,rft=R(()=>{"use strict";iP();oP=class{constructor(t,r,n,i){this.textDimensionCalculator=t;this.chartConfig=r;this.chartData=n;this.chartThemeConfig=i;this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{o(this,"ChartTitle")}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){let r=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(r.width,t.width),i=r.height+2*this.chartConfig.titlePadding;return r.width<=n&&r.height<=i&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=n,this.boundingRect.height=i,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let t=[];return this.showChartTitle&&t.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}]}),t}};o(eft,"getChartTitleComponent")});var s6,nft=R(()=>{"use strict";ur();s6=class{constructor(t,r,n,i,a){this.plotData=t;this.xAxis=r;this.yAxis=n;this.orientation=i;this.plotIndex=a}static{o(this,"LinePlot")}getDrawableElement(){let t=this.plotData.data.map(n=>[this.xAxis.getScaleValue(n[0]),this.yAxis.getScaleValue(n[1])]),r;return this.orientation==="horizontal"?r=ma().y(n=>n[0]).x(n=>n[1])(t):r=ma().x(n=>n[0]).y(n=>n[1])(t),r?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:r,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}});var o6,ift=R(()=>{"use strict";o6=class{constructor(t,r,n,i,a,s){this.barData=t;this.boundingRect=r;this.xAxis=n;this.yAxis=i;this.orientation=a;this.plotIndex=s}static{o(this,"BarPlot")}getDrawableElement(){let t=this.barData.data.map(a=>[this.xAxis.getScaleValue(a[0]),this.yAxis.getScaleValue(a[1])]),n=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-.05),i=n/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map(a=>({x:this.boundingRect.x,y:a[0]-i,height:n,width:a[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map(a=>({x:a[0]-i,y:a[1],width:n,height:this.boundingRect.y+this.boundingRect.height-a[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}}});function aft(e,t,r){return new lP(e,t,r)}var lP,sft=R(()=>{"use strict";nft();ift();lP=class{constructor(t,r,n){this.chartConfig=t;this.chartData=r;this.chartThemeConfig=n;this.boundingRect={x:0,y:0,width:0,height:0}}static{o(this,"BasePlot")}setAxes(t,r){this.xAxis=t,this.yAxis=r}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){return this.boundingRect.width=t.width,this.boundingRect.height=t.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 t=[];for(let[r,n]of this.chartData.plots.entries())switch(n.type){case"line":{let i=new s6(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);t.push(...i.getDrawableElement())}break;case"bar":{let i=new o6(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);t.push(...i.getDrawableElement())}break}return t}};o(aft,"getPlotComponent")});var l6,oft=R(()=>{"use strict";tft();rft();sft();n6();l6=class{constructor(t,r,n,i){this.chartConfig=t;this.chartData=r;this.componentStore={title:eft(t,r,n,i),plot:aft(t,r,n),xAxis:sP(r.xAxis,t.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},i),yAxis:sP(r.yAxis,t.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},i)}}static{o(this,"Orchestrator")}calculateVerticalSpace(){let t=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),s=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),l=this.componentStore.plot.calculateSpace({width:a,height:s});t-=l.width,r-=l.height,l=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),i=l.height,r-=l.height,this.componentStore.xAxis.setAxisPosition("bottom"),l=this.componentStore.xAxis.calculateSpace({width:t,height:r}),r-=l.height,this.componentStore.yAxis.setAxisPosition("left"),l=this.componentStore.yAxis.calculateSpace({width:t,height:r}),n=l.width,t-=l.width,t>0&&(a+=t,t=0),r>0&&(s+=r,r=0),this.componentStore.plot.calculateSpace({width:a,height:s}),this.componentStore.plot.setBoundingBoxXY({x:n,y:i}),this.componentStore.xAxis.setRange([n,n+a]),this.componentStore.xAxis.setBoundingBoxXY({x:n,y:i+s}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some(u=>nP(u))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let t=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=0,s=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),l=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),u=this.componentStore.plot.calculateSpace({width:s,height:l});t-=u.width,r-=u.height,u=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),n=u.height,r-=u.height,this.componentStore.xAxis.setAxisPosition("left"),u=this.componentStore.xAxis.calculateSpace({width:t,height:r}),t-=u.width,i=u.width,this.componentStore.yAxis.setAxisPosition("top"),u=this.componentStore.yAxis.calculateSpace({width:t,height:r}),r-=u.height,a=n+u.height,t>0&&(s+=t,t=0),r>0&&(l+=r,r=0),this.componentStore.plot.calculateSpace({width:s,height:l}),this.componentStore.plot.setBoundingBoxXY({x:i,y:a}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:i,y:n}),this.componentStore.xAxis.setRange([a,a+l]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:a}),this.chartData.plots.some(h=>nP(h))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let t=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let r of Object.values(this.componentStore))t.push(...r.getDrawableElements());return t}}});var c6,lft=R(()=>{"use strict";oft();c6=class{static{o(this,"XYChartBuilder")}static build(t,r,n,i){return new l6(t,r,n,i).getDrawableElement()}}});function uft(){let e=xp(),t=Nr();return Ss(e.xyChart,t.themeVariables.xyChart)}function hft(){let e=Nr();return Ss(Er.xyChart,e.xyChart)}function fft(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function hP(e){let t=Nr();return Zr(e.trim(),t)}function _Vt(e){cft=e}function LVt(e){e==="horizontal"?Fx.chartOrientation="horizontal":Fx.chartOrientation="vertical"}function DVt(e){hn.xAxis.title=hP(e.text)}function dft(e,t){hn.xAxis={type:"linear",title:hn.xAxis.title,min:e,max:t},u6=!0}function RVt(e){hn.xAxis={type:"band",title:hn.xAxis.title,categories:e.map(t=>hP(t.text))},u6=!0}function NVt(e){hn.yAxis.title=hP(e.text)}function MVt(e,t){hn.yAxis={type:"linear",title:hn.yAxis.title,min:e,max:t},uP=!0}function IVt(e){let t=Math.min(...e),r=Math.max(...e),n=qg(hn.yAxis)?hn.yAxis.min:1/0,i=qg(hn.yAxis)?hn.yAxis.max:-1/0;hn.yAxis={type:"linear",title:hn.yAxis.title,min:Math.min(n,t),max:Math.max(i,r)}}function pft(e){let t=[];if(e.length===0)return t;if(!u6){let r=qg(hn.xAxis)?hn.xAxis.min:1/0,n=qg(hn.xAxis)?hn.xAxis.max:-1/0;dft(Math.min(r,1),Math.max(n,e.length))}if(uP||IVt(e),r6(hn.xAxis)&&(t=hn.xAxis.categories.map((r,n)=>[r,e[n]])),qg(hn.xAxis)){let r=hn.xAxis.min,n=hn.xAxis.max,i=(n-r)/(e.length-1),a=[];for(let s=r;s<=n;s+=i)a.push(`${s}`);t=a.map((s,l)=>[s,e[l]])}return t}function mft(e){return cP[e===0?0:e%cP.length]}function OVt(e,t){let r=pft(t);hn.plots.push({type:"line",strokeFill:mft(Bx),strokeWidth:2,data:r}),Bx++}function PVt(e,t){let r=pft(t);hn.plots.push({type:"bar",fill:mft(Bx),data:r}),Bx++}function BVt(){if(hn.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return hn.title=Jr(),c6.build(Fx,hn,zx,cft)}function FVt(){return zx}function zVt(){return Fx}var Bx,cft,Fx,zx,hn,cP,u6,uP,$Vt,gft,yft=R(()=>{"use strict";js();hl();m4();_r();hr();Ci();lft();n6();Bx=0,Fx=hft(),zx=uft(),hn=fft(),cP=zx.plotColorPalette.split(",").map(e=>e.trim()),u6=!1,uP=!1;o(uft,"getChartDefaultThemeConfig");o(hft,"getChartDefaultConfig");o(fft,"getChartDefaultData");o(hP,"textSanitizer");o(_Vt,"setTmpSVGG");o(LVt,"setOrientation");o(DVt,"setXAxisTitle");o(dft,"setXAxisRangeData");o(RVt,"setXAxisBand");o(NVt,"setYAxisTitle");o(MVt,"setYAxisRangeData");o(IVt,"setYAxisRangeFromPlotData");o(pft,"transformDataWithoutCategory");o(mft,"getPlotColorFromPalette");o(OVt,"setLineData");o(PVt,"setBarData");o(BVt,"getDrawableElem");o(FVt,"getChartThemeConfig");o(zVt,"getChartConfig");$Vt=o(function(){Ar(),Bx=0,Fx=hft(),hn=fft(),zx=uft(),cP=zx.plotColorPalette.split(",").map(e=>e.trim()),u6=!1,uP=!1},"clear"),gft={getDrawableElem:BVt,clear:$Vt,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,getAccDescription:zr,setAccDescription:Fr,setOrientation:LVt,setXAxisTitle:DVt,setXAxisRangeData:dft,setXAxisBand:RVt,setYAxisTitle:NVt,setYAxisRangeData:MVt,setLineData:OVt,setBarData:PVt,setTmpSVGG:_Vt,getChartThemeConfig:FVt,getChartConfig:zVt}});var GVt,vft,xft=R(()=>{"use strict";ce();xf();Jn();GVt=o((e,t,r,n)=>{let i=n.db,a=i.getChartThemeConfig(),s=i.getChartConfig();function l(v){return v==="top"?"text-before-edge":"middle"}o(l,"getDominantBaseLine");function u(v){return v==="left"?"start":v==="right"?"end":"middle"}o(u,"getTextAnchor");function h(v){return`translate(${v.x}, ${v.y}) rotate(${v.rotation||0})`}o(h,"getTextTransformation"),V.debug(`Rendering xychart chart `+e);let f=Vs(t),d=f.append("g").attr("class","main"),p=d.append("rect").attr("width",s.width).attr("height",s.height).attr("class","background");Pr(f,s.height,s.width,!0),f.attr("viewBox",`0 0 ${s.width} ${s.height}`),p.attr("fill",a.backgroundColor),i.setTmpSVGG(f.append("g").attr("class","mermaid-tmp-group"));let m=i.getDrawableElem(),g={};function y(v){let x=d,b="";for(let[w]of v.entries()){let S=d;w>0&&g[b]&&(S=g[b]),b+=v[w],x=g[b],x||(x=g[b]=S.append("g").attr("class",v[w]))}return x}o(y,"getGroup");for(let v of m){if(v.data.length===0)continue;let x=y(v.groupTexts);switch(v.type){case"rect":x.selectAll("rect").data(v.data).enter().append("rect").attr("x",b=>b.x).attr("y",b=>b.y).attr("width",b=>b.width).attr("height",b=>b.height).attr("fill",b=>b.fill).attr("stroke",b=>b.strokeFill).attr("stroke-width",b=>b.strokeWidth);break;case"text":x.selectAll("text").data(v.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",b=>b.fill).attr("font-size",b=>b.fontSize).attr("dominant-baseline",b=>l(b.verticalPos)).attr("text-anchor",b=>u(b.horizontalPos)).attr("transform",b=>h(b)).text(b=>b.text);break;case"path":x.selectAll("path").data(v.data).enter().append("path").attr("d",b=>b.path).attr("fill",b=>b.fill?b.fill:"none").attr("stroke",b=>b.strokeFill).attr("stroke-width",b=>b.strokeWidth);break}}},"draw"),vft={draw:GVt}});var bft={};xr(bft,{diagram:()=>VVt});var VVt,wft=R(()=>{"use strict";Qht();yft();xft();VVt={parser:Kht,db:gft,renderer:vft}});var fP,Eft,Cft=R(()=>{"use strict";fP=function(){var e=o(function(at,X,J,Z){for(J=J||{},Z=at.length;Z--;J[at[Z]]=X);return J},"o"),t=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[5,6,8,9,11,13,31,32,33,34,35,36,44,62,63],s=[1,18],l=[2,7],u=[1,22],h=[1,23],f=[1,24],d=[1,25],p=[1,26],m=[1,27],g=[1,20],y=[1,28],v=[1,29],x=[62,63],b=[5,8,9,11,13,31,32,33,34,35,36,44,51,53,62,63],w=[1,47],S=[1,48],T=[1,49],E=[1,50],_=[1,51],A=[1,52],L=[1,53],M=[53,54],N=[1,64],k=[1,60],I=[1,61],C=[1,62],O=[1,63],D=[1,65],P=[1,69],F=[1,70],B=[1,67],G=[1,68],z=[5,8,9,11,13,31,32,33,34,35,36,44,62,63],W={trace:o(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,requirementType:17,requirementName:18,STRUCT_START:19,requirementBody:20,ID:21,COLONSEP:22,id:23,TEXT:24,text:25,RISK:26,riskLevel:27,VERIFYMTHD:28,verifyType:29,STRUCT_STOP:30,REQUIREMENT:31,FUNCTIONAL_REQUIREMENT:32,INTERFACE_REQUIREMENT:33,PERFORMANCE_REQUIREMENT:34,PHYSICAL_REQUIREMENT:35,DESIGN_CONSTRAINT:36,LOW_RISK:37,MED_RISK:38,HIGH_RISK:39,VERIFY_ANALYSIS:40,VERIFY_DEMONSTRATION:41,VERIFY_INSPECTION:42,VERIFY_TEST:43,ELEMENT:44,elementName:45,elementBody:46,TYPE:47,type:48,DOCREF:49,ref:50,END_ARROW_L:51,relationship:52,LINE:53,END_ARROW_R:54,CONTAINS:55,COPIES:56,DERIVES:57,SATISFIES:58,VERIFIES:59,REFINES:60,TRACES:61,unqString:62,qString:63,$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",19:"STRUCT_START",21:"ID",22:"COLONSEP",24:"TEXT",26:"RISK",28:"VERIFYMTHD",30:"STRUCT_STOP",31:"REQUIREMENT",32:"FUNCTIONAL_REQUIREMENT",33:"INTERFACE_REQUIREMENT",34:"PERFORMANCE_REQUIREMENT",35:"PHYSICAL_REQUIREMENT",36:"DESIGN_CONSTRAINT",37:"LOW_RISK",38:"MED_RISK",39:"HIGH_RISK",40:"VERIFY_ANALYSIS",41:"VERIFY_DEMONSTRATION",42:"VERIFY_INSPECTION",43:"VERIFY_TEST",44:"ELEMENT",47:"TYPE",49:"DOCREF",51:"END_ARROW_L",53:"LINE",54:"END_ARROW_R",55:"CONTAINS",56:"COPIES",57:"DERIVES",58:"SATISFIES",59:"VERIFIES",60:"REFINES",61:"TRACES",62:"unqString",63:"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],[14,5],[20,5],[20,5],[20,5],[20,5],[20,2],[20,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[27,1],[27,1],[27,1],[29,1],[29,1],[29,1],[29,1],[15,5],[46,5],[46,5],[46,2],[46,1],[16,5],[16,5],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[18,1],[18,1],[23,1],[23,1],[25,1],[25,1],[45,1],[45,1],[48,1],[48,1],[50,1],[50,1]],performAction:o(function(X,J,Z,H,q,K,ot){var ct=K.length-1;switch(q){case 4:this.$=K[ct].trim(),H.setAccTitle(this.$);break;case 5:case 6:this.$=K[ct].trim(),H.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:H.addRequirement(K[ct-3],K[ct-4]);break;case 14:H.setNewReqId(K[ct-2]);break;case 15:H.setNewReqText(K[ct-2]);break;case 16:H.setNewReqRisk(K[ct-2]);break;case 17:H.setNewReqVerifyMethod(K[ct-2]);break;case 20:this.$=H.RequirementType.REQUIREMENT;break;case 21:this.$=H.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 22:this.$=H.RequirementType.INTERFACE_REQUIREMENT;break;case 23:this.$=H.RequirementType.PERFORMANCE_REQUIREMENT;break;case 24:this.$=H.RequirementType.PHYSICAL_REQUIREMENT;break;case 25:this.$=H.RequirementType.DESIGN_CONSTRAINT;break;case 26:this.$=H.RiskLevel.LOW_RISK;break;case 27:this.$=H.RiskLevel.MED_RISK;break;case 28:this.$=H.RiskLevel.HIGH_RISK;break;case 29:this.$=H.VerifyType.VERIFY_ANALYSIS;break;case 30:this.$=H.VerifyType.VERIFY_DEMONSTRATION;break;case 31:this.$=H.VerifyType.VERIFY_INSPECTION;break;case 32:this.$=H.VerifyType.VERIFY_TEST;break;case 33:H.addElement(K[ct-3]);break;case 34:H.setNewElementType(K[ct-2]);break;case 35:H.setNewElementDocRef(K[ct-2]);break;case 38:H.addRelationship(K[ct-2],K[ct],K[ct-4]);break;case 39:H.addRelationship(K[ct-2],K[ct-4],K[ct]);break;case 40:this.$=H.Relationships.CONTAINS;break;case 41:this.$=H.Relationships.COPIES;break;case 42:this.$=H.Relationships.DERIVES;break;case 43:this.$=H.Relationships.SATISFIES;break;case 44:this.$=H.Relationships.VERIFIES;break;case 45:this.$=H.Relationships.REFINES;break;case 46:this.$=H.Relationships.TRACES;break}},"anonymous"),table:[{3:1,4:2,6:t,9:r,11:n,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:t,9:r,11:n,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},e(a,[2,6]),{3:12,4:2,6:t,9:r,11:n,13:i},{1:[2,2]},{4:17,5:s,7:13,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},e(a,[2,4]),e(a,[2,5]),{1:[2,1]},{8:[1,30]},{4:17,5:s,7:31,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{4:17,5:s,7:32,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{4:17,5:s,7:33,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{4:17,5:s,7:34,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{4:17,5:s,7:35,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{18:36,62:[1,37],63:[1,38]},{45:39,62:[1,40],63:[1,41]},{51:[1,42],53:[1,43]},e(x,[2,20]),e(x,[2,21]),e(x,[2,22]),e(x,[2,23]),e(x,[2,24]),e(x,[2,25]),e(b,[2,49]),e(b,[2,50]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{19:[1,44]},{19:[2,47]},{19:[2,48]},{19:[1,45]},{19:[2,53]},{19:[2,54]},{52:46,55:w,56:S,57:T,58:E,59:_,60:A,61:L},{52:54,55:w,56:S,57:T,58:E,59:_,60:A,61:L},{5:[1,55]},{5:[1,56]},{53:[1,57]},e(M,[2,40]),e(M,[2,41]),e(M,[2,42]),e(M,[2,43]),e(M,[2,44]),e(M,[2,45]),e(M,[2,46]),{54:[1,58]},{5:N,20:59,21:k,24:I,26:C,28:O,30:D},{5:P,30:F,46:66,47:B,49:G},{23:71,62:y,63:v},{23:72,62:y,63:v},e(z,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:N,20:77,21:k,24:I,26:C,28:O,30:D},e(z,[2,19]),e(z,[2,33]),{22:[1,78]},{22:[1,79]},{5:P,30:F,46:80,47:B,49:G},e(z,[2,37]),e(z,[2,38]),e(z,[2,39]),{23:81,62:y,63:v},{25:82,62:[1,83],63:[1,84]},{27:85,37:[1,86],38:[1,87],39:[1,88]},{29:89,40:[1,90],41:[1,91],42:[1,92],43:[1,93]},e(z,[2,18]),{48:94,62:[1,95],63:[1,96]},{50:97,62:[1,98],63:[1,99]},e(z,[2,36]),{5:[1,100]},{5:[1,101]},{5:[2,51]},{5:[2,52]},{5:[1,102]},{5:[2,26]},{5:[2,27]},{5:[2,28]},{5:[1,103]},{5:[2,29]},{5:[2,30]},{5:[2,31]},{5:[2,32]},{5:[1,104]},{5:[2,55]},{5:[2,56]},{5:[1,105]},{5:[2,57]},{5:[2,58]},{5:N,20:106,21:k,24:I,26:C,28:O,30:D},{5:N,20:107,21:k,24:I,26:C,28:O,30:D},{5:N,20:108,21:k,24:I,26:C,28:O,30:D},{5:N,20:109,21:k,24:I,26:C,28:O,30:D},{5:P,30:F,46:110,47:B,49:G},{5:P,30:F,46:111,47:B,49:G},e(z,[2,14]),e(z,[2,15]),e(z,[2,16]),e(z,[2,17]),e(z,[2,34]),e(z,[2,35])],defaultActions:{8:[2,2],12:[2,1],30:[2,3],31:[2,8],32:[2,9],33:[2,10],34:[2,11],35:[2,12],37:[2,47],38:[2,48],40:[2,53],41:[2,54],83:[2,51],84:[2,52],86:[2,26],87:[2,27],88:[2,28],90:[2,29],91:[2,30],92:[2,31],93:[2,32],95:[2,55],96:[2,56],98:[2,57],99:[2,58]},parseError:o(function(X,J){if(J.recoverable)this.trace(X);else{var Z=new Error(X);throw Z.hash=J,Z}},"parseError"),parse:o(function(X){var J=this,Z=[0],H=[],q=[null],K=[],ot=this.table,ct="",ut=0,et=0,Mt=0,it=2,wt=1,Ot=K.slice.call(arguments,1),St=Object.create(this.lexer),Vt={yy:{}};for(var Pt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Pt)&&(Vt.yy[Pt]=this.yy[Pt]);St.setInput(X,Vt.yy),Vt.yy.lexer=St,Vt.yy.parser=this,typeof St.yylloc>"u"&&(St.yylloc={});var _t=St.yylloc;K.push(_t);var dt=St.options&&St.options.ranges;typeof Vt.yy.parseError=="function"?this.parseError=Vt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Y(Ut){Z.length=Z.length-2*Ut,q.length=q.length-Ut,K.length=K.length-Ut}o(Y,"popStack");function ft(){var Ut;return Ut=H.pop()||St.lex()||wt,typeof Ut!="number"&&(Ut instanceof Array&&(H=Ut,Ut=H.pop()),Ut=J.symbols_[Ut]||Ut),Ut}o(ft,"lex");for(var mt,rt,ht,nt,st,Tt,kt={},Ct,At,$t,Nt;;){if(ht=Z[Z.length-1],this.defaultActions[ht]?nt=this.defaultActions[ht]:((mt===null||typeof mt>"u")&&(mt=ft()),nt=ot[ht]&&ot[ht][mt]),typeof nt>"u"||!nt.length||!nt[0]){var yt="";Nt=[];for(Ct in ot[ht])this.terminals_[Ct]&&Ct>it&&Nt.push("'"+this.terminals_[Ct]+"'");St.showPosition?yt="Parse error on line "+(ut+1)+`: `+St.showPosition()+` Expecting `+Nt.join(", ")+", got '"+(this.terminals_[mt]||mt)+"'":yt="Parse error on line "+(ut+1)+": Unexpected "+(mt==wt?"end of input":"'"+(this.terminals_[mt]||mt)+"'"),this.parseError(yt,{text:St.match,token:this.terminals_[mt]||mt,line:St.yylineno,loc:_t,expected:Nt})}if(nt[0]instanceof Array&&nt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ht+", token: "+mt);switch(nt[0]){case 1:Z.push(mt),q.push(St.yytext),K.push(St.yylloc),Z.push(nt[1]),mt=null,rt?(mt=rt,rt=null):(et=St.yyleng,ct=St.yytext,ut=St.yylineno,_t=St.yylloc,Mt>0&&Mt--);break;case 2:if(At=this.productions_[nt[1]][1],kt.$=q[q.length-At],kt._$={first_line:K[K.length-(At||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-(At||1)].first_column,last_column:K[K.length-1].last_column},dt&&(kt._$.range=[K[K.length-(At||1)].range[0],K[K.length-1].range[1]]),Tt=this.performAction.apply(kt,[ct,et,ut,Vt.yy,nt[1],q,K].concat(Ot)),typeof Tt<"u")return Tt;At&&(Z=Z.slice(0,-1*At*2),q=q.slice(0,-1*At),K=K.slice(0,-1*At)),Z.push(this.productions_[nt[1]][0]),q.push(kt.$),K.push(kt._$),$t=ot[Z[Z.length-2]][Z[Z.length-1]],Z.push($t);break;case 3:return!0}}return!0},"parse")},Q=function(){var at={EOF:1,parseError:o(function(J,Z){if(this.yy.parser)this.yy.parser.parseError(J,Z);else throw new Error(J)},"parseError"),setInput:o(function(X,J){return this.yy=J||this.yy||{},this._input=X,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]),this.offset=0,this},"setInput"),input:o(function(){var X=this._input[0];this.yytext+=X,this.yyleng++,this.offset++,this.match+=X,this.matched+=X;var J=X.match(/(?:\r\n?|\n).*/g);return J?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),X},"input"),unput:o(function(X){var J=X.length,Z=X.split(/(?:\r\n?|\n)/g);this._input=X+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J),this.offset-=J;var H=this.match.split(/(?:\r\n?|\n)/g);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 q=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Z?(Z.length===H.length?this.yylloc.first_column:0)+H[H.length-Z.length].length-Z[0].length:this.yylloc.first_column-J},this.options.ranges&&(this.yylloc.range=[q[0],q[0]+this.yyleng-J]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(X){this.unput(this.match.slice(X))},"less"),pastInput:o(function(){var X=this.matched.substr(0,this.matched.length-this.match.length);return(X.length>20?"...":"")+X.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var X=this.match;return X.length<20&&(X+=this._input.substr(0,20-X.length)),(X.substr(0,20)+(X.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var X=this.pastInput(),J=new Array(X.length+1).join("-");return X+this.upcomingInput()+` `+J+"^"},"showPosition"),test_match:o(function(X,J){var Z,H,q;if(this.options.backtrack_lexer&&(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))),H=X[0].match(/(?:\r\n?|\n).*/g),H&&(this.yylineno+=H.length),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+X[0].length},this.yytext+=X[0],this.match+=X[0],this.matches=X,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(X[0].length),this.matched+=X[0],Z=this.performAction.call(this,this.yy,this,J,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Z)return Z;if(this._backtrack){for(var K in q)this[K]=q[K];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var X,J,Z,H;this._more||(this.yytext="",this.match="");for(var q=this._currentRules(),K=0;KJ[0].length)){if(J=Z,H=K,this.options.backtrack_lexer){if(X=this.test_match(Z,q[K]),X!==!1)return X;if(this._backtrack){J=!1;continue}else return!1}else if(!this.options.flex)break}return J?(X=this.test_match(J,q[H]),X!==!1?X:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var J=this.next();return J||this.lex()},"lex"),begin:o(function(J){this.conditionStack.push(J)},"begin"),popState:o(function(){var J=this.conditionStack.length-1;return J>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(J){return J=this.conditionStack.length-1-Math.abs(J||0),J>=0?this.conditionStack[J]:"INITIAL"},"topState"),pushState:o(function(J){this.begin(J)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(J,Z,H,q){var K=q;switch(H){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 5;case 9:break;case 10:break;case 11:break;case 12:return 8;case 13:return 6;case 14:return 19;case 15:return 30;case 16:return 22;case 17:return 21;case 18:return 24;case 19:return 26;case 20:return 28;case 21:return 31;case 22:return 32;case 23:return 33;case 24:return 34;case 25:return 35;case 26:return 36;case 27:return 37;case 28:return 38;case 29:return 39;case 30:return 40;case 31:return 41;case 32:return 42;case 33:return 43;case 34:return 44;case 35:return 55;case 36:return 56;case 37:return 57;case 38:return 58;case 39:return 59;case 40:return 60;case 41:return 61;case 42:return 47;case 43:return 49;case 44:return 51;case 45:return 54;case 46:return 53;case 47:this.begin("string");break;case 48:this.popState();break;case 49:return"qString";case 50:return Z.yytext=Z.yytext.trim(),62;break}},"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,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/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,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[48,49],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,50],inclusive:!0}}};return at}();W.lexer=Q;function j(){this.yy={}}return o(j,"Parser"),j.prototype=W,W.Parser=j,new j}();fP.parser=fP;Eft=fP});var dP,Us,$x,bf,Gx,YVt,qVt,XVt,jVt,KVt,QVt,ZVt,JVt,tUt,eUt,rUt,nUt,iUt,aUt,sUt,oUt,lUt,Sft,Aft=R(()=>{"use strict";Ue();ce();Ci();dP=[],Us={},$x=new Map,bf={},Gx=new Map,YVt={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},qVt={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},XVt={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},jVt={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},KVt=o((e,t)=>($x.has(e)||$x.set(e,{name:e,type:t,id:Us.id,text:Us.text,risk:Us.risk,verifyMethod:Us.verifyMethod}),Us={},$x.get(e)),"addRequirement"),QVt=o(()=>$x,"getRequirements"),ZVt=o(e=>{Us!==void 0&&(Us.id=e)},"setNewReqId"),JVt=o(e=>{Us!==void 0&&(Us.text=e)},"setNewReqText"),tUt=o(e=>{Us!==void 0&&(Us.risk=e)},"setNewReqRisk"),eUt=o(e=>{Us!==void 0&&(Us.verifyMethod=e)},"setNewReqVerifyMethod"),rUt=o(e=>(Gx.has(e)||(Gx.set(e,{name:e,type:bf.type,docRef:bf.docRef}),V.info("Added new requirement: ",e)),bf={},Gx.get(e)),"addElement"),nUt=o(()=>Gx,"getElements"),iUt=o(e=>{bf!==void 0&&(bf.type=e)},"setNewElementType"),aUt=o(e=>{bf!==void 0&&(bf.docRef=e)},"setNewElementDocRef"),sUt=o((e,t,r)=>{dP.push({type:e,src:t,dst:r})},"addRelationship"),oUt=o(()=>dP,"getRelationships"),lUt=o(()=>{dP=[],Us={},$x=new Map,bf={},Gx=new Map,Ar()},"clear"),Sft={RequirementType:YVt,RiskLevel:qVt,VerifyType:XVt,Relationships:jVt,getConfig:o(()=>pt().req,"getConfig"),addRequirement:KVt,getRequirements:QVt,setNewReqId:ZVt,setNewReqText:JVt,setNewReqRisk:tUt,setNewReqVerifyMethod:eUt,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addElement:rUt,getElements:nUt,setNewElementType:iUt,setNewElementDocRef:aUt,addRelationship:sUt,getRelationships:oUt,clear:lUt}});var cUt,_ft,Lft=R(()=>{"use strict";cUt=o(e=>` marker { fill: ${e.relationColor}; stroke: ${e.relationColor}; } marker.cross { stroke: ${e.lineColor}; } svg { font-family: ${e.fontFamily}; font-size: ${e.fontSize}; } .reqBox { fill: ${e.requirementBackground}; fill-opacity: 1.0; stroke: ${e.requirementBorderColor}; stroke-width: ${e.requirementBorderSize}; } .reqTitle, .reqLabel{ fill: ${e.requirementTextColor}; } .reqLabelBox { fill: ${e.relationLabelBackground}; fill-opacity: 1.0; } .req-title-line { stroke: ${e.requirementBorderColor}; stroke-width: ${e.requirementBorderSize}; } .relationshipLine { stroke: ${e.relationColor}; stroke-width: 1; } .relationshipLabel { fill: ${e.relationLabelColor}; } `,"getStyles"),_ft=cUt});var pP,uUt,mP,Dft=R(()=>{"use strict";pP={CONTAINS:"contains",ARROW:"arrow"},uUt=o((e,t)=>{let r=e.append("defs").append("marker").attr("id",pP.CONTAINS+"_line_ending").attr("refX",0).attr("refY",t.line_height/2).attr("markerWidth",t.line_height).attr("markerHeight",t.line_height).attr("orient","auto").append("g");r.append("circle").attr("cx",t.line_height/2).attr("cy",t.line_height/2).attr("r",t.line_height/2).attr("fill","none"),r.append("line").attr("x1",0).attr("x2",t.line_height).attr("y1",t.line_height/2).attr("y2",t.line_height/2).attr("stroke-width",1),r.append("line").attr("y1",0).attr("y2",t.line_height).attr("x1",t.line_height/2).attr("x2",t.line_height/2).attr("stroke-width",1),e.append("defs").append("marker").attr("id",pP.ARROW+"_line_ending").attr("refX",t.line_height).attr("refY",.5*t.line_height).attr("markerWidth",t.line_height).attr("markerHeight",t.line_height).attr("orient","auto").append("path").attr("d",`M0,0 L${t.line_height},${t.line_height/2} M${t.line_height},${t.line_height/2} L0,${t.line_height}`).attr("stroke-width",1)},"insertLineEndings"),mP={ReqMarkers:pP,insertLineEndings:uUt}});var ui,Rft,Nft,Mft,Ift,hUt,fUt,dUt,pUt,mUt,gUt,Kg,yUt,Oft,Pft=R(()=>{"use strict";ur();Xd();wa();Ue();ce();Jn();hr();Dft();ui={},Rft=0,Nft=o((e,t)=>e.insert("rect","#"+t).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",ui.rect_min_width+"px").attr("height",ui.rect_min_height+"px"),"newRectNode"),Mft=o((e,t,r)=>{let n=ui.rect_min_width/2,i=e.append("text").attr("class","req reqLabel reqTitle").attr("id",t).attr("x",n).attr("y",ui.rect_padding).attr("dominant-baseline","hanging"),a=0;r.forEach(h=>{a==0?i.append("tspan").attr("text-anchor","middle").attr("x",ui.rect_min_width/2).attr("dy",0).text(h):i.append("tspan").attr("text-anchor","middle").attr("x",ui.rect_min_width/2).attr("dy",ui.line_height*.75).text(h),a++});let s=1.5*ui.rect_padding,l=a*ui.line_height*.75,u=s+l;return e.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",ui.rect_min_width).attr("y1",u).attr("y2",u),{titleNode:i,y:u}},"newTitleNode"),Ift=o((e,t,r,n)=>{let i=e.append("text").attr("class","req reqLabel").attr("id",t).attr("x",ui.rect_padding).attr("y",n).attr("dominant-baseline","hanging"),a=0,s=30,l=[];return r.forEach(u=>{let h=u.length;for(;h>s&&a<3;){let f=u.substring(0,s);u=u.substring(s,u.length),h=u.length,l[l.length]=f,a++}if(a==3){let f=l[l.length-1];l[l.length-1]=f.substring(0,f.length-4)+"..."}else l[l.length]=u;a=0}),l.forEach(u=>{i.append("tspan").attr("x",ui.rect_padding).attr("dy",ui.line_height).text(u)}),i},"newBodyNode"),hUt=o((e,t,r,n)=>{let i=t.node().getTotalLength(),a=t.node().getPointAtLength(i*.5),s="rel"+Rft;Rft++;let u=e.append("text").attr("class","req relationshipLabel").attr("id",s).attr("x",a.x).attr("y",a.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(n).node().getBBox();e.insert("rect","#"+s).attr("class","req reqLabelBox").attr("x",a.x-u.width/2).attr("y",a.y-u.height/2).attr("width",u.width).attr("height",u.height).attr("fill","white").attr("fill-opacity","85%")},"addEdgeLabel"),fUt=o(function(e,t,r,n,i){let a=r.edge(Kg(t.src),Kg(t.dst)),s=ma().x(function(u){return u.x}).y(function(u){return u.y}),l=e.insert("path","#"+n).attr("class","er relationshipLine").attr("d",s(a.points)).attr("fill","none");t.type==i.db.Relationships.CONTAINS?l.attr("marker-start","url("+Yt.getUrl(ui.arrowMarkerAbsolute)+"#"+t.type+"_line_ending)"):(l.attr("stroke-dasharray","10,7"),l.attr("marker-end","url("+Yt.getUrl(ui.arrowMarkerAbsolute)+"#"+mP.ReqMarkers.ARROW+"_line_ending)")),hUt(e,l,ui,`<<${t.type}>>`)},"drawRelationshipFromLayout"),dUt=o((e,t,r)=>{e.forEach((n,i)=>{i=Kg(i),V.info("Added new requirement: ",i);let a=r.append("g").attr("id",i),s="req-"+i,l=Nft(a,s),u=[],h=Mft(a,i+"_title",[`<<${n.type}>>`,`${n.name}`]);u.push(h.titleNode);let f=Ift(a,i+"_body",[`Id: ${n.id}`,`Text: ${n.text}`,`Risk: ${n.risk}`,`Verification: ${n.verifyMethod}`],h.y);u.push(f);let d=l.node().getBBox();t.setNode(i,{width:d.width,height:d.height,shape:"rect",id:i})})},"drawReqs"),pUt=o((e,t,r)=>{e.forEach((n,i)=>{let a=Kg(i),s=r.append("g").attr("id",a),l="element-"+a,u=Nft(s,l),h=[],f=Mft(s,l+"_title",["<>",`${i}`]);h.push(f.titleNode);let d=Ift(s,l+"_body",[`Type: ${n.type||"Not Specified"}`,`Doc Ref: ${n.docRef||"None"}`],f.y);h.push(d);let p=u.node().getBBox();t.setNode(a,{width:p.width,height:p.height,shape:"rect",id:a})})},"drawElements"),mUt=o((e,t)=>(e.forEach(function(r){let n=Kg(r.src),i=Kg(r.dst);t.setEdge(n,i,{relationship:r})}),e),"addRelationships"),gUt=o(function(e,t){t.nodes().forEach(function(r){r!==void 0&&t.node(r)!==void 0&&(e.select("#"+r),e.select("#"+r).attr("transform","translate("+(t.node(r).x-t.node(r).width/2)+","+(t.node(r).y-t.node(r).height/2)+" )"))})},"adjustEntities"),Kg=o(e=>e.replace(/\s/g,"").replace(/\./g,"_"),"elementString"),yUt=o((e,t,r,n)=>{ui=pt().requirement;let i=ui.securityLevel,a;i==="sandbox"&&(a=Gt("#i"+t));let l=(i==="sandbox"?Gt(a.nodes()[0].contentDocument.body):Gt("body")).select(`[id='${t}']`);mP.insertLineEndings(l,ui);let u=new yr({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:ui.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}}),h=n.db.getRequirements(),f=n.db.getElements(),d=n.db.getRelationships();dUt(h,u,l),pUt(f,u,l),mUt(d,u),co(u),gUt(l,u),d.forEach(function(v){fUt(l,v,u,t,n)});let p=ui.rect_padding,m=l.node().getBBox(),g=m.width+p*2,y=m.height+p*2;Pr(l,y,g,ui.useMaxWidth),l.attr("viewBox",`${m.x-p} ${m.y-p} ${g} ${y}`)},"draw"),Oft={draw:yUt}});var Bft={};xr(Bft,{diagram:()=>vUt});var vUt,Fft=R(()=>{"use strict";Cft();Aft();Lft();Pft();vUt={parser:Eft,db:Sft,renderer:Oft,styles:_ft}});var gP,Gft,Vft=R(()=>{"use strict";gP=function(){var e=o(function(H,q,K,ot){for(K=K||{},ot=H.length;ot--;K[H[ot]]=q);return K},"o"),t=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,13],u=[1,14],h=[1,16],f=[1,17],d=[1,18],p=[1,24],m=[1,25],g=[1,26],y=[1,27],v=[1,28],x=[1,29],b=[1,30],w=[1,31],S=[1,32],T=[1,33],E=[1,34],_=[1,35],A=[1,36],L=[1,37],M=[1,38],N=[1,39],k=[1,41],I=[1,42],C=[1,43],O=[1,44],D=[1,45],P=[1,46],F=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,54,59,60,61,62,70],B=[4,5,16,50,52,53],G=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],z=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,54,59,60,61,62,70],W=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,54,59,60,61,62,70],Q=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,54,59,60,61,62,70],j=[68,69,70],at=[1,122],X={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,note:54,placement:55,text2:56,over:57,actor_pair:58,links:59,link:60,properties:61,details:62,spaceList:63,",":64,left_of:65,right_of:66,signaltype:67,"+":68,"-":69,ACTOR:70,SOLID_OPEN_ARROW:71,DOTTED_OPEN_ARROW:72,SOLID_ARROW:73,BIDIRECTIONAL_SOLID_ARROW:74,DOTTED_ARROW:75,BIDIRECTIONAL_DOTTED_ARROW:76,SOLID_CROSS:77,DOTTED_CROSS:78,SOLID_POINT:79,DOTTED_POINT:80,TXT:81,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",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",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",54:"note",57:"over",59:"links",60:"link",61:"properties",62:"details",64:",",65:"left_of",66:"right_of",68:"+",69:"-",70:"ACTOR",71:"SOLID_OPEN_ARROW",72:"DOTTED_OPEN_ARROW",73:"SOLID_ARROW",74:"BIDIRECTIONAL_SOLID_ARROW",75:"DOTTED_ARROW",76:"BIDIRECTIONAL_DOTTED_ARROW",77:"SOLID_CROSS",78:"DOTTED_CROSS",79:"SOLID_POINT",80:"DOTTED_POINT",81:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,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],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[63,2],[63,1],[58,3],[58,1],[55,1],[55,1],[17,5],[17,5],[17,4],[22,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[56,1]],performAction:o(function(q,K,ot,ct,ut,et,Mt){var it=et.length-1;switch(ut){case 3:return ct.apply(et[it]),et[it];break;case 4:case 9:this.$=[];break;case 5:case 10:et[it-1].push(et[it]),this.$=et[it-1];break;case 6:case 7:case 11:case 12:this.$=et[it];break;case 8:case 13:this.$=[];break;case 15:et[it].type="createParticipant",this.$=et[it];break;case 16:et[it-1].unshift({type:"boxStart",boxData:ct.parseBoxData(et[it-2])}),et[it-1].push({type:"boxEnd",boxText:et[it-2]}),this.$=et[it-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(et[it-2]),sequenceIndexStep:Number(et[it-1]),sequenceVisible:!0,signalType:ct.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(et[it-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:ct.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:ct.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:ct.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:ct.LINETYPE.ACTIVE_START,actor:et[it-1].actor};break;case 23:this.$={type:"activeEnd",signalType:ct.LINETYPE.ACTIVE_END,actor:et[it-1].actor};break;case 29:ct.setDiagramTitle(et[it].substring(6)),this.$=et[it].substring(6);break;case 30:ct.setDiagramTitle(et[it].substring(7)),this.$=et[it].substring(7);break;case 31:this.$=et[it].trim(),ct.setAccTitle(this.$);break;case 32:case 33:this.$=et[it].trim(),ct.setAccDescription(this.$);break;case 34:et[it-1].unshift({type:"loopStart",loopText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.LOOP_START}),et[it-1].push({type:"loopEnd",loopText:et[it-2],signalType:ct.LINETYPE.LOOP_END}),this.$=et[it-1];break;case 35:et[it-1].unshift({type:"rectStart",color:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.RECT_START}),et[it-1].push({type:"rectEnd",color:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.RECT_END}),this.$=et[it-1];break;case 36:et[it-1].unshift({type:"optStart",optText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.OPT_START}),et[it-1].push({type:"optEnd",optText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.OPT_END}),this.$=et[it-1];break;case 37:et[it-1].unshift({type:"altStart",altText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.ALT_START}),et[it-1].push({type:"altEnd",signalType:ct.LINETYPE.ALT_END}),this.$=et[it-1];break;case 38:et[it-1].unshift({type:"parStart",parText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.PAR_START}),et[it-1].push({type:"parEnd",signalType:ct.LINETYPE.PAR_END}),this.$=et[it-1];break;case 39:et[it-1].unshift({type:"parStart",parText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.PAR_OVER_START}),et[it-1].push({type:"parEnd",signalType:ct.LINETYPE.PAR_END}),this.$=et[it-1];break;case 40:et[it-1].unshift({type:"criticalStart",criticalText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.CRITICAL_START}),et[it-1].push({type:"criticalEnd",signalType:ct.LINETYPE.CRITICAL_END}),this.$=et[it-1];break;case 41:et[it-1].unshift({type:"breakStart",breakText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.BREAK_START}),et[it-1].push({type:"breakEnd",optText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.BREAK_END}),this.$=et[it-1];break;case 43:this.$=et[it-3].concat([{type:"option",optionText:ct.parseMessage(et[it-1]),signalType:ct.LINETYPE.CRITICAL_OPTION},et[it]]);break;case 45:this.$=et[it-3].concat([{type:"and",parText:ct.parseMessage(et[it-1]),signalType:ct.LINETYPE.PAR_AND},et[it]]);break;case 47:this.$=et[it-3].concat([{type:"else",altText:ct.parseMessage(et[it-1]),signalType:ct.LINETYPE.ALT_ELSE},et[it]]);break;case 48:et[it-3].draw="participant",et[it-3].type="addParticipant",et[it-3].description=ct.parseMessage(et[it-1]),this.$=et[it-3];break;case 49:et[it-1].draw="participant",et[it-1].type="addParticipant",this.$=et[it-1];break;case 50:et[it-3].draw="actor",et[it-3].type="addParticipant",et[it-3].description=ct.parseMessage(et[it-1]),this.$=et[it-3];break;case 51:et[it-1].draw="actor",et[it-1].type="addParticipant",this.$=et[it-1];break;case 52:et[it-1].type="destroyParticipant",this.$=et[it-1];break;case 53:this.$=[et[it-1],{type:"addNote",placement:et[it-2],actor:et[it-1].actor,text:et[it]}];break;case 54:et[it-2]=[].concat(et[it-1],et[it-1]).slice(0,2),et[it-2][0]=et[it-2][0].actor,et[it-2][1]=et[it-2][1].actor,this.$=[et[it-1],{type:"addNote",placement:ct.PLACEMENT.OVER,actor:et[it-2].slice(0,2),text:et[it]}];break;case 55:this.$=[et[it-1],{type:"addLinks",actor:et[it-1].actor,text:et[it]}];break;case 56:this.$=[et[it-1],{type:"addALink",actor:et[it-1].actor,text:et[it]}];break;case 57:this.$=[et[it-1],{type:"addProperties",actor:et[it-1].actor,text:et[it]}];break;case 58:this.$=[et[it-1],{type:"addDetails",actor:et[it-1].actor,text:et[it]}];break;case 61:this.$=[et[it-2],et[it]];break;case 62:this.$=et[it];break;case 63:this.$=ct.PLACEMENT.LEFTOF;break;case 64:this.$=ct.PLACEMENT.RIGHTOF;break;case 65:this.$=[et[it-4],et[it-1],{type:"addMessage",from:et[it-4].actor,to:et[it-1].actor,signalType:et[it-3],msg:et[it],activate:!0},{type:"activeStart",signalType:ct.LINETYPE.ACTIVE_START,actor:et[it-1].actor}];break;case 66:this.$=[et[it-4],et[it-1],{type:"addMessage",from:et[it-4].actor,to:et[it-1].actor,signalType:et[it-3],msg:et[it]},{type:"activeEnd",signalType:ct.LINETYPE.ACTIVE_END,actor:et[it-4].actor}];break;case 67:this.$=[et[it-3],et[it-1],{type:"addMessage",from:et[it-3].actor,to:et[it-1].actor,signalType:et[it-2],msg:et[it]}];break;case 68:this.$={type:"addParticipant",actor:et[it]};break;case 69:this.$=ct.LINETYPE.SOLID_OPEN;break;case 70:this.$=ct.LINETYPE.DOTTED_OPEN;break;case 71:this.$=ct.LINETYPE.SOLID;break;case 72:this.$=ct.LINETYPE.BIDIRECTIONAL_SOLID;break;case 73:this.$=ct.LINETYPE.DOTTED;break;case 74:this.$=ct.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 75:this.$=ct.LINETYPE.SOLID_CROSS;break;case 76:this.$=ct.LINETYPE.DOTTED_CROSS;break;case 77:this.$=ct.LINETYPE.SOLID_POINT;break;case 78:this.$=ct.LINETYPE.DOTTED_POINT;break;case 79:this.$=ct.parseMessage(et[it].trim().substring(1));break}},"anonymous"),table:[{3:1,4:t,5:r,6:n},{1:[3]},{3:5,4:t,5:r,6:n},{3:6,4:t,5:r,6:n},e([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},e(F,[2,5]),{9:47,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},e(F,[2,7]),e(F,[2,8]),e(F,[2,14]),{12:48,50:L,52:M,53:N},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:P},{22:55,70:P},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},e(F,[2,29]),e(F,[2,30]),{32:[1,61]},{34:[1,62]},e(F,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,70:P},{22:72,70:P},{22:73,70:P},{67:74,71:[1,75],72:[1,76],73:[1,77],74:[1,78],75:[1,79],76:[1,80],77:[1,81],78:[1,82],79:[1,83],80:[1,84]},{55:85,57:[1,86],65:[1,87],66:[1,88]},{22:89,70:P},{22:90,70:P},{22:91,70:P},{22:92,70:P},e([5,51,64,71,72,73,74,75,76,77,78,79,80,81],[2,68]),e(F,[2,6]),e(F,[2,15]),e(B,[2,9],{10:93}),e(F,[2,17]),{5:[1,95],19:[1,94]},{5:[1,96]},e(F,[2,21]),{5:[1,97]},{5:[1,98]},e(F,[2,24]),e(F,[2,25]),e(F,[2,26]),e(F,[2,27]),e(F,[2,28]),e(F,[2,31]),e(F,[2,32]),e(G,i,{7:99}),e(G,i,{7:100}),e(G,i,{7:101}),e(z,i,{40:102,7:103}),e(W,i,{42:104,7:105}),e(W,i,{7:105,42:106}),e(Q,i,{45:107,7:108}),e(G,i,{7:109}),{5:[1,111],51:[1,110]},{5:[1,113],51:[1,112]},{5:[1,114]},{22:117,68:[1,115],69:[1,116],70:P},e(j,[2,69]),e(j,[2,70]),e(j,[2,71]),e(j,[2,72]),e(j,[2,73]),e(j,[2,74]),e(j,[2,75]),e(j,[2,76]),e(j,[2,77]),e(j,[2,78]),{22:118,70:P},{22:120,58:119,70:P},{70:[2,63]},{70:[2,64]},{56:121,81:at},{56:123,81:at},{56:124,81:at},{56:125,81:at},{4:[1,128],5:[1,130],11:127,12:129,16:[1,126],50:L,52:M,53:N},{5:[1,131]},e(F,[2,19]),e(F,[2,20]),e(F,[2,22]),e(F,[2,23]),{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,132],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,133],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,134],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},{16:[1,135]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,46],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:S,41:T,43:E,44:_,46:A,49:[1,136],50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},{16:[1,137]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,44],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:S,41:T,43:E,44:_,46:A,48:[1,138],50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},{16:[1,139]},{16:[1,140]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,42],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:S,41:T,43:E,44:_,46:A,47:[1,141],50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,142],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},{15:[1,143]},e(F,[2,49]),{15:[1,144]},e(F,[2,51]),e(F,[2,52]),{22:145,70:P},{22:146,70:P},{56:147,81:at},{56:148,81:at},{56:149,81:at},{64:[1,150],81:[2,62]},{5:[2,55]},{5:[2,79]},{5:[2,56]},{5:[2,57]},{5:[2,58]},e(F,[2,16]),e(B,[2,10]),{12:151,50:L,52:M,53:N},e(B,[2,12]),e(B,[2,13]),e(F,[2,18]),e(F,[2,34]),e(F,[2,35]),e(F,[2,36]),e(F,[2,37]),{15:[1,152]},e(F,[2,38]),{15:[1,153]},e(F,[2,39]),e(F,[2,40]),{15:[1,154]},e(F,[2,41]),{5:[1,155]},{5:[1,156]},{56:157,81:at},{56:158,81:at},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:159,70:P},e(B,[2,11]),e(z,i,{7:103,40:160}),e(W,i,{7:105,42:161}),e(Q,i,{7:108,45:162}),e(F,[2,48]),e(F,[2,50]),{5:[2,65]},{5:[2,66]},{81:[2,61]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],87:[2,63],88:[2,64],121:[2,55],122:[2,79],123:[2,56],124:[2,57],125:[2,58],147:[2,67],148:[2,53],149:[2,54],157:[2,65],158:[2,66],159:[2,61],160:[2,47],161:[2,45],162:[2,43]},parseError:o(function(q,K){if(K.recoverable)this.trace(q);else{var ot=new Error(q);throw ot.hash=K,ot}},"parseError"),parse:o(function(q){var K=this,ot=[0],ct=[],ut=[null],et=[],Mt=this.table,it="",wt=0,Ot=0,St=0,Vt=2,Pt=1,_t=et.slice.call(arguments,1),dt=Object.create(this.lexer),Y={yy:{}};for(var ft in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ft)&&(Y.yy[ft]=this.yy[ft]);dt.setInput(q,Y.yy),Y.yy.lexer=dt,Y.yy.parser=this,typeof dt.yylloc>"u"&&(dt.yylloc={});var mt=dt.yylloc;et.push(mt);var rt=dt.options&&dt.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ht(Ee){ot.length=ot.length-2*Ee,ut.length=ut.length-Ee,et.length=et.length-Ee}o(ht,"popStack");function nt(){var Ee;return Ee=ct.pop()||dt.lex()||Pt,typeof Ee!="number"&&(Ee instanceof Array&&(ct=Ee,Ee=ct.pop()),Ee=K.symbols_[Ee]||Ee),Ee}o(nt,"lex");for(var st,Tt,kt,Ct,At,$t,Nt={},yt,Ut,zt,ae;;){if(kt=ot[ot.length-1],this.defaultActions[kt]?Ct=this.defaultActions[kt]:((st===null||typeof st>"u")&&(st=nt()),Ct=Mt[kt]&&Mt[kt][st]),typeof Ct>"u"||!Ct.length||!Ct[0]){var ke="";ae=[];for(yt in Mt[kt])this.terminals_[yt]&&yt>Vt&&ae.push("'"+this.terminals_[yt]+"'");dt.showPosition?ke="Parse error on line "+(wt+1)+`: `+dt.showPosition()+` Expecting `+ae.join(", ")+", got '"+(this.terminals_[st]||st)+"'":ke="Parse error on line "+(wt+1)+": Unexpected "+(st==Pt?"end of input":"'"+(this.terminals_[st]||st)+"'"),this.parseError(ke,{text:dt.match,token:this.terminals_[st]||st,line:dt.yylineno,loc:mt,expected:ae})}if(Ct[0]instanceof Array&&Ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+kt+", token: "+st);switch(Ct[0]){case 1:ot.push(st),ut.push(dt.yytext),et.push(dt.yylloc),ot.push(Ct[1]),st=null,Tt?(st=Tt,Tt=null):(Ot=dt.yyleng,it=dt.yytext,wt=dt.yylineno,mt=dt.yylloc,St>0&&St--);break;case 2:if(Ut=this.productions_[Ct[1]][1],Nt.$=ut[ut.length-Ut],Nt._$={first_line:et[et.length-(Ut||1)].first_line,last_line:et[et.length-1].last_line,first_column:et[et.length-(Ut||1)].first_column,last_column:et[et.length-1].last_column},rt&&(Nt._$.range=[et[et.length-(Ut||1)].range[0],et[et.length-1].range[1]]),$t=this.performAction.apply(Nt,[it,Ot,wt,Y.yy,Ct[1],ut,et].concat(_t)),typeof $t<"u")return $t;Ut&&(ot=ot.slice(0,-1*Ut*2),ut=ut.slice(0,-1*Ut),et=et.slice(0,-1*Ut)),ot.push(this.productions_[Ct[1]][0]),ut.push(Nt.$),et.push(Nt._$),zt=Mt[ot[ot.length-2]][ot[ot.length-1]],ot.push(zt);break;case 3:return!0}}return!0},"parse")},J=function(){var H={EOF:1,parseError:o(function(K,ot){if(this.yy.parser)this.yy.parser.parseError(K,ot);else throw new Error(K)},"parseError"),setInput:o(function(q,K){return this.yy=K||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]),this.offset=0,this},"setInput"),input:o(function(){var q=this._input[0];this.yytext+=q,this.yyleng++,this.offset++,this.match+=q,this.matched+=q;var K=q.match(/(?:\r\n?|\n).*/g);return K?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),q},"input"),unput:o(function(q){var K=q.length,ot=q.split(/(?:\r\n?|\n)/g);this._input=q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-K),this.offset-=K;var ct=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ot.length-1&&(this.yylineno-=ot.length-1);var ut=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ot?(ot.length===ct.length?this.yylloc.first_column:0)+ct[ct.length-ot.length].length-ot[0].length:this.yylloc.first_column-K},this.options.ranges&&(this.yylloc.range=[ut[0],ut[0]+this.yyleng-K]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(q){this.unput(this.match.slice(q))},"less"),pastInput:o(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:o(function(){var q=this.match;return q.length<20&&(q+=this._input.substr(0,20-q.length)),(q.substr(0,20)+(q.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var q=this.pastInput(),K=new Array(q.length+1).join("-");return q+this.upcomingInput()+` `+K+"^"},"showPosition"),test_match:o(function(q,K){var ot,ct,ut;if(this.options.backtrack_lexer&&(ut={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&&(ut.yylloc.range=this.yylloc.range.slice(0))),ct=q[0].match(/(?:\r\n?|\n).*/g),ct&&(this.yylineno+=ct.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ct?ct[ct.length-1].length-ct[ct.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]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(q[0].length),this.matched+=q[0],ot=this.performAction.call(this,this.yy,this,K,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ot)return ot;if(this._backtrack){for(var et in ut)this[et]=ut[et];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var q,K,ot,ct;this._more||(this.yytext="",this.match="");for(var ut=this._currentRules(),et=0;etK[0].length)){if(K=ot,ct=et,this.options.backtrack_lexer){if(q=this.test_match(ot,ut[et]),q!==!1)return q;if(this._backtrack){K=!1;continue}else return!1}else if(!this.options.flex)break}return K?(q=this.test_match(K,ut[ct]),q!==!1?q:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var K=this.next();return K||this.lex()},"lex"),begin:o(function(K){this.conditionStack.push(K)},"begin"),popState:o(function(){var K=this.conditionStack.length-1;return K>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(K){return K=this.conditionStack.length-1-Math.abs(K||0),K>=0?this.conditionStack[K]:"INITIAL"},"topState"),pushState:o(function(K){this.begin(K)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(K,ot,ct,ut){var et=ut;switch(ct){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;break;case 8:return this.begin("ID"),50;break;case 9:return this.begin("ID"),52;break;case 10:return 13;case 11:return this.begin("ID"),53;break;case 12:return ot.yytext=ot.yytext.trim(),this.begin("ALIAS"),70;break;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;break;case 14:return this.popState(),this.popState(),5;break;case 15:return this.begin("LINE"),36;break;case 16:return this.begin("LINE"),37;break;case 17:return this.begin("LINE"),38;break;case 18:return this.begin("LINE"),39;break;case 19:return this.begin("LINE"),49;break;case 20:return this.begin("LINE"),41;break;case 21:return this.begin("LINE"),43;break;case 22:return this.begin("LINE"),48;break;case 23:return this.begin("LINE"),44;break;case 24:return this.begin("LINE"),47;break;case 25:return this.begin("LINE"),46;break;case 26:return this.popState(),15;break;case 27:return 16;case 28:return 65;case 29:return 66;case 30:return 59;case 31:return 60;case 32:return 61;case 33:return 62;case 34:return 57;case 35:return 54;case 36:return this.begin("ID"),21;break;case 37:return this.begin("ID"),23;break;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;break;case 41:return this.popState(),"acc_title_value";break;case 42:return this.begin("acc_descr"),33;break;case 43:return this.popState(),"acc_descr_value";break;case 44:this.begin("acc_descr_multiline");break;case 45:this.popState();break;case 46:return"acc_descr_multiline_value";case 47:return 6;case 48:return 18;case 49:return 20;case 50:return 64;case 51:return 5;case 52:return ot.yytext=ot.yytext.trim(),70;break;case 53:return 73;case 54:return 74;case 55:return 75;case 56:return 76;case 57:return 71;case 58:return 72;case 59:return 77;case 60:return 78;case 61:return 79;case 62:return 80;case 63:return 81;case 64:return 68;case 65:return 69;case 66:return 5;case 67:return"INVALID"}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\<->\->:\n,;]+?([\-]*[^\<->\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/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,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[45,46],inclusive:!1},acc_descr:{rules:[43],inclusive:!1},acc_title:{rules:[41],inclusive:!1},ID:{rules:[2,3,12],inclusive:!1},ALIAS:{rules:[2,3,13,14],inclusive:!1},LINE:{rules:[2,3,26],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,7,8,9,10,11,15,16,17,18,19,20,21,22,23,24,25,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67],inclusive:!0}}};return H}();X.lexer=J;function Z(){this.yy={}}return o(Z,"Parser"),Z.prototype=X,X.Parser=Z,new Z}();gP.parser=gP;Gft=gP});function vP(e,t){if(e.links==null)e.links=t;else for(let r in t)e.links[r]=t[r]}function qft(e,t){if(e.properties==null)e.properties=t;else for(let r in t)e.properties[r]=t[r]}function UUt(){Ge.records.currentBox=void 0}var Ge,TUt,yP,kUt,EUt,xi,CUt,SUt,AUt,_Ut,LUt,DUt,RUt,Ux,NUt,MUt,IUt,OUt,PUt,Uft,M0,BUt,FUt,zUt,Vx,$Ut,GUt,Hft,Wft,VUt,Yft,Xft,HUt,jft,xP,Kft=R(()=>{"use strict";Ue();ce();HE();hr();Ci();Ge=new mf(()=>({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})),TUt=o(function(e){Ge.records.boxes.push({name:e.text,wrap:e.wrap??M0(),fill:e.color,actorKeys:[]}),Ge.records.currentBox=Ge.records.boxes.slice(-1)[0]},"addBox"),yP=o(function(e,t,r,n){let i=Ge.records.currentBox,a=Ge.records.actors.get(e);if(a){if(Ge.records.currentBox&&a.box&&Ge.records.currentBox!==a.box)throw new Error(`A same participant should only be defined in one Box: ${a.name} can't be in '${a.box.name}' and in '${Ge.records.currentBox.name}' at the same time.`);if(i=a.box?a.box:Ge.records.currentBox,a.box=i,a&&t===a.name&&r==null)return}if(r?.text==null&&(r={text:t,type:n}),(n==null||r.text==null)&&(r={text:t,type:n}),Ge.records.actors.set(e,{box:i,name:t,description:r.text,wrap:r.wrap??M0(),prevActor:Ge.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:n??"participant"}),Ge.records.prevActor){let s=Ge.records.actors.get(Ge.records.prevActor);s&&(s.nextActor=e)}Ge.records.currentBox&&Ge.records.currentBox.actorKeys.push(e),Ge.records.prevActor=e},"addActor"),kUt=o(e=>{let t,r=0;if(!e)return 0;for(t=0;t>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},s}return Ge.records.messages.push({from:e,to:t,message:r?.text??"",wrap:r?.wrap??M0(),type:n,activate:i}),!0},"addSignal"),CUt=o(function(){return Ge.records.boxes.length>0},"hasAtLeastOneBox"),SUt=o(function(){return Ge.records.boxes.some(e=>e.name)},"hasAtLeastOneBoxWithTitle"),AUt=o(function(){return Ge.records.messages},"getMessages"),_Ut=o(function(){return Ge.records.boxes},"getBoxes"),LUt=o(function(){return Ge.records.actors},"getActors"),DUt=o(function(){return Ge.records.createdActors},"getCreatedActors"),RUt=o(function(){return Ge.records.destroyedActors},"getDestroyedActors"),Ux=o(function(e){return Ge.records.actors.get(e)},"getActor"),NUt=o(function(){return[...Ge.records.actors.keys()]},"getActorKeys"),MUt=o(function(){Ge.records.sequenceNumbersEnabled=!0},"enableSequenceNumbers"),IUt=o(function(){Ge.records.sequenceNumbersEnabled=!1},"disableSequenceNumbers"),OUt=o(()=>Ge.records.sequenceNumbersEnabled,"showSequenceNumbers"),PUt=o(function(e){Ge.records.wrapEnabled=e},"setWrap"),Uft=o(e=>{if(e===void 0)return{};e=e.trim();let t=/^:?wrap:/.exec(e)!==null?!0:/^:?nowrap:/.exec(e)!==null?!1:void 0;return{cleanedText:(t===void 0?e:e.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:t}},"extractWrap"),M0=o(()=>Ge.records.wrapEnabled!==void 0?Ge.records.wrapEnabled:pt().sequence?.wrap??!1,"autoWrap"),BUt=o(function(){Ge.reset(),Ar()},"clear"),FUt=o(function(e){let t=e.trim(),{wrap:r,cleanedText:n}=Uft(t),i={text:n,wrap:r};return V.debug(`parseMessage: ${JSON.stringify(i)}`),i},"parseMessage"),zUt=o(function(e){let t=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(e),r=t?.[1]?t[1].trim():"transparent",n=t?.[2]?t[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",r)||(r="transparent",n=e.trim());else{let s=new Option().style;s.color=r,s.color!==r&&(r="transparent",n=e.trim())}let{wrap:i,cleanedText:a}=Uft(n);return{text:a?Zr(a,pt()):void 0,color:r,wrap:i}},"parseBoxData"),Vx={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},$Ut={FILLED:0,OPEN:1},GUt={LEFTOF:0,RIGHTOF:1,OVER:2},Hft=o(function(e,t,r){let n={actor:e,placement:t,message:r.text,wrap:r.wrap??M0()},i=[].concat(e,e);Ge.records.notes.push(n),Ge.records.messages.push({from:i[0],to:i[1],message:r.text,wrap:r.wrap??M0(),type:Vx.NOTE,placement:t})},"addNote"),Wft=o(function(e,t){let r=Ux(e);try{let n=Zr(t.text,pt());n=n.replace(/&/g,"&"),n=n.replace(/=/g,"=");let i=JSON.parse(n);vP(r,i)}catch(n){V.error("error while parsing actor link text",n)}},"addLinks"),VUt=o(function(e,t){let r=Ux(e);try{let n={},i=Zr(t.text,pt()),a=i.indexOf("@");i=i.replace(/&/g,"&"),i=i.replace(/=/g,"=");let s=i.slice(0,a-1).trim(),l=i.slice(a+1).trim();n[s]=l,vP(r,n)}catch(n){V.error("error while parsing actor link text",n)}},"addALink");o(vP,"insertLinks");Yft=o(function(e,t){let r=Ux(e);try{let n=Zr(t.text,pt()),i=JSON.parse(n);qft(r,i)}catch(n){V.error("error while parsing actor properties text",n)}},"addProperties");o(qft,"insertProperties");o(UUt,"boxEnd");Xft=o(function(e,t){let r=Ux(e),n=document.getElementById(t.text);try{let i=n.innerHTML,a=JSON.parse(i);a.properties&&qft(r,a.properties),a.links&&vP(r,a.links)}catch(i){V.error("error while parsing actor details text",i)}},"addDetails"),HUt=o(function(e,t){if(e?.properties!==void 0)return e.properties[t]},"getActorProperty"),jft=o(function(e){if(Array.isArray(e))e.forEach(function(t){jft(t)});else switch(e.type){case"sequenceIndex":Ge.records.messages.push({from:void 0,to:void 0,message:{start:e.sequenceIndex,step:e.sequenceIndexStep,visible:e.sequenceVisible},wrap:!1,type:e.signalType});break;case"addParticipant":yP(e.actor,e.actor,e.description,e.draw);break;case"createParticipant":if(Ge.records.actors.has(e.actor))throw new 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");Ge.records.lastCreated=e.actor,yP(e.actor,e.actor,e.description,e.draw),Ge.records.createdActors.set(e.actor,Ge.records.messages.length);break;case"destroyParticipant":Ge.records.lastDestroyed=e.actor,Ge.records.destroyedActors.set(e.actor,Ge.records.messages.length);break;case"activeStart":xi(e.actor,void 0,void 0,e.signalType);break;case"activeEnd":xi(e.actor,void 0,void 0,e.signalType);break;case"addNote":Hft(e.actor,e.placement,e.text);break;case"addLinks":Wft(e.actor,e.text);break;case"addALink":VUt(e.actor,e.text);break;case"addProperties":Yft(e.actor,e.text);break;case"addDetails":Xft(e.actor,e.text);break;case"addMessage":if(Ge.records.lastCreated){if(e.to!==Ge.records.lastCreated)throw new Error("The created participant "+Ge.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");Ge.records.lastCreated=void 0}else if(Ge.records.lastDestroyed){if(e.to!==Ge.records.lastDestroyed&&e.from!==Ge.records.lastDestroyed)throw new Error("The destroyed participant "+Ge.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");Ge.records.lastDestroyed=void 0}xi(e.from,e.to,e.msg,e.signalType,e.activate);break;case"boxStart":TUt(e.boxData);break;case"boxEnd":UUt();break;case"loopStart":xi(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":xi(void 0,void 0,void 0,e.signalType);break;case"rectStart":xi(void 0,void 0,e.color,e.signalType);break;case"rectEnd":xi(void 0,void 0,void 0,e.signalType);break;case"optStart":xi(void 0,void 0,e.optText,e.signalType);break;case"optEnd":xi(void 0,void 0,void 0,e.signalType);break;case"altStart":xi(void 0,void 0,e.altText,e.signalType);break;case"else":xi(void 0,void 0,e.altText,e.signalType);break;case"altEnd":xi(void 0,void 0,void 0,e.signalType);break;case"setAccTitle":Mr(e.text);break;case"parStart":xi(void 0,void 0,e.parText,e.signalType);break;case"and":xi(void 0,void 0,e.parText,e.signalType);break;case"parEnd":xi(void 0,void 0,void 0,e.signalType);break;case"criticalStart":xi(void 0,void 0,e.criticalText,e.signalType);break;case"option":xi(void 0,void 0,e.optionText,e.signalType);break;case"criticalEnd":xi(void 0,void 0,void 0,e.signalType);break;case"breakStart":xi(void 0,void 0,e.breakText,e.signalType);break;case"breakEnd":xi(void 0,void 0,void 0,e.signalType);break}},"apply"),xP={addActor:yP,addMessage:EUt,addSignal:xi,addLinks:Wft,addDetails:Xft,addProperties:Yft,autoWrap:M0,setWrap:PUt,enableSequenceNumbers:MUt,disableSequenceNumbers:IUt,showSequenceNumbers:OUt,getMessages:AUt,getActors:LUt,getCreatedActors:DUt,getDestroyedActors:RUt,getActor:Ux,getActorKeys:NUt,getActorProperty:HUt,getAccTitle:Br,getBoxes:_Ut,getDiagramTitle:Jr,setDiagramTitle:cn,getConfig:o(()=>pt().sequence,"getConfig"),clear:BUt,parseMessage:FUt,parseBoxData:zUt,LINETYPE:Vx,ARROWTYPE:$Ut,PLACEMENT:GUt,addNote:Hft,setAccTitle:Mr,apply:jft,setAccDescription:Fr,getAccDescription:zr,hasAtLeastOneBox:CUt,hasAtLeastOneBoxWithTitle:SUt}});var WUt,Qft,Zft=R(()=>{"use strict";WUt=o(e=>`.actor { stroke: ${e.actorBorder}; fill: ${e.actorBkg}; } text.actor > tspan { fill: ${e.actorTextColor}; stroke: none; } .actor-line { stroke: ${e.actorLineColor}; } .messageLine0 { stroke-width: 1.5; stroke-dasharray: none; stroke: ${e.signalColor}; } .messageLine1 { stroke-width: 1.5; stroke-dasharray: 2, 2; stroke: ${e.signalColor}; } #arrowhead path { fill: ${e.signalColor}; stroke: ${e.signalColor}; } .sequenceNumber { fill: ${e.sequenceNumberColor}; } #sequencenumber { fill: ${e.signalColor}; } #crosshead path { fill: ${e.signalColor}; stroke: ${e.signalColor}; } .messageText { fill: ${e.signalTextColor}; stroke: none; } .labelBox { stroke: ${e.labelBoxBorderColor}; fill: ${e.labelBoxBkgColor}; } .labelText, .labelText > tspan { fill: ${e.labelTextColor}; stroke: none; } .loopText, .loopText > tspan { fill: ${e.loopTextColor}; stroke: none; } .loopLine { stroke-width: 2px; stroke-dasharray: 2, 2; stroke: ${e.labelBoxBorderColor}; fill: ${e.labelBoxBorderColor}; } .note { //stroke: #decc93; stroke: ${e.noteBorderColor}; fill: ${e.noteBkgColor}; } .noteText, .noteText > tspan { fill: ${e.noteTextColor}; stroke: none; } .activation0 { fill: ${e.activationBkgColor}; stroke: ${e.activationBorderColor}; } .activation1 { fill: ${e.activationBkgColor}; stroke: ${e.activationBorderColor}; } .activation2 { fill: ${e.activationBkgColor}; stroke: ${e.activationBorderColor}; } .actorPopupMenu { position: absolute; } .actorPopupMenuPanel { position: absolute; fill: ${e.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 line { stroke: ${e.actorBorder}; fill: ${e.actorBkg}; } .actor-man circle, line { stroke: ${e.actorBorder}; fill: ${e.actorBkg}; stroke-width: 2px; } `,"getStyles"),Qft=WUt});var bP,wf,tdt,edt,YUt,Jft,wP,qUt,XUt,Hx,I0,rdt,Yc,TP,jUt,KUt,QUt,ZUt,JUt,tHt,eHt,ndt,rHt,nHt,iHt,aHt,sHt,oHt,lHt,idt,cHt,kP,uHt,hi,adt=R(()=>{"use strict";hr();lv();_r();bP=Qi(Qp(),1);js();wf=18*2,tdt="actor-top",edt="actor-bottom",YUt="actor-box",Jft="actor-man",wP=o(function(e,t){return Td(e,t)},"drawRect"),qUt=o(function(e,t,r,n,i){if(t.links===void 0||t.links===null||Object.keys(t.links).length===0)return{height:0,width:0};let a=t.links,s=t.actorCnt,l=t.rectData;var u="none";i&&(u="block !important");let h=e.append("g");h.attr("id","actor"+s+"_popup"),h.attr("class","actorPopupMenu"),h.attr("display",u);var f="";l.class!==void 0&&(f=" "+l.class);let d=l.width>r?l.width:r,p=h.append("rect");if(p.attr("class","actorPopupMenuPanel"+f),p.attr("x",l.x),p.attr("y",l.height),p.attr("fill",l.fill),p.attr("stroke",l.stroke),p.attr("width",d),p.attr("height",l.height),p.attr("rx",l.rx),p.attr("ry",l.ry),a!=null){var m=20;for(let v in a){var g=h.append("a"),y=(0,bP.sanitizeUrl)(a[v]);g.attr("xlink:href",y),g.attr("target","_blank"),uHt(n)(v,g,l.x+10,l.height+m,d,20,{class:"actor"},n),m+=30}}return p.attr("height",m),{height:l.height+m,width:d}},"drawPopup"),XUt=o(function(e){return"var pu = document.getElementById('"+e+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),Hx=o(async function(e,t,r=null){let n=e.append("foreignObject"),i=await vh(t.text,Nr()),s=n.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(n.attr("height",Math.round(s.height)).attr("width",Math.round(s.width)),t.class==="noteText"){let l=e.node().firstChild;l.setAttribute("height",s.height+2*t.textMargin);let u=l.getBBox();n.attr("x",Math.round(u.x+u.width/2-s.width/2)).attr("y",Math.round(u.y+u.height/2-s.height/2))}else if(r){let{startx:l,stopx:u,starty:h}=r;if(l>u){let f=l;l=u,u=f}n.attr("x",Math.round(l+Math.abs(l-u)/2-s.width/2)),t.class==="loopText"?n.attr("y",Math.round(h)):n.attr("y",Math.round(h-s.height))}return[n]},"drawKatex"),I0=o(function(e,t){let r=0,n=0,i=t.text.split(Yt.lineBreakRegex),[a,s]=Tc(t.fontSize),l=[],u=0,h=o(()=>t.y,"yfunc");if(t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0)switch(t.valign){case"top":case"start":h=o(()=>Math.round(t.y+t.textMargin),"yfunc");break;case"middle":case"center":h=o(()=>Math.round(t.y+(r+n+t.textMargin)/2),"yfunc");break;case"bottom":case"end":h=o(()=>Math.round(t.y+(r+n+2*t.textMargin)-t.textMargin),"yfunc");break}if(t.anchor!==void 0&&t.textMargin!==void 0&&t.width!==void 0)switch(t.anchor){case"left":case"start":t.x=Math.round(t.x+t.textMargin),t.anchor="start",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"middle":case"center":t.x=Math.round(t.x+t.width/2),t.anchor="middle",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"right":case"end":t.x=Math.round(t.x+t.width-t.textMargin),t.anchor="end",t.dominantBaseline="middle",t.alignmentBaseline="middle";break}for(let[f,d]of i.entries()){t.textMargin!==void 0&&t.textMargin===0&&a!==void 0&&(u=f*a);let p=e.append("text");p.attr("x",t.x),p.attr("y",h()),t.anchor!==void 0&&p.attr("text-anchor",t.anchor).attr("dominant-baseline",t.dominantBaseline).attr("alignment-baseline",t.alignmentBaseline),t.fontFamily!==void 0&&p.style("font-family",t.fontFamily),s!==void 0&&p.style("font-size",s),t.fontWeight!==void 0&&p.style("font-weight",t.fontWeight),t.fill!==void 0&&p.attr("fill",t.fill),t.class!==void 0&&p.attr("class",t.class),t.dy!==void 0?p.attr("dy",t.dy):u!==0&&p.attr("dy",u);let m=d||B9;if(t.tspan){let g=p.append("tspan");g.attr("x",t.x),t.fill!==void 0&&g.attr("fill",t.fill),g.text(m)}else p.text(m);t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0&&(n+=(p._groups||p)[0][0].getBBox().height,r=n),l.push(p)}return l},"drawText"),rdt=o(function(e,t){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=e.append("polygon");return n.attr("points",r(t.x,t.y,t.width,t.height,7)),n.attr("class","labelBox"),t.y=t.y+t.height/2,I0(e,t),n},"drawLabel"),Yc=-1,TP=o((e,t,r,n)=>{e.select&&r.forEach(i=>{let a=t.get(i),s=e.select("#actor"+a.actorCnt);!n.mirrorActors&&a.stopy?s.attr("y2",a.stopy+a.height/2):n.mirrorActors&&s.attr("y2",a.stopy)})},"fixLifeLineHeights"),jUt=o(function(e,t,r,n){let i=n?t.stopy:t.starty,a=t.x+t.width/2,s=i+t.height,l=e.append("g").lower();var u=l;n||(Yc++,Object.keys(t.links||{}).length&&!r.forceMenus&&u.attr("onclick",XUt(`actor${Yc}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Yc).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),u=l.append("g"),t.actorCnt=Yc,t.links!=null&&u.attr("id","root-"+Yc));let h=Sl();var f="actor";t.properties?.class?f=t.properties.class:h.fill="#eaeaea",n?f+=` ${edt}`:f+=` ${tdt}`,h.x=t.x,h.y=i,h.width=t.width,h.height=t.height,h.class=f,h.rx=3,h.ry=3,h.name=t.name;let d=wP(u,h);if(t.rectData=h,t.properties?.icon){let m=t.properties.icon.trim();m.charAt(0)==="@"?Tq(u,h.x+h.width-20,h.y+10,m.substr(1)):wq(u,h.x+h.width-20,h.y+10,m)}kP(r,Pi(t.description))(t.description,u,h.x,h.y,h.width,h.height,{class:`actor ${YUt}`},r);let p=t.height;if(d.node){let m=d.node().getBBox();t.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),KUt=o(function(e,t,r,n){let i=n?t.stopy:t.starty,a=t.x+t.width/2,s=i+80,l=e.append("g").lower();n||(Yc++,l.append("line").attr("id","actor"+Yc).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),t.actorCnt=Yc);let u=e.append("g"),h=Jft;n?h+=` ${edt}`:h+=` ${tdt}`,u.attr("class",h),u.attr("name",t.name);let f=Sl();f.x=t.x,f.y=i,f.fill="#eaeaea",f.width=t.width,f.height=t.height,f.class="actor",f.rx=3,f.ry=3,u.append("line").attr("id","actor-man-torso"+Yc).attr("x1",a).attr("y1",i+25).attr("x2",a).attr("y2",i+45),u.append("line").attr("id","actor-man-arms"+Yc).attr("x1",a-wf/2).attr("y1",i+33).attr("x2",a+wf/2).attr("y2",i+33),u.append("line").attr("x1",a-wf/2).attr("y1",i+60).attr("x2",a).attr("y2",i+45),u.append("line").attr("x1",a).attr("y1",i+45).attr("x2",a+wf/2-2).attr("y2",i+60);let d=u.append("circle");d.attr("cx",t.x+t.width/2),d.attr("cy",i+10),d.attr("r",15),d.attr("width",t.width),d.attr("height",t.height);let p=u.node().getBBox();return t.height=p.height,kP(r,Pi(t.description))(t.description,u,f.x,f.y+35,f.width,f.height,{class:`actor ${Jft}`},r),t.height},"drawActorTypeActor"),QUt=o(async function(e,t,r,n){switch(t.type){case"actor":return await KUt(e,t,r,n);case"participant":return await jUt(e,t,r,n)}},"drawActor"),ZUt=o(function(e,t,r){let i=e.append("g");ndt(i,t),t.name&&kP(r)(t.name,i,t.x,t.y+(t.textMaxHeight||0)/2,t.width,0,{class:"text"},r),i.lower()},"drawBox"),JUt=o(function(e){return e.append("g")},"anchorElement"),tHt=o(function(e,t,r,n,i){let a=Sl(),s=t.anchored;a.x=t.startx,a.y=t.starty,a.class="activation"+i%3,a.width=t.stopx-t.startx,a.height=r-t.starty,wP(s,a)},"drawActivation"),eHt=o(async function(e,t,r,n){let{boxMargin:i,boxTextMargin:a,labelBoxHeight:s,labelBoxWidth:l,messageFontFamily:u,messageFontSize:h,messageFontWeight:f}=n,d=e.append("g"),p=o(function(y,v,x,b){return d.append("line").attr("x1",y).attr("y1",v).attr("x2",x).attr("y2",b).attr("class","loopLine")},"drawLoopLine");p(t.startx,t.starty,t.stopx,t.starty),p(t.stopx,t.starty,t.stopx,t.stopy),p(t.startx,t.stopy,t.stopx,t.stopy),p(t.startx,t.starty,t.startx,t.stopy),t.sections!==void 0&&t.sections.forEach(function(y){p(t.startx,y.y,t.stopx,y.y).style("stroke-dasharray","3, 3")});let m=ov();m.text=r,m.x=t.startx,m.y=t.starty,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.anchor="middle",m.valign="middle",m.tspan=!1,m.width=l||50,m.height=s||20,m.textMargin=a,m.class="labelText",rdt(d,m),m=idt(),m.text=t.title,m.x=t.startx+l/2+(t.stopx-t.startx)/2,m.y=t.starty+i+a,m.anchor="middle",m.valign="middle",m.textMargin=a,m.class="loopText",m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=!0;let g=Pi(m.text)?await Hx(d,m,t):I0(d,m);if(t.sectionTitles!==void 0){for(let[y,v]of Object.entries(t.sectionTitles))if(v.message){m.text=v.message,m.x=t.startx+(t.stopx-t.startx)/2,m.y=t.sections[y].y+i+a,m.class="loopText",m.anchor="middle",m.valign="middle",m.tspan=!1,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=t.wrap,Pi(m.text)?(t.starty=t.sections[y].y,await Hx(d,m,t)):I0(d,m);let x=Math.round(g.map(b=>(b._groups||b)[0][0].getBBox().height).reduce((b,w)=>b+w));t.sections[y].height+=x-(i+a)}}return t.height=Math.round(t.stopy-t.starty),d},"drawLoop"),ndt=o(function(e,t){m5(e,t)},"drawBackgroundRect"),rHt=o(function(e){e.append("defs").append("symbol").attr("id","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"),nHt=o(function(e){e.append("defs").append("symbol").attr("id","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"),iHt=o(function(e){e.append("defs").append("symbol").attr("id","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"),aHt=o(function(e){e.append("defs").append("marker").attr("id","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"),sHt=o(function(e){e.append("defs").append("marker").attr("id","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"),oHt=o(function(e){e.append("defs").append("marker").attr("id","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"),lHt=o(function(e){e.append("defs").append("marker").attr("id","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"),idt=o(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"),cHt=o(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),kP=function(){function e(a,s,l,u,h,f,d){let p=s.append("text").attr("x",l+h/2).attr("y",u+f/2+5).style("text-anchor","middle").text(a);i(p,d)}o(e,"byText");function t(a,s,l,u,h,f,d,p){let{actorFontSize:m,actorFontFamily:g,actorFontWeight:y}=p,[v,x]=Tc(m),b=a.split(Yt.lineBreakRegex);for(let w=0;w{let s=O0(Rt),l=a.actorKeys.reduce((f,d)=>f+=e.get(d).width+(e.get(d).margin||0),0);l-=2*Rt.boxTextMargin,a.wrap&&(a.name=Oe.wrapLabel(a.name,l-2*Rt.wrapPadding,s));let u=Oe.calculateTextDimensions(a.name,s);i=Yt.getMax(u.height,i);let h=Yt.getMax(l,u.width+2*Rt.wrapPadding);if(a.margin=Rt.boxTextMargin,la.textMaxHeight=i),Yt.getMax(n,Rt.height)}var Rt,re,hHt,O0,Qg,EP,dHt,pHt,CP,odt,ldt,h6,sdt,gHt,vHt,bHt,wHt,THt,cdt,udt=R(()=>{"use strict";ur();adt();ce();hr();lv();Ue();yp();_r();Jn();Rt={},re={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:o(function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map(e=>e.height||0))+(this.loops.length===0?0:this.loops.map(e=>e.height||0).reduce((e,t)=>e+t))+(this.messages.length===0?0:this.messages.map(e=>e.height||0).reduce((e,t)=>e+t))+(this.notes.length===0?0:this.notes.map(e=>e.height||0).reduce((e,t)=>e+t))},"getHeight"),clear:o(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:o(function(e){this.boxes.push(e)},"addBox"),addActor:o(function(e){this.actors.push(e)},"addActor"),addLoop:o(function(e){this.loops.push(e)},"addLoop"),addMessage:o(function(e){this.messages.push(e)},"addMessage"),addNote:o(function(e){this.notes.push(e)},"addNote"),lastActor:o(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:o(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:o(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:o(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:o(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,ldt(pt())},"init"),updateVal:o(function(e,t,r,n){e[t]===void 0?e[t]=r:e[t]=n(r,e[t])},"updateVal"),updateBounds:o(function(e,t,r,n){let i=this,a=0;function s(l){return o(function(h){a++;let f=i.sequenceItems.length-a+1;i.updateVal(h,"starty",t-f*Rt.boxMargin,Math.min),i.updateVal(h,"stopy",n+f*Rt.boxMargin,Math.max),i.updateVal(re.data,"startx",e-f*Rt.boxMargin,Math.min),i.updateVal(re.data,"stopx",r+f*Rt.boxMargin,Math.max),l!=="activation"&&(i.updateVal(h,"startx",e-f*Rt.boxMargin,Math.min),i.updateVal(h,"stopx",r+f*Rt.boxMargin,Math.max),i.updateVal(re.data,"starty",t-f*Rt.boxMargin,Math.min),i.updateVal(re.data,"stopy",n+f*Rt.boxMargin,Math.max))},"updateItemBounds")}o(s,"updateFn"),this.sequenceItems.forEach(s()),this.activations.forEach(s("activation"))},"updateBounds"),insert:o(function(e,t,r,n){let i=Yt.getMin(e,r),a=Yt.getMax(e,r),s=Yt.getMin(t,n),l=Yt.getMax(t,n);this.updateVal(re.data,"startx",i,Math.min),this.updateVal(re.data,"starty",s,Math.min),this.updateVal(re.data,"stopx",a,Math.max),this.updateVal(re.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),newActivation:o(function(e,t,r){let n=r.get(e.from),i=h6(e.from).length||0,a=n.x+n.width/2+(i-1)*Rt.activationWidth/2;this.activations.push({startx:a,starty:this.verticalPos+2,stopx:a+Rt.activationWidth,stopy:void 0,actor:e.from,anchored:hi.anchorElement(t)})},"newActivation"),endActivation:o(function(e){let t=this.activations.map(function(r){return r.actor}).lastIndexOf(e.from);return this.activations.splice(t,1)[0]},"endActivation"),createLoop:o(function(e={message:void 0,wrap:!1,width:void 0},t){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:e.message,wrap:e.wrap,width:e.width,height:0,fill:t}},"createLoop"),newLoop:o(function(e={message:void 0,wrap:!1,width:void 0},t){this.sequenceItems.push(this.createLoop(e,t))},"newLoop"),endLoop:o(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:o(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:o(function(e){let t=this.sequenceItems.pop();t.sections=t.sections||[],t.sectionTitles=t.sectionTitles||[],t.sections.push({y:re.getVerticalPos(),height:0}),t.sectionTitles.push(e),this.sequenceItems.push(t)},"addSectionToLoop"),saveVerticalPos:o(function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},"saveVerticalPos"),resetVerticalPos:o(function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},"resetVerticalPos"),bumpVerticalPos:o(function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=Yt.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return{bounds:this.data,models:this.models}},"getBounds")},hHt=o(async function(e,t){re.bumpVerticalPos(Rt.boxMargin),t.height=Rt.boxMargin,t.starty=re.getVerticalPos();let r=Sl();r.x=t.startx,r.y=t.starty,r.width=t.width||Rt.width,r.class="note";let n=e.append("g"),i=hi.drawRect(n,r),a=ov();a.x=t.startx,a.y=t.starty,a.width=r.width,a.dy="1em",a.text=t.message,a.class="noteText",a.fontFamily=Rt.noteFontFamily,a.fontSize=Rt.noteFontSize,a.fontWeight=Rt.noteFontWeight,a.anchor=Rt.noteAlign,a.textMargin=Rt.noteMargin,a.valign="center";let s=Pi(a.text)?await Hx(n,a):I0(n,a),l=Math.round(s.map(u=>(u._groups||u)[0][0].getBBox().height).reduce((u,h)=>u+h));i.attr("height",l+2*Rt.noteMargin),t.height+=l+2*Rt.noteMargin,re.bumpVerticalPos(l+2*Rt.noteMargin),t.stopy=t.starty+l+2*Rt.noteMargin,t.stopx=t.startx+r.width,re.insert(t.startx,t.starty,t.stopx,t.stopy),re.models.addNote(t)},"drawNote"),O0=o(e=>({fontFamily:e.messageFontFamily,fontSize:e.messageFontSize,fontWeight:e.messageFontWeight}),"messageFont"),Qg=o(e=>({fontFamily:e.noteFontFamily,fontSize:e.noteFontSize,fontWeight:e.noteFontWeight}),"noteFont"),EP=o(e=>({fontFamily:e.actorFontFamily,fontSize:e.actorFontSize,fontWeight:e.actorFontWeight}),"actorFont");o(fHt,"boundMessage");dHt=o(async function(e,t,r,n){let{startx:i,stopx:a,starty:s,message:l,type:u,sequenceIndex:h,sequenceVisible:f}=t,d=Oe.calculateTextDimensions(l,O0(Rt)),p=ov();p.x=i,p.y=s+10,p.width=a-i,p.class="messageText",p.dy="1em",p.text=l,p.fontFamily=Rt.messageFontFamily,p.fontSize=Rt.messageFontSize,p.fontWeight=Rt.messageFontWeight,p.anchor=Rt.messageAlign,p.valign="center",p.textMargin=Rt.wrapPadding,p.tspan=!1,Pi(p.text)?await Hx(e,p,{startx:i,stopx:a,starty:r}):I0(e,p);let m=d.width,g;i===a?Rt.rightAngles?g=e.append("path").attr("d",`M ${i},${r} H ${i+Yt.getMax(Rt.width/2,m/2)} V ${r+25} H ${i}`):g=e.append("path").attr("d","M "+i+","+r+" C "+(i+60)+","+(r-10)+" "+(i+60)+","+(r+30)+" "+i+","+(r+20)):(g=e.append("line"),g.attr("x1",i),g.attr("y1",r),g.attr("x2",a),g.attr("y2",r)),u===n.db.LINETYPE.DOTTED||u===n.db.LINETYPE.DOTTED_CROSS||u===n.db.LINETYPE.DOTTED_POINT||u===n.db.LINETYPE.DOTTED_OPEN||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED?(g.style("stroke-dasharray","3, 3"),g.attr("class","messageLine1")):g.attr("class","messageLine0");let y="";Rt.arrowMarkerAbsolute&&(y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,y=y.replace(/\(/g,"\\("),y=y.replace(/\)/g,"\\)")),g.attr("stroke-width",2),g.attr("stroke","none"),g.style("fill","none"),(u===n.db.LINETYPE.SOLID||u===n.db.LINETYPE.DOTTED)&&g.attr("marker-end","url("+y+"#arrowhead)"),(u===n.db.LINETYPE.BIDIRECTIONAL_SOLID||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(g.attr("marker-start","url("+y+"#arrowhead)"),g.attr("marker-end","url("+y+"#arrowhead)")),(u===n.db.LINETYPE.SOLID_POINT||u===n.db.LINETYPE.DOTTED_POINT)&&g.attr("marker-end","url("+y+"#filled-head)"),(u===n.db.LINETYPE.SOLID_CROSS||u===n.db.LINETYPE.DOTTED_CROSS)&&g.attr("marker-end","url("+y+"#crosshead)"),(f||Rt.showSequenceNumbers)&&(g.attr("marker-start","url("+y+"#sequencenumber)"),e.append("text").attr("x",i).attr("y",r+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(h))},"drawMessage"),pHt=o(function(e,t,r,n,i,a,s){let l=0,u=0,h,f=0;for(let d of n){let p=t.get(d),m=p.box;h&&h!=m&&(s||re.models.addBox(h),u+=Rt.boxMargin+h.margin),m&&m!=h&&(s||(m.x=l+u,m.y=i),u+=m.margin),p.width=p.width||Rt.width,p.height=Yt.getMax(p.height||Rt.height,Rt.height),p.margin=p.margin||Rt.actorMargin,f=Yt.getMax(f,p.height),r.get(p.name)&&(u+=p.width/2),p.x=l+u,p.starty=re.getVerticalPos(),re.insert(p.x,i,p.x+p.width,p.height),l+=p.width+u,p.box&&(p.box.width=l+m.margin-p.box.x),u=p.margin,h=p.box,re.models.addActor(p)}h&&!s&&re.models.addBox(h),re.bumpVerticalPos(f)},"addActorRenderingData"),CP=o(async function(e,t,r,n){if(n){let i=0;re.bumpVerticalPos(Rt.boxMargin*2);for(let a of r){let s=t.get(a);s.stopy||(s.stopy=re.getVerticalPos());let l=await hi.drawActor(e,s,Rt,!0);i=Yt.getMax(i,l)}re.bumpVerticalPos(i+Rt.boxMargin)}else for(let i of r){let a=t.get(i);await hi.drawActor(e,a,Rt,!1)}},"drawActors"),odt=o(function(e,t,r,n){let i=0,a=0;for(let s of r){let l=t.get(s),u=vHt(l),h=hi.drawPopup(e,l,u,Rt,Rt.forceMenus,n);h.height>i&&(i=h.height),h.width+l.x>a&&(a=h.width+l.x)}return{maxHeight:i,maxWidth:a}},"drawActorsPopup"),ldt=o(function(e){Vn(Rt,e),e.fontFamily&&(Rt.actorFontFamily=Rt.noteFontFamily=Rt.messageFontFamily=e.fontFamily),e.fontSize&&(Rt.actorFontSize=Rt.noteFontSize=Rt.messageFontSize=e.fontSize),e.fontWeight&&(Rt.actorFontWeight=Rt.noteFontWeight=Rt.messageFontWeight=e.fontWeight)},"setConf"),h6=o(function(e){return re.activations.filter(function(t){return t.actor===e})},"actorActivations"),sdt=o(function(e,t){let r=t.get(e),n=h6(e),i=n.reduce(function(s,l){return Yt.getMin(s,l.startx)},r.x+r.width/2-1),a=n.reduce(function(s,l){return Yt.getMax(s,l.stopx)},r.x+r.width/2+1);return[i,a]},"activationBounds");o(qc,"adjustLoopHeightForWrap");o(mHt,"adjustCreatedDestroyedData");gHt=o(async function(e,t,r,n){let{securityLevel:i,sequence:a}=pt();Rt=a;let s;i==="sandbox"&&(s=Gt("#i"+t));let l=i==="sandbox"?Gt(s.nodes()[0].contentDocument.body):Gt("body"),u=i==="sandbox"?s.nodes()[0].contentDocument:document;re.init(),V.debug(n.db);let h=i==="sandbox"?l.select(`[id="${t}"]`):Gt(`[id="${t}"]`),f=n.db.getActors(),d=n.db.getCreatedActors(),p=n.db.getDestroyedActors(),m=n.db.getBoxes(),g=n.db.getActorKeys(),y=n.db.getMessages(),v=n.db.getDiagramTitle(),x=n.db.hasAtLeastOneBox(),b=n.db.hasAtLeastOneBoxWithTitle(),w=await yHt(f,y,n);if(Rt.height=await xHt(f,w,m),hi.insertComputerIcon(h),hi.insertDatabaseIcon(h),hi.insertClockIcon(h),x&&(re.bumpVerticalPos(Rt.boxMargin),b&&re.bumpVerticalPos(m[0].textMaxHeight)),Rt.hideUnusedParticipants===!0){let F=new Set;y.forEach(B=>{F.add(B.from),F.add(B.to)}),g=g.filter(B=>F.has(B))}pHt(h,f,d,g,0,y,!1);let S=await THt(y,f,w,n);hi.insertArrowHead(h),hi.insertArrowCrossHead(h),hi.insertArrowFilledHead(h),hi.insertSequenceNumber(h);function T(F,B){let G=re.endActivation(F);G.starty+18>B&&(G.starty=B-6,B+=12),hi.drawActivation(h,G,B,Rt,h6(F.from).length),re.insert(G.startx,B-10,G.stopx,B)}o(T,"activeEnd");let E=1,_=1,A=[],L=[],M=0;for(let F of y){let B,G,z;switch(F.type){case n.db.LINETYPE.NOTE:re.resetVerticalPos(),G=F.noteModel,await hHt(h,G);break;case n.db.LINETYPE.ACTIVE_START:re.newActivation(F,h,f);break;case n.db.LINETYPE.ACTIVE_END:T(F,re.getVerticalPos());break;case n.db.LINETYPE.LOOP_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.LOOP_END:B=re.endLoop(),await hi.drawLoop(h,B,"loop",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.RECT_START:qc(S,F,Rt.boxMargin,Rt.boxMargin,W=>re.newLoop(void 0,W.message));break;case n.db.LINETYPE.RECT_END:B=re.endLoop(),L.push(B),re.models.addLoop(B),re.bumpVerticalPos(B.stopy-re.getVerticalPos());break;case n.db.LINETYPE.OPT_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.OPT_END:B=re.endLoop(),await hi.drawLoop(h,B,"opt",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.ALT_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.ALT_ELSE:qc(S,F,Rt.boxMargin+Rt.boxTextMargin,Rt.boxMargin,W=>re.addSectionToLoop(W));break;case n.db.LINETYPE.ALT_END:B=re.endLoop(),await hi.drawLoop(h,B,"alt",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W)),re.saveVerticalPos();break;case n.db.LINETYPE.PAR_AND:qc(S,F,Rt.boxMargin+Rt.boxTextMargin,Rt.boxMargin,W=>re.addSectionToLoop(W));break;case n.db.LINETYPE.PAR_END:B=re.endLoop(),await hi.drawLoop(h,B,"par",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.AUTONUMBER:E=F.message.start||E,_=F.message.step||_,F.message.visible?n.db.enableSequenceNumbers():n.db.disableSequenceNumbers();break;case n.db.LINETYPE.CRITICAL_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.CRITICAL_OPTION:qc(S,F,Rt.boxMargin+Rt.boxTextMargin,Rt.boxMargin,W=>re.addSectionToLoop(W));break;case n.db.LINETYPE.CRITICAL_END:B=re.endLoop(),await hi.drawLoop(h,B,"critical",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.BREAK_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.BREAK_END:B=re.endLoop(),await hi.drawLoop(h,B,"break",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;default:try{z=F.msgModel,z.starty=re.getVerticalPos(),z.sequenceIndex=E,z.sequenceVisible=n.db.showSequenceNumbers();let W=await fHt(h,z);mHt(F,z,W,M,f,d,p),A.push({messageModel:z,lineStartY:W}),re.models.addMessage(z)}catch(W){V.error("error while drawing message",W)}}[n.db.LINETYPE.SOLID_OPEN,n.db.LINETYPE.DOTTED_OPEN,n.db.LINETYPE.SOLID,n.db.LINETYPE.DOTTED,n.db.LINETYPE.SOLID_CROSS,n.db.LINETYPE.DOTTED_CROSS,n.db.LINETYPE.SOLID_POINT,n.db.LINETYPE.DOTTED_POINT,n.db.LINETYPE.BIDIRECTIONAL_SOLID,n.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(F.type)&&(E=E+_),M++}V.debug("createdActors",d),V.debug("destroyedActors",p),await CP(h,f,g,!1);for(let F of A)await dHt(h,F.messageModel,F.lineStartY,n);Rt.mirrorActors&&await CP(h,f,g,!0),L.forEach(F=>hi.drawBackgroundRect(h,F)),TP(h,f,g,Rt);for(let F of re.models.boxes)F.height=re.getVerticalPos()-F.y,re.insert(F.x,F.y,F.x+F.width,F.height),F.startx=F.x,F.starty=F.y,F.stopx=F.startx+F.width,F.stopy=F.starty+F.height,F.stroke="rgb(0,0,0, 0.5)",hi.drawBox(h,F,Rt);x&&re.bumpVerticalPos(Rt.boxMargin);let N=odt(h,f,g,u),{bounds:k}=re.getBounds();k.startx===void 0&&(k.startx=0),k.starty===void 0&&(k.starty=0),k.stopx===void 0&&(k.stopx=0),k.stopy===void 0&&(k.stopy=0);let I=k.stopy-k.starty;I2,d=o(y=>l?-y:y,"adjustValue");e.from===e.to?h=u:(e.activate&&!f&&(h+=d(Rt.activationWidth/2-1)),[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN].includes(e.type)||(h+=d(3)),[r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(e.type)&&(u-=d(3)));let p=[n,i,a,s],m=Math.abs(u-h);e.wrap&&e.message&&(e.message=Oe.wrapLabel(e.message,Yt.getMax(m+2*Rt.wrapPadding,Rt.width),O0(Rt)));let g=Oe.calculateTextDimensions(e.message,O0(Rt));return{width:Yt.getMax(e.wrap?0:g.width+2*Rt.wrapPadding,m+2*Rt.wrapPadding,Rt.width),height:0,startx:u,stopx:h,starty:0,stopy:0,message:e.message,type:e.type,wrap:e.wrap,fromBounds:Math.min.apply(null,p),toBounds:Math.max.apply(null,p)}},"buildMessageModel"),THt=o(async function(e,t,r,n){let i={},a=[],s,l,u;for(let h of e){switch(h.id=Oe.random({length:10}),h.type){case n.db.LINETYPE.LOOP_START:case n.db.LINETYPE.ALT_START:case n.db.LINETYPE.OPT_START:case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:case n.db.LINETYPE.CRITICAL_START:case n.db.LINETYPE.BREAK_START:a.push({id:h.id,msg:h.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case n.db.LINETYPE.ALT_ELSE:case n.db.LINETYPE.PAR_AND:case n.db.LINETYPE.CRITICAL_OPTION:h.message&&(s=a.pop(),i[s.id]=s,i[h.id]=s,a.push(s));break;case n.db.LINETYPE.LOOP_END:case n.db.LINETYPE.ALT_END:case n.db.LINETYPE.OPT_END:case n.db.LINETYPE.PAR_END:case n.db.LINETYPE.CRITICAL_END:case n.db.LINETYPE.BREAK_END:s=a.pop(),i[s.id]=s;break;case n.db.LINETYPE.ACTIVE_START:{let d=t.get(h.from?h.from:h.to.actor),p=h6(h.from?h.from:h.to.actor).length,m=d.x+d.width/2+(p-1)*Rt.activationWidth/2,g={startx:m,stopx:m+Rt.activationWidth,actor:h.from,enabled:!0};re.activations.push(g)}break;case n.db.LINETYPE.ACTIVE_END:{let d=re.activations.map(p=>p.actor).lastIndexOf(h.from);re.activations.splice(d,1).splice(0,1)}break}h.placement!==void 0?(l=await bHt(h,t,n),h.noteModel=l,a.forEach(d=>{s=d,s.from=Yt.getMin(s.from,l.startx),s.to=Yt.getMax(s.to,l.startx+l.width),s.width=Yt.getMax(s.width,Math.abs(s.from-s.to))-Rt.labelBoxWidth})):(u=wHt(h,t,n),h.msgModel=u,u.startx&&u.stopx&&a.length>0&&a.forEach(d=>{if(s=d,u.startx===u.stopx){let p=t.get(h.from),m=t.get(h.to);s.from=Yt.getMin(p.x-u.width/2,p.x-p.width/2,s.from),s.to=Yt.getMax(m.x+u.width/2,m.x+p.width/2,s.to),s.width=Yt.getMax(s.width,Math.abs(s.to-s.from))-Rt.labelBoxWidth}else s.from=Yt.getMin(u.startx,s.from),s.to=Yt.getMax(u.stopx,s.to),s.width=Yt.getMax(s.width,u.width)-Rt.labelBoxWidth}))}return re.activations=[],V.debug("Loop type widths:",i),i},"calculateLoopBounds"),cdt={bounds:re,drawActors:CP,drawActorsPopup:odt,setConf:ldt,draw:gHt}});var hdt={};xr(hdt,{diagram:()=>kHt});var kHt,fdt=R(()=>{"use strict";Vft();Kft();Zft();udt();kHt={parser:Gft,db:xP,renderer:cdt,styles:Qft,init:o(({wrap:e})=>{xP.setWrap(e)},"init")}});var SP,f6,AP=R(()=>{"use strict";SP=function(){var e=o(function(Pt,_t,dt,Y){for(dt=dt||{},Y=Pt.length;Y--;dt[Pt[Y]]=_t);return dt},"o"),t=[1,17],r=[1,18],n=[1,19],i=[1,39],a=[1,40],s=[1,25],l=[1,23],u=[1,24],h=[1,31],f=[1,32],d=[1,33],p=[1,34],m=[1,35],g=[1,36],y=[1,26],v=[1,27],x=[1,28],b=[1,29],w=[1,43],S=[1,30],T=[1,42],E=[1,44],_=[1,41],A=[1,45],L=[1,9],M=[1,8,9],N=[1,56],k=[1,57],I=[1,58],C=[1,59],O=[1,60],D=[1,61],P=[1,62],F=[1,8,9,40],B=[1,74],G=[1,8,9,12,13,22,38,40,43,60,61,62,63,64,65,66,71,73],z=[1,8,9,12,13,17,20,22,38,40,43,47,60,61,62,63,64,65,66,71,73,75,81,96,98,99],W=[13,75,81,96,98,99],Q=[13,65,66,75,81,96,98,99],j=[13,60,61,62,63,64,75,81,96,98,99],at=[1,94],X=[1,111],J=[1,109],Z=[1,103],H=[1,104],q=[1,105],K=[1,106],ot=[1,107],ct=[1,108],ut=[1,110],et=[1,8,9,38,40,43],Mt=[1,8,9,22],it=[1,8,9,79],wt=[1,8,9,22,74,75,79,81,82,83,84,85,86],Ot={trace:o(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,DOT:17,className:18,classLiteralName:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,namespaceIdentifier:37,STRUCT_START:38,classStatements:39,STRUCT_STOP:40,NAMESPACE:41,classIdentifier:42,STYLE_SEPARATOR:43,members:44,CLASS:45,ANNOTATION_START:46,ANNOTATION_END:47,MEMBER:48,SEPARATOR:49,relation:50,NOTE_FOR:51,noteText:52,NOTE:53,direction_tb:54,direction_bt:55,direction_rl:56,direction_lr:57,relationType:58,lineType:59,AGGREGATION:60,EXTENSION:61,COMPOSITION:62,DEPENDENCY:63,LOLLIPOP:64,LINE:65,DOTTED_LINE:66,CALLBACK:67,LINK:68,LINK_TARGET:69,CLICK:70,CALLBACK_NAME:71,CALLBACK_ARGS:72,HREF:73,STYLE:74,ALPHA:75,stylesOpt:76,CSSCLASS:77,style:78,COMMA:79,styleComponent:80,NUM:81,COLON:82,UNIT:83,SPACE:84,BRKT:85,PCT:86,commentToken:87,textToken:88,graphCodeTokens:89,textNoTagsToken:90,TAGSTART:91,TAGEND:92,"==":93,"--":94,DEFAULT:95,MINUS:96,keywords:97,UNICODE_TEXT:98,BQUOTE_STR:99,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",17:"DOT",20:"GENERICTYPE",22:"LABEL",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",38:"STRUCT_START",40:"STRUCT_STOP",41:"NAMESPACE",43:"STYLE_SEPARATOR",45:"CLASS",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"MEMBER",49:"SEPARATOR",51:"NOTE_FOR",53:"NOTE",54:"direction_tb",55:"direction_bt",56:"direction_rl",57:"direction_lr",60:"AGGREGATION",61:"EXTENSION",62:"COMPOSITION",63:"DEPENDENCY",64:"LOLLIPOP",65:"LINE",66:"DOTTED_LINE",67:"CALLBACK",68:"LINK",69:"LINK_TARGET",70:"CLICK",71:"CALLBACK_NAME",72:"CALLBACK_ARGS",73:"HREF",74:"STYLE",75:"ALPHA",77:"CSSCLASS",79:"COMMA",81:"NUM",82:"COLON",83:"UNIT",84:"SPACE",85:"BRKT",86:"PCT",89:"graphCodeTokens",91:"TAGSTART",92:"TAGEND",93:"==",94:"--",95:"DEFAULT",96:"MINUS",97:"keywords",98:"UNICODE_TEXT",99:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,3],[15,2],[18,1],[18,3],[18,1],[18,2],[18,2],[18,2],[10,1],[10,2],[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],[37,2],[39,1],[39,2],[39,3],[24,1],[24,3],[24,4],[24,6],[42,2],[42,3],[26,4],[44,1],[44,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,1],[31,1],[31,1],[31,1],[50,3],[50,2],[50,2],[50,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,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],[76,1],[76,3],[78,1],[78,2],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[87,1],[87,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[90,1],[90,1],[90,1],[90,1],[16,1],[16,1],[16,1],[16,1],[19,1],[52,1]],performAction:o(function(_t,dt,Y,ft,mt,rt,ht){var nt=rt.length-1;switch(mt){case 8:this.$=rt[nt-1];break;case 9:case 12:case 14:this.$=rt[nt];break;case 10:case 13:this.$=rt[nt-2]+"."+rt[nt];break;case 11:case 15:this.$=rt[nt-1]+rt[nt];break;case 16:case 17:this.$=rt[nt-1]+"~"+rt[nt]+"~";break;case 18:ft.addRelation(rt[nt]);break;case 19:rt[nt-1].title=ft.cleanupLabel(rt[nt]),ft.addRelation(rt[nt-1]);break;case 29:this.$=rt[nt].trim(),ft.setAccTitle(this.$);break;case 30:case 31:this.$=rt[nt].trim(),ft.setAccDescription(this.$);break;case 32:ft.addClassesToNamespace(rt[nt-3],rt[nt-1]);break;case 33:ft.addClassesToNamespace(rt[nt-4],rt[nt-1]);break;case 34:this.$=rt[nt],ft.addNamespace(rt[nt]);break;case 35:this.$=[rt[nt]];break;case 36:this.$=[rt[nt-1]];break;case 37:rt[nt].unshift(rt[nt-2]),this.$=rt[nt];break;case 39:ft.setCssClass(rt[nt-2],rt[nt]);break;case 40:ft.addMembers(rt[nt-3],rt[nt-1]);break;case 41:ft.setCssClass(rt[nt-5],rt[nt-3]),ft.addMembers(rt[nt-5],rt[nt-1]);break;case 42:this.$=rt[nt],ft.addClass(rt[nt]);break;case 43:this.$=rt[nt-1],ft.addClass(rt[nt-1]),ft.setClassLabel(rt[nt-1],rt[nt]);break;case 44:ft.addAnnotation(rt[nt],rt[nt-2]);break;case 45:this.$=[rt[nt]];break;case 46:rt[nt].push(rt[nt-1]),this.$=rt[nt];break;case 47:break;case 48:ft.addMember(rt[nt-1],ft.cleanupLabel(rt[nt]));break;case 49:break;case 50:break;case 51:this.$={id1:rt[nt-2],id2:rt[nt],relation:rt[nt-1],relationTitle1:"none",relationTitle2:"none"};break;case 52:this.$={id1:rt[nt-3],id2:rt[nt],relation:rt[nt-1],relationTitle1:rt[nt-2],relationTitle2:"none"};break;case 53:this.$={id1:rt[nt-3],id2:rt[nt],relation:rt[nt-2],relationTitle1:"none",relationTitle2:rt[nt-1]};break;case 54:this.$={id1:rt[nt-4],id2:rt[nt],relation:rt[nt-2],relationTitle1:rt[nt-3],relationTitle2:rt[nt-1]};break;case 55:ft.addNote(rt[nt],rt[nt-1]);break;case 56:ft.addNote(rt[nt]);break;case 57:ft.setDirection("TB");break;case 58:ft.setDirection("BT");break;case 59:ft.setDirection("RL");break;case 60:ft.setDirection("LR");break;case 61:this.$={type1:rt[nt-2],type2:rt[nt],lineType:rt[nt-1]};break;case 62:this.$={type1:"none",type2:rt[nt],lineType:rt[nt-1]};break;case 63:this.$={type1:rt[nt-1],type2:"none",lineType:rt[nt]};break;case 64:this.$={type1:"none",type2:"none",lineType:rt[nt]};break;case 65:this.$=ft.relationType.AGGREGATION;break;case 66:this.$=ft.relationType.EXTENSION;break;case 67:this.$=ft.relationType.COMPOSITION;break;case 68:this.$=ft.relationType.DEPENDENCY;break;case 69:this.$=ft.relationType.LOLLIPOP;break;case 70:this.$=ft.lineType.LINE;break;case 71:this.$=ft.lineType.DOTTED_LINE;break;case 72:case 78:this.$=rt[nt-2],ft.setClickEvent(rt[nt-1],rt[nt]);break;case 73:case 79:this.$=rt[nt-3],ft.setClickEvent(rt[nt-2],rt[nt-1]),ft.setTooltip(rt[nt-2],rt[nt]);break;case 74:this.$=rt[nt-2],ft.setLink(rt[nt-1],rt[nt]);break;case 75:this.$=rt[nt-3],ft.setLink(rt[nt-2],rt[nt-1],rt[nt]);break;case 76:this.$=rt[nt-3],ft.setLink(rt[nt-2],rt[nt-1]),ft.setTooltip(rt[nt-2],rt[nt]);break;case 77:this.$=rt[nt-4],ft.setLink(rt[nt-3],rt[nt-2],rt[nt]),ft.setTooltip(rt[nt-3],rt[nt-1]);break;case 80:this.$=rt[nt-3],ft.setClickEvent(rt[nt-2],rt[nt-1],rt[nt]);break;case 81:this.$=rt[nt-4],ft.setClickEvent(rt[nt-3],rt[nt-2],rt[nt-1]),ft.setTooltip(rt[nt-3],rt[nt]);break;case 82:this.$=rt[nt-3],ft.setLink(rt[nt-2],rt[nt]);break;case 83:this.$=rt[nt-4],ft.setLink(rt[nt-3],rt[nt-1],rt[nt]);break;case 84:this.$=rt[nt-4],ft.setLink(rt[nt-3],rt[nt-1]),ft.setTooltip(rt[nt-3],rt[nt]);break;case 85:this.$=rt[nt-5],ft.setLink(rt[nt-4],rt[nt-2],rt[nt]),ft.setTooltip(rt[nt-4],rt[nt-1]);break;case 86:this.$=rt[nt-2],ft.setCssStyle(rt[nt-1],rt[nt]);break;case 87:ft.setCssClass(rt[nt-1],rt[nt]);break;case 88:this.$=[rt[nt]];break;case 89:rt[nt-2].push(rt[nt]),this.$=rt[nt-2];break;case 91:this.$=rt[nt-1]+rt[nt];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,18:20,19:38,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:t,34:r,36:n,37:21,41:i,42:22,45:a,46:s,48:l,49:u,51:h,53:f,54:d,55:p,56:m,57:g,67:y,68:v,70:x,74:b,75:w,77:S,81:T,96:E,98:_,99:A},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(L,[2,5],{8:[1,46]}),{8:[1,47]},e(M,[2,18],{22:[1,48]}),e(M,[2,20]),e(M,[2,21]),e(M,[2,22]),e(M,[2,23]),e(M,[2,24]),e(M,[2,25]),e(M,[2,26]),e(M,[2,27]),e(M,[2,28]),{33:[1,49]},{35:[1,50]},e(M,[2,31]),e(M,[2,47],{50:51,58:54,59:55,13:[1,52],22:[1,53],60:N,61:k,62:I,63:C,64:O,65:D,66:P}),{38:[1,63]},e(F,[2,38],{38:[1,65],43:[1,64]}),e(M,[2,49]),e(M,[2,50]),{16:66,75:w,81:T,96:E,98:_},{16:37,18:67,19:38,75:w,81:T,96:E,98:_,99:A},{16:37,18:68,19:38,75:w,81:T,96:E,98:_,99:A},{16:37,18:69,19:38,75:w,81:T,96:E,98:_,99:A},{75:[1,70]},{13:[1,71]},{16:37,18:72,19:38,75:w,81:T,96:E,98:_,99:A},{13:B,52:73},e(M,[2,57]),e(M,[2,58]),e(M,[2,59]),e(M,[2,60]),e(G,[2,12],{16:37,19:38,18:76,17:[1,75],20:[1,77],75:w,81:T,96:E,98:_,99:A}),e(G,[2,14],{20:[1,78]}),{15:79,16:80,75:w,81:T,96:E,98:_},{16:37,18:81,19:38,75:w,81:T,96:E,98:_,99:A},e(z,[2,114]),e(z,[2,115]),e(z,[2,116]),e(z,[2,117]),e([1,8,9,12,13,20,22,38,40,43,60,61,62,63,64,65,66,71,73],[2,118]),e(L,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,18:20,37:21,42:22,16:37,19:38,5:82,32:t,34:r,36:n,41:i,45:a,46:s,48:l,49:u,51:h,53:f,54:d,55:p,56:m,57:g,67:y,68:v,70:x,74:b,75:w,77:S,81:T,96:E,98:_,99:A}),{5:83,10:5,16:37,18:20,19:38,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:t,34:r,36:n,37:21,41:i,42:22,45:a,46:s,48:l,49:u,51:h,53:f,54:d,55:p,56:m,57:g,67:y,68:v,70:x,74:b,75:w,77:S,81:T,96:E,98:_,99:A},e(M,[2,19]),e(M,[2,29]),e(M,[2,30]),{13:[1,85],16:37,18:84,19:38,75:w,81:T,96:E,98:_,99:A},{50:86,58:54,59:55,60:N,61:k,62:I,63:C,64:O,65:D,66:P},e(M,[2,48]),{59:87,65:D,66:P},e(W,[2,64],{58:88,60:N,61:k,62:I,63:C,64:O}),e(Q,[2,65]),e(Q,[2,66]),e(Q,[2,67]),e(Q,[2,68]),e(Q,[2,69]),e(j,[2,70]),e(j,[2,71]),{8:[1,90],24:91,39:89,42:22,45:a},{16:92,75:w,81:T,96:E,98:_},{44:93,48:at},{47:[1,95]},{13:[1,96]},{13:[1,97]},{71:[1,98],73:[1,99]},{22:X,74:J,75:Z,76:100,78:101,80:102,81:H,82:q,83:K,84:ot,85:ct,86:ut},{75:[1,112]},{13:B,52:113},e(M,[2,56]),e(M,[2,119]),{16:37,18:114,19:38,75:w,81:T,96:E,98:_,99:A},e(G,[2,15]),e(G,[2,16]),e(G,[2,17]),{38:[2,34]},{15:116,16:80,17:[1,115],38:[2,9],75:w,81:T,96:E,98:_},e(et,[2,42],{11:117,12:[1,118]}),e(L,[2,7]),{9:[1,119]},e(Mt,[2,51]),{16:37,18:120,19:38,75:w,81:T,96:E,98:_,99:A},{13:[1,122],16:37,18:121,19:38,75:w,81:T,96:E,98:_,99:A},e(W,[2,63],{58:123,60:N,61:k,62:I,63:C,64:O}),e(W,[2,62]),{40:[1,124]},{24:91,39:125,42:22,45:a},{8:[1,126],40:[2,35]},e(F,[2,39],{38:[1,127]}),{40:[1,128]},{40:[2,45],44:129,48:at},{16:37,18:130,19:38,75:w,81:T,96:E,98:_,99:A},e(M,[2,72],{13:[1,131]}),e(M,[2,74],{13:[1,133],69:[1,132]}),e(M,[2,78],{13:[1,134],72:[1,135]}),{13:[1,136]},e(M,[2,86],{79:[1,137]}),e(it,[2,88],{80:138,22:X,74:J,75:Z,81:H,82:q,83:K,84:ot,85:ct,86:ut}),e(wt,[2,90]),e(wt,[2,92]),e(wt,[2,93]),e(wt,[2,94]),e(wt,[2,95]),e(wt,[2,96]),e(wt,[2,97]),e(wt,[2,98]),e(wt,[2,99]),e(wt,[2,100]),e(M,[2,87]),e(M,[2,55]),e(G,[2,13]),{15:139,16:80,75:w,81:T,96:E,98:_},{38:[2,11]},e(et,[2,43]),{13:[1,140]},{1:[2,4]},e(Mt,[2,53]),e(Mt,[2,52]),{16:37,18:141,19:38,75:w,81:T,96:E,98:_,99:A},e(W,[2,61]),e(M,[2,32]),{40:[1,142]},{24:91,39:143,40:[2,36],42:22,45:a},{44:144,48:at},e(F,[2,40]),{40:[2,46]},e(M,[2,44]),e(M,[2,73]),e(M,[2,75]),e(M,[2,76],{69:[1,145]}),e(M,[2,79]),e(M,[2,80],{13:[1,146]}),e(M,[2,82],{13:[1,148],69:[1,147]}),{22:X,74:J,75:Z,78:149,80:102,81:H,82:q,83:K,84:ot,85:ct,86:ut},e(wt,[2,91]),{38:[2,10]},{14:[1,150]},e(Mt,[2,54]),e(M,[2,33]),{40:[2,37]},{40:[1,151]},e(M,[2,77]),e(M,[2,81]),e(M,[2,83]),e(M,[2,84],{69:[1,152]}),e(it,[2,89],{80:138,22:X,74:J,75:Z,81:H,82:q,83:K,84:ot,85:ct,86:ut}),e(et,[2,8]),e(F,[2,41]),e(M,[2,85])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],79:[2,34],116:[2,11],119:[2,4],129:[2,46],139:[2,10],143:[2,37]},parseError:o(function(_t,dt){if(dt.recoverable)this.trace(_t);else{var Y=new Error(_t);throw Y.hash=dt,Y}},"parseError"),parse:o(function(_t){var dt=this,Y=[0],ft=[],mt=[null],rt=[],ht=this.table,nt="",st=0,Tt=0,kt=0,Ct=2,At=1,$t=rt.slice.call(arguments,1),Nt=Object.create(this.lexer),yt={yy:{}};for(var Ut in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ut)&&(yt.yy[Ut]=this.yy[Ut]);Nt.setInput(_t,yt.yy),yt.yy.lexer=Nt,yt.yy.parser=this,typeof Nt.yylloc>"u"&&(Nt.yylloc={});var zt=Nt.yylloc;rt.push(zt);var ae=Nt.options&&Nt.options.ranges;typeof yt.yy.parseError=="function"?this.parseError=yt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ke(oe){Y.length=Y.length-2*oe,mt.length=mt.length-oe,rt.length=rt.length-oe}o(ke,"popStack");function Ee(){var oe;return oe=ft.pop()||Nt.lex()||At,typeof oe!="number"&&(oe instanceof Array&&(ft=oe,oe=ft.pop()),oe=dt.symbols_[oe]||oe),oe}o(Ee,"lex");for(var le,Zt,me,Ht,ne,xe,Se={},Ye,fe,ee,pe;;){if(me=Y[Y.length-1],this.defaultActions[me]?Ht=this.defaultActions[me]:((le===null||typeof le>"u")&&(le=Ee()),Ht=ht[me]&&ht[me][le]),typeof Ht>"u"||!Ht.length||!Ht[0]){var Me="";pe=[];for(Ye in ht[me])this.terminals_[Ye]&&Ye>Ct&&pe.push("'"+this.terminals_[Ye]+"'");Nt.showPosition?Me="Parse error on line "+(st+1)+`: `+Nt.showPosition()+` Expecting `+pe.join(", ")+", got '"+(this.terminals_[le]||le)+"'":Me="Parse error on line "+(st+1)+": Unexpected "+(le==At?"end of input":"'"+(this.terminals_[le]||le)+"'"),this.parseError(Me,{text:Nt.match,token:this.terminals_[le]||le,line:Nt.yylineno,loc:zt,expected:pe})}if(Ht[0]instanceof Array&&Ht.length>1)throw new Error("Parse Error: multiple actions possible at state: "+me+", token: "+le);switch(Ht[0]){case 1:Y.push(le),mt.push(Nt.yytext),rt.push(Nt.yylloc),Y.push(Ht[1]),le=null,Zt?(le=Zt,Zt=null):(Tt=Nt.yyleng,nt=Nt.yytext,st=Nt.yylineno,zt=Nt.yylloc,kt>0&&kt--);break;case 2:if(fe=this.productions_[Ht[1]][1],Se.$=mt[mt.length-fe],Se._$={first_line:rt[rt.length-(fe||1)].first_line,last_line:rt[rt.length-1].last_line,first_column:rt[rt.length-(fe||1)].first_column,last_column:rt[rt.length-1].last_column},ae&&(Se._$.range=[rt[rt.length-(fe||1)].range[0],rt[rt.length-1].range[1]]),xe=this.performAction.apply(Se,[nt,Tt,st,yt.yy,Ht[1],mt,rt].concat($t)),typeof xe<"u")return xe;fe&&(Y=Y.slice(0,-1*fe*2),mt=mt.slice(0,-1*fe),rt=rt.slice(0,-1*fe)),Y.push(this.productions_[Ht[1]][0]),mt.push(Se.$),rt.push(Se._$),ee=ht[Y[Y.length-2]][Y[Y.length-1]],Y.push(ee);break;case 3:return!0}}return!0},"parse")},St=function(){var Pt={EOF:1,parseError:o(function(dt,Y){if(this.yy.parser)this.yy.parser.parseError(dt,Y);else throw new Error(dt)},"parseError"),setInput:o(function(_t,dt){return this.yy=dt||this.yy||{},this._input=_t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var _t=this._input[0];this.yytext+=_t,this.yyleng++,this.offset++,this.match+=_t,this.matched+=_t;var dt=_t.match(/(?:\r\n?|\n).*/g);return dt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),_t},"input"),unput:o(function(_t){var dt=_t.length,Y=_t.split(/(?:\r\n?|\n)/g);this._input=_t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-dt),this.offset-=dt;var ft=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Y.length-1&&(this.yylineno-=Y.length-1);var mt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Y?(Y.length===ft.length?this.yylloc.first_column:0)+ft[ft.length-Y.length].length-Y[0].length:this.yylloc.first_column-dt},this.options.ranges&&(this.yylloc.range=[mt[0],mt[0]+this.yyleng-dt]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(_t){this.unput(this.match.slice(_t))},"less"),pastInput:o(function(){var _t=this.matched.substr(0,this.matched.length-this.match.length);return(_t.length>20?"...":"")+_t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var _t=this.match;return _t.length<20&&(_t+=this._input.substr(0,20-_t.length)),(_t.substr(0,20)+(_t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var _t=this.pastInput(),dt=new Array(_t.length+1).join("-");return _t+this.upcomingInput()+` `+dt+"^"},"showPosition"),test_match:o(function(_t,dt){var Y,ft,mt;if(this.options.backtrack_lexer&&(mt={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&&(mt.yylloc.range=this.yylloc.range.slice(0))),ft=_t[0].match(/(?:\r\n?|\n).*/g),ft&&(this.yylineno+=ft.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ft?ft[ft.length-1].length-ft[ft.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+_t[0].length},this.yytext+=_t[0],this.match+=_t[0],this.matches=_t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(_t[0].length),this.matched+=_t[0],Y=this.performAction.call(this,this.yy,this,dt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Y)return Y;if(this._backtrack){for(var rt in mt)this[rt]=mt[rt];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var _t,dt,Y,ft;this._more||(this.yytext="",this.match="");for(var mt=this._currentRules(),rt=0;rtdt[0].length)){if(dt=Y,ft=rt,this.options.backtrack_lexer){if(_t=this.test_match(Y,mt[rt]),_t!==!1)return _t;if(this._backtrack){dt=!1;continue}else return!1}else if(!this.options.flex)break}return dt?(_t=this.test_match(dt,mt[ft]),_t!==!1?_t:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var dt=this.next();return dt||this.lex()},"lex"),begin:o(function(dt){this.conditionStack.push(dt)},"begin"),popState:o(function(){var dt=this.conditionStack.length-1;return dt>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(dt){return dt=this.conditionStack.length-1-Math.abs(dt||0),dt>=0?this.conditionStack[dt]:"INITIAL"},"topState"),pushState:o(function(dt){this.begin(dt)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(dt,Y,ft,mt){var rt=mt;switch(ft){case 0:return 54;case 1:return 55;case 2:return 56;case 3:return 57;case 4:break;case 5:break;case 6:return this.begin("acc_title"),32;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),34;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 71;case 22:this.popState();break;case 23:return 72;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 74;case 28:return this.begin("namespace"),41;break;case 29:return this.popState(),8;break;case 30:break;case 31:return this.begin("namespace-body"),38;break;case 32:return this.popState(),40;break;case 33:return"EOF_IN_STRUCT";case 34:return 8;case 35:break;case 36:return"EDGE_STATE";case 37:return this.begin("class"),45;break;case 38:return this.popState(),8;break;case 39:break;case 40:return this.popState(),this.popState(),40;break;case 41:return this.begin("class-body"),38;break;case 42:return this.popState(),40;break;case 43:return"EOF_IN_STRUCT";case 44:return"EDGE_STATE";case 45:return"OPEN_IN_STRUCT";case 46:break;case 47:return"MEMBER";case 48:return 77;case 49:return 67;case 50:return 68;case 51:return 70;case 52:return 51;case 53:return 53;case 54:return 46;case 55:return 47;case 56:return 73;case 57:this.popState();break;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 60:this.popState();break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:return 69;case 64:return 69;case 65:return 69;case 66:return 69;case 67:return 61;case 68:return 61;case 69:return 63;case 70:return 63;case 71:return 62;case 72:return 60;case 73:return 64;case 74:return 65;case 75:return 66;case 76:return 22;case 77:return 43;case 78:return 96;case 79:return 17;case 80:return"PLUS";case 81:return 82;case 82:return 79;case 83:return 85;case 84:return 85;case 85:return 86;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 75;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 81;case 93:return 98;case 94:return 84;case 95:return 84;case 96: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)/,/^(?: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,32,33,34,35,36,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},namespace:{rules:[26,28,29,30,31,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},"class-body":{rules:[26,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},class:{rules:[26,38,39,40,41,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr:{rules:[9,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_title:{rules:[7,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_args:{rules:[22,23,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_name:{rules:[19,20,21,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},href:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},struct:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},generic:{rules:[26,48,49,50,51,52,53,54,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},bqstring:{rules:[26,48,49,50,51,52,53,54,55,56,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},string:{rules:[24,25,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,37,48,49,50,51,52,53,54,55,56,59,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,94,95,96],inclusive:!0}}};return Pt}();Ot.lexer=St;function Vt(){this.yy={}}return o(Vt,"Parser"),Vt.prototype=Ot,Ot.Parser=Vt,new Vt}();SP.parser=SP;f6=SP});var mdt,Wx,gdt=R(()=>{"use strict";Ue();hr();mdt=["#","+","~","-",""],Wx=class{static{o(this,"ClassMember")}constructor(t,r){this.memberType=r,this.visibility="",this.classifier="";let n=Zr(t,pt());this.parseMember(n)}getDisplayDetails(){let t=this.visibility+yh(this.id);this.memberType==="method"&&(t+=`(${yh(this.parameters.trim())})`,this.returnType&&(t+=" : "+yh(this.returnType))),t=t.trim();let r=this.parseClassifier();return{displayText:t,cssStyle:r}}parseMember(t){let r="";if(this.memberType==="method"){let i=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(t);if(i){let a=i[1]?i[1].trim():"";if(mdt.includes(a)&&(this.visibility=a),this.id=i[2].trim(),this.parameters=i[3]?i[3].trim():"",r=i[4]?i[4].trim():"",this.returnType=i[5]?i[5].trim():"",r===""){let s=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(s)&&(r=s,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{let n=t.length,i=t.substring(0,1),a=t.substring(n-1);mdt.includes(i)&&(this.visibility=i),/[$*]/.exec(a)&&(r=a),this.id=t.substring(this.visibility===""?0:1,r===""?n:n-1)}this.classifier=r}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}});var m6,LP,Wi,d6,ydt,Zu,_P,Yx,P0,B0,AHt,p6,vdt,_Ht,LHt,DHt,RHt,NHt,MHt,IHt,xdt,OHt,PHt,BHt,DP,FHt,zHt,$Ht,GHt,VHt,UHt,HHt,WHt,bdt,RP,YHt,qHt,XHt,jHt,KHt,QHt,ZHt,Zg,NP=R(()=>{"use strict";ur();ce();Ue();hr();_r();Ci();gdt();m6="classId-",LP=[],Wi=new Map,d6=[],ydt=0,Zu=new Map,_P=0,Yx=[],P0=o(e=>Yt.sanitizeText(e,pt()),"sanitizeText"),B0=o(function(e){let t=Yt.sanitizeText(e,pt()),r="",n=t;if(t.indexOf("~")>0){let i=t.split("~");n=P0(i[0]),r=P0(i[1])}return{className:n,type:r}},"splitClassNameAndType"),AHt=o(function(e,t){let r=Yt.sanitizeText(e,pt());t&&(t=P0(t));let{className:n}=B0(r);Wi.get(n).label=t},"setClassLabel"),p6=o(function(e){let t=Yt.sanitizeText(e,pt()),{className:r,type:n}=B0(t);if(Wi.has(r))return;let i=Yt.sanitizeText(r,pt());Wi.set(i,{id:i,type:n,label:i,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:m6+i+"-"+ydt}),ydt++},"addClass"),vdt=o(function(e){let t=Yt.sanitizeText(e,pt());if(Wi.has(t))return Wi.get(t).domId;throw new Error("Class not found: "+t)},"lookUpDomId"),_Ht=o(function(){LP=[],Wi=new Map,d6=[],Yx=[],Yx.push(bdt),Zu=new Map,_P=0,RP="TB",Ar()},"clear"),LHt=o(function(e){return Wi.get(e)},"getClass"),DHt=o(function(){return Wi},"getClasses"),RHt=o(function(){return LP},"getRelations"),NHt=o(function(){return d6},"getNotes"),MHt=o(function(e){V.debug("Adding relation: "+JSON.stringify(e)),p6(e.id1),p6(e.id2),e.id1=B0(e.id1).className,e.id2=B0(e.id2).className,e.relationTitle1=Yt.sanitizeText(e.relationTitle1.trim(),pt()),e.relationTitle2=Yt.sanitizeText(e.relationTitle2.trim(),pt()),LP.push(e)},"addRelation"),IHt=o(function(e,t){let r=B0(e).className;Wi.get(r).annotations.push(t)},"addAnnotation"),xdt=o(function(e,t){p6(e);let r=B0(e).className,n=Wi.get(r);if(typeof t=="string"){let i=t.trim();i.startsWith("<<")&&i.endsWith(">>")?n.annotations.push(P0(i.substring(2,i.length-2))):i.indexOf(")")>0?n.methods.push(new Wx(i,"method")):i&&n.members.push(new Wx(i,"attribute"))}},"addMember"),OHt=o(function(e,t){Array.isArray(t)&&(t.reverse(),t.forEach(r=>xdt(e,r)))},"addMembers"),PHt=o(function(e,t){let r={id:`note${d6.length}`,class:t,text:e};d6.push(r)},"addNote"),BHt=o(function(e){return e.startsWith(":")&&(e=e.substring(1)),P0(e.trim())},"cleanupLabel"),DP=o(function(e,t){e.split(",").forEach(function(r){let n=r;/\d/.exec(r[0])&&(n=m6+n);let i=Wi.get(n);i&&i.cssClasses.push(t)})},"setCssClass"),FHt=o(function(e,t){e.split(",").forEach(function(r){t!==void 0&&(Wi.get(r).tooltip=P0(t))})},"setTooltip"),zHt=o(function(e,t){return t&&Zu.has(t)?Zu.get(t).classes.get(e).tooltip:Wi.get(e).tooltip},"getTooltip"),$Ht=o(function(e,t,r){let n=pt();e.split(",").forEach(function(i){let a=i;/\d/.exec(i[0])&&(a=m6+a);let s=Wi.get(a);s&&(s.link=Oe.formatUrl(t,n),n.securityLevel==="sandbox"?s.linkTarget="_top":typeof r=="string"?s.linkTarget=P0(r):s.linkTarget="_blank")}),DP(e,"clickable")},"setLink"),GHt=o(function(e,t,r){e.split(",").forEach(function(n){VHt(n,t,r),Wi.get(n).haveCallback=!0}),DP(e,"clickable")},"setClickEvent"),VHt=o(function(e,t,r){let n=Yt.sanitizeText(e,pt());if(pt().securityLevel!=="loose"||t===void 0)return;let a=n;if(Wi.has(a)){let s=vdt(a),l=[];if(typeof r=="string"){l=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let u=0;u")),i.classed("hover",!0)}).on("mouseout",function(){t.transition().duration(500).style("opacity",0),Gt(this).classed("hover",!1)})},"setupToolTips");Yx.push(bdt);RP="TB",YHt=o(()=>RP,"getDirection"),qHt=o(e=>{RP=e},"setDirection"),XHt=o(function(e){Zu.has(e)||(Zu.set(e,{id:e,classes:new Map,children:{},domId:m6+e+"-"+_P}),_P++)},"addNamespace"),jHt=o(function(e){return Zu.get(e)},"getNamespace"),KHt=o(function(){return Zu},"getNamespaces"),QHt=o(function(e,t){if(Zu.has(e))for(let r of t){let{className:n}=B0(r);Wi.get(n).parent=e,Zu.get(e).classes.set(n,Wi.get(n))}},"addClassesToNamespace"),ZHt=o(function(e,t){let r=Wi.get(e);if(!(!t||!r))for(let n of t)n.includes(",")?r.styles.push(...n.split(",")):r.styles.push(n)},"setCssStyle"),Zg={setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,setAccDescription:Fr,getConfig:o(()=>pt().class,"getConfig"),addClass:p6,bindFunctions:UHt,clear:_Ht,getClass:LHt,getClasses:DHt,getNotes:NHt,addAnnotation:IHt,addNote:PHt,getRelations:RHt,addRelation:MHt,getDirection:YHt,setDirection:qHt,addMember:xdt,addMembers:OHt,cleanupLabel:BHt,lineType:HHt,relationType:WHt,setClickEvent:GHt,setCssClass:DP,setLink:$Ht,getTooltip:zHt,setTooltip:FHt,lookUpDomId:vdt,setDiagramTitle:cn,getDiagramTitle:Jr,setClassLabel:AHt,addNamespace:XHt,addClassesToNamespace:QHt,getNamespace:jHt,getNamespaces:KHt,setCssStyle:ZHt}});var JHt,g6,MP=R(()=>{"use strict";JHt=o(e=>`g.classGroup text { fill: ${e.nodeBorder||e.classText}; stroke: none; font-family: ${e.fontFamily}; font-size: 10px; .title { font-weight: bolder; } } .nodeLabel, .edgeLabel { color: ${e.classText}; } .edgeLabel .label rect { fill: ${e.mainBkg}; } .label text { fill: ${e.classText}; } .edgeLabel .label span { background: ${e.mainBkg}; } .classTitle { font-weight: bolder; } .node rect, .node circle, .node ellipse, .node polygon, .node path { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; stroke-width: 1px; } .divider { stroke: ${e.nodeBorder}; stroke-width: 1; } g.clickable { cursor: pointer; } g.classGroup rect { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; } g.classGroup line { stroke: ${e.nodeBorder}; stroke-width: 1; } .classLabel .box { stroke: none; stroke-width: 0; fill: ${e.mainBkg}; opacity: 0.5; } .classLabel .label { fill: ${e.nodeBorder}; font-size: 10px; } .relation { stroke: ${e.lineColor}; stroke-width: 1; fill: none; } .dashed-line{ stroke-dasharray: 3; } .dotted-line{ stroke-dasharray: 1 2; } #compositionStart, .composition { fill: ${e.lineColor} !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #compositionEnd, .composition { fill: ${e.lineColor} !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #dependencyStart, .dependency { fill: ${e.lineColor} !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #dependencyStart, .dependency { fill: ${e.lineColor} !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #extensionStart, .extension { fill: transparent !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #extensionEnd, .extension { fill: transparent !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #aggregationStart, .aggregation { fill: transparent !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #aggregationEnd, .aggregation { fill: transparent !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #lollipopStart, .lollipop { fill: ${e.mainBkg} !important; stroke: ${e.lineColor} !important; stroke-width: 1; } #lollipopEnd, .lollipop { fill: ${e.mainBkg} !important; stroke: ${e.lineColor} !important; stroke-width: 1; } .edgeTerminals { font-size: 11px; line-height: initial; } .classTitleText { text-anchor: middle; font-size: 18px; fill: ${e.textColor}; } `,"getStyles"),g6=JHt});var wdt,tWt,eWt,kdt,rWt,Tdt,y6,Edt=R(()=>{"use strict";ur();_r();ce();hr();wdt=0,tWt=o(function(e,t,r,n,i){let a=o(function(b){switch(b){case i.db.relationType.AGGREGATION:return"aggregation";case i.db.relationType.EXTENSION:return"extension";case i.db.relationType.COMPOSITION:return"composition";case i.db.relationType.DEPENDENCY:return"dependency";case i.db.relationType.LOLLIPOP:return"lollipop"}},"getRelationType");t.points=t.points.filter(b=>!Number.isNaN(b.y));let s=t.points,l=ma().x(function(b){return b.x}).y(function(b){return b.y}).curve(Ts),u=e.append("path").attr("d",l(s)).attr("id","edge"+wdt).attr("class","relation"),h="";n.arrowMarkerAbsolute&&(h=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,h=h.replace(/\(/g,"\\("),h=h.replace(/\)/g,"\\)")),r.relation.lineType==1&&u.attr("class","relation dashed-line"),r.relation.lineType==10&&u.attr("class","relation dotted-line"),r.relation.type1!=="none"&&u.attr("marker-start","url("+h+"#"+a(r.relation.type1)+"Start)"),r.relation.type2!=="none"&&u.attr("marker-end","url("+h+"#"+a(r.relation.type2)+"End)");let f,d,p=t.points.length,m=Oe.calcLabelPosition(t.points);f=m.x,d=m.y;let g,y,v,x;if(p%2!==0&&p>1){let b=Oe.calcCardinalityPosition(r.relation.type1!=="none",t.points,t.points[0]),w=Oe.calcCardinalityPosition(r.relation.type2!=="none",t.points,t.points[p-1]);V.debug("cardinality_1_point "+JSON.stringify(b)),V.debug("cardinality_2_point "+JSON.stringify(w)),g=b.x,y=b.y,v=w.x,x=w.y}if(r.title!==void 0){let b=e.append("g").attr("class","classLabel"),w=b.append("text").attr("class","label").attr("x",f).attr("y",d).attr("fill","red").attr("text-anchor","middle").text(r.title);window.label=w;let S=w.node().getBBox();b.insert("rect",":first-child").attr("class","box").attr("x",S.x-n.padding/2).attr("y",S.y-n.padding/2).attr("width",S.width+n.padding).attr("height",S.height+n.padding)}V.info("Rendering relation "+JSON.stringify(r)),r.relationTitle1!==void 0&&r.relationTitle1!=="none"&&e.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",g).attr("y",y).attr("fill","black").attr("font-size","6").text(r.relationTitle1),r.relationTitle2!==void 0&&r.relationTitle2!=="none"&&e.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",v).attr("y",x).attr("fill","black").attr("font-size","6").text(r.relationTitle2),wdt++},"drawEdge"),eWt=o(function(e,t,r,n){V.debug("Rendering class ",t,r);let i=t.id,a={id:i,label:t.id,width:0,height:0},s=e.append("g").attr("id",n.db.lookUpDomId(i)).attr("class","classGroup"),l;t.link?l=s.append("svg:a").attr("xlink:href",t.link).attr("target",t.linkTarget).append("text").attr("y",r.textHeight+r.padding).attr("x",0):l=s.append("text").attr("y",r.textHeight+r.padding).attr("x",0);let u=!0;t.annotations.forEach(function(w){let S=l.append("tspan").text("\xAB"+w+"\xBB");u||S.attr("dy",r.textHeight),u=!1});let h=kdt(t),f=l.append("tspan").text(h).attr("class","title");u||f.attr("dy",r.textHeight);let d=l.node().getBBox().height,p,m,g;if(t.members.length>0){p=s.append("line").attr("x1",0).attr("y1",r.padding+d+r.dividerMargin/2).attr("y2",r.padding+d+r.dividerMargin/2);let w=s.append("text").attr("x",r.padding).attr("y",d+r.dividerMargin+r.textHeight).attr("fill","white").attr("class","classText");u=!0,t.members.forEach(function(S){Tdt(w,S,u,r),u=!1}),m=w.node().getBBox()}if(t.methods.length>0){g=s.append("line").attr("x1",0).attr("y1",r.padding+d+r.dividerMargin+m.height).attr("y2",r.padding+d+r.dividerMargin+m.height);let w=s.append("text").attr("x",r.padding).attr("y",d+2*r.dividerMargin+m.height+r.textHeight).attr("fill","white").attr("class","classText");u=!0,t.methods.forEach(function(S){Tdt(w,S,u,r),u=!1})}let y=s.node().getBBox();var v=" ";t.cssClasses.length>0&&(v=v+t.cssClasses.join(" "));let b=s.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",y.width+2*r.padding).attr("height",y.height+r.padding+.5*r.dividerMargin).attr("class",v).node().getBBox().width;return l.node().childNodes.forEach(function(w){w.setAttribute("x",(b-w.getBBox().width)/2)}),t.tooltip&&l.insert("title").text(t.tooltip),p&&p.attr("x2",b),g&&g.attr("x2",b),a.width=b,a.height=y.height+r.padding+.5*r.dividerMargin,a},"drawClass"),kdt=o(function(e){let t=e.id;return e.type&&(t+="<"+yh(e.type)+">"),t},"getClassTitleString"),rWt=o(function(e,t,r,n){V.debug("Rendering note ",t,r);let i=t.id,a={id:i,text:t.text,width:0,height:0},s=e.append("g").attr("id",i).attr("class","classGroup"),l=s.append("text").attr("y",r.textHeight+r.padding).attr("x",0),u=JSON.parse(`"${t.text}"`).split(` `);u.forEach(function(p){V.debug(`Adding line: ${p}`),l.append("tspan").text(p).attr("class","title").attr("dy",r.textHeight)});let h=s.node().getBBox(),d=s.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",h.width+2*r.padding).attr("height",h.height+u.length*r.textHeight+r.padding+.5*r.dividerMargin).node().getBBox().width;return l.node().childNodes.forEach(function(p){p.setAttribute("x",(d-p.getBBox().width)/2)}),a.width=d,a.height=h.height+u.length*r.textHeight+r.padding+.5*r.dividerMargin,a},"drawNote"),Tdt=o(function(e,t,r,n){let{displayText:i,cssStyle:a}=t.getDisplayDetails(),s=e.append("tspan").attr("x",n.padding).text(i);a!==""&&s.attr("style",t.cssStyle),r||s.attr("dy",n.textHeight)},"addTspan"),y6={getClassTitleString:kdt,drawClass:eWt,drawEdge:tWt,drawNote:rWt}});var x6,v6,qx,nWt,iWt,Cdt,Sdt=R(()=>{"use strict";ur();Xd();wa();ce();Edt();Jn();Ue();x6={},v6=20,qx=o(function(e){let t=Object.entries(x6).find(r=>r[1].label===e);if(t)return t[0]},"getGraphId"),nWt=o(function(e){e.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),e.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),e.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).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"),e.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).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"),e.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).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"),e.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).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"),e.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).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"),e.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 18,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),iWt=o(function(e,t,r,n){let i=pt().class;x6={},V.info("Rendering diagram "+e);let a=pt().securityLevel,s;a==="sandbox"&&(s=Gt("#i"+t));let l=a==="sandbox"?Gt(s.nodes()[0].contentDocument.body):Gt("body"),u=l.select(`[id='${t}']`);nWt(u);let h=new yr({multigraph:!0});h.setGraph({isMultiGraph:!0}),h.setDefaultEdgeLabel(function(){return{}});let f=n.db.getClasses(),d=[...f.keys()];for(let b of d){let w=f.get(b),S=y6.drawClass(u,w,i,n);x6[S.id]=S,h.setNode(S.id,S),V.info("Org height: "+S.height)}n.db.getRelations().forEach(function(b){V.info("tjoho"+qx(b.id1)+qx(b.id2)+JSON.stringify(b)),h.setEdge(qx(b.id1),qx(b.id2),{relation:b},b.title||"DEFAULT")}),n.db.getNotes().forEach(function(b){V.debug(`Adding note: ${JSON.stringify(b)}`);let w=y6.drawNote(u,b,i,n);x6[w.id]=w,h.setNode(w.id,w),b.class&&f.has(b.class)&&h.setEdge(b.id,qx(b.class),{relation:{id1:b.id,id2:b.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),co(h),h.nodes().forEach(function(b){b!==void 0&&h.node(b)!==void 0&&(V.debug("Node "+b+": "+JSON.stringify(h.node(b))),l.select("#"+(n.db.lookUpDomId(b)||b)).attr("transform","translate("+(h.node(b).x-h.node(b).width/2)+","+(h.node(b).y-h.node(b).height/2)+" )"))}),h.edges().forEach(function(b){b!==void 0&&h.edge(b)!==void 0&&(V.debug("Edge "+b.v+" -> "+b.w+": "+JSON.stringify(h.edge(b))),y6.drawEdge(u,h.edge(b),h.edge(b).relation,i,n))});let g=u.node().getBBox(),y=g.width+v6*2,v=g.height+v6*2;Pr(u,v,y,i.useMaxWidth);let x=`${g.x-v6} ${g.y-v6} ${y} ${v}`;V.debug(`viewBox ${x}`),u.attr("viewBox",x)},"draw"),Cdt={draw:iWt}});var Adt={};xr(Adt,{diagram:()=>aWt});var aWt,_dt=R(()=>{"use strict";AP();NP();MP();Sdt();aWt={parser:f6,db:Zg,renderer:Cdt,styles:g6,init:o(e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute,Zg.clear()},"init")}});var cWt,uWt,hWt,fWt,dWt,pWt,mWt,gWt,yWt,vWt,xWt,b6,IP=R(()=>{"use strict";ce();cWt=o((e,t,r,n)=>{t.forEach(i=>{xWt[i](e,r,n)})},"insertMarkers"),uWt=o((e,t,r)=>{V.trace("Making markers for ",r),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionStart").attr("class","marker extension "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionEnd").attr("class","marker extension "+t).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"),hWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionStart").attr("class","marker composition "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionEnd").attr("class","marker composition "+t).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"),fWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).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"),dWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).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"),pWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).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),e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).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"),mWt=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-pointEnd").attr("class","marker "+t).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"),e.append("marker").attr("id",r+"_"+t+"-pointStart").attr("class","marker "+t).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"),gWt=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-circleEnd").attr("class","marker "+t).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"),e.append("marker").attr("id",r+"_"+t+"-circleStart").attr("class","marker "+t).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"),yWt=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-crossEnd").attr("class","marker cross "+t).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"),e.append("marker").attr("id",r+"_"+t+"-crossStart").attr("class","marker cross "+t).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"),vWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-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"),xWt={extension:uWt,composition:hWt,aggregation:fWt,dependency:dWt,lollipop:pWt,point:mWt,circle:gWt,cross:yWt,barb:vWt},b6=cWt});function Rdt(e,t){t&&e.attr("style",t)}function bWt(e){let t=Gt(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=t.append("xhtml:div"),n=e.label,i=e.isNode?"nodeLabel":"edgeLabel",a=r.append("span");return a.html(n),Rdt(a,e.labelStyle),a.attr("class",i),Rdt(r,e.labelStyle),r.style("display","inline-block"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),t.node()}var wWt,oa,Xx=R(()=>{"use strict";ur();ce();Ue();hr();_r();Nl();o(Rdt,"applyStyle");o(bWt,"addHtmlLabel");wWt=o((e,t,r,n)=>{let i=e||"";if(typeof i=="object"&&(i=i[0]),Tr(pt().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),V.debug("vertexText"+i);let a={isNode:n,label:UL(no(i)),labelStyle:t.replace("fill:","color:")};return bWt(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",t.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|/gi):Array.isArray(i)?s=i:s=[];for(let l of s){let u=document.createElementNS("http://www.w3.org/2000/svg","tspan");u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),u.setAttribute("dy","1em"),u.setAttribute("x","0"),r?u.setAttribute("class","title-row"):u.setAttribute("class","row"),u.textContent=l.trim(),a.appendChild(u)}return a}},"createLabel"),oa=wWt});function Hl(e,t,r,n){return e.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+r/2+")")}var Li,Nn,w6=R(()=>{"use strict";Xx();Nl();Ue();ur();hr();_r();Li=o(async(e,t,r,n)=>{let i=pt(),a,s=t.useHtmlLabels||Tr(i.flowchart.htmlLabels);r?a=r:a="node default";let l=e.insert("g").attr("class",a).attr("id",t.domId||t.id),u=l.insert("g").attr("class","label").attr("style",t.labelStyle),h;t.labelText===void 0?h="":h=typeof t.labelText=="string"?t.labelText:t.labelText[0];let f=u.node(),d;t.labelType==="markdown"?d=ia(u,Zr(no(h),i),{useHtmlLabels:s,width:t.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):d=f.appendChild(oa(Zr(no(h),i),t.labelStyle,!1,n));let p=d.getBBox(),m=t.padding/2;if(Tr(i.flowchart.htmlLabels)){let g=d.children[0],y=Gt(d),v=g.getElementsByTagName("img");if(v){let x=h.replace(/]*>/g,"").trim()==="";await Promise.all([...v].map(b=>new Promise(w=>{function S(){if(b.style.display="flex",b.style.flexDirection="column",x){let T=i.fontSize?i.fontSize:window.getComputedStyle(document.body).fontSize,_=parseInt(T,10)*5+"px";b.style.minWidth=_,b.style.maxWidth=_}else b.style.width="100%";w(b)}o(S,"setupImage"),setTimeout(()=>{b.complete&&S()}),b.addEventListener("error",S),b.addEventListener("load",S)})))}p=g.getBoundingClientRect(),y.attr("width",p.width),y.attr("height",p.height)}return s?u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):u.attr("transform","translate(0, "+-p.height/2+")"),t.centerLabel&&u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),u.insert("rect",":first-child"),{shapeSvg:l,bbox:p,halfPadding:m,label:u}},"labelHelper"),Nn=o((e,t)=>{let r=t.node().getBBox();e.width=r.width,e.height=r.height},"updateNodeBounds");o(Hl,"insertPolygonShape")});var dr,Wl,Ndt,Mdt,k6,TWt,Idt,Odt,Jg,T6,Pdt,Bdt,Fdt,zdt,$dt=R(()=>{"use strict";ce();s2();wa();dr={},Wl={},Ndt={},Mdt=o(()=>{Wl={},Ndt={},dr={}},"clear"),k6=o((e,t)=>(V.trace("In isDescendant",t," ",e," = ",Wl[t].includes(e)),!!Wl[t].includes(e)),"isDescendant"),TWt=o((e,t)=>(V.info("Descendants of ",t," is ",Wl[t]),V.info("Edge is ",e),e.v===t||e.w===t?!1:Wl[t]?Wl[t].includes(e.v)||k6(e.v,t)||k6(e.w,t)||Wl[t].includes(e.w):(V.debug("Tilt, ",t,",not in descendants"),!1)),"edgeInCluster"),Idt=o((e,t,r,n)=>{V.warn("Copying children of ",e,"root",n,"data",t.node(e),n);let i=t.children(e)||[];e!==n&&i.push(e),V.warn("Copying (nodes) clusterId",e,"nodes",i),i.forEach(a=>{if(t.children(a).length>0)Idt(a,t,r,n);else{let s=t.node(a);V.info("cp ",a," to ",n," with parent ",e),r.setNode(a,s),n!==t.parent(a)&&(V.warn("Setting parent",a,t.parent(a)),r.setParent(a,t.parent(a))),e!==n&&a!==e?(V.debug("Setting parent",a,e),r.setParent(a,e)):(V.info("In copy ",e,"root",n,"data",t.node(e),n),V.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==n,"node!==clusterId",a!==e));let l=t.edges(a);V.debug("Copying Edges",l),l.forEach(u=>{V.info("Edge",u);let h=t.edge(u.v,u.w,u.name);V.info("Edge data",h,n);try{TWt(u,n)?(V.info("Copying as ",u.v,u.w,h,u.name),r.setEdge(u.v,u.w,h,u.name),V.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):V.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",n," clusterId:",e)}catch(f){V.error(f)}})}V.debug("Removing node",a),t.removeNode(a)})},"copy"),Odt=o((e,t)=>{let r=t.children(e),n=[...r];for(let i of r)Ndt[i]=e,n=[...n,...Odt(i,t)];return n},"extractDescendants"),Jg=o((e,t)=>{V.trace("Searching",e);let r=t.children(e);if(V.trace("Searching children of id ",e,r),r.length<1)return V.trace("This is a valid node",e),e;for(let n of r){let i=Jg(n,t);if(i)return V.trace("Found replacement for",e," => ",i),i}},"findNonClusterChild"),T6=o(e=>!dr[e]||!dr[e].externalConnections?e:dr[e]?dr[e].id:e,"getAnchorId"),Pdt=o((e,t)=>{if(!e||t>10){V.debug("Opting out, no graph ");return}else V.debug("Opting in, graph ");e.nodes().forEach(function(r){e.children(r).length>0&&(V.warn("Cluster identified",r," Replacement id in edges: ",Jg(r,e)),Wl[r]=Odt(r,e),dr[r]={id:Jg(r,e),clusterData:e.node(r)})}),e.nodes().forEach(function(r){let n=e.children(r),i=e.edges();n.length>0?(V.debug("Cluster identified",r,Wl),i.forEach(a=>{if(a.v!==r&&a.w!==r){let s=k6(a.v,r),l=k6(a.w,r);s^l&&(V.warn("Edge: ",a," leaves cluster ",r),V.warn("Descendants of XXX ",r,": ",Wl[r]),dr[r].externalConnections=!0)}})):V.debug("Not a cluster ",r,Wl)});for(let r of Object.keys(dr)){let n=dr[r].id,i=e.parent(n);i!==r&&dr[i]&&!dr[i].externalConnections&&(dr[r].id=i)}e.edges().forEach(function(r){let n=e.edge(r);V.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),V.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(e.edge(r)));let i=r.v,a=r.w;if(V.warn("Fix XXX",dr,"ids:",r.v,r.w,"Translating: ",dr[r.v]," --- ",dr[r.w]),dr[r.v]&&dr[r.w]&&dr[r.v]===dr[r.w]){V.warn("Fixing and trixing link to self - removing XXX",r.v,r.w,r.name),V.warn("Fixing and trixing - removing XXX",r.v,r.w,r.name),i=T6(r.v),a=T6(r.w),e.removeEdge(r.v,r.w,r.name);let s=r.w+"---"+r.v;e.setNode(s,{domId:s,id:s,labelStyle:"",labelText:n.label,padding:0,shape:"labelRect",style:""});let l=structuredClone(n),u=structuredClone(n);l.label="",l.arrowTypeEnd="none",u.label="",l.fromCluster=r.v,u.toCluster=r.v,e.setEdge(i,s,l,r.name+"-cyclic-special"),e.setEdge(s,a,u,r.name+"-cyclic-special")}else if(dr[r.v]||dr[r.w]){if(V.warn("Fixing and trixing - removing XXX",r.v,r.w,r.name),i=T6(r.v),a=T6(r.w),e.removeEdge(r.v,r.w,r.name),i!==r.v){let s=e.parent(i);dr[s].externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){let s=e.parent(a);dr[s].externalConnections=!0,n.toCluster=r.w}V.warn("Fix Replacing with XXX",i,a,r.name),e.setEdge(i,a,n,r.name)}}),V.warn("Adjusted Graph",Yn(e)),Bdt(e,0),V.trace(dr)},"adjustClustersAndEdges"),Bdt=o((e,t)=>{if(V.warn("extractor - ",t,Yn(e),e.children("D")),t>10){V.error("Bailing out");return}let r=e.nodes(),n=!1;for(let i of r){let a=e.children(i);n=n||a.length>0}if(!n){V.debug("Done, no node has children",e.nodes());return}V.debug("Nodes = ",r,t);for(let i of r)if(V.debug("Extracting node",i,dr,dr[i]&&!dr[i].externalConnections,!e.parent(i),e.node(i),e.children("D")," Depth ",t),!dr[i])V.debug("Not a cluster",i,t);else if(!dr[i].externalConnections&&e.children(i)&&e.children(i).length>0){V.warn("Cluster without external connections, without a parent and with children",i,t);let s=e.graph().rankdir==="TB"?"LR":"TB";dr[i]?.clusterData?.dir&&(s=dr[i].clusterData.dir,V.warn("Fixing dir",dr[i].clusterData.dir,s));let l=new yr({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});V.warn("Old graph before copy",Yn(e)),Idt(i,e,l,i),e.setNode(i,{clusterNode:!0,id:i,clusterData:dr[i].clusterData,labelText:dr[i].labelText,graph:l}),V.warn("New graph after copy node: (",i,")",Yn(l)),V.debug("Old graph after copy",Yn(e))}else V.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!dr[i].externalConnections," no parent: ",!e.parent(i)," children ",e.children(i)&&e.children(i).length>0,e.children("D"),t),V.debug(dr);r=e.nodes(),V.warn("New list of nodes",r);for(let i of r){let a=e.node(i);V.warn(" Now next level",i,a),a.clusterNode&&Bdt(a.graph,t+1)}},"extractor"),Fdt=o((e,t)=>{if(t.length===0)return[];let r=Object.assign(t);return t.forEach(n=>{let i=e.children(n),a=Fdt(e,i);r=[...r,...a]}),r},"sorter"),zdt=o(e=>Fdt(e,e.children()),"sortNodesByHierarchy")});var kWt,Gdt,Vdt=R(()=>{"use strict";kWt=o(e=>{let t=new Set;for(let r of e)switch(r){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(r);break}return t},"expandAndDeduplicateDirections"),Gdt=o((e,t,r)=>{let n=kWt(e),i=2,a=t.height+2*r.padding,s=a/i,l=t.width+2*s+r.padding,u=r.padding/2;return n.has("right")&&n.has("left")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:s,y:0},{x:l/2,y:2*u},{x:l-s,y:0},{x:l,y:0},{x:l,y:-a/3},{x:l+2*u,y:-a/2},{x:l,y:-2*a/3},{x:l,y:-a},{x:l-s,y:-a},{x:l/2,y:-a-2*u},{x:s,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*u,y:-a/2},{x:0,y:-a/3}]:n.has("right")&&n.has("left")&&n.has("up")?[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}]:n.has("right")&&n.has("left")&&n.has("down")?[{x:0,y:0},{x:s,y:-a},{x:l-s,y:-a},{x:l,y:0}]:n.has("right")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:l,y:-s},{x:l,y:-a+s},{x:0,y:-a}]:n.has("left")&&n.has("up")&&n.has("down")?[{x:l,y:0},{x:0,y:-s},{x:0,y:-a+s},{x:l,y:-a}]:n.has("right")&&n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")&&n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:n.has("right")&&n.has("up")?[{x:0,y:0},{x:l,y:-s},{x:0,y:-a}]:n.has("right")&&n.has("down")?[{x:0,y:0},{x:l,y:0},{x:0,y:-a}]:n.has("left")&&n.has("up")?[{x:l,y:0},{x:0,y:-s},{x:l,y:-a}]:n.has("left")&&n.has("down")?[{x:l,y:0},{x:0,y:0},{x:l,y:-a}]:n.has("right")?[{x:s,y:-u},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a+u}]:n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")?[{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u}]:n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:[{x:0,y:0}]},"getArrowPoints")});function EWt(e,t){return e.intersect(t)}var Udt,Hdt=R(()=>{"use strict";o(EWt,"intersectNode");Udt=EWt});function CWt(e,t,r,n){var i=e.x,a=e.y,s=i-n.x,l=a-n.y,u=Math.sqrt(t*t*l*l+r*r*s*s),h=Math.abs(t*r*s/u);n.x{"use strict";o(CWt,"intersectEllipse");E6=CWt});function SWt(e,t,r){return E6(e,t,t,r)}var Wdt,Ydt=R(()=>{"use strict";OP();o(SWt,"intersectCircle");Wdt=SWt});function AWt(e,t,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=t.y-e.y,s=e.x-t.x,u=t.x*e.y-e.x*t.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&qdt(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*e.x+l*e.y+h,d=a*t.x+l*t.y+h,!(f!==0&&d!==0&&qdt(f,d))&&(g=i*l-a*s,g!==0)))return y=Math.abs(g/2),v=s*h-l*u,x=v<0?(v-y)/g:(v+y)/g,v=a*u-i*h,b=v<0?(v-y)/g:(v+y)/g,{x,y:b}}function qdt(e,t){return e*t>0}var Xdt,jdt=R(()=>{"use strict";o(AWt,"intersectLine");o(qdt,"sameSign");Xdt=AWt});function _Wt(e,t,r){var n=e.x,i=e.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(g){s=Math.min(s,g.x),l=Math.min(l,g.y)}):(s=Math.min(s,t.x),l=Math.min(l,t.y));for(var u=n-e.width/2-s,h=i-e.height/2-l,f=0;f1&&a.sort(function(g,y){var v=g.x-r.x,x=g.y-r.y,b=Math.sqrt(v*v+x*x),w=y.x-r.x,S=y.y-r.y,T=Math.sqrt(w*w+S*S);return b{"use strict";jdt();Kdt=_Wt;o(_Wt,"intersectPolygon")});var LWt,F0,PP=R(()=>{"use strict";LWt=o((e,t)=>{var r=e.x,n=e.y,i=t.x-r,a=t.y-n,s=e.width/2,l=e.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),F0=LWt});var Mn,BP=R(()=>{"use strict";Hdt();Ydt();OP();Qdt();PP();Mn={node:Udt,circle:Wdt,ellipse:E6,polygon:Kdt,rect:F0}});var DWt,Zdt,Jdt=R(()=>{"use strict";w6();ce();Ue();BP();DWt=o(async(e,t)=>{t.useHtmlLabels||pt().flowchart.htmlLabels||(t.centerLabel=!0);let{shapeSvg:n,bbox:i,halfPadding:a}=await Li(e,t,"node "+t.classes,!0);V.info("Classes = ",t.classes);let s=n.insert("rect",":first-child");return s.attr("rx",t.rx).attr("ry",t.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",i.width+t.padding).attr("height",i.height+t.padding),Nn(t,s),t.intersect=function(l){return Mn.rect(t,l)},n},"note"),Zdt=DWt});function FP(e,t,r,n){let i=[],a=o(l=>{i.push(l,0)},"addBorder"),s=o(l=>{i.push(0,l)},"skipBorder");t.includes("t")?(V.debug("add top border"),a(r)):s(r),t.includes("r")?(V.debug("add right border"),a(n)):s(n),t.includes("b")?(V.debug("add bottom border"),a(r)):s(r),t.includes("l")?(V.debug("add left border"),a(n)):s(n),e.attr("stroke-dasharray",i.join(" "))}var t0t,xo,e0t,RWt,NWt,MWt,IWt,OWt,PWt,BWt,FWt,zWt,$Wt,GWt,VWt,UWt,HWt,WWt,YWt,qWt,XWt,jWt,r0t,KWt,QWt,n0t,t1,jx,i0t,a0t,Kx,zP=R(()=>{"use strict";ur();Ue();hr();ce();Vdt();Xx();BP();Jdt();w6();t0t=o(e=>e?" "+e:"","formatClass"),xo=o((e,t)=>`${t||"node default"}${t0t(e.classes)} ${t0t(e.class)}`,"getClassesFromNode"),e0t=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.padding,s=i+a,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];V.info("Question main (Circle)");let u=Hl(r,s,s,l);return u.attr("style",t.style),Nn(t,u),t.intersect=function(h){return V.warn("Intersect called"),Mn.polygon(t,l,h)},r},"question"),RWt=o((e,t)=>{let r=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=28,i=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return r.insert("polygon",":first-child").attr("points",i.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(s){return Mn.circle(t,14,s)},r},"choice"),NWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=4,a=n.height+t.padding,s=a/i,l=n.width+2*s+t.padding,u=[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}],h=Hl(r,l,a,u);return h.attr("style",t.style),Nn(t,h),t.intersect=function(f){return Mn.polygon(t,u,f)},r},"hexagon"),MWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,void 0,!0),i=2,a=n.height+2*t.padding,s=a/i,l=n.width+2*s+t.padding,u=Gdt(t.directions,n,t),h=Hl(r,l,a,u);return h.attr("style",t.style),Nn(t,h),t.intersect=function(f){return Mn.polygon(t,u,f)},r},"block_arrow"),IWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.padding,s=[{x:-a/2,y:0},{x:i,y:0},{x:i,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];return Hl(r,i,a,s).attr("style",t.style),t.width=i+a,t.height=a,t.intersect=function(u){return Mn.polygon(t,s,u)},r},"rect_left_inv_arrow"),OWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t),!0),i=n.width+t.padding,a=n.height+t.padding,s=[{x:-2*a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:a/6,y:-a}],l=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"lean_right"),PWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.padding,s=[{x:2*a/6,y:0},{x:i+a/6,y:0},{x:i-2*a/6,y:-a},{x:-a/6,y:-a}],l=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"lean_left"),BWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.padding,s=[{x:-2*a/6,y:0},{x:i+2*a/6,y:0},{x:i-a/6,y:-a},{x:a/6,y:-a}],l=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"trapezoid"),FWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.padding,s=[{x:a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:-2*a/6,y:-a}],l=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"inv_trapezoid"),zWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.padding,s=[{x:0,y:0},{x:i+a/2,y:0},{x:i,y:-a/2},{x:i+a/2,y:-a},{x:0,y:-a}],l=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"rect_right_inv_arrow"),$Wt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=i/2,s=a/(2.5+i/50),l=n.height+s+t.padding,u="M 0,"+s+" a "+a+","+s+" 0,0,0 "+i+" 0 a "+a+","+s+" 0,0,0 "+-i+" 0 l 0,"+l+" a "+a+","+s+" 0,0,0 "+i+" 0 l 0,"+-l,h=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",t.style).attr("d",u).attr("transform","translate("+-i/2+","+-(l/2+s)+")");return Nn(t,h),t.intersect=function(f){let d=Mn.rect(t,f),p=d.x-t.x;if(a!=0&&(Math.abs(p)t.height/2-s)){let m=s*s*(1-p*p/(a*a));m!=0&&(m=Math.sqrt(m)),m=s-m,f.y-t.y>0&&(m=-m),d.y+=m}return d},r},"cylinder"),GWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(e,t,"node "+t.classes+" "+t.class,!0),a=r.insert("rect",":first-child"),s=t.positioned?t.width:n.width+t.padding,l=t.positioned?t.height:n.height+t.padding,u=t.positioned?-s/2:-n.width/2-i,h=t.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),t.props){let f=new Set(Object.keys(t.props));t.props.borders&&(FP(a,t.props.borders,s,l),f.delete("borders")),f.forEach(d=>{V.warn(`Unknown node property ${d}`)})}return Nn(t,a),t.intersect=function(f){return Mn.rect(t,f)},r},"rect"),VWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(e,t,"node "+t.classes,!0),a=r.insert("rect",":first-child"),s=t.positioned?t.width:n.width+t.padding,l=t.positioned?t.height:n.height+t.padding,u=t.positioned?-s/2:-n.width/2-i,h=t.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),t.props){let f=new Set(Object.keys(t.props));t.props.borders&&(FP(a,t.props.borders,s,l),f.delete("borders")),f.forEach(d=>{V.warn(`Unknown node property ${d}`)})}return Nn(t,a),t.intersect=function(f){return Mn.rect(t,f)},r},"composite"),UWt=o(async(e,t)=>{let{shapeSvg:r}=await Li(e,t,"label",!0);V.trace("Classes = ",t.class);let n=r.insert("rect",":first-child"),i=0,a=0;if(n.attr("width",i).attr("height",a),r.attr("class","label edgeLabel"),t.props){let s=new Set(Object.keys(t.props));t.props.borders&&(FP(n,t.props.borders,i,a),s.delete("borders")),s.forEach(l=>{V.warn(`Unknown node property ${l}`)})}return Nn(t,n),t.intersect=function(s){return Mn.rect(t,s)},r},"labelRect");o(FP,"applyNodePropertyBorders");HWt=o((e,t)=>{let r;t.classes?r="node "+t.classes:r="node default";let n=e.insert("g").attr("class",r).attr("id",t.domId||t.id),i=n.insert("rect",":first-child"),a=n.insert("line"),s=n.insert("g").attr("class","label"),l=t.labelText.flat?t.labelText.flat():t.labelText,u="";typeof l=="object"?u=l[0]:u=l,V.info("Label text abc79",u,l,typeof l=="object");let h=s.node().appendChild(oa(u,t.labelStyle,!0,!0)),f={width:0,height:0};if(Tr(pt().flowchart.htmlLabels)){let y=h.children[0],v=Gt(h);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}V.info("Text 2",l);let d=l.slice(1,l.length),p=h.getBBox(),m=s.node().appendChild(oa(d.join?d.join("
    "):d,t.labelStyle,!0,!0));if(Tr(pt().flowchart.htmlLabels)){let y=m.children[0],v=Gt(m);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}let g=t.padding/2;return Gt(m).attr("transform","translate( "+(f.width>p.width?0:(p.width-f.width)/2)+", "+(p.height+g+5)+")"),Gt(h).attr("transform","translate( "+(f.width{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.height+t.padding,a=n.width+i/4+t.padding,s=r.insert("rect",":first-child").attr("style",t.style).attr("rx",i/2).attr("ry",i/2).attr("x",-a/2).attr("y",-i/2).attr("width",a).attr("height",i);return Nn(t,s),t.intersect=function(l){return Mn.rect(t,l)},r},"stadium"),YWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(e,t,xo(t,void 0),!0),a=r.insert("circle",":first-child");return a.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+i).attr("width",n.width+t.padding).attr("height",n.height+t.padding),V.info("Circle main"),Nn(t,a),t.intersect=function(s){return V.info("Circle intersect",t,n.width/2+i,s),Mn.circle(t,n.width/2+i,s)},r},"circle"),qWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(e,t,xo(t,void 0),!0),a=5,s=r.insert("g",":first-child"),l=s.insert("circle"),u=s.insert("circle");return s.attr("class",t.class),l.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+i+a).attr("width",n.width+t.padding+a*2).attr("height",n.height+t.padding+a*2),u.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+i).attr("width",n.width+t.padding).attr("height",n.height+t.padding),V.info("DoubleCircle main"),Nn(t,l),t.intersect=function(h){return V.info("DoubleCircle intersect",t,n.width/2+i+a,h),Mn.circle(t,n.width/2+i+a,h)},r},"doublecircle"),XWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.padding,s=[{x:0,y:0},{x:i,y:0},{x:i,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],l=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"subroutine"),jWt=o((e,t)=>{let r=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Nn(t,n),t.intersect=function(i){return Mn.circle(t,7,i)},r},"start"),r0t=o((e,t,r)=>{let n=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=70,a=10;r==="LR"&&(i=10,a=70);let s=n.append("rect").attr("x",-1*i/2).attr("y",-1*a/2).attr("width",i).attr("height",a).attr("class","fork-join");return Nn(t,s),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(l){return Mn.rect(t,l)},n},"forkJoin"),KWt=o((e,t)=>{let r=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=r.insert("circle",":first-child"),i=r.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),Nn(t,i),t.intersect=function(a){return Mn.circle(t,7,a)},r},"end"),QWt=o((e,t)=>{let r=t.padding/2,n=4,i=8,a;t.classes?a="node "+t.classes:a="node default";let s=e.insert("g").attr("class",a).attr("id",t.domId||t.id),l=s.insert("rect",":first-child"),u=s.insert("line"),h=s.insert("line"),f=0,d=n,p=s.insert("g").attr("class","label"),m=0,g=t.classData.annotations?.[0],y=t.classData.annotations[0]?"\xAB"+t.classData.annotations[0]+"\xBB":"",v=p.node().appendChild(oa(y,t.labelStyle,!0,!0)),x=v.getBBox();if(Tr(pt().flowchart.htmlLabels)){let A=v.children[0],L=Gt(v);x=A.getBoundingClientRect(),L.attr("width",x.width),L.attr("height",x.height)}t.classData.annotations[0]&&(d+=x.height+n,f+=x.width);let b=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(pt().flowchart.htmlLabels?b+="<"+t.classData.type+">":b+="<"+t.classData.type+">");let w=p.node().appendChild(oa(b,t.labelStyle,!0,!0));Gt(w).attr("class","classTitle");let S=w.getBBox();if(Tr(pt().flowchart.htmlLabels)){let A=w.children[0],L=Gt(w);S=A.getBoundingClientRect(),L.attr("width",S.width),L.attr("height",S.height)}d+=S.height+n,S.width>f&&(f=S.width);let T=[];t.classData.members.forEach(A=>{let L=A.getDisplayDetails(),M=L.displayText;pt().flowchart.htmlLabels&&(M=M.replace(//g,">"));let N=p.node().appendChild(oa(M,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0)),k=N.getBBox();if(Tr(pt().flowchart.htmlLabels)){let I=N.children[0],C=Gt(N);k=I.getBoundingClientRect(),C.attr("width",k.width),C.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,T.push(N)}),d+=i;let E=[];if(t.classData.methods.forEach(A=>{let L=A.getDisplayDetails(),M=L.displayText;pt().flowchart.htmlLabels&&(M=M.replace(//g,">"));let N=p.node().appendChild(oa(M,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0)),k=N.getBBox();if(Tr(pt().flowchart.htmlLabels)){let I=N.children[0],C=Gt(N);k=I.getBoundingClientRect(),C.attr("width",k.width),C.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,E.push(N)}),d+=i,g){let A=(f-x.width)/2;Gt(v).attr("transform","translate( "+(-1*f/2+A)+", "+-1*d/2+")"),m=x.height+n}let _=(f-S.width)/2;return Gt(w).attr("transform","translate( "+(-1*f/2+_)+", "+(-1*d/2+m)+")"),m+=S.height+n,u.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,T.forEach(A=>{Gt(A).attr("transform","translate( "+-f/2+", "+(-1*d/2+m+i/2)+")");let L=A?.getBBox();m+=(L?.height??0)+n}),m+=i,h.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,E.forEach(A=>{Gt(A).attr("transform","translate( "+-f/2+", "+(-1*d/2+m)+")");let L=A?.getBBox();m+=(L?.height??0)+n}),l.attr("style",t.style).attr("class","outer title-state").attr("x",-f/2-r).attr("y",-(d/2)-r).attr("width",f+t.padding).attr("height",d+t.padding),Nn(t,l),t.intersect=function(A){return Mn.rect(t,A)},s},"class_box"),n0t={rhombus:e0t,composite:VWt,question:e0t,rect:GWt,labelRect:UWt,rectWithTitle:HWt,choice:RWt,circle:YWt,doublecircle:qWt,stadium:WWt,hexagon:NWt,block_arrow:MWt,rect_left_inv_arrow:IWt,lean_right:OWt,lean_left:PWt,trapezoid:BWt,inv_trapezoid:FWt,rect_right_inv_arrow:zWt,cylinder:$Wt,start:jWt,end:KWt,note:Zdt,subroutine:XWt,fork:r0t,join:r0t,class_box:QWt},t1={},jx=o(async(e,t,r)=>{let n,i;if(t.link){let a;pt().securityLevel==="sandbox"?a="_top":t.linkTarget&&(a=t.linkTarget||"_blank"),n=e.insert("svg:a").attr("xlink:href",t.link).attr("target",a),i=await n0t[t.shape](n,t,r)}else i=await n0t[t.shape](e,t,r),n=i;return t.tooltip&&i.attr("title",t.tooltip),t.class&&i.attr("class","node default "+t.class),t1[t.id]=n,t.haveCallback&&t1[t.id].attr("class",t1[t.id].attr("class")+" clickable"),n},"insertNode"),i0t=o((e,t)=>{t1[t.id]=e},"setNodeElem"),a0t=o(()=>{t1={}},"clear"),Kx=o(e=>{let t=t1[e.id];V.trace("Transforming node",e.diff,e,"translate("+(e.x-e.width/2-5)+", "+e.width/2+")");let r=8,n=e.diff||0;return e.clusterNode?t.attr("transform","translate("+(e.x+n-e.width/2)+", "+(e.y-e.height/2-r)+")"):t.attr("transform","translate("+e.x+", "+e.y+")"),n},"positionNode")});var ZWt,JWt,tYt,eYt,rYt,s0t,o0t,l0t,c0t=R(()=>{"use strict";PP();ce();Xx();Nl();ur();Ue();hr();Nd();ZWt=o((e,t)=>{V.info("Creating subgraph rect for ",t.id,t);let r=pt(),n=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),i=n.insert("rect",":first-child"),a=Tr(r.flowchart.htmlLabels),s=n.insert("g").attr("class","cluster-label"),l=t.labelType==="markdown"?ia(s,t.labelText,{style:t.labelStyle,useHtmlLabels:a},r):s.node().appendChild(oa(t.labelText,t.labelStyle,void 0,!0)),u=l.getBBox();if(Tr(r.flowchart.htmlLabels)){let g=l.children[0],y=Gt(l);u=g.getBoundingClientRect(),y.attr("width",u.width),y.attr("height",u.height)}let h=0*t.padding,f=h/2,d=t.width<=u.width+h?u.width+h:t.width;t.width<=u.width+h?t.diff=(u.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,V.trace("Data ",t,JSON.stringify(t)),i.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-d/2).attr("y",t.y-t.height/2-f).attr("width",d).attr("height",t.height+h);let{subGraphTitleTopMargin:p}=io(r);a?s.attr("transform",`translate(${t.x-u.width/2}, ${t.y-t.height/2+p})`):s.attr("transform",`translate(${t.x}, ${t.y-t.height/2+p})`);let m=i.node().getBBox();return t.width=m.width,t.height=m.height,t.intersect=function(g){return F0(t,g)},n},"rect"),JWt=o((e,t)=>{let r=e.insert("g").attr("class","note-cluster").attr("id",t.id),n=r.insert("rect",":first-child"),i=0*t.padding,a=i/2;n.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2-a).attr("width",t.width+i).attr("height",t.height+i).attr("fill","none");let s=n.node().getBBox();return t.width=s.width,t.height=s.height,t.intersect=function(l){return F0(t,l)},r},"noteGroup"),tYt=o((e,t)=>{let r=pt(),n=e.insert("g").attr("class",t.classes).attr("id",t.id),i=n.insert("rect",":first-child"),a=n.insert("g").attr("class","cluster-label"),s=n.append("rect"),l=a.node().appendChild(oa(t.labelText,t.labelStyle,void 0,!0)),u=l.getBBox();if(Tr(r.flowchart.htmlLabels)){let g=l.children[0],y=Gt(l);u=g.getBoundingClientRect(),y.attr("width",u.width),y.attr("height",u.height)}u=l.getBBox();let h=0*t.padding,f=h/2,d=t.width<=u.width+t.padding?u.width+t.padding:t.width;t.width<=u.width+t.padding?t.diff=(u.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,i.attr("class","outer").attr("x",t.x-d/2-f).attr("y",t.y-t.height/2-f).attr("width",d+h).attr("height",t.height+h),s.attr("class","inner").attr("x",t.x-d/2-f).attr("y",t.y-t.height/2-f+u.height-1).attr("width",d+h).attr("height",t.height+h-u.height-3);let{subGraphTitleTopMargin:p}=io(r);a.attr("transform",`translate(${t.x-u.width/2}, ${t.y-t.height/2-t.padding/3+(Tr(r.flowchart.htmlLabels)?5:3)+p})`);let m=i.node().getBBox();return t.height=m.height,t.intersect=function(g){return F0(t,g)},n},"roundedWithTitle"),eYt=o((e,t)=>{let r=e.insert("g").attr("class",t.classes).attr("id",t.id),n=r.insert("rect",":first-child"),i=0*t.padding,a=i/2;n.attr("class","divider").attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2).attr("width",t.width+i).attr("height",t.height+i);let s=n.node().getBBox();return t.width=s.width,t.height=s.height,t.diff=-t.padding/2,t.intersect=function(l){return F0(t,l)},r},"divider"),rYt={rect:ZWt,roundedWithTitle:tYt,noteGroup:JWt,divider:eYt},s0t={},o0t=o((e,t)=>{V.trace("Inserting cluster");let r=t.shape||"rect";s0t[t.id]=rYt[r](e,t)},"insertCluster"),l0t=o(()=>{s0t={}},"clear")});var h0t,nYt,u0t,f0t=R(()=>{"use strict";ce();h0t=o((e,t,r,n,i)=>{t.arrowTypeStart&&u0t(e,"start",t.arrowTypeStart,r,n,i),t.arrowTypeEnd&&u0t(e,"end",t.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),nYt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},u0t=o((e,t,r,n,i,a)=>{let s=nYt[r];if(!s){V.warn(`Unknown arrow type: ${r}`);return}let l=t==="start"?"Start":"End";e.attr(`marker-${t}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function C6(e,t){pt().flowchart.htmlLabels&&e&&(e.style.width=t.length*9+"px",e.style.height="12px")}var S6,Sa,p0t,A6,_6,iYt,aYt,d0t,L6,$P=R(()=>{"use strict";ce();Xx();Nl();ur();Ue();_r();hr();YL();Nd();f0t();S6={},Sa={},p0t=o(()=>{S6={},Sa={}},"clear"),A6=o((e,t)=>{let r=pt(),n=Tr(r.flowchart.htmlLabels),i=t.labelType==="markdown"?ia(e,t.label,{style:t.labelStyle,useHtmlLabels:n,addSvgBackground:!0},r):oa(t.label,t.labelStyle),a=e.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label");s.node().appendChild(i);let l=i.getBBox();if(n){let h=i.children[0],f=Gt(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),S6[t.id]=a,t.width=l.width,t.height=l.height;let u;if(t.startLabelLeft){let h=oa(t.startLabelLeft,t.labelStyle),f=e.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),Sa[t.id]||(Sa[t.id]={}),Sa[t.id].startLeft=f,C6(u,t.startLabelLeft)}if(t.startLabelRight){let h=oa(t.startLabelRight,t.labelStyle),f=e.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=f.node().appendChild(h),d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),Sa[t.id]||(Sa[t.id]={}),Sa[t.id].startRight=f,C6(u,t.startLabelRight)}if(t.endLabelLeft){let h=oa(t.endLabelLeft,t.labelStyle),f=e.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),Sa[t.id]||(Sa[t.id]={}),Sa[t.id].endLeft=f,C6(u,t.endLabelLeft)}if(t.endLabelRight){let h=oa(t.endLabelRight,t.labelStyle),f=e.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),Sa[t.id]||(Sa[t.id]={}),Sa[t.id].endRight=f,C6(u,t.endLabelRight)}return i},"insertEdgeLabel");o(C6,"setTerminalWidth");_6=o((e,t)=>{V.debug("Moving label abc88 ",e.id,e.label,S6[e.id],t);let r=t.updatedPath?t.updatedPath:t.originalPath,n=pt(),{subGraphTitleTotalMargin:i}=io(n);if(e.label){let a=S6[e.id],s=e.x,l=e.y;if(r){let u=Oe.calcLabelPosition(r);V.debug("Moving label "+e.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),t.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(e.startLabelLeft){let a=Sa[e.id].startLeft,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.startLabelRight){let a=Sa[e.id].startRight,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.endLabelLeft){let a=Sa[e.id].endLeft,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.endLabelRight){let a=Sa[e.id].endRight,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),iYt=o((e,t)=>{let r=e.x,n=e.y,i=Math.abs(t.x-r),a=Math.abs(t.y-n),s=e.width/2,l=e.height/2;return i>=s||a>=l},"outsideNode"),aYt=o((e,t,r)=>{V.debug(`intersection calc abc89: outsidePoint: ${JSON.stringify(t)} insidePoint : ${JSON.stringify(r)} node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);let n=e.x,i=e.y,a=Math.abs(n-r.x),s=e.width/2,l=r.xMath.abs(n-t.x)*u){let d=r.y{V.debug("abc88 cutPathAtIntersect",e,t);let r=[],n=e[0],i=!1;return e.forEach(a=>{if(!iYt(t,a)&&!i){let s=aYt(t,n,a),l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)||r.push(s),i=!0}else n=a,i||r.push(a)}),r},"cutPathAtIntersect"),L6=o(function(e,t,r,n,i,a,s){let l=r.points;V.debug("abc88 InsertEdge: edge=",r,"e=",t);let u=!1,h=a.node(t.v);var f=a.node(t.w);f?.intersect&&h?.intersect&&(l=l.slice(1,r.points.length-1),l.unshift(h.intersect(l[0])),l.push(f.intersect(l[l.length-1]))),r.toCluster&&(V.debug("to cluster abc88",n[r.toCluster]),l=d0t(r.points,n[r.toCluster].node),u=!0),r.fromCluster&&(V.debug("from cluster abc88",n[r.fromCluster]),l=d0t(l.reverse(),n[r.fromCluster].node).reverse(),u=!0);let d=l.filter(S=>!Number.isNaN(S.y)),p=Ts;r.curve&&(i==="graph"||i==="flowchart")&&(p=r.curve);let{x:m,y:g}=xw(r),y=ma().x(m).y(g).curve(p),v;switch(r.thickness){case"normal":v="edge-thickness-normal";break;case"thick":v="edge-thickness-thick";break;case"invisible":v="edge-thickness-thick";break;default:v=""}switch(r.pattern){case"solid":v+=" edge-pattern-solid";break;case"dotted":v+=" edge-pattern-dotted";break;case"dashed":v+=" edge-pattern-dashed";break}let x=e.append("path").attr("d",y(d)).attr("id",r.id).attr("class"," "+v+(r.classes?" "+r.classes:"")).attr("style",r.style),b="";(pt().flowchart.arrowMarkerAbsolute||pt().state.arrowMarkerAbsolute)&&(b=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,b=b.replace(/\(/g,"\\("),b=b.replace(/\)/g,"\\)")),h0t(x,r,b,s,i);let w={};return u&&(w.updatedPath=l),w.originalPath=r.points,w},"insertEdge")});var m0t,g0t,y0t=R(()=>{"use strict";Xd();s2();IP();w6();$dt();zP();c0t();$P();ce();Nd();Ue();m0t=o(async(e,t,r,n,i,a)=>{V.info("Graph in recursive render: XXX",Yn(t),i);let s=t.graph().rankdir;V.trace("Dir in recursive render - dir:",s);let l=e.insert("g").attr("class","root");t.nodes()?V.info("Recursive render XXX",t.nodes()):V.info("No nodes found for",t),t.edges().length>0&&V.trace("Recursive edges",t.edge(t.edges()[0]));let u=l.insert("g").attr("class","clusters"),h=l.insert("g").attr("class","edgePaths"),f=l.insert("g").attr("class","edgeLabels"),d=l.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(g){let y=t.node(g);if(i!==void 0){let v=JSON.parse(JSON.stringify(i.clusterData));V.info("Setting data for cluster XXX (",g,") ",v,i),t.setNode(i.id,v),t.parent(g)||(V.trace("Setting parent",g,i.id),t.setParent(g,i.id,v))}if(V.info("(Insert) Node XXX"+g+": "+JSON.stringify(t.node(g))),y?.clusterNode){V.info("Cluster identified",g,y.width,t.node(g));let{ranksep:v,nodesep:x}=t.graph();y.graph.setGraph({...y.graph.graph(),ranksep:v,nodesep:x});let b=await m0t(d,y.graph,r,n,t.node(g),a),w=b.elem;Nn(y,w),y.diff=b.diff||0,V.info("Node bounds (abc123)",g,y,y.width,y.x,y.y),i0t(w,y),V.warn("Recursive render complete ",w,y)}else t.children(g).length>0?(V.info("Cluster - the non recursive path XXX",g,y.id,y,t),V.info(Jg(y.id,t)),dr[y.id]={id:Jg(y.id,t),node:y}):(V.info("Node - the non recursive path",g,y.id,y),await jx(d,t.node(g),{config:a,dir:s}))})),t.edges().forEach(async function(g){let y=t.edge(g.v,g.w,g.name);V.info("Edge "+g.v+" -> "+g.w+": "+JSON.stringify(g)),V.info("Edge "+g.v+" -> "+g.w+": ",g," ",JSON.stringify(t.edge(g))),V.info("Fix",dr,"ids:",g.v,g.w,"Translating: ",dr[g.v],dr[g.w]),await A6(f,y)}),t.edges().forEach(function(g){V.info("Edge "+g.v+" -> "+g.w+": "+JSON.stringify(g))}),V.info("Graph before layout:",JSON.stringify(Yn(t))),V.info("#############################################"),V.info("### Layout ###"),V.info("#############################################"),V.info(t),co(t),V.info("Graph after layout:",JSON.stringify(Yn(t)));let p=0,{subGraphTitleTotalMargin:m}=io(a);return zdt(t).forEach(function(g){let y=t.node(g);V.info("Position "+g+": "+JSON.stringify(t.node(g))),V.info("Position "+g+": ("+y.x,","+y.y,") width: ",y.width," height: ",y.height),y?.clusterNode?(y.y+=m,Kx(y)):t.children(g).length>0?(y.height+=m,o0t(u,y),dr[y.id].node=y):(y.y+=m/2,Kx(y))}),t.edges().forEach(function(g){let y=t.edge(g);V.info("Edge "+g.v+" -> "+g.w+": "+JSON.stringify(y),y),y.points.forEach(x=>x.y+=m/2);let v=L6(h,g,y,dr,r,t,n);_6(y,v)}),t.nodes().forEach(function(g){let y=t.node(g);V.info(g,y.type,y.diff),y.type==="group"&&(p=y.diff)}),{elem:l,diff:p}},"recursiveRender"),g0t=o(async(e,t,r,n,i)=>{b6(e,r,n,i),a0t(),p0t(),l0t(),Mdt(),V.warn("Graph at first:",JSON.stringify(Yn(t))),Pdt(t),V.warn("Graph after:",JSON.stringify(Yn(t)));let a=pt();await m0t(e,t,n,i,void 0,a)},"render")});function v0t(e){let t;switch(e){case 0:t="aggregation";break;case 1:t="extension";break;case 2:t="composition";break;case 3:t="dependency";break;case 4:t="lollipop";break;default:t="none"}return t}var VP,GP,sYt,x0t,oYt,lYt,cYt,uYt,b0t,w0t=R(()=>{"use strict";ur();wa();ce();Ue();y0t();_r();_r();Jn();hr();VP=o(e=>Yt.sanitizeText(e,pt()),"sanitizeText"),GP={dividerMargin:10,padding:5,textHeight:10,curve:void 0},sYt=o(function(e,t,r,n){V.info("keys:",[...e.keys()]),V.info(e),e.forEach(function(i){let s={shape:"rect",id:i.id,domId:i.domId,labelText:VP(i.id),labelStyle:"",style:"fill: none; stroke: black",padding:pt().flowchart?.padding??pt().class?.padding};t.setNode(i.id,s),x0t(i.classes,t,r,n,i.id),V.info("setNode",s)})},"addNamespaces"),x0t=o(function(e,t,r,n,i){V.info("keys:",[...e.keys()]),V.info(e),[...e.values()].filter(a=>a.parent===i).forEach(function(a){let s=a.cssClasses.join(" "),l=gm(a.styles),u=a.label??a.id,h=0,d={labelStyle:l.labelStyle,shape:"class_box",labelText:VP(u),classData:a,rx:h,ry:h,class:s,style:l.style,id:a.id,domId:a.domId,tooltip:n.db.getTooltip(a.id,i)||"",haveCallback:a.haveCallback,link:a.link,width:a.type==="group"?500:void 0,type:a.type,padding:pt().flowchart?.padding??pt().class?.padding};t.setNode(a.id,d),i&&t.setParent(a.id,i),V.info("setNode",d)})},"addClasses"),oYt=o(function(e,t,r,n){V.info(e),e.forEach(function(i,a){let s=i,l="",u={labelStyle:"",style:""},h=s.text,f=0,p={labelStyle:u.labelStyle,shape:"note",labelText:VP(h),noteData:s,rx:f,ry:f,class:l,style:u.style,id:s.id,domId:s.id,tooltip:"",type:"note",padding:pt().flowchart?.padding??pt().class?.padding};if(t.setNode(s.id,p),V.info("setNode",p),!s.class||!n.has(s.class))return;let m=r+a,g={id:`edgeNote${m}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:mm(GP.curve,Cu)};t.setEdge(s.id,s.class,g,m)})},"addNotes"),lYt=o(function(e,t){let r=pt().flowchart,n=0;e.forEach(function(i){n++;let a={classes:"relation",pattern:i.relation.lineType==1?"dashed":"solid",id:B5(i.id1,i.id2,{prefix:"id",counter:n}),arrowhead:i.type==="arrow_open"?"none":"normal",startLabelRight:i.relationTitle1==="none"?"":i.relationTitle1,endLabelLeft:i.relationTitle2==="none"?"":i.relationTitle2,arrowTypeStart:v0t(i.relation.type1),arrowTypeEnd:v0t(i.relation.type2),style:"fill:none",labelStyle:"",curve:mm(r?.curve,Cu)};if(V.info(a,i),i.style!==void 0){let s=gm(i.style);a.style=s.style,a.labelStyle=s.labelStyle}i.text=i.title,i.text===void 0?i.style!==void 0&&(a.arrowheadStyle="fill: #333"):(a.arrowheadStyle="fill: #333",a.labelpos="c",pt().flowchart?.htmlLabels??pt().htmlLabels?(a.labelType="html",a.label=''+i.text+""):(a.labelType="text",a.label=i.text.replace(Yt.lineBreakRegex,` `),i.style===void 0&&(a.style=a.style||"stroke: #333; stroke-width: 1.5px;fill:none"),a.labelStyle=a.labelStyle.replace("color:","fill:"))),t.setEdge(i.id1,i.id2,a,n)})},"addRelations"),cYt=o(function(e){GP={...GP,...e}},"setConf"),uYt=o(async function(e,t,r,n){V.info("Drawing class - ",t);let i=pt().flowchart??pt().class,a=pt().securityLevel;V.info("config:",i);let s=i?.nodeSpacing??50,l=i?.rankSpacing??50,u=new yr({multigraph:!0,compound:!0}).setGraph({rankdir:n.db.getDirection(),nodesep:s,ranksep:l,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),h=n.db.getNamespaces(),f=n.db.getClasses(),d=n.db.getRelations(),p=n.db.getNotes();V.info(d),sYt(h,u,t,n),x0t(f,u,t,n),lYt(d,u),oYt(p,u,d.length+1,f);let m;a==="sandbox"&&(m=Gt("#i"+t));let g=a==="sandbox"?Gt(m.nodes()[0].contentDocument.body):Gt("body"),y=g.select(`[id="${t}"]`),v=g.select("#"+t+" g");if(await g0t(v,u,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",t),Oe.insertTitle(y,"classTitleText",i?.titleTopMargin??5,n.db.getDiagramTitle()),No(u,y,i?.diagramPadding,i?.useMaxWidth),!i?.htmlLabels){let x=a==="sandbox"?m.nodes()[0].contentDocument:document,b=x.querySelectorAll('[id="'+t+'"] .edgeLabel .label');for(let w of b){let S=w.getBBox(),T=x.createElementNS("http://www.w3.org/2000/svg","rect");T.setAttribute("rx",0),T.setAttribute("ry",0),T.setAttribute("width",S.width),T.setAttribute("height",S.height),w.insertBefore(T,w.firstChild)}}},"draw");o(v0t,"getArrowMarker");b0t={setConf:cYt,draw:uYt}});var T0t={};xr(T0t,{diagram:()=>hYt});var hYt,k0t=R(()=>{"use strict";AP();NP();MP();w0t();hYt={parser:f6,db:Zg,renderer:b0t,styles:g6,init:o(e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute,Zg.clear()},"init")}});var UP,D6,HP=R(()=>{"use strict";UP=function(){var e=o(function(F,B,G,z){for(G=G||{},z=F.length;z--;G[F[z]]=B);return G},"o"),t=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,16],u=[1,17],h=[1,18],f=[1,19],d=[1,32],p=[1,20],m=[1,21],g=[1,22],y=[1,23],v=[1,24],x=[1,26],b=[1,27],w=[1,28],S=[1,29],T=[1,30],E=[1,31],_=[1,34],A=[1,35],L=[1,36],M=[1,37],N=[1,33],k=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],I=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],C=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],O={trace:o(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,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,style:42,STYLE_IDS:43,STYLEDEF_STYLEOPTS:44,class:45,CLASSENTITY_IDS:46,STYLECLASS:47,direction_tb:48,direction_bt:49,direction_rl:50,direction_lr:51,eol:52,";":53,EDGE_STATE:54,STYLE_SEPARATOR:55,left_of:56,right_of:57,$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:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"style",43:"STYLE_IDS",44:"STYLEDEF_STYLEOPTS",45:"class",46:"CLASSENTITY_IDS",47:"STYLECLASS",48:"direction_tb",49:"direction_bt",50:"direction_rl",51:"direction_lr",53:";",54:"EDGE_STATE",55:"STYLE_SEPARATOR",56:"left_of",57:"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],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[52,1],[52,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:o(function(B,G,z,W,Q,j,at){var X=j.length-1;switch(Q){case 3:return W.setRootDoc(j[X]),j[X];break;case 4:this.$=[];break;case 5:j[X]!="nl"&&(j[X-1].push(j[X]),this.$=j[X-1]);break;case 6:case 7:this.$=j[X];break;case 8:this.$="nl";break;case 12:this.$=j[X];break;case 13:let q=j[X-1];q.description=W.trimColon(j[X]),this.$=q;break;case 14:this.$={stmt:"relation",state1:j[X-2],state2:j[X]};break;case 15:let K=W.trimColon(j[X]);this.$={stmt:"relation",state1:j[X-3],state2:j[X-1],description:K};break;case 19:this.$={stmt:"state",id:j[X-3],type:"default",description:"",doc:j[X-1]};break;case 20:var J=j[X],Z=j[X-2].trim();if(j[X].match(":")){var H=j[X].split(":");J=H[0],Z=[Z,H[1]]}this.$={stmt:"state",id:J,type:"default",description:Z};break;case 21:this.$={stmt:"state",id:j[X-3],type:"default",description:j[X-5],doc:j[X-1]};break;case 22:this.$={stmt:"state",id:j[X],type:"fork"};break;case 23:this.$={stmt:"state",id:j[X],type:"join"};break;case 24:this.$={stmt:"state",id:j[X],type:"choice"};break;case 25:this.$={stmt:"state",id:W.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:j[X-1].trim(),note:{position:j[X-2].trim(),text:j[X].trim()}};break;case 29:this.$=j[X].trim(),W.setAccTitle(this.$);break;case 30:case 31:this.$=j[X].trim(),W.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:j[X-1].trim(),classes:j[X].trim()};break;case 34:this.$={stmt:"style",id:j[X-1].trim(),styleClass:j[X].trim()};break;case 35:this.$={stmt:"applyClass",id:j[X-1].trim(),styleClass:j[X].trim()};break;case 36:W.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 37:W.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 38:W.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 39:W.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 42:case 43:this.$={stmt:"state",id:j[X].trim(),type:"default",description:""};break;case 44:this.$={stmt:"state",id:j[X-2].trim(),classes:[j[X].trim()],type:"default",description:""};break;case 45:this.$={stmt:"state",id:j[X-2].trim(),classes:[j[X].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:t,5:r,6:n},{1:[3]},{3:5,4:t,5:r,6:n},{3:6,4:t,5:r,6:n},e([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:S,42:T,45:E,48:_,49:A,50:L,51:M,54:N},e(k,[2,5]),{9:38,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:S,42:T,45:E,48:_,49:A,50:L,51:M,54:N},e(k,[2,7]),e(k,[2,8]),e(k,[2,9]),e(k,[2,10]),e(k,[2,11]),e(k,[2,12],{14:[1,39],15:[1,40]}),e(k,[2,16]),{18:[1,41]},e(k,[2,18],{20:[1,42]}),{23:[1,43]},e(k,[2,22]),e(k,[2,23]),e(k,[2,24]),e(k,[2,25]),{30:44,31:[1,45],56:[1,46],57:[1,47]},e(k,[2,28]),{34:[1,48]},{36:[1,49]},e(k,[2,31]),{39:[1,50],41:[1,51]},{43:[1,52]},{46:[1,53]},e(I,[2,42],{55:[1,54]}),e(I,[2,43],{55:[1,55]}),e(k,[2,36]),e(k,[2,37]),e(k,[2,38]),e(k,[2,39]),e(k,[2,6]),e(k,[2,13]),{13:56,24:d,54:N},e(k,[2,17]),e(C,i,{7:57}),{24:[1,58]},{24:[1,59]},{23:[1,60]},{24:[2,46]},{24:[2,47]},e(k,[2,29]),e(k,[2,30]),{40:[1,61]},{40:[1,62]},{44:[1,63]},{47:[1,64]},{24:[1,65]},{24:[1,66]},e(k,[2,14],{14:[1,67]}),{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,68],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:S,42:T,45:E,48:_,49:A,50:L,51:M,54:N},e(k,[2,20],{20:[1,69]}),{31:[1,70]},{24:[1,71]},e(k,[2,32]),e(k,[2,33]),e(k,[2,34]),e(k,[2,35]),e(I,[2,44]),e(I,[2,45]),e(k,[2,15]),e(k,[2,19]),e(C,i,{7:72}),e(k,[2,26]),e(k,[2,27]),{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,73],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:S,42:T,45:E,48:_,49:A,50:L,51:M,54:N},e(k,[2,21])],defaultActions:{5:[2,1],6:[2,2],46:[2,46],47:[2,47]},parseError:o(function(B,G){if(G.recoverable)this.trace(B);else{var z=new Error(B);throw z.hash=G,z}},"parseError"),parse:o(function(B){var G=this,z=[0],W=[],Q=[null],j=[],at=this.table,X="",J=0,Z=0,H=0,q=2,K=1,ot=j.slice.call(arguments,1),ct=Object.create(this.lexer),ut={yy:{}};for(var et in this.yy)Object.prototype.hasOwnProperty.call(this.yy,et)&&(ut.yy[et]=this.yy[et]);ct.setInput(B,ut.yy),ut.yy.lexer=ct,ut.yy.parser=this,typeof ct.yylloc>"u"&&(ct.yylloc={});var Mt=ct.yylloc;j.push(Mt);var it=ct.options&&ct.options.ranges;typeof ut.yy.parseError=="function"?this.parseError=ut.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function wt(Tt){z.length=z.length-2*Tt,Q.length=Q.length-Tt,j.length=j.length-Tt}o(wt,"popStack");function Ot(){var Tt;return Tt=W.pop()||ct.lex()||K,typeof Tt!="number"&&(Tt instanceof Array&&(W=Tt,Tt=W.pop()),Tt=G.symbols_[Tt]||Tt),Tt}o(Ot,"lex");for(var St,Vt,Pt,_t,dt,Y,ft={},mt,rt,ht,nt;;){if(Pt=z[z.length-1],this.defaultActions[Pt]?_t=this.defaultActions[Pt]:((St===null||typeof St>"u")&&(St=Ot()),_t=at[Pt]&&at[Pt][St]),typeof _t>"u"||!_t.length||!_t[0]){var st="";nt=[];for(mt in at[Pt])this.terminals_[mt]&&mt>q&&nt.push("'"+this.terminals_[mt]+"'");ct.showPosition?st="Parse error on line "+(J+1)+`: `+ct.showPosition()+` Expecting `+nt.join(", ")+", got '"+(this.terminals_[St]||St)+"'":st="Parse error on line "+(J+1)+": Unexpected "+(St==K?"end of input":"'"+(this.terminals_[St]||St)+"'"),this.parseError(st,{text:ct.match,token:this.terminals_[St]||St,line:ct.yylineno,loc:Mt,expected:nt})}if(_t[0]instanceof Array&&_t.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Pt+", token: "+St);switch(_t[0]){case 1:z.push(St),Q.push(ct.yytext),j.push(ct.yylloc),z.push(_t[1]),St=null,Vt?(St=Vt,Vt=null):(Z=ct.yyleng,X=ct.yytext,J=ct.yylineno,Mt=ct.yylloc,H>0&&H--);break;case 2:if(rt=this.productions_[_t[1]][1],ft.$=Q[Q.length-rt],ft._$={first_line:j[j.length-(rt||1)].first_line,last_line:j[j.length-1].last_line,first_column:j[j.length-(rt||1)].first_column,last_column:j[j.length-1].last_column},it&&(ft._$.range=[j[j.length-(rt||1)].range[0],j[j.length-1].range[1]]),Y=this.performAction.apply(ft,[X,Z,J,ut.yy,_t[1],Q,j].concat(ot)),typeof Y<"u")return Y;rt&&(z=z.slice(0,-1*rt*2),Q=Q.slice(0,-1*rt),j=j.slice(0,-1*rt)),z.push(this.productions_[_t[1]][0]),Q.push(ft.$),j.push(ft._$),ht=at[z[z.length-2]][z[z.length-1]],z.push(ht);break;case 3:return!0}}return!0},"parse")},D=function(){var F={EOF:1,parseError:o(function(G,z){if(this.yy.parser)this.yy.parser.parseError(G,z);else throw new Error(G)},"parseError"),setInput:o(function(B,G){return this.yy=G||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]),this.offset=0,this},"setInput"),input:o(function(){var B=this._input[0];this.yytext+=B,this.yyleng++,this.offset++,this.match+=B,this.matched+=B;var G=B.match(/(?:\r\n?|\n).*/g);return G?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),B},"input"),unput:o(function(B){var G=B.length,z=B.split(/(?:\r\n?|\n)/g);this._input=B+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-G),this.offset-=G;var W=this.match.split(/(?:\r\n?|\n)/g);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 Q=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:z?(z.length===W.length?this.yylloc.first_column:0)+W[W.length-z.length].length-z[0].length:this.yylloc.first_column-G},this.options.ranges&&(this.yylloc.range=[Q[0],Q[0]+this.yyleng-G]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(B){this.unput(this.match.slice(B))},"less"),pastInput:o(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:o(function(){var B=this.match;return B.length<20&&(B+=this._input.substr(0,20-B.length)),(B.substr(0,20)+(B.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var B=this.pastInput(),G=new Array(B.length+1).join("-");return B+this.upcomingInput()+` `+G+"^"},"showPosition"),test_match:o(function(B,G){var z,W,Q;if(this.options.backtrack_lexer&&(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))),W=B[0].match(/(?:\r\n?|\n).*/g),W&&(this.yylineno+=W.length),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+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]),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,G,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),z)return z;if(this._backtrack){for(var j in Q)this[j]=Q[j];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var B,G,z,W;this._more||(this.yytext="",this.match="");for(var Q=this._currentRules(),j=0;jG[0].length)){if(G=z,W=j,this.options.backtrack_lexer){if(B=this.test_match(z,Q[j]),B!==!1)return B;if(this._backtrack){G=!1;continue}else return!1}else if(!this.options.flex)break}return G?(B=this.test_match(G,Q[W]),B!==!1?B:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var G=this.next();return G||this.lex()},"lex"),begin:o(function(G){this.conditionStack.push(G)},"begin"),popState:o(function(){var G=this.conditionStack.length-1;return G>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(G){return G=this.conditionStack.length-1-Math.abs(G||0),G>=0?this.conditionStack[G]:"INITIAL"},"topState"),pushState:o(function(G){this.begin(G)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(G,z,W,Q){var j=Q;switch(W){case 0:return 41;case 1:return 48;case 2:return 49;case 3:return 50;case 4:return 51;case 5:break;case 6:break;case 7:return 5;case 8:break;case 9:break;case 10:break;case 11:break;case 12:return this.pushState("SCALE"),17;break;case 13:return 18;case 14:this.popState();break;case 15:return this.begin("acc_title"),33;break;case 16:return this.popState(),"acc_title_value";break;case 17:return this.begin("acc_descr"),35;break;case 18:return this.popState(),"acc_descr_value";break;case 19:this.begin("acc_descr_multiline");break;case 20:this.popState();break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),38;break;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 24:return this.popState(),this.pushState("CLASSDEFID"),39;break;case 25:return this.popState(),40;break;case 26:return this.pushState("CLASS"),45;break;case 27:return this.popState(),this.pushState("CLASS_STYLE"),46;break;case 28:return this.popState(),47;break;case 29:return this.pushState("STYLE"),42;break;case 30:return this.popState(),this.pushState("STYLEDEF_STYLES"),43;break;case 31:return this.popState(),44;break;case 32:return this.pushState("SCALE"),17;break;case 33:return 18;case 34:this.popState();break;case 35:this.pushState("STATE");break;case 36:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),25;break;case 37:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),26;break;case 38:return this.popState(),z.yytext=z.yytext.slice(0,-10).trim(),27;break;case 39:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),25;break;case 40:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),26;break;case 41:return this.popState(),z.yytext=z.yytext.slice(0,-10).trim(),27;break;case 42:return 48;case 43:return 49;case 44:return 50;case 45:return 51;case 46:this.pushState("STATE_STRING");break;case 47:return this.pushState("STATE_ID"),"AS";break;case 48:return this.popState(),"ID";break;case 49:this.popState();break;case 50:return"STATE_DESCR";case 51:return 19;case 52:this.popState();break;case 53:return this.popState(),this.pushState("struct"),20;break;case 54:break;case 55:return this.popState(),21;break;case 56:break;case 57:return this.begin("NOTE"),29;break;case 58:return this.popState(),this.pushState("NOTE_ID"),56;break;case 59:return this.popState(),this.pushState("NOTE_ID"),57;break;case 60:this.popState(),this.pushState("FLOATING_NOTE");break;case 61:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 62:break;case 63:return"NOTE_TEXT";case 64:return this.popState(),"ID";break;case 65:return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 66:return this.popState(),z.yytext=z.yytext.substr(2).trim(),31;break;case 67:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),31;break;case 68:return 6;case 69:return 6;case 70:return 16;case 71:return 54;case 72:return 24;case 73:return z.yytext=z.yytext.trim(),14;break;case 74:return 15;case 75:return 28;case 76:return 55;case 77:return 5;case 78:return"INVALID"}},"anonymous"),rules:[/^(?: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,/^(?:[^\}]%%[^\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,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/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,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/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]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[9,10],inclusive:!1},struct:{rules:[9,10,22,26,29,35,42,43,44,45,54,55,56,57,71,72,73,74,75],inclusive:!1},FLOATING_NOTE_ID:{rules:[64],inclusive:!1},FLOATING_NOTE:{rules:[61,62,63],inclusive:!1},NOTE_TEXT:{rules:[66,67],inclusive:!1},NOTE_ID:{rules:[65],inclusive:!1},NOTE:{rules:[58,59,60],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[31],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[30],inclusive:!1},CLASS_STYLE:{rules:[28],inclusive:!1},CLASS:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[25],inclusive:!1},CLASSDEF:{rules:[23,24],inclusive:!1},acc_descr_multiline:{rules:[20,21],inclusive:!1},acc_descr:{rules:[18],inclusive:!1},acc_title:{rules:[16],inclusive:!1},SCALE:{rules:[13,14,33,34],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[48],inclusive:!1},STATE_STRING:{rules:[49,50],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[9,10,36,37,38,39,40,41,46,47,51,52,53],inclusive:!1},ID:{rules:[9,10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,10,11,12,15,17,19,22,26,29,32,35,53,57,68,69,70,71,72,73,74,76,77,78],inclusive:!0}}};return F}();O.lexer=D;function P(){this.yy={}}return o(P,"Parser"),P.prototype=O,O.Parser=P,new P}();UP.parser=UP;D6=UP});var S0t,R6,e1,Qx,A0t,_0t,L0t,z0,N6,WP,YP,qP,XP,jP,M6,I6,D0t,R0t,KP,QP,N0t,M0t,r1,mYt,I0t,ZP,gYt,yYt,O0t,P0t,vYt,B0t,xYt,F0t,JP,tB,z0t,O6,$0t,eB,P6=R(()=>{"use strict";S0t="LR",R6="TB",e1="state",Qx="relation",A0t="classDef",_0t="style",L0t="applyClass",z0="default",N6="divider",WP="fill:none",YP="fill: #333",qP="c",XP="text",jP="normal",M6="rect",I6="rectWithTitle",D0t="stateStart",R0t="stateEnd",KP="divider",QP="roundedWithTitle",N0t="note",M0t="noteGroup",r1="statediagram",mYt="state",I0t=`${r1}-${mYt}`,ZP="transition",gYt="note",yYt="note-edge",O0t=`${ZP} ${yYt}`,P0t=`${r1}-${gYt}`,vYt="cluster",B0t=`${r1}-${vYt}`,xYt="cluster-alt",F0t=`${r1}-${xYt}`,JP="parent",tB="note",z0t="state",O6="----",$0t=`${O6}${tB}`,eB=`${O6}${JP}`});function rB(e="",t=0,r="",n=O6){let i=r!==null&&r.length>0?`${n}${r}`:"";return`${z0t}-${e}${i}-${t}`}function B6(e,t,r){if(!t.id||t.id===""||t.id==="")return;t.cssClasses&&(Array.isArray(t.cssCompiledStyles)||(t.cssCompiledStyles=[]),t.cssClasses.split(" ").forEach(i=>{if(r.get(i)){let a=r.get(i);t.cssCompiledStyles=[...t.cssCompiledStyles,...a.styles]}}));let n=e.find(i=>i.id===t.id);n?Object.assign(n,t):e.push(t)}function wYt(e){return e?.classes?.join(" ")??""}function TYt(e){return e?.styles??[]}var F6,Tf,bYt,G0t,n1,V0t,U0t=R(()=>{"use strict";Ue();ce();hr();P6();F6=new Map,Tf=0;o(rB,"stateDomId");bYt=o((e,t,r,n,i,a,s,l)=>{V.trace("items",t),t.forEach(u=>{switch(u.stmt){case e1:n1(e,u,r,n,i,a,s,l);break;case z0:n1(e,u,r,n,i,a,s,l);break;case Qx:{n1(e,u.state1,r,n,i,a,s,l),n1(e,u.state2,r,n,i,a,s,l);let h={id:"edge"+Tf,start:u.state1.id,end:u.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:WP,labelStyle:"",label:Yt.sanitizeText(u.description,pt()),arrowheadStyle:YP,labelpos:qP,labelType:XP,thickness:jP,classes:ZP,look:s};i.push(h),Tf++}break}})},"setupDoc"),G0t=o((e,t=R6)=>{let r=t;if(e.doc)for(let n of e.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir");o(B6,"insertOrUpdateNode");o(wYt,"getClassesFromDbInfo");o(TYt,"getStylesFromDbInfo");n1=o((e,t,r,n,i,a,s,l)=>{let u=t.id,h=r.get(u),f=wYt(h),d=TYt(h);if(V.info("dataFetcher parsedItem",t,h,d),u!=="root"){let p=M6;t.start===!0?p=D0t:t.start===!1&&(p=R0t),t.type!==z0&&(p=t.type),F6.get(u)||F6.set(u,{id:u,shape:p,description:Yt.sanitizeText(u,pt()),cssClasses:`${f} ${I0t}`,cssStyles:d});let m=F6.get(u);t.description&&(Array.isArray(m.description)?(m.shape=I6,m.description.push(t.description)):m.description?.length>0?(m.shape=I6,m.description===u?m.description=[t.description]:m.description=[m.description,t.description]):(m.shape=M6,m.description=t.description),m.description=Yt.sanitizeTextOrArray(m.description,pt())),m.description?.length===1&&m.shape===I6&&(m.type==="group"?m.shape=QP:m.shape=M6),!m.type&&t.doc&&(V.info("Setting cluster for XCX",u,G0t(t)),m.type="group",m.isGroup=!0,m.dir=G0t(t),m.shape=t.type===N6?KP:QP,m.cssClasses=`${m.cssClasses} ${B0t} ${a?F0t:""}`);let g={labelStyle:"",shape:m.shape,label:m.description,cssClasses:m.cssClasses,cssCompiledStyles:[],cssStyles:m.cssStyles,id:u,dir:m.dir,domId:rB(u,Tf),type:m.type,isGroup:m.type==="group",padding:8,rx:10,ry:10,look:s};if(g.shape===KP&&(g.label=""),e&&e.id!=="root"&&(V.trace("Setting node ",u," to be child of its parent ",e.id),g.parentId=e.id),g.centerLabel=!0,t.note){let y={labelStyle:"",shape:N0t,label:t.note.text,cssClasses:P0t,cssStyles:[],cssCompilesStyles:[],id:u+$0t+"-"+Tf,domId:rB(u,Tf,tB),type:m.type,isGroup:m.type==="group",padding:pt().flowchart.padding,look:s,position:t.note.position},v=u+eB,x={labelStyle:"",shape:M0t,label:t.note.text,cssClasses:m.cssClasses,cssStyles:[],id:u+eB,domId:rB(u,Tf,JP),type:"group",isGroup:!0,padding:16,look:s,position:t.note.position};Tf++,x.id=v,y.parentId=v,B6(n,x,l),B6(n,y,l),B6(n,g,l);let b=u,w=y.id;t.note.position==="left of"&&(b=y.id,w=u),i.push({id:b+"-"+w,start:b,end:w,arrowhead:"none",arrowTypeEnd:"",style:WP,labelStyle:"",classes:O0t,arrowheadStyle:YP,labelpos:qP,labelType:XP,thickness:jP,look:s})}else B6(n,g,l)}t.doc&&(V.trace("Adding nodes children "),bYt(t,t.doc,r,n,i,!a,s,l))},"dataFetcher"),V0t=o(()=>{F6.clear(),Tf=0},"reset")});var nB,kYt,EYt,H0t,iB=R(()=>{"use strict";Ue();ce();pL();ZT();TR();_r();P6();nB=o((e,t=R6)=>{if(!e.doc)return t;let r=t;for(let n of e.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),kYt=o(function(e,t){return t.db.extract(t.db.getRootDocV2()),t.db.getClasses()},"getClasses"),EYt=o(async function(e,t,r,n){V.info("REF0:"),V.info("Drawing state diagram (v2)",t);let{securityLevel:i,state:a,layout:s}=pt();n.db.extract(n.db.getRootDocV2());let l=n.db.getData(),u=rw(t,i);l.type=n.type,l.layoutAlgorithm=s,l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["barb"],l.diagramId=t,await QT(l,u);let h=8;Oe.insertTitle(u,"statediagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),JT(u,h,r1,a?.useMaxWidth??!0)},"draw"),H0t={getClasses:kYt,draw:EYt,getDir:nB}});function Q0t(){return new Map}function aB(e=""){let t=e;return e===lB&&(Zx++,t=`${X0t}${Zx}`),t}function sB(e="",t=z0){return e===lB?X0t:t}function IYt(e=""){let t=e;return e===j0t&&(Zx++,t=`${K0t}${Zx}`),t}function OYt(e="",t=z0){return e===j0t?K0t:t}function PYt(e,t,r){let n=aB(e.id.trim()),i=sB(e.id.trim(),e.type),a=aB(t.id.trim()),s=sB(t.id.trim(),t.type);kf(n,i,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),kf(a,s,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),Hs.relations.push({id1:n,id2:a,relationTitle:Yt.sanitizeText(r,pt())})}var lB,X0t,j0t,K0t,W0t,Y0t,CYt,SYt,G6,cB,Z0t,V6,i1,J0t,U6,Hs,Zx,q0t,AYt,_Yt,z6,LYt,DYt,$6,uB,RYt,kf,tpt,$0,ept,NYt,MYt,rpt,oB,BYt,FYt,npt,zYt,hB,$Yt,GYt,VYt,UYt,HYt,WYt,el,H6=R(()=>{"use strict";ce();_r();hr();Ue();Ci();U0t();iB();P6();lB="[*]",X0t="start",j0t=lB,K0t="end",W0t="color",Y0t="fill",CYt="bgFill",SYt=",";o(Q0t,"newClassesList");G6=[],cB=[],Z0t=S0t,V6=[],i1=Q0t(),J0t=o(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),U6={root:J0t()},Hs=U6.root,Zx=0,q0t=0,AYt={LINE:0,DOTTED_LINE:1},_Yt={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},z6=o(e=>JSON.parse(JSON.stringify(e)),"clone"),LYt=o(e=>{V.info("Setting root doc",e),V6=e},"setRootDoc"),DYt=o(()=>V6,"getRootDoc"),$6=o((e,t,r)=>{if(t.stmt===Qx)$6(e,t.state1,!0),$6(e,t.state2,!1);else if(t.stmt===e1&&(t.id==="[*]"?(t.id=r?e.id+"_start":e.id+"_end",t.start=r):t.id=t.id.trim()),t.doc){let n=[],i=[],a;for(a=0;a0&&i.length>0){let s={stmt:e1,id:z9(),type:"divider",doc:z6(i)};n.push(z6(s)),t.doc=n}t.doc.forEach(s=>$6(t,s,!0))}},"docTranslator"),uB=o(()=>($6({id:"root"},{id:"root",doc:V6},!0),{id:"root",doc:V6}),"getRootDocV2"),RYt=o(e=>{let t;e.doc?t=e.doc:t=e,V.info(t),tpt(!0),V.info("Extract initial document:",t),t.forEach(a=>{switch(V.warn("Statement",a.stmt),a.stmt){case e1:kf(a.id.trim(),a.type,a.doc,a.description,a.note,a.classes,a.styles,a.textStyles);break;case Qx:rpt(a.state1,a.state2,a.description);break;case A0t:npt(a.id.trim(),a.classes);break;case _0t:{let s=a.id.trim().split(","),l=a.styleClass.split(",");s.forEach(u=>{let h=$0(u);if(h===void 0){let f=u.trim();kf(f),h=$0(f)}h.styles=l.map(f=>f.replace(/;/g,"")?.trim())})}break;case L0t:hB(a.id.trim(),a.styleClass);break}});let r=ept(),i=pt().look;V0t(),n1(void 0,uB(),r,G6,cB,!0,i,i1),G6.forEach(a=>{if(Array.isArray(a.label)){if(a.description=a.label.slice(1),a.isGroup&&a.description.length>0)throw new Error("Group nodes can only have label. Remove the additional description for node ["+a.id+"]");a.label=a.label[0]}})},"extract"),kf=o(function(e,t=z0,r=null,n=null,i=null,a=null,s=null,l=null){let u=e?.trim();if(Hs.states.has(u)?(Hs.states.get(u).doc||(Hs.states.get(u).doc=r),Hs.states.get(u).type||(Hs.states.get(u).type=t)):(V.info("Adding state ",u,n),Hs.states.set(u,{id:u,descriptions:[],type:t,doc:r,note:i,classes:[],styles:[],textStyles:[]})),n&&(V.info("Setting state description",u,n),typeof n=="string"&&oB(u,n.trim()),typeof n=="object"&&n.forEach(h=>oB(u,h.trim()))),i){let h=Hs.states.get(u);h.note=i,h.note.text=Yt.sanitizeText(h.note.text,pt())}a&&(V.info("Setting state classes",u,a),(typeof a=="string"?[a]:a).forEach(f=>hB(u,f.trim()))),s&&(V.info("Setting state styles",u,s),(typeof s=="string"?[s]:s).forEach(f=>$Yt(u,f.trim()))),l&&(V.info("Setting state styles",u,s),(typeof l=="string"?[l]:l).forEach(f=>GYt(u,f.trim())))},"addState"),tpt=o(function(e){G6=[],cB=[],U6={root:J0t()},Hs=U6.root,Zx=0,i1=Q0t(),e||Ar()},"clear"),$0=o(function(e){return Hs.states.get(e)},"getState"),ept=o(function(){return Hs.states},"getStates"),NYt=o(function(){V.info("Documents = ",U6)},"logDocuments"),MYt=o(function(){return Hs.relations},"getRelations");o(aB,"startIdIfNeeded");o(sB,"startTypeIfNeeded");o(IYt,"endIdIfNeeded");o(OYt,"endTypeIfNeeded");o(PYt,"addRelationObjs");rpt=o(function(e,t,r){if(typeof e=="object")PYt(e,t,r);else{let n=aB(e.trim()),i=sB(e),a=IYt(t.trim()),s=OYt(t);kf(n,i),kf(a,s),Hs.relations.push({id1:n,id2:a,title:Yt.sanitizeText(r,pt())})}},"addRelation"),oB=o(function(e,t){let r=Hs.states.get(e),n=t.startsWith(":")?t.replace(":","").trim():t;r.descriptions.push(Yt.sanitizeText(n,pt()))},"addDescription"),BYt=o(function(e){return e.substring(0,1)===":"?e.substr(2).trim():e.trim()},"cleanupLabel"),FYt=o(()=>(q0t++,"divider-id-"+q0t),"getDividerId"),npt=o(function(e,t=""){i1.has(e)||i1.set(e,{id:e,styles:[],textStyles:[]});let r=i1.get(e);t?.split(SYt).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(W0t).exec(n)){let s=i.replace(Y0t,CYt).replace(W0t,Y0t);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),zYt=o(function(){return i1},"getClasses"),hB=o(function(e,t){e.split(",").forEach(function(r){let n=$0(r);if(n===void 0){let i=r.trim();kf(i),n=$0(i)}n.classes.push(t)})},"setCssClass"),$Yt=o(function(e,t){let r=$0(e);r!==void 0&&r.styles.push(t)},"setStyle"),GYt=o(function(e,t){let r=$0(e);r!==void 0&&r.textStyles.push(t)},"setTextStyle"),VYt=o(()=>Z0t,"getDirection"),UYt=o(e=>{Z0t=e},"setDirection"),HYt=o(e=>e&&e[0]===":"?e.substr(1).trim():e.trim(),"trimColon"),WYt=o(()=>{let e=pt();return{nodes:G6,edges:cB,other:{},config:e,direction:nB(uB())}},"getData"),el={getConfig:o(()=>pt().state,"getConfig"),getData:WYt,addState:kf,clear:tpt,getState:$0,getStates:ept,getRelations:MYt,getClasses:zYt,getDirection:VYt,addRelation:rpt,getDividerId:FYt,setDirection:UYt,cleanupLabel:BYt,lineType:AYt,relationType:_Yt,logDocuments:NYt,getRootDoc:DYt,setRootDoc:LYt,getRootDocV2:uB,extract:RYt,trimColon:HYt,getAccTitle:Br,setAccTitle:Mr,getAccDescription:zr,setAccDescription:Fr,addStyleClass:npt,setCssClass:hB,addDescription:oB,setDiagramTitle:cn,getDiagramTitle:Jr}});var YYt,W6,fB=R(()=>{"use strict";YYt=o(e=>` defs #statediagram-barbEnd { fill: ${e.transitionColor}; stroke: ${e.transitionColor}; } g.stateGroup text { fill: ${e.nodeBorder}; stroke: none; font-size: 10px; } g.stateGroup text { fill: ${e.textColor}; stroke: none; font-size: 10px; } g.stateGroup .state-title { font-weight: bolder; fill: ${e.stateLabelColor}; } g.stateGroup rect { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; } g.stateGroup line { stroke: ${e.lineColor}; stroke-width: 1; } .transition { stroke: ${e.transitionColor}; stroke-width: 1; fill: none; } .stateGroup .composit { fill: ${e.background}; border-bottom: 1px } .stateGroup .alt-composit { fill: #e0e0e0; border-bottom: 1px } .state-note { stroke: ${e.noteBorderColor}; fill: ${e.noteBkgColor}; text { fill: ${e.noteTextColor}; stroke: none; font-size: 10px; } } .stateLabel .box { stroke: none; stroke-width: 0; fill: ${e.mainBkg}; opacity: 0.5; } .edgeLabel .label rect { fill: ${e.labelBackgroundColor}; opacity: 0.5; } .edgeLabel { background-color: ${e.edgeLabelBackground}; p { background-color: ${e.edgeLabelBackground}; } rect { opacity: 0.5; background-color: ${e.edgeLabelBackground}; fill: ${e.edgeLabelBackground}; } text-align: center; } .edgeLabel .label text { fill: ${e.transitionLabelColor||e.tertiaryTextColor}; } .label div .edgeLabel { color: ${e.transitionLabelColor||e.tertiaryTextColor}; } .stateLabel text { fill: ${e.stateLabelColor}; font-size: 10px; font-weight: bold; } .node circle.state-start { fill: ${e.specialStateColor}; stroke: ${e.specialStateColor}; } .node .fork-join { fill: ${e.specialStateColor}; stroke: ${e.specialStateColor}; } .node circle.state-end { fill: ${e.innerEndBackground}; stroke: ${e.background}; stroke-width: 1.5 } .end-state-inner { fill: ${e.compositeBackground||e.background}; // stroke: ${e.background}; stroke-width: 1.5 } .node rect { fill: ${e.stateBkg||e.mainBkg}; stroke: ${e.stateBorder||e.nodeBorder}; stroke-width: 1px; } .node polygon { fill: ${e.mainBkg}; stroke: ${e.stateBorder||e.nodeBorder};; stroke-width: 1px; } #statediagram-barbEnd { fill: ${e.lineColor}; } .statediagram-cluster rect { fill: ${e.compositeTitleBackground}; stroke: ${e.stateBorder||e.nodeBorder}; stroke-width: 1px; } .cluster-label, .nodeLabel { color: ${e.stateLabelColor}; // line-height: 1; } .statediagram-cluster rect.outer { rx: 5px; ry: 5px; } .statediagram-state .divider { stroke: ${e.stateBorder||e.nodeBorder}; } .statediagram-state .title-state { rx: 5px; ry: 5px; } .statediagram-cluster.statediagram-cluster .inner { fill: ${e.compositeBackground||e.background}; } .statediagram-cluster.statediagram-cluster-alt .inner { fill: ${e.altBackground?e.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: ${e.altBackground?e.altBackground:"#efefef"}; } .note-edge { stroke-dasharray: 5; } .statediagram-note rect { fill: ${e.noteBkgColor}; stroke: ${e.noteBorderColor}; stroke-width: 1px; rx: 0; ry: 0; } .statediagram-note rect { fill: ${e.noteBkgColor}; stroke: ${e.noteBorderColor}; stroke-width: 1px; rx: 0; ry: 0; } .statediagram-note text { fill: ${e.noteTextColor}; } .statediagram-note .nodeLabel { color: ${e.noteTextColor}; } .statediagram .edgeLabel { color: red; // ${e.noteTextColor}; } #dependencyStart, #dependencyEnd { fill: ${e.lineColor}; stroke: ${e.lineColor}; stroke-width: 1; } .statediagramTitleText { text-anchor: middle; font-size: 18px; fill: ${e.textColor}; } `,"getStyles"),W6=YYt});var dB,qYt,XYt,ipt,jYt,apt,spt=R(()=>{"use strict";dB={},qYt=o((e,t)=>{dB[e]=t},"set"),XYt=o(e=>dB[e],"get"),ipt=o(()=>Object.keys(dB),"keys"),jYt=o(()=>ipt().length,"size"),apt={get:XYt,set:qYt,keys:ipt,size:jYt}});var KYt,QYt,ZYt,JYt,lpt,tqt,eqt,rqt,nqt,pB,opt,cpt,upt=R(()=>{"use strict";ur();spt();H6();_r();hr();Ue();ce();KYt=o(e=>e.append("circle").attr("class","start-state").attr("r",pt().state.sizeUnit).attr("cx",pt().state.padding+pt().state.sizeUnit).attr("cy",pt().state.padding+pt().state.sizeUnit),"drawStartState"),QYt=o(e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",pt().state.textHeight).attr("class","divider").attr("x2",pt().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),ZYt=o((e,t)=>{let r=e.append("text").attr("x",2*pt().state.padding).attr("y",pt().state.textHeight+2*pt().state.padding).attr("font-size",pt().state.fontSize).attr("class","state-title").text(t.id),n=r.node().getBBox();return e.insert("rect",":first-child").attr("x",pt().state.padding).attr("y",pt().state.padding).attr("width",n.width+2*pt().state.padding).attr("height",n.height+2*pt().state.padding).attr("rx",pt().state.radius),r},"drawSimpleState"),JYt=o((e,t)=>{let r=o(function(p,m,g){let y=p.append("tspan").attr("x",2*pt().state.padding).text(m);g||y.attr("dy",pt().state.textHeight)},"addTspan"),i=e.append("text").attr("x",2*pt().state.padding).attr("y",pt().state.textHeight+1.3*pt().state.padding).attr("font-size",pt().state.fontSize).attr("class","state-title").text(t.descriptions[0]).node().getBBox(),a=i.height,s=e.append("text").attr("x",pt().state.padding).attr("y",a+pt().state.padding*.4+pt().state.dividerMargin+pt().state.textHeight).attr("class","state-description"),l=!0,u=!0;t.descriptions.forEach(function(p){l||(r(s,p,u),u=!1),l=!1});let h=e.append("line").attr("x1",pt().state.padding).attr("y1",pt().state.padding+a+pt().state.dividerMargin/2).attr("y2",pt().state.padding+a+pt().state.dividerMargin/2).attr("class","descr-divider"),f=s.node().getBBox(),d=Math.max(f.width,i.width);return h.attr("x2",d+3*pt().state.padding),e.insert("rect",":first-child").attr("x",pt().state.padding).attr("y",pt().state.padding).attr("width",d+2*pt().state.padding).attr("height",f.height+a+2*pt().state.padding).attr("rx",pt().state.radius),e},"drawDescrState"),lpt=o((e,t,r)=>{let n=pt().state.padding,i=2*pt().state.padding,a=e.node().getBBox(),s=a.width,l=a.x,u=e.append("text").attr("x",0).attr("y",pt().state.titleShift).attr("font-size",pt().state.fontSize).attr("class","state-title").text(t.id),f=u.node().getBBox().width+i,d=Math.max(f,s);d===s&&(d=d+i);let p,m=e.node().getBBox();t.doc,p=l-n,f>s&&(p=(s-d)/2+n),Math.abs(l-m.x)s&&(p=l-(f-s)/2);let g=1-pt().state.textHeight;return e.insert("rect",":first-child").attr("x",p).attr("y",g).attr("class",r?"alt-composit":"composit").attr("width",d).attr("height",m.height+pt().state.textHeight+pt().state.titleShift+1).attr("rx","0"),u.attr("x",p+n),f<=s&&u.attr("x",l+(d-i)/2-f/2+n),e.insert("rect",":first-child").attr("x",p).attr("y",pt().state.titleShift-pt().state.textHeight-pt().state.padding).attr("width",d).attr("height",pt().state.textHeight*3).attr("rx",pt().state.radius),e.insert("rect",":first-child").attr("x",p).attr("y",pt().state.titleShift-pt().state.textHeight-pt().state.padding).attr("width",d).attr("height",m.height+3+2*pt().state.textHeight).attr("rx",pt().state.radius),e},"addTitleAndBox"),tqt=o(e=>(e.append("circle").attr("class","end-state-outer").attr("r",pt().state.sizeUnit+pt().state.miniPadding).attr("cx",pt().state.padding+pt().state.sizeUnit+pt().state.miniPadding).attr("cy",pt().state.padding+pt().state.sizeUnit+pt().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",pt().state.sizeUnit).attr("cx",pt().state.padding+pt().state.sizeUnit+2).attr("cy",pt().state.padding+pt().state.sizeUnit+2)),"drawEndState"),eqt=o((e,t)=>{let r=pt().state.forkWidth,n=pt().state.forkHeight;if(t.parentId){let i=r;r=n,n=i}return e.append("rect").style("stroke","black").style("fill","black").attr("width",r).attr("height",n).attr("x",pt().state.padding).attr("y",pt().state.padding)},"drawForkJoinState"),rqt=o((e,t,r,n)=>{let i=0,a=n.append("text");a.style("text-anchor","start"),a.attr("class","noteText");let s=e.replace(/\r\n/g,"
    ");s=s.replace(/\n/g,"
    ");let l=s.split(Yt.lineBreakRegex),u=1.25*pt().state.noteMargin;for(let h of l){let f=h.trim();if(f.length>0){let d=a.append("tspan");if(d.text(f),u===0){let p=d.node().getBBox();u+=p.height}i+=u,d.attr("x",t+pt().state.noteMargin),d.attr("y",r+i+1.25*pt().state.noteMargin)}}return{textWidth:a.node().getBBox().width,textHeight:i}},"_drawLongText"),nqt=o((e,t)=>{t.attr("class","state-note");let r=t.append("rect").attr("x",0).attr("y",pt().state.padding),n=t.append("g"),{textWidth:i,textHeight:a}=rqt(e,0,0,n);return r.attr("height",a+2*pt().state.noteMargin),r.attr("width",i+pt().state.noteMargin*2),r},"drawNote"),pB=o(function(e,t){let r=t.id,n={id:r,label:t.id,width:0,height:0},i=e.append("g").attr("id",r).attr("class","stateGroup");t.type==="start"&&KYt(i),t.type==="end"&&tqt(i),(t.type==="fork"||t.type==="join")&&eqt(i,t),t.type==="note"&&nqt(t.note.text,i),t.type==="divider"&&QYt(i),t.type==="default"&&t.descriptions.length===0&&ZYt(i,t),t.type==="default"&&t.descriptions.length>0&&JYt(i,t);let a=i.node().getBBox();return n.width=a.width+2*pt().state.padding,n.height=a.height+2*pt().state.padding,apt.set(r,n),n},"drawState"),opt=0,cpt=o(function(e,t,r){let n=o(function(u){switch(u){case el.relationType.AGGREGATION:return"aggregation";case el.relationType.EXTENSION:return"extension";case el.relationType.COMPOSITION:return"composition";case el.relationType.DEPENDENCY:return"dependency"}},"getRelationType");t.points=t.points.filter(u=>!Number.isNaN(u.y));let i=t.points,a=ma().x(function(u){return u.x}).y(function(u){return u.y}).curve(Ts),s=e.append("path").attr("d",a(i)).attr("id","edge"+opt).attr("class","transition"),l="";if(pt().state.arrowMarkerAbsolute&&(l=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,l=l.replace(/\(/g,"\\("),l=l.replace(/\)/g,"\\)")),s.attr("marker-end","url("+l+"#"+n(el.relationType.DEPENDENCY)+"End)"),r.title!==void 0){let u=e.append("g").attr("class","stateLabel"),{x:h,y:f}=Oe.calcLabelPosition(t.points),d=Yt.getRows(r.title),p=0,m=[],g=0,y=0;for(let b=0;b<=d.length;b++){let w=u.append("text").attr("text-anchor","middle").text(d[b]).attr("x",h).attr("y",f+p),S=w.node().getBBox();g=Math.max(g,S.width),y=Math.min(y,S.x),V.info(S.x,h,f+p),p===0&&(p=w.node().getBBox().height,V.info("Title height",p,f)),m.push(w)}let v=p*d.length;if(d.length>1){let b=(d.length-1)*p*.5;m.forEach((w,S)=>w.attr("y",f+S*p-b)),v=p*d.length}let x=u.node().getBBox();u.insert("rect",":first-child").attr("class","box").attr("x",h-g/2-pt().state.padding/2).attr("y",f-v/2-pt().state.padding/2-3.5).attr("width",g+pt().state.padding).attr("height",v+pt().state.padding),V.info(x)}opt++},"drawEdge")});var bo,mB,iqt,aqt,sqt,oqt,hpt,fpt,dpt=R(()=>{"use strict";ur();Xd();wa();ce();hr();upt();Ue();Jn();mB={},iqt=o(function(){},"setConf"),aqt=o(function(e){e.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"),sqt=o(function(e,t,r,n){bo=pt().state;let i=pt().securityLevel,a;i==="sandbox"&&(a=Gt("#i"+t));let s=i==="sandbox"?Gt(a.nodes()[0].contentDocument.body):Gt("body"),l=i==="sandbox"?a.nodes()[0].contentDocument:document;V.debug("Rendering diagram "+e);let u=s.select(`[id='${t}']`);aqt(u);let h=n.db.getRootDoc();hpt(h,u,void 0,!1,s,l,n);let f=bo.padding,d=u.node().getBBox(),p=d.width+f*2,m=d.height+f*2,g=p*1.75;Pr(u,m,g,bo.useMaxWidth),u.attr("viewBox",`${d.x-bo.padding} ${d.y-bo.padding} `+p+" "+m)},"draw"),oqt=o(e=>e?e.length*bo.fontSizeFactor:1,"getLabelWidth"),hpt=o((e,t,r,n,i,a,s)=>{let l=new yr({compound:!0,multigraph:!0}),u,h=!0;for(u=0;u{let T=S.parentElement,E=0,_=0;T&&(T.parentElement&&(E=T.parentElement.getBBox().width),_=parseInt(T.getAttribute("data-x-shift"),10),Number.isNaN(_)&&(_=0)),S.setAttribute("x1",0-_+8),S.setAttribute("x2",E-_-8)})):V.debug("No Node "+b+": "+JSON.stringify(l.node(b)))});let v=y.getBBox();l.edges().forEach(function(b){b!==void 0&&l.edge(b)!==void 0&&(V.debug("Edge "+b.v+" -> "+b.w+": "+JSON.stringify(l.edge(b))),cpt(t,l.edge(b),l.edge(b).relation))}),v=y.getBBox();let x={id:r||"root",label:r||"root",width:0,height:0};return x.width=v.width+2*bo.padding,x.height=v.height+2*bo.padding,V.debug("Doc rendered",x,l),x},"renderDoc"),fpt={setConf:iqt,draw:sqt}});var ppt={};xr(ppt,{diagram:()=>lqt});var lqt,mpt=R(()=>{"use strict";HP();H6();fB();dpt();lqt={parser:D6,db:el,renderer:fpt,styles:W6,init:o(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,el.clear()},"init")}});var vpt={};xr(vpt,{diagram:()=>fqt});var fqt,xpt=R(()=>{"use strict";HP();H6();fB();iB();fqt={parser:D6,db:el,renderer:H0t,styles:W6,init:o(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,el.clear()},"init")}});var gB,Tpt,kpt=R(()=>{"use strict";gB=function(){var e=o(function(d,p,m,g){for(m=m||{},g=d.length;g--;m[d[g]]=p);return m},"o"),t=[6,8,10,11,12,14,16,17,18],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,14],u={trace:o(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:o(function(p,m,g,y,v,x,b){var w=x.length-1;switch(v){case 1:return x[w-1];case 2:this.$=[];break;case 3:x[w-1].push(x[w]),this.$=x[w-1];break;case 4:case 5:this.$=x[w];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(x[w].substr(6)),this.$=x[w].substr(6);break;case 9:this.$=x[w].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=x[w].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(x[w].substr(8)),this.$=x[w].substr(8);break;case 13:y.addTask(x[w-1],x[w]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},e(t,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:l},e(t,[2,7],{1:[2,1]}),e(t,[2,3]),{9:15,11:r,12:n,14:i,16:a,17:s,18:l},e(t,[2,5]),e(t,[2,6]),e(t,[2,8]),{13:[1,16]},{15:[1,17]},e(t,[2,11]),e(t,[2,12]),{19:[1,18]},e(t,[2,4]),e(t,[2,9]),e(t,[2,10]),e(t,[2,13])],defaultActions:{},parseError:o(function(p,m){if(m.recoverable)this.trace(p);else{var g=new Error(p);throw g.hash=m,g}},"parseError"),parse:o(function(p){var m=this,g=[0],y=[],v=[null],x=[],b=this.table,w="",S=0,T=0,E=0,_=2,A=1,L=x.slice.call(arguments,1),M=Object.create(this.lexer),N={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(N.yy[k]=this.yy[k]);M.setInput(p,N.yy),N.yy.lexer=M,N.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var I=M.yylloc;x.push(I);var C=M.options&&M.options.ranges;typeof N.yy.parseError=="function"?this.parseError=N.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function O(H){g.length=g.length-2*H,v.length=v.length-H,x.length=x.length-H}o(O,"popStack");function D(){var H;return H=y.pop()||M.lex()||A,typeof H!="number"&&(H instanceof Array&&(y=H,H=y.pop()),H=m.symbols_[H]||H),H}o(D,"lex");for(var P,F,B,G,z,W,Q={},j,at,X,J;;){if(B=g[g.length-1],this.defaultActions[B]?G=this.defaultActions[B]:((P===null||typeof P>"u")&&(P=D()),G=b[B]&&b[B][P]),typeof G>"u"||!G.length||!G[0]){var Z="";J=[];for(j in b[B])this.terminals_[j]&&j>_&&J.push("'"+this.terminals_[j]+"'");M.showPosition?Z="Parse error on line "+(S+1)+`: `+M.showPosition()+` Expecting `+J.join(", ")+", got '"+(this.terminals_[P]||P)+"'":Z="Parse error on line "+(S+1)+": Unexpected "+(P==A?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(Z,{text:M.match,token:this.terminals_[P]||P,line:M.yylineno,loc:I,expected:J})}if(G[0]instanceof Array&&G.length>1)throw new Error("Parse Error: multiple actions possible at state: "+B+", token: "+P);switch(G[0]){case 1:g.push(P),v.push(M.yytext),x.push(M.yylloc),g.push(G[1]),P=null,F?(P=F,F=null):(T=M.yyleng,w=M.yytext,S=M.yylineno,I=M.yylloc,E>0&&E--);break;case 2:if(at=this.productions_[G[1]][1],Q.$=v[v.length-at],Q._$={first_line:x[x.length-(at||1)].first_line,last_line:x[x.length-1].last_line,first_column:x[x.length-(at||1)].first_column,last_column:x[x.length-1].last_column},C&&(Q._$.range=[x[x.length-(at||1)].range[0],x[x.length-1].range[1]]),W=this.performAction.apply(Q,[w,T,S,N.yy,G[1],v,x].concat(L)),typeof W<"u")return W;at&&(g=g.slice(0,-1*at*2),v=v.slice(0,-1*at),x=x.slice(0,-1*at)),g.push(this.productions_[G[1]][0]),v.push(Q.$),x.push(Q._$),X=b[g[g.length-2]][g[g.length-1]],g.push(X);break;case 3:return!0}}return!0},"parse")},h=function(){var d={EOF:1,parseError:o(function(m,g){if(this.yy.parser)this.yy.parser.parseError(m,g);else throw new Error(m)},"parseError"),setInput:o(function(p,m){return this.yy=m||this.yy||{},this._input=p,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var m=p.match(/(?:\r\n?|\n).*/g);return m?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),p},"input"),unput:o(function(p){var m=p.length,g=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),g.length-1&&(this.yylineno-=g.length-1);var v=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:g?(g.length===y.length?this.yylloc.first_column:0)+y[y.length-g.length].length-g[0].length:this.yylloc.first_column-m},this.options.ranges&&(this.yylloc.range=[v[0],v[0]+this.yyleng-m]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(p){this.unput(this.match.slice(p))},"less"),pastInput:o(function(){var p=this.matched.substr(0,this.matched.length-this.match.length);return(p.length>20?"...":"")+p.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var p=this.match;return p.length<20&&(p+=this._input.substr(0,20-p.length)),(p.substr(0,20)+(p.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var p=this.pastInput(),m=new Array(p.length+1).join("-");return p+this.upcomingInput()+` `+m+"^"},"showPosition"),test_match:o(function(p,m){var g,y,v;if(this.options.backtrack_lexer&&(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))),y=p[0].match(/(?:\r\n?|\n).*/g),y&&(this.yylineno+=y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:y?y[y.length-1].length-y[y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+p[0].length},this.yytext+=p[0],this.match+=p[0],this.matches=p,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(p[0].length),this.matched+=p[0],g=this.performAction.call(this,this.yy,this,m,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),g)return g;if(this._backtrack){for(var x in v)this[x]=v[x];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var p,m,g,y;this._more||(this.yytext="",this.match="");for(var v=this._currentRules(),x=0;xm[0].length)){if(m=g,y=x,this.options.backtrack_lexer){if(p=this.test_match(g,v[x]),p!==!1)return p;if(this._backtrack){m=!1;continue}else return!1}else if(!this.options.flex)break}return m?(p=this.test_match(m,v[y]),p!==!1?p:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var m=this.next();return m||this.lex()},"lex"),begin:o(function(m){this.conditionStack.push(m)},"begin"),popState:o(function(){var m=this.conditionStack.length-1;return m>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(m){return m=this.conditionStack.length-1-Math.abs(m||0),m>=0?this.conditionStack[m]:"INITIAL"},"topState"),pushState:o(function(m){this.begin(m)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(m,g,y,v){var x=v;switch(y){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 d}();u.lexer=h;function f(){this.yy={}}return o(f,"Parser"),f.prototype=u,u.Parser=f,new f}();gB.parser=gB;Tpt=gB});var a1,yB,Jx,tb,gqt,yqt,vqt,xqt,bqt,wqt,Tqt,Ept,kqt,vB,Cpt=R(()=>{"use strict";Ue();Ci();a1="",yB=[],Jx=[],tb=[],gqt=o(function(){yB.length=0,Jx.length=0,a1="",tb.length=0,Ar()},"clear"),yqt=o(function(e){a1=e,yB.push(e)},"addSection"),vqt=o(function(){return yB},"getSections"),xqt=o(function(){let e=Ept(),t=100,r=0;for(;!e&&r{r.people&&e.push(...r.people)}),[...new Set(e)].sort()},"updateActors"),wqt=o(function(e,t){let r=t.substr(1).split(":"),n=0,i=[];r.length===1?(n=Number(r[0]),i=[]):(n=Number(r[0]),i=r[1].split(","));let a=i.map(l=>l.trim()),s={section:a1,type:a1,people:a,task:e,score:n};tb.push(s)},"addTask"),Tqt=o(function(e){let t={section:a1,type:a1,description:e,task:e,classes:[]};Jx.push(t)},"addTaskOrg"),Ept=o(function(){let e=o(function(r){return tb[r].processed},"compileTask"),t=!0;for(let[r,n]of tb.entries())e(r),t=t&&n.processed;return t},"compileTasks"),kqt=o(function(){return bqt()},"getActors"),vB={getConfig:o(()=>pt().journey,"getConfig"),clear:gqt,setDiagramTitle:cn,getDiagramTitle:Jr,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addSection:yqt,getSections:vqt,getTasks:xqt,addTask:wqt,addTaskOrg:Tqt,getActors:kqt}});var Eqt,Spt,Apt=R(()=>{"use strict";Eqt=o(e=>`.label { font-family: 'trebuchet ms', verdana, arial, sans-serif; font-family: var(--mermaid-font-family); color: ${e.textColor}; } .mouth { stroke: #666; } line { stroke: ${e.textColor} } .legend { fill: ${e.textColor}; } .label text { fill: #333; } .label { color: ${e.textColor} } .face { ${e.faceColor?`fill: ${e.faceColor}`:"fill: #FFF8DC"}; stroke: #999; } .node rect, .node circle, .node ellipse, .node polygon, .node path { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; stroke-width: 1px; } .node .label { text-align: center; } .node.clickable { cursor: pointer; } .arrowheadPath { fill: ${e.arrowheadColor}; } .edgePath .path { stroke: ${e.lineColor}; stroke-width: 1.5px; } .flowchart-link { stroke: ${e.lineColor}; fill: none; } .edgeLabel { background-color: ${e.edgeLabelBackground}; rect { opacity: 0.5; } text-align: center; } .cluster rect { } .cluster text { fill: ${e.titleColor}; } div.mermaidTooltip { position: absolute; text-align: center; max-width: 200px; padding: 2px; font-family: 'trebuchet ms', verdana, arial, sans-serif; font-family: var(--mermaid-font-family); font-size: 12px; background: ${e.tertiaryColor}; border: 1px solid ${e.border2}; border-radius: 2px; pointer-events: none; z-index: 100; } .task-type-0, .section-type-0 { ${e.fillType0?`fill: ${e.fillType0}`:""}; } .task-type-1, .section-type-1 { ${e.fillType0?`fill: ${e.fillType1}`:""}; } .task-type-2, .section-type-2 { ${e.fillType0?`fill: ${e.fillType2}`:""}; } .task-type-3, .section-type-3 { ${e.fillType0?`fill: ${e.fillType3}`:""}; } .task-type-4, .section-type-4 { ${e.fillType0?`fill: ${e.fillType4}`:""}; } .task-type-5, .section-type-5 { ${e.fillType0?`fill: ${e.fillType5}`:""}; } .task-type-6, .section-type-6 { ${e.fillType0?`fill: ${e.fillType6}`:""}; } .task-type-7, .section-type-7 { ${e.fillType0?`fill: ${e.fillType7}`:""}; } .actor-0 { ${e.actor0?`fill: ${e.actor0}`:""}; } .actor-1 { ${e.actor1?`fill: ${e.actor1}`:""}; } .actor-2 { ${e.actor2?`fill: ${e.actor2}`:""}; } .actor-3 { ${e.actor3?`fill: ${e.actor3}`:""}; } .actor-4 { ${e.actor4?`fill: ${e.actor4}`:""}; } .actor-5 { ${e.actor5?`fill: ${e.actor5}`:""}; } `,"getStyles"),Spt=Eqt});var xB,Cqt,Lpt,Dpt,Sqt,Aqt,_pt,_qt,Lqt,Rpt,Dqt,s1,Npt=R(()=>{"use strict";ur();lv();xB=o(function(e,t){return Td(e,t)},"drawRect"),Cqt=o(function(e,t){let n=e.append("circle").attr("cx",t.cx).attr("cy",t.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=e.append("g");i.append("circle").attr("cx",t.cx-15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",t.cx+15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=Cl().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+t.cx+","+(t.cy+2)+")")}o(a,"smile");function s(u){let h=Cl().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+t.cx+","+(t.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",t.cx-5).attr("y1",t.cy+7).attr("x2",t.cx+5).attr("y2",t.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),t.score>3?a(i):t.score<3?s(i):l(i),n},"drawFace"),Lpt=o(function(e,t){let r=e.append("circle");return r.attr("cx",t.cx),r.attr("cy",t.cy),r.attr("class","actor-"+t.pos),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("r",t.r),r.class!==void 0&&r.attr("class",r.class),t.title!==void 0&&r.append("title").text(t.title),r},"drawCircle"),Dpt=o(function(e,t){return bq(e,t)},"drawText"),Sqt=o(function(e,t){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=e.append("polygon");n.attr("points",r(t.x,t.y,50,20,7)),n.attr("class","labelBox"),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,Dpt(e,t)},"drawLabel"),Aqt=o(function(e,t,r){let n=e.append("g"),i=Sl();i.x=t.x,i.y=t.y,i.fill=t.fill,i.width=r.width*t.taskCount+r.diagramMarginX*(t.taskCount-1),i.height=r.height,i.class="journey-section section-type-"+t.num,i.rx=3,i.ry=3,xB(n,i),Rpt(r)(t.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+t.num},r,t.colour)},"drawSection"),_pt=-1,_qt=o(function(e,t,r){let n=t.x+r.width/2,i=e.append("g");_pt++;let a=300+5*30;i.append("line").attr("id","task"+_pt).attr("x1",n).attr("y1",t.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Cqt(i,{cx:n,cy:300+(5-t.score)*30,score:t.score});let s=Sl();s.x=t.x,s.y=t.y,s.fill=t.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+t.num,s.rx=3,s.ry=3,xB(i,s);let l=t.x+14;t.people.forEach(u=>{let h=t.actors[u].color,f={cx:l,cy:t.y,r:7,fill:h,stroke:"#000",title:u,pos:t.actors[u].position};Lpt(i,f),l+=10}),Rpt(r)(t.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,t.colour)},"drawTask"),Lqt=o(function(e,t){m5(e,t)},"drawBackgroundRect"),Rpt=function(){function e(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(e,"byText");function t(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{let i=Ju[n].color,a={cx:20,cy:r,r:7,fill:i,stroke:"#000",pos:Ju[n].position};s1.drawCircle(e,a);let s={x:40,y:r+7,fill:"#666",text:n,textMargin:t.boxTextMargin|5};s1.drawText(e,s),r+=20})}var Rqt,Ju,Y6,G0,Mqt,rl,bB,Mpt,Iqt,wB,Ipt=R(()=>{"use strict";ur();Npt();Ue();Jn();Rqt=o(function(e){Object.keys(e).forEach(function(r){Y6[r]=e[r]})},"setConf"),Ju={};o(Nqt,"drawActorLegend");Y6=pt().journey,G0=Y6.leftMargin,Mqt=o(function(e,t,r,n){let i=pt().journey,a=pt().securityLevel,s;a==="sandbox"&&(s=Gt("#i"+t));let l=a==="sandbox"?Gt(s.nodes()[0].contentDocument.body):Gt("body");rl.init();let u=l.select("#"+t);s1.initGraphics(u);let h=n.db.getTasks(),f=n.db.getDiagramTitle(),d=n.db.getActors();for(let x in Ju)delete Ju[x];let p=0;d.forEach(x=>{Ju[x]={color:i.actorColours[p%i.actorColours.length],position:p},p++}),Nqt(u),rl.insert(0,0,G0,Object.keys(Ju).length*50),Iqt(u,h,0);let m=rl.getBounds();f&&u.append("text").text(f).attr("x",G0).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);let g=m.stopy-m.starty+2*i.diagramMarginY,y=G0+m.stopx+2*i.diagramMarginX;Pr(u,g,y,i.useMaxWidth),u.append("line").attr("x1",G0).attr("y1",i.height*4).attr("x2",y-G0-4).attr("y2",i.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");let v=f?70:0;u.attr("viewBox",`${m.startx} -25 ${y} ${g+v}`),u.attr("preserveAspectRatio","xMinYMin meet"),u.attr("height",g+v+25)},"draw"),rl={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:o(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:o(function(e,t,r,n){e[t]===void 0?e[t]=r:e[t]=n(r,e[t])},"updateVal"),updateBounds:o(function(e,t,r,n){let i=pt().journey,a=this,s=0;function l(u){return o(function(f){s++;let d=a.sequenceItems.length-s+1;a.updateVal(f,"starty",t-d*i.boxMargin,Math.min),a.updateVal(f,"stopy",n+d*i.boxMargin,Math.max),a.updateVal(rl.data,"startx",e-d*i.boxMargin,Math.min),a.updateVal(rl.data,"stopx",r+d*i.boxMargin,Math.max),u!=="activation"&&(a.updateVal(f,"startx",e-d*i.boxMargin,Math.min),a.updateVal(f,"stopx",r+d*i.boxMargin,Math.max),a.updateVal(rl.data,"starty",t-d*i.boxMargin,Math.min),a.updateVal(rl.data,"stopy",n+d*i.boxMargin,Math.max))},"updateItemBounds")}o(l,"updateFn"),this.sequenceItems.forEach(l())},"updateBounds"),insert:o(function(e,t,r,n){let i=Math.min(e,r),a=Math.max(e,r),s=Math.min(t,n),l=Math.max(t,n);this.updateVal(rl.data,"startx",i,Math.min),this.updateVal(rl.data,"starty",s,Math.min),this.updateVal(rl.data,"stopx",a,Math.max),this.updateVal(rl.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),bumpVerticalPos:o(function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return this.data},"getBounds")},bB=Y6.sectionFills,Mpt=Y6.sectionColours,Iqt=o(function(e,t,r){let n=pt().journey,i="",a=n.height*2+n.diagramMarginY,s=r+a,l=0,u="#CCC",h="black",f=0;for(let[d,p]of t.entries()){if(i!==p.section){u=bB[l%bB.length],f=l%bB.length,h=Mpt[l%Mpt.length];let g=0,y=p.section;for(let x=d;x(Ju[y]&&(g[y]=Ju[y]),g),{});p.x=d*n.taskMargin+d*n.width+G0,p.y=s,p.width=n.diagramMarginX,p.height=n.diagramMarginY,p.colour=h,p.fill=u,p.num=f,p.actors=m,s1.drawTask(e,p,n),rl.insert(p.x,p.y,p.x+p.width+n.taskMargin,300+5*30)}},"drawTasks"),wB={setConf:Rqt,draw:Mqt}});var Opt={};xr(Opt,{diagram:()=>Oqt});var Oqt,Ppt=R(()=>{"use strict";kpt();Cpt();Apt();Ipt();Oqt={parser:Tpt,db:vB,renderer:wB,styles:Spt,init:o(e=>{wB.setConf(e.journey),vB.clear()},"init")}});var kB,Upt,Hpt=R(()=>{"use strict";kB=function(){var e=o(function(p,m,g,y){for(g=g||{},y=p.length;y--;g[p[y]]=m);return g},"o"),t=[6,8,10,11,12,14,16,17,20,21],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,16],u=[1,17],h={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline: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,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",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",20:"period",21:"event"},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,1],[9,1],[18,1],[19,1]],performAction:o(function(m,g,y,v,x,b,w){var S=b.length-1;switch(x){case 1:return b[S-1];case 2:this.$=[];break;case 3:b[S-1].push(b[S]),this.$=b[S-1];break;case 4:case 5:this.$=b[S];break;case 6:case 7:this.$=[];break;case 8:v.getCommonDb().setDiagramTitle(b[S].substr(6)),this.$=b[S].substr(6);break;case 9:this.$=b[S].trim(),v.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=b[S].trim(),v.getCommonDb().setAccDescription(this.$);break;case 12:v.addSection(b[S].substr(8)),this.$=b[S].substr(8);break;case 15:v.addTask(b[S],0,""),this.$=b[S];break;case 16:v.addEvent(b[S].substr(2)),this.$=b[S];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},e(t,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},e(t,[2,7],{1:[2,1]}),e(t,[2,3]),{9:18,11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},e(t,[2,5]),e(t,[2,6]),e(t,[2,8]),{13:[1,19]},{15:[1,20]},e(t,[2,11]),e(t,[2,12]),e(t,[2,13]),e(t,[2,14]),e(t,[2,15]),e(t,[2,16]),e(t,[2,4]),e(t,[2,9]),e(t,[2,10])],defaultActions:{},parseError:o(function(m,g){if(g.recoverable)this.trace(m);else{var y=new Error(m);throw y.hash=g,y}},"parseError"),parse:o(function(m){var g=this,y=[0],v=[],x=[null],b=[],w=this.table,S="",T=0,E=0,_=0,A=2,L=1,M=b.slice.call(arguments,1),N=Object.create(this.lexer),k={yy:{}};for(var I in this.yy)Object.prototype.hasOwnProperty.call(this.yy,I)&&(k.yy[I]=this.yy[I]);N.setInput(m,k.yy),k.yy.lexer=N,k.yy.parser=this,typeof N.yylloc>"u"&&(N.yylloc={});var C=N.yylloc;b.push(C);var O=N.options&&N.options.ranges;typeof k.yy.parseError=="function"?this.parseError=k.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function D(q){y.length=y.length-2*q,x.length=x.length-q,b.length=b.length-q}o(D,"popStack");function P(){var q;return q=v.pop()||N.lex()||L,typeof q!="number"&&(q instanceof Array&&(v=q,q=v.pop()),q=g.symbols_[q]||q),q}o(P,"lex");for(var F,B,G,z,W,Q,j={},at,X,J,Z;;){if(G=y[y.length-1],this.defaultActions[G]?z=this.defaultActions[G]:((F===null||typeof F>"u")&&(F=P()),z=w[G]&&w[G][F]),typeof z>"u"||!z.length||!z[0]){var H="";Z=[];for(at in w[G])this.terminals_[at]&&at>A&&Z.push("'"+this.terminals_[at]+"'");N.showPosition?H="Parse error on line "+(T+1)+`: `+N.showPosition()+` Expecting `+Z.join(", ")+", got '"+(this.terminals_[F]||F)+"'":H="Parse error on line "+(T+1)+": Unexpected "+(F==L?"end of input":"'"+(this.terminals_[F]||F)+"'"),this.parseError(H,{text:N.match,token:this.terminals_[F]||F,line:N.yylineno,loc:C,expected:Z})}if(z[0]instanceof Array&&z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+G+", token: "+F);switch(z[0]){case 1:y.push(F),x.push(N.yytext),b.push(N.yylloc),y.push(z[1]),F=null,B?(F=B,B=null):(E=N.yyleng,S=N.yytext,T=N.yylineno,C=N.yylloc,_>0&&_--);break;case 2:if(X=this.productions_[z[1]][1],j.$=x[x.length-X],j._$={first_line:b[b.length-(X||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(X||1)].first_column,last_column:b[b.length-1].last_column},O&&(j._$.range=[b[b.length-(X||1)].range[0],b[b.length-1].range[1]]),Q=this.performAction.apply(j,[S,E,T,k.yy,z[1],x,b].concat(M)),typeof Q<"u")return Q;X&&(y=y.slice(0,-1*X*2),x=x.slice(0,-1*X),b=b.slice(0,-1*X)),y.push(this.productions_[z[1]][0]),x.push(j.$),b.push(j._$),J=w[y[y.length-2]][y[y.length-1]],y.push(J);break;case 3:return!0}}return!0},"parse")},f=function(){var p={EOF:1,parseError:o(function(g,y){if(this.yy.parser)this.yy.parser.parseError(g,y);else throw new Error(g)},"parseError"),setInput:o(function(m,g){return this.yy=g||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]),this.offset=0,this},"setInput"),input:o(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var g=m.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},"input"),unput:o(function(m){var g=m.length,y=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;var v=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),y.length-1&&(this.yylineno-=y.length-1);var x=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:y?(y.length===v.length?this.yylloc.first_column:0)+v[v.length-y.length].length-y[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[x[0],x[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(m){this.unput(this.match.slice(m))},"less"),pastInput:o(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:o(function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var m=this.pastInput(),g=new Array(m.length+1).join("-");return m+this.upcomingInput()+` `+g+"^"},"showPosition"),test_match:o(function(m,g){var y,v,x;if(this.options.backtrack_lexer&&(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))),v=m[0].match(/(?:\r\n?|\n).*/g),v&&(this.yylineno+=v.length),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+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]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(m[0].length),this.matched+=m[0],y=this.performAction.call(this,this.yy,this,g,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),y)return y;if(this._backtrack){for(var b in x)this[b]=x[b];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var m,g,y,v;this._more||(this.yytext="",this.match="");for(var x=this._currentRules(),b=0;bg[0].length)){if(g=y,v=b,this.options.backtrack_lexer){if(m=this.test_match(y,x[b]),m!==!1)return m;if(this._backtrack){g=!1;continue}else return!1}else if(!this.options.flex)break}return g?(m=this.test_match(g,x[v]),m!==!1?m:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var g=this.next();return g||this.lex()},"lex"),begin:o(function(g){this.conditionStack.push(g)},"begin"),popState:o(function(){var g=this.conditionStack.length-1;return g>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(g){return g=this.conditionStack.length-1-Math.abs(g||0),g>=0?this.conditionStack[g]:"INITIAL"},"topState"),pushState:o(function(g){this.begin(g)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(g,y,v,x){var b=x;switch(v){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 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/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]+)/i,/^(?:[^#:\n]+)/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],inclusive:!0}}};return p}();h.lexer=f;function d(){this.yy={}}return o(d,"Parser"),d.prototype=h,h.Parser=d,new d}();kB.parser=kB;Upt=kB});var CB={};xr(CB,{addEvent:()=>Jpt,addSection:()=>jpt,addTask:()=>Zpt,addTaskOrg:()=>tmt,clear:()=>Xpt,default:()=>Hqt,getCommonDb:()=>qpt,getSections:()=>Kpt,getTasks:()=>Qpt});var o1,Ypt,EB,q6,l1,qpt,Xpt,jpt,Kpt,Qpt,Zpt,Jpt,tmt,Wpt,Hqt,emt=R(()=>{"use strict";Ci();o1="",Ypt=0,EB=[],q6=[],l1=[],qpt=o(()=>xy,"getCommonDb"),Xpt=o(function(){EB.length=0,q6.length=0,o1="",l1.length=0,Ar()},"clear"),jpt=o(function(e){o1=e,EB.push(e)},"addSection"),Kpt=o(function(){return EB},"getSections"),Qpt=o(function(){let e=Wpt(),t=100,r=0;for(;!e&&rr.id===Ypt-1).events.push(e)},"addEvent"),tmt=o(function(e){let t={section:o1,type:o1,description:e,task:e,classes:[]};q6.push(t)},"addTaskOrg"),Wpt=o(function(){let e=o(function(r){return l1[r].processed},"compileTask"),t=!0;for(let[r,n]of l1.entries())e(r),t=t&&n.processed;return t},"compileTasks"),Hqt={clear:Xpt,getCommonDb:qpt,addSection:jpt,getSections:Kpt,getTasks:Qpt,addTask:Zpt,addTaskOrg:tmt,addEvent:Jpt}});function amt(e,t){e.each(function(){var r=Gt(this),n=r.text().split(/(\s+|
    )/).reverse(),i,a=[],s=1.1,l=r.attr("y"),u=parseFloat(r.attr("dy")),h=r.text(null).append("tspan").attr("x",0).attr("y",l).attr("dy",u+"em");for(let f=0;ft||i==="
    ")&&(a.pop(),h.text(a.join(" ").trim()),i==="
    "?a=[""]:a=[i],h=r.append("tspan").attr("x",0).attr("y",l).attr("dy",s+"em").text(i))})}var Wqt,X6,Yqt,qqt,nmt,Xqt,jqt,rmt,Kqt,Qqt,Zqt,SB,imt,Jqt,tXt,eXt,rXt,Ef,smt=R(()=>{"use strict";ur();Wqt=12,X6=o(function(e,t){let r=e.append("rect");return r.attr("x",t.x),r.attr("y",t.y),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("width",t.width),r.attr("height",t.height),r.attr("rx",t.rx),r.attr("ry",t.ry),t.class!==void 0&&r.attr("class",t.class),r},"drawRect"),Yqt=o(function(e,t){let n=e.append("circle").attr("cx",t.cx).attr("cy",t.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=e.append("g");i.append("circle").attr("cx",t.cx-15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",t.cx+15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=Cl().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+t.cx+","+(t.cy+2)+")")}o(a,"smile");function s(u){let h=Cl().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+t.cx+","+(t.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",t.cx-5).attr("y1",t.cy+7).attr("x2",t.cx+5).attr("y2",t.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),t.score>3?a(i):t.score<3?s(i):l(i),n},"drawFace"),qqt=o(function(e,t){let r=e.append("circle");return r.attr("cx",t.cx),r.attr("cy",t.cy),r.attr("class","actor-"+t.pos),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("r",t.r),r.class!==void 0&&r.attr("class",r.class),t.title!==void 0&&r.append("title").text(t.title),r},"drawCircle"),nmt=o(function(e,t){let r=t.text.replace(//gi," "),n=e.append("text");n.attr("x",t.x),n.attr("y",t.y),n.attr("class","legend"),n.style("text-anchor",t.anchor),t.class!==void 0&&n.attr("class",t.class);let i=n.append("tspan");return i.attr("x",t.x+t.textMargin*2),i.text(r),n},"drawText"),Xqt=o(function(e,t){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=e.append("polygon");n.attr("points",r(t.x,t.y,50,20,7)),n.attr("class","labelBox"),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,nmt(e,t)},"drawLabel"),jqt=o(function(e,t,r){let n=e.append("g"),i=SB();i.x=t.x,i.y=t.y,i.fill=t.fill,i.width=r.width,i.height=r.height,i.class="journey-section section-type-"+t.num,i.rx=3,i.ry=3,X6(n,i),imt(r)(t.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+t.num},r,t.colour)},"drawSection"),rmt=-1,Kqt=o(function(e,t,r){let n=t.x+r.width/2,i=e.append("g");rmt++;let a=300+5*30;i.append("line").attr("id","task"+rmt).attr("x1",n).attr("y1",t.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Yqt(i,{cx:n,cy:300+(5-t.score)*30,score:t.score});let s=SB();s.x=t.x,s.y=t.y,s.fill=t.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+t.num,s.rx=3,s.ry=3,X6(i,s),imt(r)(t.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,t.colour)},"drawTask"),Qqt=o(function(e,t){X6(e,{x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,class:"rect"}).lower()},"drawBackgroundRect"),Zqt=o(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),SB=o(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),imt=function(){function e(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(e,"byText");function t(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{"use strict";ur();smt();ce();Ue();Jn();nXt=o(function(e,t,r,n){let i=pt(),a=i.leftMargin??50;V.debug("timeline",n.db);let s=i.securityLevel,l;s==="sandbox"&&(l=Gt("#i"+t));let h=(s==="sandbox"?Gt(l.nodes()[0].contentDocument.body):Gt("body")).select("#"+t);h.append("g");let f=n.db.getTasks(),d=n.db.getCommonDb().getDiagramTitle();V.debug("task",f),Ef.initGraphics(h);let p=n.db.getSections();V.debug("sections",p);let m=0,g=0,y=0,v=0,x=50+a,b=50;v=50;let w=0,S=!0;p.forEach(function(L){let M={number:w,descr:L,section:w,width:150,padding:20,maxHeight:m},N=Ef.getVirtualNodeHeight(h,M,i);V.debug("sectionHeight before draw",N),m=Math.max(m,N+20)});let T=0,E=0;V.debug("tasks.length",f.length);for(let[L,M]of f.entries()){let N={number:L,descr:M,section:M.section,width:150,padding:20,maxHeight:g},k=Ef.getVirtualNodeHeight(h,N,i);V.debug("taskHeight before draw",k),g=Math.max(g,k+20),T=Math.max(T,M.events.length);let I=0;for(let C of M.events){let O={descr:C,section:M.section,number:M.section,width:150,padding:20,maxHeight:50};I+=Ef.getVirtualNodeHeight(h,O,i)}E=Math.max(E,I)}V.debug("maxSectionHeight before draw",m),V.debug("maxTaskHeight before draw",g),p&&p.length>0?p.forEach(L=>{let M=f.filter(C=>C.section===L),N={number:w,descr:L,section:w,width:200*Math.max(M.length,1)-50,padding:20,maxHeight:m};V.debug("sectionNode",N);let k=h.append("g"),I=Ef.drawNode(k,N,w,i);V.debug("sectionNode output",I),k.attr("transform",`translate(${x}, ${v})`),b+=m+50,M.length>0&&omt(h,M,w,x,b,g,i,T,E,m,!1),x+=200*Math.max(M.length,1),b=v,w++}):(S=!1,omt(h,f,w,x,b,g,i,T,E,m,!0));let _=h.node().getBBox();V.debug("bounds",_),d&&h.append("text").text(d).attr("x",_.width/2-a).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),y=S?m+g+150:g+100,h.append("g").attr("class","lineWrapper").append("line").attr("x1",a).attr("y1",y).attr("x2",_.width+3*a).attr("y2",y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),No(void 0,h,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),omt=o(function(e,t,r,n,i,a,s,l,u,h,f){for(let d of t){let p={descr:d.task,section:r,number:r,width:150,padding:20,maxHeight:a};V.debug("taskNode",p);let m=e.append("g").attr("class","taskWrapper"),y=Ef.drawNode(m,p,r,s).height;if(V.debug("taskHeight after draw",y),m.attr("transform",`translate(${n}, ${i})`),a=Math.max(a,y),d.events){let v=e.append("g").attr("class","lineWrapper"),x=a;i+=100,x=x+iXt(e,d.events,r,n,i,s),i-=100,v.append("line").attr("x1",n+190/2).attr("y1",i+a).attr("x2",n+190/2).attr("y2",i+a+(f?a:h)+u+120).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}n=n+200,f&&!s.timeline?.disableMulticolor&&r++}i=i-10},"drawTasks"),iXt=o(function(e,t,r,n,i,a){let s=0,l=i;i=i+100;for(let u of t){let h={descr:u,section:r,number:r,width:150,padding:20,maxHeight:50};V.debug("eventNode",h);let f=e.append("g").attr("class","eventWrapper"),p=Ef.drawNode(f,h,r,a).height;s=s+p,f.attr("transform",`translate(${n}, ${i})`),i=i+10+p}return i=l,s},"drawEvents"),lmt={setConf:o(()=>{},"setConf"),draw:nXt}});var aXt,sXt,umt,hmt=R(()=>{"use strict";ul();aXt=o(e=>{let t="";for(let r=0;r` .edge { stroke-width: 3; } ${aXt(e)} .section-root rect, .section-root path, .section-root circle { fill: ${e.git0}; } .section-root text { fill: ${e.gitBranchLabel0}; } .icon-container { height:100%; display: flex; justify-content: center; align-items: center; } .edge { fill: none; } .eventWrapper { filter: brightness(120%); } `,"getStyles"),umt=sXt});var fmt={};xr(fmt,{diagram:()=>oXt});var oXt,dmt=R(()=>{"use strict";Hpt();emt();cmt();hmt();oXt={db:CB,renderer:lmt,parser:Upt,styles:umt}});var AB,gmt,ymt=R(()=>{"use strict";AB=function(){var e=o(function(S,T,E,_){for(E=E||{},_=S.length;_--;E[S[_]]=T);return E},"o"),t=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,6,13,15,16,19,22],g=[1,33],y=[1,34],v=[1,6,7,11,13,15,16,19,22],x={trace:o(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:o(function(T,E,_,A,L,M,N){var k=M.length-1;switch(L){case 6:case 7:return A;case 8:A.getLogger().trace("Stop NL ");break;case 9:A.getLogger().trace("Stop EOF ");break;case 11:A.getLogger().trace("Stop NL2 ");break;case 12:A.getLogger().trace("Stop EOF2 ");break;case 15:A.getLogger().info("Node: ",M[k].id),A.addNode(M[k-1].length,M[k].id,M[k].descr,M[k].type);break;case 16:A.getLogger().trace("Icon: ",M[k]),A.decorateNode({icon:M[k]});break;case 17:case 21:A.decorateNode({class:M[k]});break;case 18:A.getLogger().trace("SPACELIST");break;case 19:A.getLogger().trace("Node: ",M[k].id),A.addNode(0,M[k].id,M[k].descr,M[k].type);break;case 20:A.decorateNode({icon:M[k]});break;case 25:A.getLogger().trace("node found ..",M[k-2]),this.$={id:M[k-1],descr:M[k-1],type:A.getType(M[k-2],M[k])};break;case 26:this.$={id:M[k],descr:M[k],type:A.nodeType.DEFAULT};break;case 27:A.getLogger().trace("node found ..",M[k-3]),this.$={id:M[k-3],descr:M[k-1],type:A.getType(M[k-2],M[k])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:t},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:t},{6:r,7:[1,10],9:9,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},e(u,[2,3]),{1:[2,2]},e(u,[2,4]),e(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:r,9:22,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:h,7:f,10:23,11:d},e(p,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:s,22:l}),e(p,[2,18]),e(p,[2,19]),e(p,[2,20]),e(p,[2,21]),e(p,[2,23]),e(p,[2,24]),e(p,[2,26],{19:[1,30]}),{20:[1,31]},{6:h,7:f,10:32,11:d},{1:[2,7],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},e(m,[2,14],{7:g,11:y}),e(v,[2,8]),e(v,[2,9]),e(v,[2,10]),e(p,[2,15]),e(p,[2,16]),e(p,[2,17]),{20:[1,35]},{21:[1,36]},e(m,[2,13],{7:g,11:y}),e(v,[2,11]),e(v,[2,12]),{21:[1,37]},e(p,[2,25]),e(p,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(T,E){if(E.recoverable)this.trace(T);else{var _=new Error(T);throw _.hash=E,_}},"parseError"),parse:o(function(T){var E=this,_=[0],A=[],L=[null],M=[],N=this.table,k="",I=0,C=0,O=0,D=2,P=1,F=M.slice.call(arguments,1),B=Object.create(this.lexer),G={yy:{}};for(var z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,z)&&(G.yy[z]=this.yy[z]);B.setInput(T,G.yy),G.yy.lexer=B,G.yy.parser=this,typeof B.yylloc>"u"&&(B.yylloc={});var W=B.yylloc;M.push(W);var Q=B.options&&B.options.ranges;typeof G.yy.parseError=="function"?this.parseError=G.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function j(wt){_.length=_.length-2*wt,L.length=L.length-wt,M.length=M.length-wt}o(j,"popStack");function at(){var wt;return wt=A.pop()||B.lex()||P,typeof wt!="number"&&(wt instanceof Array&&(A=wt,wt=A.pop()),wt=E.symbols_[wt]||wt),wt}o(at,"lex");for(var X,J,Z,H,q,K,ot={},ct,ut,et,Mt;;){if(Z=_[_.length-1],this.defaultActions[Z]?H=this.defaultActions[Z]:((X===null||typeof X>"u")&&(X=at()),H=N[Z]&&N[Z][X]),typeof H>"u"||!H.length||!H[0]){var it="";Mt=[];for(ct in N[Z])this.terminals_[ct]&&ct>D&&Mt.push("'"+this.terminals_[ct]+"'");B.showPosition?it="Parse error on line "+(I+1)+`: `+B.showPosition()+` Expecting `+Mt.join(", ")+", got '"+(this.terminals_[X]||X)+"'":it="Parse error on line "+(I+1)+": Unexpected "+(X==P?"end of input":"'"+(this.terminals_[X]||X)+"'"),this.parseError(it,{text:B.match,token:this.terminals_[X]||X,line:B.yylineno,loc:W,expected:Mt})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Z+", token: "+X);switch(H[0]){case 1:_.push(X),L.push(B.yytext),M.push(B.yylloc),_.push(H[1]),X=null,J?(X=J,J=null):(C=B.yyleng,k=B.yytext,I=B.yylineno,W=B.yylloc,O>0&&O--);break;case 2:if(ut=this.productions_[H[1]][1],ot.$=L[L.length-ut],ot._$={first_line:M[M.length-(ut||1)].first_line,last_line:M[M.length-1].last_line,first_column:M[M.length-(ut||1)].first_column,last_column:M[M.length-1].last_column},Q&&(ot._$.range=[M[M.length-(ut||1)].range[0],M[M.length-1].range[1]]),K=this.performAction.apply(ot,[k,C,I,G.yy,H[1],L,M].concat(F)),typeof K<"u")return K;ut&&(_=_.slice(0,-1*ut*2),L=L.slice(0,-1*ut),M=M.slice(0,-1*ut)),_.push(this.productions_[H[1]][0]),L.push(ot.$),M.push(ot._$),et=N[_[_.length-2]][_[_.length-1]],_.push(et);break;case 3:return!0}}return!0},"parse")},b=function(){var S={EOF:1,parseError:o(function(E,_){if(this.yy.parser)this.yy.parser.parseError(E,_);else throw new Error(E)},"parseError"),setInput:o(function(T,E){return this.yy=E||this.yy||{},this._input=T,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var T=this._input[0];this.yytext+=T,this.yyleng++,this.offset++,this.match+=T,this.matched+=T;var E=T.match(/(?:\r\n?|\n).*/g);return E?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),T},"input"),unput:o(function(T){var E=T.length,_=T.split(/(?:\r\n?|\n)/g);this._input=T+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var A=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),_.length-1&&(this.yylineno-=_.length-1);var L=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:_?(_.length===A.length?this.yylloc.first_column:0)+A[A.length-_.length].length-_[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[L[0],L[0]+this.yyleng-E]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(T){this.unput(this.match.slice(T))},"less"),pastInput:o(function(){var T=this.matched.substr(0,this.matched.length-this.match.length);return(T.length>20?"...":"")+T.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var T=this.match;return T.length<20&&(T+=this._input.substr(0,20-T.length)),(T.substr(0,20)+(T.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var T=this.pastInput(),E=new Array(T.length+1).join("-");return T+this.upcomingInput()+` `+E+"^"},"showPosition"),test_match:o(function(T,E){var _,A,L;if(this.options.backtrack_lexer&&(L={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&&(L.yylloc.range=this.yylloc.range.slice(0))),A=T[0].match(/(?:\r\n?|\n).*/g),A&&(this.yylineno+=A.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:A?A[A.length-1].length-A[A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+T[0].length},this.yytext+=T[0],this.match+=T[0],this.matches=T,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(T[0].length),this.matched+=T[0],_=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),_)return _;if(this._backtrack){for(var M in L)this[M]=L[M];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var T,E,_,A;this._more||(this.yytext="",this.match="");for(var L=this._currentRules(),M=0;ME[0].length)){if(E=_,A=M,this.options.backtrack_lexer){if(T=this.test_match(_,L[M]),T!==!1)return T;if(this._backtrack){E=!1;continue}else return!1}else if(!this.options.flex)break}return E?(T=this.test_match(E,L[A]),T!==!1?T:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var E=this.next();return E||this.lex()},"lex"),begin:o(function(E){this.conditionStack.push(E)},"begin"),popState:o(function(){var E=this.conditionStack.length-1;return E>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(E){return E=this.conditionStack.length-1-Math.abs(E||0),E>=0?this.conditionStack[E]:"INITIAL"},"topState"),pushState:o(function(E){this.begin(E)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(E,_,A,L){var M=L;switch(A){case 0:return E.getLogger().trace("Found comment",_.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:E.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return E.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:E.getLogger().trace("end icon"),this.popState();break;case 10:return E.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return E.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return E.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return E.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:E.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return E.getLogger().trace("description:",_.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),E.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),E.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),E.getLogger().trace("node end ...",_.yytext),"NODE_DEND";break;case 30:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),E.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),E.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return E.getLogger().trace("Long description:",_.yytext),20;break;case 36:return E.getLogger().trace("Long description:",_.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 S}();x.lexer=b;function w(){this.yy={}}return o(w,"Parser"),w.prototype=x,x.Parser=w,new w}();AB.parser=AB;gmt=AB});var Yl,vmt,_B,hXt,fXt,dXt,pXt,Yi,mXt,gXt,yXt,vXt,xXt,bXt,wXt,xmt,bmt=R(()=>{"use strict";Ue();hr();ce();hl();Yl=[],vmt=0,_B={},hXt=o(()=>{Yl=[],vmt=0,_B={}},"clear"),fXt=o(function(e){for(let t=Yl.length-1;t>=0;t--)if(Yl[t].levelYl.length>0?Yl[0]:null,"getMindmap"),pXt=o((e,t,r,n)=>{V.info("addNode",e,t,r,n);let i=pt(),a=i.mindmap?.padding??Er.mindmap.padding;switch(n){case Yi.ROUNDED_RECT:case Yi.RECT:case Yi.HEXAGON:a*=2}let s={id:vmt++,nodeId:Zr(t,i),level:e,descr:Zr(r,i),type:n,children:[],width:i.mindmap?.maxNodeWidth??Er.mindmap.maxNodeWidth,padding:a},l=fXt(e);if(l)l.children.push(s),Yl.push(s);else if(Yl.length===0)Yl.push(s);else throw new Error('There can be only one root. No parent could be found for ("'+s.descr+'")')},"addNode"),Yi={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},mXt=o((e,t)=>{switch(V.debug("In get type",e,t),e){case"[":return Yi.RECT;case"(":return t===")"?Yi.ROUNDED_RECT:Yi.CLOUD;case"((":return Yi.CIRCLE;case")":return Yi.CLOUD;case"))":return Yi.BANG;case"{{":return Yi.HEXAGON;default:return Yi.DEFAULT}},"getType"),gXt=o((e,t)=>{_B[e]=t},"setElementForId"),yXt=o(e=>{if(!e)return;let t=pt(),r=Yl[Yl.length-1];e.icon&&(r.icon=Zr(e.icon,t)),e.class&&(r.class=Zr(e.class,t))},"decorateNode"),vXt=o(e=>{switch(e){case Yi.DEFAULT:return"no-border";case Yi.RECT:return"rect";case Yi.ROUNDED_RECT:return"rounded-rect";case Yi.CIRCLE:return"circle";case Yi.CLOUD:return"cloud";case Yi.BANG:return"bang";case Yi.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),xXt=o(()=>V,"getLogger"),bXt=o(e=>_B[e],"getElementById"),wXt={clear:hXt,addNode:pXt,getMindmap:dXt,nodeType:Yi,getType:mXt,setElementForId:gXt,decorateNode:yXt,type2Str:vXt,getLogger:xXt,getElementById:bXt},xmt=wXt});function ji(e){"@babel/helpers - typeof";return ji=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ji(e)}function iF(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function wmt(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r=e.length?{done:!0}:{done:!1,value:e[n++]}},"n"),e:o(function(u){throw u},"e"),f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,s=!1,l;return{s:o(function(){r=r.call(e)},"s"),n:o(function(){var u=r.next();return a=u.done,u},"n"),e:o(function(u){s=!0,l=u},"e"),f:o(function(){try{!a&&r.return!=null&&r.return()}finally{if(s)throw l}},"f")}}function XXt(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function jXt(e,t){return t={exports:{}},e(t,t.exports),t.exports}function rjt(e){for(var t=e.length;t--&&ejt.test(e.charAt(t)););return t}function ajt(e){return e&&e.slice(0,njt(e)+1).replace(ijt,"")}function ujt(e){var t=ljt.call(e,eb),r=e[eb];try{e[eb]=void 0;var n=!0}catch{}var i=cjt.call(e);return n&&(t?e[eb]=r:delete e[eb]),i}function pjt(e){return djt.call(e)}function vjt(e){return e==null?e===void 0?yjt:gjt:Cmt&&Cmt in Object(e)?hjt(e):mjt(e)}function xjt(e){return e!=null&&typeof e=="object"}function Tjt(e){return typeof e=="symbol"||bjt(e)&&Ygt(e)==wjt}function Ajt(e){if(typeof e=="number")return e;if(Sb(e))return Smt;if(j0(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=j0(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=sjt(e);var r=Ejt.test(e);return r||Cjt.test(e)?Sjt(e.slice(2),r?2:8):kjt.test(e)?Smt:+e}function Rjt(e,t,r){var n,i,a,s,l,u,h=0,f=!1,d=!1,p=!0;if(typeof e!="function")throw new TypeError(_jt);t=Amt(t)||0,j0(r)&&(f=!!r.leading,d="maxWait"in r,a=d?Ljt(Amt(r.maxWait)||0,t):a,p="trailing"in r?!!r.trailing:p);function m(E){var _=n,A=i;return n=i=void 0,h=E,s=e.apply(A,_),s}o(m,"invokeFunc");function g(E){return h=E,l=setTimeout(x,t),f?m(E):s}o(g,"leadingEdge");function y(E){var _=E-u,A=E-h,L=t-_;return d?Djt(L,a-A):L}o(y,"remainingWait");function v(E){var _=E-u,A=E-h;return u===void 0||_>=t||_<0||d&&A>=a}o(v,"shouldInvoke");function x(){var E=LB();if(v(E))return b(E);l=setTimeout(x,y(E))}o(x,"timerExpired");function b(E){return l=void 0,p&&n?m(E):(n=i=void 0,s)}o(b,"trailingEdge");function w(){l!==void 0&&clearTimeout(l),h=0,n=u=i=l=void 0}o(w,"cancel");function S(){return l===void 0?s:b(LB())}o(S,"flush");function T(){var E=LB(),_=v(E);if(n=arguments,i=this,u=E,_){if(l===void 0)return g(u);if(d)return clearTimeout(l),l=setTimeout(x,t),m(u)}return l===void 0&&(l=setTimeout(x,t)),s}return o(T,"debounced"),T.cancel=w,T.flush=S,T}function NC(e,t,r,n,i,a){var s;return ni(e)?s=e:s=k1[e]||k1.euclidean,t===0&&ni(e)?s(i,a):s(t,r,n,i,a)}function kQt(e,t){if(MC(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||Sb(e)?!0:TQt.test(e)||!wQt.test(e)||t!=null&&e in Object(t)}function LQt(e){if(!j0(e))return!1;var t=Ygt(e);return t==SQt||t==AQt||t==CQt||t==_Qt}function NQt(e){return!!qmt&&qmt in e}function PQt(e){if(e!=null){try{return OQt.call(e)}catch{}try{return e+""}catch{}}return""}function WQt(e){if(!j0(e)||MQt(e))return!1;var t=DQt(e)?HQt:zQt;return t.test(BQt(e))}function qQt(e,t){return e?.[t]}function jQt(e,t){var r=XQt(e,t);return YQt(r)?r:void 0}function QQt(){this.__data__=xb?xb(null):{},this.size=0}function JQt(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}function iZt(e){var t=this.__data__;if(xb){var r=t[e];return r===eZt?void 0:r}return nZt.call(t,e)?t[e]:void 0}function lZt(e){var t=this.__data__;return xb?t[e]!==void 0:oZt.call(t,e)}function hZt(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=xb&&t===void 0?uZt:t,this}function A1(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t-1}function CZt(e,t){var r=this.__data__,n=IC(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function _1(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t-1&&e%1==0&&e0;){var f=i.shift();t(f),a.add(f.id()),l&&n(i,a,f)}return e}function C1t(e,t,r){if(r.isParent())for(var n=r._private.children,i=0;i0&&arguments[0]!==void 0?arguments[0]:cte,t=arguments.length>1?arguments[1]:void 0,r=0;r0?k=C:N=C;while(Math.abs(I)>s&&++O=a?b(M,O):D===0?O:S(M,N,N+h)}o(T,"getTForX");var E=!1;function _(){E=!0,(e!==t||r!==n)&&w()}o(_,"precompute");var A=o(function(N){return E||_(),e===t&&r===n?N:N===0?0:N===1?1:v(T(N),t,n)},"f");A.getControlPoints=function(){return[{x:e,y:t},{x:r,y:n}]};var L="generateBezier("+[e,t,r,n]+")";return A.toString=function(){return L},A}function fgt(e,t,r,n,i){if(n===1||t===r)return r;var a=i(t,r,n);return e==null||((e.roundValue||e.color)&&(a=Math.round(a)),e.min!==void 0&&(a=Math.max(a,e.min)),e.max!==void 0&&(a=Math.min(a,e.max))),a}function dgt(e,t){return e.pfValue!=null||e.value!=null?e.pfValue!=null&&(t==null||t.type.units!=="%")?e.pfValue:e.value:e}function h1(e,t,r,n,i){var a=i!=null?i.type:null;r<0?r=0:r>1&&(r=1);var s=dgt(e,i),l=dgt(t,i);if(be(s)&&be(l))return fgt(a,s,l,r,n);if(kn(s)&&kn(l)){for(var u=[],h=0;h0?(m==="spring"&&g.push(s.duration),s.easingImpl=hC[m].apply(null,g)):s.easingImpl=hC[m]}var y=s.easingImpl,v;if(s.duration===0?v=1:v=(r-u)/s.duration,s.applying&&(v=s.progress),v<0?v=0:v>1&&(v=1),s.delay==null){var x=s.startPosition,b=s.position;if(b&&i&&!e.locked()){var w={};ab(x.x,b.x)&&(w.x=h1(x.x,b.x,v,y)),ab(x.y,b.y)&&(w.y=h1(x.y,b.y,v,y)),e.position(w)}var S=s.startPan,T=s.pan,E=a.pan,_=T!=null&&n;_&&(ab(S.x,T.x)&&(E.x=h1(S.x,T.x,v,y)),ab(S.y,T.y)&&(E.y=h1(S.y,T.y,v,y)),e.emit("pan"));var A=s.startZoom,L=s.zoom,M=L!=null&&n;M&&(ab(A,L)&&(a.zoom=yb(a.minZoom,h1(A,L,v,y),a.maxZoom)),e.emit("zoom")),(_||M)&&e.emit("viewport");var N=s.style;if(N&&N.length>0&&i){for(var k=0;k=0;_--){var A=E[_];A()}E.splice(0,E.length)},"callbacks"),b=m.length-1;b>=0;b--){var w=m[b],S=w._private;if(S.stopped){m.splice(b,1),S.hooked=!1,S.playing=!1,S.started=!1,x(S.frames);continue}!S.playing&&!S.applying||(S.playing&&S.applying&&(S.applying=!1),S.started||kte(f,w,e),Tte(f,w,e,d),S.applying&&(S.applying=!1),x(S.frames),S.step!=null&&S.step(e),w.completed()&&(m.splice(b,1),S.hooked=!1,S.playing=!1,S.started=!1,x(S.completes)),y=!0)}return!d&&m.length===0&&g.length===0&&n.push(f),y}o(i,"stepOne");for(var a=!1,s=0;s0?t.notify("draw",r):t.notify("draw")),r.unmerge(n),t.emit("step")}function V1t(e){this.options=ir({},Rte,Nte,e)}function U1t(e){this.options=ir({},Mte,e)}function H1t(e){this.options=ir({},Ite,e)}function VC(e){this.options=ir({},Ote,e),this.options.layout=this;var t=this.options.eles.nodes(),r=this.options.eles.edges(),n=r.filter(function(i){var a=i.source().data("id"),s=i.target().data("id"),l=t.some(function(h){return h.data("id")===a}),u=t.some(function(h){return h.data("id")===s});return!l||!u});this.options.eles=this.options.eles.not(n)}function Y1t(e){this.options=ir({},Zte,e)}function kF(e){this.options=ir({},Jte,e)}function q1t(e){this.options=ir({},tee,e)}function X1t(e){this.options=ir({},eee,e)}function j1t(e){this.options=e,this.notifications=0}function Z1t(e,t){t.radius===0?e.lineTo(t.cx,t.cy):e.arc(t.cx,t.cy,t.radius,t.startAngle,t.endAngle,t.counterClockwise)}function CF(e,t,r,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;return n===0||t.radius===0?{cx:t.x,cy:t.y,radius:0,startX:t.x,startY:t.y,stopX:t.x,stopY:t.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(iee(e,t,r,n,i),{cx:KB,cy:QB,radius:Y0,startX:K1t,startY:Q1t,stopX:ZB,stopY:JB,startAngle:jc.ang+Math.PI/2*q0,endAngle:nl.ang-Math.PI/2*q0,counterClockwise:pC})}function J1t(e){var t=[];if(e!=null){for(var r=0;r5&&arguments[5]!==void 0?arguments[5]:5,s=arguments.length>6?arguments[6]:void 0;e.beginPath(),e.moveTo(t+a,r),e.lineTo(t+n-a,r),e.quadraticCurveTo(t+n,r,t+n,r+a),e.lineTo(t+n,r+i-a),e.quadraticCurveTo(t+n,r+i,t+n-a,r+i),e.lineTo(t+a,r+i),e.quadraticCurveTo(t,r+i,t,r+i-a),e.lineTo(t,r+a),e.quadraticCurveTo(t,r,t+a,r),e.closePath(),s?e.stroke():e.fill()}function Yee(e,t){for(var r=atob(e),n=new ArrayBuffer(r.length),i=new Uint8Array(n),a=0;a{"use strict";o(ji,"_typeof");o(iF,"_classCallCheck");o(wmt,"_defineProperties");o(aF,"_createClass");o(Ogt,"_defineProperty$1");o(ql,"_slicedToArray");o(TXt,"_arrayWithHoles");o(kXt,"_iterableToArrayLimit");o(Pgt,"_unsupportedIterableToArray");o(Tmt,"_arrayLikeToArray");o(EXt,"_nonIterableRest");o(Bgt,"_createForOfIteratorHelper");qi=typeof window>"u"?null:window,kmt=qi?qi.navigator:null;qi&&qi.document;CXt=ji(""),Fgt=ji({}),SXt=ji(function(){}),AXt=typeof HTMLElement>"u"?"undefined":ji(HTMLElement),Eb=o(function(t){return t&&t.instanceString&&ni(t.instanceString)?t.instanceString():null},"instanceStr"),Ke=o(function(t){return t!=null&&ji(t)==CXt},"string"),ni=o(function(t){return t!=null&&ji(t)===SXt},"fn"),kn=o(function(t){return!wo(t)&&(Array.isArray?Array.isArray(t):t!=null&&t instanceof Array)},"array"),Ur=o(function(t){return t!=null&&ji(t)===Fgt&&!kn(t)&&t.constructor===Object},"plainObject"),_Xt=o(function(t){return t!=null&&ji(t)===Fgt},"object"),be=o(function(t){return t!=null&&ji(t)===ji(1)&&!isNaN(t)},"number"),LXt=o(function(t){return be(t)&&Math.floor(t)===t},"integer"),gC=o(function(t){if(AXt!=="undefined")return t!=null&&t instanceof HTMLElement},"htmlElement"),wo=o(function(t){return Cb(t)||zgt(t)},"elementOrCollection"),Cb=o(function(t){return Eb(t)==="collection"&&t._private.single},"element"),zgt=o(function(t){return Eb(t)==="collection"&&!t._private.single},"collection"),sF=o(function(t){return Eb(t)==="core"},"core"),$gt=o(function(t){return Eb(t)==="stylesheet"},"stylesheet"),DXt=o(function(t){return Eb(t)==="event"},"event"),Rf=o(function(t){return t==null?!0:!!(t===""||t.match(/^\s+$/))},"emptyString"),RXt=o(function(t){return typeof HTMLElement>"u"?!1:t instanceof HTMLElement},"domElement"),NXt=o(function(t){return Ur(t)&&be(t.x1)&&be(t.x2)&&be(t.y1)&&be(t.y2)},"boundingBox"),MXt=o(function(t){return _Xt(t)&&ni(t.then)},"promise"),IXt=o(function(){return kmt&&kmt.userAgent.match(/msie|trident|edge/i)},"ms"),db=o(function(t,r){r||(r=o(function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var a=[],s=0;sr?1:0},"ascending"),GXt=o(function(t,r){return-1*Vgt(t,r)},"descending"),ir=Object.assign!=null?Object.assign.bind(Object):function(e){for(var t=arguments,r=1;r1&&(v-=1),v<1/6?g+(y-g)*6*v:v<1/2?y:v<2/3?g+(y-g)*(2/3-v)*6:g}o(f,"hue2rgb");var d=new RegExp("^"+BXt+"$").exec(t);if(d){if(n=parseInt(d[1]),n<0?n=(360- -1*n%360)%360:n>360&&(n=n%360),n/=360,i=parseFloat(d[2]),i<0||i>100||(i=i/100,a=parseFloat(d[3]),a<0||a>100)||(a=a/100,s=d[4],s!==void 0&&(s=parseFloat(s),s<0||s>1)))return;if(i===0)l=u=h=Math.round(a*255);else{var p=a<.5?a*(1+i):a+i-a*i,m=2*a-p;l=Math.round(255*f(m,p,n+1/3)),u=Math.round(255*f(m,p,n)),h=Math.round(255*f(m,p,n-1/3))}r=[l,u,h,s]}return r},"hsl2tuple"),HXt=o(function(t){var r,n=new RegExp("^"+OXt+"$").exec(t);if(n){r=[];for(var i=[],a=1;a<=3;a++){var s=n[a];if(s[s.length-1]==="%"&&(i[a]=!0),s=parseFloat(s),i[a]&&(s=s/100*255),s<0||s>255)return;r.push(Math.floor(s))}var l=i[1]||i[2]||i[3],u=i[1]&&i[2]&&i[3];if(l&&!u)return;var h=n[4];if(h!==void 0){if(h=parseFloat(h),h<0||h>1)return;r.push(h)}}return r},"rgb2tuple"),WXt=o(function(t){return qXt[t.toLowerCase()]},"colorname2tuple"),YXt=o(function(t){return(kn(t)?t:null)||WXt(t)||VXt(t)||HXt(t)||UXt(t)},"color2tuple"),qXt={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]},Ugt=o(function(t){for(var r=t.map,n=t.keys,i=n.length,a=0;a1&&arguments[1]!==void 0?arguments[1]:p1,n=r,i;i=t.next(),!i.done;)n=n*Xgt+i.value|0;return n},"hashIterableInts"),pb=o(function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p1;return r*Xgt+t|0},"hashInt"),mb=o(function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ob;return(r<<5)+r+t|0},"hashIntAlt"),Mjt=o(function(t,r){return t*2097152+r},"combineHashes"),Cf=o(function(t){return t[0]*2097152+t[1]},"combineHashesArray"),j6=o(function(t,r){return[pb(t[0],r[0]),mb(t[1],r[1])]},"hashArrays"),Ijt=o(function(t,r){var n={value:0,done:!1},i=0,a=t.length,s={next:o(function(){return i=0&&!(t[i]===r&&(t.splice(i,1),n));i--);},"removeFromArray"),uF=o(function(t){t.splice(0,t.length)},"clearArray"),Gjt=o(function(t,r){for(var n=0;n"u"?"undefined":ji(Set))!==Ujt?Set:Hjt,DC=o(function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(t===void 0||r===void 0||!sF(t)){fi("An element must have a core reference and parameters set");return}var i=r.group;if(i==null&&(r.data&&r.data.source!=null&&r.data.target!=null?i="edges":i="nodes"),i!=="nodes"&&i!=="edges"){fi("An element must be of type `nodes` or `edges`; you specified `"+i+"`");return}this.length=1,this[0]=this;var a=this._private={cy:t,single:!0,data:r.data||{},position:r.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:i,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!r.selected,selectable:r.selectable===void 0?!0:!!r.selectable,locked:!!r.locked,grabbed:!1,grabbable:r.grabbable===void 0?!0:!!r.grabbable,pannable:r.pannable===void 0?i==="edges":!!r.pannable,active:!1,classes:new C1,animation:{current:[],queue:[]},rscratch:{},scratch:r.scratch||{},edges:[],children:[],parent:r.parent&&r.parent.isNode()?r.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(a.position.x==null&&(a.position.x=0),a.position.y==null&&(a.position.y=0),r.renderedPosition){var s=r.renderedPosition,l=t.pan(),u=t.zoom();a.position={x:(s.x-l.x)/u,y:(s.y-l.y)/u}}var h=[];kn(r.classes)?h=r.classes:Ke(r.classes)&&(h=r.classes.split(/\s+/));for(var f=0,d=h.length;fb?1:0},"defaultCmp"),f=o(function(x,b,w,S,T){var E;if(w==null&&(w=0),T==null&&(T=n),w<0)throw new Error("lo must be non-negative");for(S==null&&(S=x.length);wM;0<=M?L++:L--)A.push(L);return A}.apply(this).reverse(),_=[],S=0,T=E.length;SN;0<=N?++A:--A)k.push(s(x,w));return k},"nsmallest"),y=o(function(x,b,w,S){var T,E,_;for(S==null&&(S=n),T=x[w];w>b;){if(_=w-1>>1,E=x[_],S(T,E)<0){x[w]=E,w=_;continue}break}return x[w]=T},"_siftdown"),v=o(function(x,b,w){var S,T,E,_,A;for(w==null&&(w=n),T=x.length,A=b,E=x[b],S=2*b+1;S0;){var E=b.pop(),_=v(E),A=E.id();if(p[A]=_,_!==1/0)for(var L=E.neighborhood().intersect(g),M=0;M0)for(F.unshift(P);d[G];){var z=d[G];F.unshift(z.edge),F.unshift(z.node),B=z.node,G=B.id()}return l.spawn(F)},"pathTo")}},"dijkstra")},Xjt={kruskal:o(function(t){t=t||function(w){return 1};for(var r=this.byGroup(),n=r.nodes,i=r.edges,a=n.length,s=new Array(a),l=n,u=o(function(S){for(var T=0;T0;){if(T(),_++,S===f){for(var A=[],L=a,M=f,N=x[M];A.unshift(L),N!=null&&A.unshift(N),L=v[M],L!=null;)M=L.id(),N=x[M];return{found:!0,distance:d[S],path:this.spawn(A),steps:_}}m[S]=!0;for(var k=w._private.edges,I=0;IN&&(g[M]=N,b[M]=L,w[M]=T),!a){var k=L*f+A;!a&&g[k]>N&&(g[k]=N,b[k]=A,w[k]=T)}}}for(var I=0;I1&&arguments[1]!==void 0?arguments[1]:s,St=w(wt),Vt=[],Pt=St;;){if(Pt==null)return r.spawn();var _t=b(Pt),dt=_t.edge,Y=_t.pred;if(Vt.unshift(Pt[0]),Pt.same(Ot)&&Vt.length>0)break;dt!=null&&Vt.unshift(dt),Pt=Y}return u.spawn(Vt)},"pathTo"),E=0;E=0;f--){var d=h[f],p=d[1],m=d[2];(r[p]===l&&r[m]===u||r[p]===u&&r[m]===l)&&h.splice(f,1)}for(var g=0;gi;){var a=Math.floor(Math.random()*r.length);r=rKt(a,t,r),n--}return r},"contractUntil"),nKt={kargerStein:o(function(){var t=this,r=this.byGroup(),n=r.nodes,i=r.edges;i.unmergeBy(function(F){return F.isLoop()});var a=n.length,s=i.length,l=Math.ceil(Math.pow(Math.log(a)/Math.LN2,2)),u=Math.floor(a/eKt);if(a<2){fi("At least 2 nodes are required for Karger-Stein algorithm");return}for(var h=[],f=0;f1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:t.length,i=1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:t.length,i=-1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:t.length,i=0,a=0,s=r;s1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:t.length,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;i?t=t.slice(r,n):(n0&&t.splice(0,r));for(var l=0,u=t.length-1;u>=0;u--){var h=t[u];s?isFinite(h)||(t[u]=-1/0,l++):t.splice(u,1)}a&&t.sort(function(p,m){return p-m});var f=t.length,d=Math.floor(f/2);return f%2!==0?t[d+1+l]:(t[d-1+l]+t[d+l])/2},"median"),cKt=o(function(t){return Math.PI*t/180},"deg2rad"),K6=o(function(t,r){return Math.atan2(r,t)-Math.PI/2},"getAngleFromDisp"),hF=Math.log2||function(e){return Math.log(e)/Math.log(2)},r1t=o(function(t){return t>0?1:t<0?-1:0},"signum"),Q0=o(function(t,r){return Math.sqrt(H0(t,r))},"dist"),H0=o(function(t,r){var n=r.x-t.x,i=r.y-t.y;return n*n+i*i},"sqdist"),uKt=o(function(t){for(var r=t.length,n=0,i=0;i=t.x1&&t.y2>=t.y1)return{x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y2,w:t.x2-t.x1,h:t.y2-t.y1};if(t.w!=null&&t.h!=null&&t.w>=0&&t.h>=0)return{x1:t.x1,y1:t.y1,x2:t.x1+t.w,y2:t.y1+t.h,w:t.w,h:t.h}}},"makeBoundingBox"),fKt=o(function(t){return{x1:t.x1,x2:t.x2,w:t.w,y1:t.y1,y2:t.y2,h:t.h}},"copyBoundingBox"),dKt=o(function(t){t.x1=1/0,t.y1=1/0,t.x2=-1/0,t.y2=-1/0,t.w=0,t.h=0},"clearBoundingBox"),pKt=o(function(t,r,n){return{x1:t.x1+r,x2:t.x2+r,y1:t.y1+n,y2:t.y2+n,w:t.w,h:t.h}},"shiftBoundingBox"),n1t=o(function(t,r){t.x1=Math.min(t.x1,r.x1),t.x2=Math.max(t.x2,r.x2),t.w=t.x2-t.x1,t.y1=Math.min(t.y1,r.y1),t.y2=Math.max(t.y2,r.y2),t.h=t.y2-t.y1},"updateBoundingBox"),mKt=o(function(t,r,n){t.x1=Math.min(t.x1,r),t.x2=Math.max(t.x2,r),t.w=t.x2-t.x1,t.y1=Math.min(t.y1,n),t.y2=Math.max(t.y2,n),t.h=t.y2-t.y1},"expandBoundingBoxByPoint"),oC=o(function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return t.x1-=r,t.x2+=r,t.y1-=r,t.y2+=r,t.w=t.x2-t.x1,t.h=t.y2-t.y1,t},"expandBoundingBox"),lC=o(function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],n,i,a,s;if(r.length===1)n=i=a=s=r[0];else if(r.length===2)n=a=r[0],s=i=r[1];else if(r.length===4){var l=ql(r,4);n=l[0],i=l[1],a=l[2],s=l[3]}return t.x1-=s,t.x2+=i,t.y1-=n,t.y2+=a,t.w=t.x2-t.x1,t.h=t.y2-t.y1,t},"expandBoundingBoxSides"),Rmt=o(function(t,r){t.x1=r.x1,t.y1=r.y1,t.x2=r.x2,t.y2=r.y2,t.w=t.x2-t.x1,t.h=t.y2-t.y1},"assignBoundingBox"),fF=o(function(t,r){return!(t.x1>r.x2||r.x1>t.x2||t.x2r.y2||r.y1>t.y2)},"boundingBoxesIntersect"),T1=o(function(t,r,n){return t.x1<=r&&r<=t.x2&&t.y1<=n&&n<=t.y2},"inBoundingBox"),gKt=o(function(t,r){return T1(t,r.x,r.y)},"pointInBoundingBox"),i1t=o(function(t,r){return T1(t,r.x1,r.y1)&&T1(t,r.x2,r.y2)},"boundingBoxInBoundingBox"),a1t=o(function(t,r,n,i,a,s,l){var u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",h=u==="auto"?Z0(a,s):u,f=a/2,d=s/2;h=Math.min(h,f,d);var p=h!==f,m=h!==d,g;if(p){var y=n-f+h-l,v=i-d-l,x=n+f-h+l,b=v;if(g=_f(t,r,n,i,y,v,x,b,!1),g.length>0)return g}if(m){var w=n+f+l,S=i-d+h-l,T=w,E=i+d-h+l;if(g=_f(t,r,n,i,w,S,T,E,!1),g.length>0)return g}if(p){var _=n-f+h-l,A=i+d+l,L=n+f-h+l,M=A;if(g=_f(t,r,n,i,_,A,L,M,!1),g.length>0)return g}if(m){var N=n-f-l,k=i-d+h-l,I=N,C=i+d-h+l;if(g=_f(t,r,n,i,N,k,I,C,!1),g.length>0)return g}var O;{var D=n-f+h,P=i-d+h;if(O=lb(t,r,n,i,D,P,h+l),O.length>0&&O[0]<=D&&O[1]<=P)return[O[0],O[1]]}{var F=n+f-h,B=i-d+h;if(O=lb(t,r,n,i,F,B,h+l),O.length>0&&O[0]>=F&&O[1]<=B)return[O[0],O[1]]}{var G=n+f-h,z=i+d-h;if(O=lb(t,r,n,i,G,z,h+l),O.length>0&&O[0]>=G&&O[1]>=z)return[O[0],O[1]]}{var W=n-f+h,Q=i+d-h;if(O=lb(t,r,n,i,W,Q,h+l),O.length>0&&O[0]<=W&&O[1]>=Q)return[O[0],O[1]]}return[]},"roundRectangleIntersectLine"),yKt=o(function(t,r,n,i,a,s,l){var u=l,h=Math.min(n,a),f=Math.max(n,a),d=Math.min(i,s),p=Math.max(i,s);return h-u<=t&&t<=f+u&&d-u<=r&&r<=p+u},"inLineVicinity"),vKt=o(function(t,r,n,i,a,s,l,u,h){var f={x1:Math.min(n,l,a)-h,x2:Math.max(n,l,a)+h,y1:Math.min(i,u,s)-h,y2:Math.max(i,u,s)+h};return!(tf.x2||rf.y2)},"inBezierVicinity"),xKt=o(function(t,r,n,i){n-=i;var a=r*r-4*t*n;if(a<0)return[];var s=Math.sqrt(a),l=2*t,u=(-r+s)/l,h=(-r-s)/l;return[u,h]},"solveQuadratic"),bKt=o(function(t,r,n,i,a){var s=1e-5;t===0&&(t=s),r/=t,n/=t,i/=t;var l,u,h,f,d,p,m,g;if(u=(3*n-r*r)/9,h=-(27*i)+r*(9*n-2*(r*r)),h/=54,l=u*u*u+h*h,a[1]=0,m=r/3,l>0){d=h+Math.sqrt(l),d=d<0?-Math.pow(-d,1/3):Math.pow(d,1/3),p=h-Math.sqrt(l),p=p<0?-Math.pow(-p,1/3):Math.pow(p,1/3),a[0]=-m+d+p,m+=(d+p)/2,a[4]=a[2]=-m,m=Math.sqrt(3)*(-p+d)/2,a[3]=m,a[5]=-m;return}if(a[5]=a[3]=0,l===0){g=h<0?-Math.pow(-h,1/3):Math.pow(h,1/3),a[0]=-m+2*g,a[4]=a[2]=-(g+m);return}u=-u,f=u*u*u,f=Math.acos(h/Math.sqrt(f)),g=2*Math.sqrt(u),a[0]=-m+g*Math.cos(f/3),a[2]=-m+g*Math.cos((f+2*Math.PI)/3),a[4]=-m+g*Math.cos((f+4*Math.PI)/3)},"solveCubic"),wKt=o(function(t,r,n,i,a,s,l,u){var h=1*n*n-4*n*a+2*n*l+4*a*a-4*a*l+l*l+i*i-4*i*s+2*i*u+4*s*s-4*s*u+u*u,f=1*9*n*a-3*n*n-3*n*l-6*a*a+3*a*l+9*i*s-3*i*i-3*i*u-6*s*s+3*s*u,d=1*3*n*n-6*n*a+n*l-n*t+2*a*a+2*a*t-l*t+3*i*i-6*i*s+i*u-i*r+2*s*s+2*s*r-u*r,p=1*n*a-n*n+n*t-a*t+i*s-i*i+i*r-s*r,m=[];bKt(h,f,d,p,m);for(var g=1e-7,y=[],v=0;v<6;v+=2)Math.abs(m[v+1])=0&&m[v]<=1&&y.push(m[v]);y.push(1),y.push(0);for(var x=-1,b,w,S,T=0;T=0?Sh?(t-a)*(t-a)+(r-s)*(r-s):f-p},"sqdistToFiniteLine"),Ws=o(function(t,r,n){for(var i,a,s,l,u,h=0,f=0;f=t&&t>=s||i<=t&&t<=s)u=(t-i)/(s-i)*(l-a)+a,u>r&&h++;else continue;return h%2!==0},"pointInsidePolygonPoints"),rh=o(function(t,r,n,i,a,s,l,u,h){var f=new Array(n.length),d;u[0]!=null?(d=Math.atan(u[1]/u[0]),u[0]<0?d=d+Math.PI/2:d=-d-Math.PI/2):d=u;for(var p=Math.cos(-d),m=Math.sin(-d),g=0;g0){var v=bC(f,-h);y=xC(v)}else y=f;return Ws(t,r,y)},"pointInsidePolygon"),kKt=o(function(t,r,n,i,a,s,l,u){for(var h=new Array(n.length*2),f=0;f=0&&v<=1&&b.push(v),x>=0&&x<=1&&b.push(x),b.length===0)return[];var w=b[0]*u[0]+t,S=b[0]*u[1]+r;if(b.length>1){if(b[0]==b[1])return[w,S];var T=b[1]*u[0]+t,E=b[1]*u[1]+r;return[w,S,T,E]}else return[w,S]},"intersectLineCircle"),NB=o(function(t,r,n){return r<=t&&t<=n||n<=t&&t<=r?t:t<=r&&r<=n||n<=r&&r<=t?r:n},"midOfThree"),_f=o(function(t,r,n,i,a,s,l,u,h){var f=t-a,d=n-t,p=l-a,m=r-s,g=i-r,y=u-s,v=p*m-y*f,x=d*m-g*f,b=y*d-p*g;if(b!==0){var w=v/b,S=x/b,T=.001,E=0-T,_=1+T;return E<=w&&w<=_&&E<=S&&S<=_?[t+w*d,r+w*g]:h?[t+w*d,r+w*g]:[]}else return v===0||x===0?NB(t,n,l)===l?[l,u]:NB(t,n,a)===a?[a,s]:NB(a,l,n)===n?[n,i]:[]:[]},"finiteLinesIntersect"),vb=o(function(t,r,n,i,a,s,l,u){var h=[],f,d=new Array(n.length),p=!0;s==null&&(p=!1);var m;if(p){for(var g=0;g0){var y=bC(d,-u);m=xC(y)}else m=d}else m=n;for(var v,x,b,w,S=0;S2){for(var g=[f[0],f[1]],y=Math.pow(g[0]-t,2)+Math.pow(g[1]-r,2),v=1;vf&&(f=S)},"set"),get:o(function(w){return h[w]},"get")},p=0;p0?D=O.edgesTo(C)[0]:D=C.edgesTo(O)[0];var P=i(D);C=C.id(),A[C]>A[k]+P&&(A[C]=A[k]+P,L.nodes.indexOf(C)<0?L.push(C):L.updateItem(C),_[C]=0,E[C]=[]),A[C]==A[k]+P&&(_[C]=_[C]+_[k],E[C].push(k))}else for(var F=0;F0;){for(var W=T.pop(),Q=0;Q0&&l.push(n[u]);l.length!==0&&a.push(i.collection(l))}return a},"assign"),zKt=o(function(t,r){for(var n=0;n5&&arguments[5]!==void 0?arguments[5]:VKt,l=i,u,h,f=0;f=2?rb(t,r,n,0,Pmt,UKt):rb(t,r,n,0,Omt)},"euclidean"),squaredEuclidean:o(function(t,r,n){return rb(t,r,n,0,Pmt)},"squaredEuclidean"),manhattan:o(function(t,r,n){return rb(t,r,n,0,Omt)},"manhattan"),max:o(function(t,r,n){return rb(t,r,n,-1/0,HKt)},"max")};k1["squared-euclidean"]=k1.squaredEuclidean;k1.squaredeuclidean=k1.squaredEuclidean;o(NC,"clusteringDistance");WKt=Da({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),pF=o(function(t){return WKt(t)},"setOptions"),wC=o(function(t,r,n,i,a){var s=a!=="kMedoids",l=s?function(d){return n[d]}:function(d){return i[d](n)},u=o(function(p){return i[p](r)},"getQ"),h=n,f=r;return NC(t,i.length,l,u,h,f)},"getDist"),MB=o(function(t,r,n){for(var i=n.length,a=new Array(i),s=new Array(i),l=new Array(r),u=null,h=0;hn)return!1}return!0},"haveMatricesConverged"),XKt=o(function(t,r,n){for(var i=0;il&&(l=r[h][f],u=f);a[u].push(t[h])}for(var d=0;d=a.threshold||a.mode==="dendrogram"&&t.length===1)return!1;var g=r[s],y=r[i[s]],v;a.mode==="dendrogram"?v={left:g,right:y,key:g.key}:v={value:g.value.concat(y.value),key:g.key},t[g.index]=v,t.splice(y.index,1),r[g.key]=v;for(var x=0;xn[y.key][b.key]&&(u=n[y.key][b.key])):a.linkage==="max"?(u=n[g.key][b.key],n[g.key][b.key]0&&i.push(a);return i},"findExemplars"),Vmt=o(function(t,r,n){for(var i=[],a=0;al&&(s=h,l=r[a*t+h])}s>0&&i.push(s)}for(var f=0;fh&&(u=f,h=d)}n[a]=s[u]}return i=Vmt(t,r,n),i},"assign"),Umt=o(function(t){for(var r=this.cy(),n=this.nodes(),i=lQt(t),a={},s=0;s=N?(k=N,N=C,I=O):C>k&&(k=C);for(var D=0;D0?1:0;_[L%i.minIterations*l+W]=Q,z+=Q}if(z>0&&(L>=i.minIterations-1||L==i.maxIterations-1)){for(var j=0,at=0;at1||E>1)&&(l=!0),d[w]=[],b.outgoers().forEach(function(A){A.isEdge()&&d[w].push(A.id())})}else p[w]=[void 0,b.target().id()]}):s.forEach(function(b){var w=b.id();if(b.isNode()){var S=b.degree(!0);S%2&&(u?h?l=!0:h=w:u=w),d[w]=[],b.connectedEdges().forEach(function(T){return d[w].push(T.id())})}else p[w]=[b.source().id(),b.target().id()]});var m={found:!1,trail:void 0};if(l)return m;if(h&&u)if(a){if(f&&h!=f)return m;f=h}else{if(f&&h!=f&&u!=f)return m;f||(f=h)}else f||(f=s[0].id());var g=o(function(w){for(var S=w,T=[w],E,_,A;d[S].length;)E=d[S].shift(),_=p[E][0],A=p[E][1],S!=A?(d[A]=d[A].filter(function(L){return L!=E}),S=A):!a&&S!=_&&(d[_]=d[_].filter(function(L){return L!=E}),S=_),T.unshift(E),T.unshift(S);return T},"walk"),y=[],v=[];for(v=g(f);v.length!=1;)d[v[0]].length==0?(y.unshift(s.getElementById(v.shift())),y.unshift(s.getElementById(v.shift()))):v=g(v.shift()).concat(v);y.unshift(s.getElementById(v.shift()));for(var x in d)if(d[x].length)return m;return m.found=!0,m.trail=this.spawn(y,!0),m},"hierholzer")},J6=o(function(){var t=this,r={},n=0,i=0,a=[],s=[],l={},u=o(function(p,m){for(var g=s.length-1,y=[],v=t.spawn();s[g].x!=p||s[g].y!=m;)y.push(s.pop().edge),g--;y.push(s.pop().edge),y.forEach(function(x){var b=x.connectedNodes().intersection(t);v.merge(x),b.forEach(function(w){var S=w.id(),T=w.connectedEdges().intersection(t);v.merge(w),r[S].cutVertex?v.merge(T.filter(function(E){return E.isLoop()})):v.merge(T)})}),a.push(v)},"buildComponent"),h=o(function d(p,m,g){p===g&&(i+=1),r[m]={id:n,low:n++,cutVertex:!1};var y=t.getElementById(m).connectedEdges().intersection(t);if(y.size()===0)a.push(t.spawn(t.getElementById(m)));else{var v,x,b,w;y.forEach(function(S){v=S.source().id(),x=S.target().id(),b=v===m?x:v,b!==g&&(w=S.id(),l[w]||(l[w]=!0,s.push({x:m,y:b,edge:S})),b in r?r[m].low=Math.min(r[m].low,r[b].id):(d(p,b,m),r[m].low=Math.min(r[m].low,r[b].low),r[m].id<=r[b].low&&(r[m].cutVertex=!0,u(m,b))))})}},"biconnectedSearch");t.forEach(function(d){if(d.isNode()){var p=d.id();p in r||(i=0,h(p,p),r[p].cutVertex=i>1)}});var f=Object.keys(r).filter(function(d){return r[d].cutVertex}).map(function(d){return t.getElementById(d)});return{cut:t.spawn(f),components:a}},"hopcroftTarjanBiconnected"),gQt={hopcroftTarjanBiconnected:J6,htbc:J6,htb:J6,hopcroftTarjanBiconnectedComponents:J6},tC=o(function(){var t=this,r={},n=0,i=[],a=[],s=t.spawn(t),l=o(function u(h){a.push(h),r[h]={index:n,low:n++,explored:!1};var f=t.getElementById(h).connectedEdges().intersection(t);if(f.forEach(function(y){var v=y.target().id();v!==h&&(v in r||u(v),r[v].explored||(r[h].low=Math.min(r[h].low,r[v].low)))}),r[h].index===r[h].low){for(var d=t.spawn();;){var p=a.pop();if(d.merge(t.getElementById(p)),r[p].low=r[h].index,r[p].explored=!0,p===h)break}var m=d.edgesWith(d),g=d.merge(m);i.push(g),s=s.difference(g)}},"stronglyConnectedSearch");return t.forEach(function(u){if(u.isNode()){var h=u.id();h in r||l(h)}}),{cut:s,components:i}},"tarjanStronglyConnected"),yQt={tarjanStronglyConnected:tC,tsc:tC,tscc:tC,tarjanStronglyConnectedComponents:tC},f1t={};[gb,qjt,Xjt,Kjt,Zjt,tKt,nKt,_Kt,v1,x1,HB,GKt,tQt,sQt,dQt,mQt,gQt,yQt].forEach(function(e){ir(f1t,e)});d1t=0,p1t=1,m1t=2,nh=o(function e(t){if(!(this instanceof e))return new e(t);this.id="Thenable/1.0.7",this.state=d1t,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof t=="function"&&t.call(this,this.fulfill.bind(this),this.reject.bind(this))},"api");nh.prototype={fulfill:o(function(t){return Hmt(this,p1t,"fulfillValue",t)},"fulfill"),reject:o(function(t){return Hmt(this,m1t,"rejectReason",t)},"reject"),then:o(function(t,r){var n=this,i=new nh;return n.onFulfilled.push(Ymt(t,i,"fulfill")),n.onRejected.push(Ymt(r,i,"reject")),g1t(n),i.proxy},"then")};Hmt=o(function(t,r,n,i){return t.state===d1t&&(t.state=r,t[n]=i,g1t(t)),t},"deliver"),g1t=o(function(t){t.state===p1t?Wmt(t,"onFulfilled",t.fulfillValue):t.state===m1t&&Wmt(t,"onRejected",t.rejectReason)},"execute"),Wmt=o(function(t,r,n){if(t[r].length!==0){var i=t[r];t[r]=[];var a=o(function(){for(var l=0;l0},"animatedImpl")},"animated"),clearQueue:o(function(){return o(function(){var r=this,n=r.length!==void 0,i=n?r:[r],a=this._private.cy||this;if(!a.styleEnabled())return this;for(var s=0;s0&&this.spawn(i).updateStyle().emit("class"),r},"classes"),addClass:o(function(t){return this.toggleClass(t,!0)},"addClass"),hasClass:o(function(t){var r=this[0];return r!=null&&r._private.classes.has(t)},"hasClass"),toggleClass:o(function(t,r){kn(t)||(t=t.match(/\S+/g)||[]);for(var n=this,i=r===void 0,a=[],s=0,l=n.length;s0&&this.spawn(a).updateStyle().emit("class"),n},"toggleClass"),removeClass:o(function(t){return this.toggleClass(t,!1)},"removeClass"),flashClass:o(function(t,r){var n=this;if(r==null)r=250;else if(r===0)return n;return n.addClass(t),setTimeout(function(){n.removeClass(t)},r),n},"flashClass")};cC.className=cC.classNames=cC.classes;Vr={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Xi,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Vr.variable="(?:[\\w-.]|(?:\\\\"+Vr.metaChar+"))+";Vr.className="(?:[\\w-]|(?:\\\\"+Vr.metaChar+"))+";Vr.value=Vr.string+"|"+Vr.number;Vr.id=Vr.variable;(function(){var e,t,r;for(e=Vr.comparatorOp.split("|"),r=0;r=0)&&t!=="="&&(Vr.comparatorOp+="|\\!"+t)})();pn=o(function(){return{checks:[]}},"newQuery"),Ne={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},YB=[{selector:":selected",matches:o(function(t){return t.selected()},"matches")},{selector:":unselected",matches:o(function(t){return!t.selected()},"matches")},{selector:":selectable",matches:o(function(t){return t.selectable()},"matches")},{selector:":unselectable",matches:o(function(t){return!t.selectable()},"matches")},{selector:":locked",matches:o(function(t){return t.locked()},"matches")},{selector:":unlocked",matches:o(function(t){return!t.locked()},"matches")},{selector:":visible",matches:o(function(t){return t.visible()},"matches")},{selector:":hidden",matches:o(function(t){return!t.visible()},"matches")},{selector:":transparent",matches:o(function(t){return t.transparent()},"matches")},{selector:":grabbed",matches:o(function(t){return t.grabbed()},"matches")},{selector:":free",matches:o(function(t){return!t.grabbed()},"matches")},{selector:":removed",matches:o(function(t){return t.removed()},"matches")},{selector:":inside",matches:o(function(t){return!t.removed()},"matches")},{selector:":grabbable",matches:o(function(t){return t.grabbable()},"matches")},{selector:":ungrabbable",matches:o(function(t){return!t.grabbable()},"matches")},{selector:":animated",matches:o(function(t){return t.animated()},"matches")},{selector:":unanimated",matches:o(function(t){return!t.animated()},"matches")},{selector:":parent",matches:o(function(t){return t.isParent()},"matches")},{selector:":childless",matches:o(function(t){return t.isChildless()},"matches")},{selector:":child",matches:o(function(t){return t.isChild()},"matches")},{selector:":orphan",matches:o(function(t){return t.isOrphan()},"matches")},{selector:":nonorphan",matches:o(function(t){return t.isChild()},"matches")},{selector:":compound",matches:o(function(t){return t.isNode()?t.isParent():t.source().isParent()||t.target().isParent()},"matches")},{selector:":loop",matches:o(function(t){return t.isLoop()},"matches")},{selector:":simple",matches:o(function(t){return t.isSimple()},"matches")},{selector:":active",matches:o(function(t){return t.active()},"matches")},{selector:":inactive",matches:o(function(t){return!t.active()},"matches")},{selector:":backgrounding",matches:o(function(t){return t.backgrounding()},"matches")},{selector:":nonbackgrounding",matches:o(function(t){return!t.backgrounding()},"matches")}].sort(function(e,t){return GXt(e.selector,t.selector)}),DJt=function(){for(var e={},t,r=0;r0&&f.edgeCount>0)return on("The selector `"+t+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(f.edgeCount>1)return on("The selector `"+t+"` is invalid because it uses multiple edge selectors"),!1;f.edgeCount===1&&on("The selector `"+t+"` 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},"parse"),PJt=o(function(){if(this.toStringCache!=null)return this.toStringCache;for(var t=o(function(f){return f??""},"clean"),r=o(function(f){return Ke(f)?'"'+f+'"':t(f)},"cleanVal"),n=o(function(f){return" "+f+" "},"space"),i=o(function(f,d){var p=f.type,m=f.value;switch(p){case Ne.GROUP:{var g=t(m);return g.substring(0,g.length-1)}case Ne.DATA_COMPARE:{var y=f.field,v=f.operator;return"["+y+n(t(v))+r(m)+"]"}case Ne.DATA_BOOL:{var x=f.operator,b=f.field;return"["+t(x)+b+"]"}case Ne.DATA_EXIST:{var w=f.field;return"["+w+"]"}case Ne.META_COMPARE:{var S=f.operator,T=f.field;return"[["+T+n(t(S))+r(m)+"]]"}case Ne.STATE:return m;case Ne.ID:return"#"+m;case Ne.CLASS:return"."+m;case Ne.PARENT:case Ne.CHILD:return a(f.parent,d)+n(">")+a(f.child,d);case Ne.ANCESTOR:case Ne.DESCENDANT:return a(f.ancestor,d)+" "+a(f.descendant,d);case Ne.COMPOUND_SPLIT:{var E=a(f.left,d),_=a(f.subject,d),A=a(f.right,d);return E+(E.length>0?" ":"")+_+A}case Ne.TRUE:return""}},"checkToString"),a=o(function(f,d){return f.checks.reduce(function(p,m,g){return p+(d===f&&g===0?"$":"")+i(m,d)},"")},"queryToString"),s="",l=0;l1&&l=0&&(r=r.replace("!",""),d=!0),r.indexOf("@")>=0&&(r=r.replace("@",""),f=!0),(a||l||f)&&(u=!a&&!s?"":""+t,h=""+n),f&&(t=u=u.toLowerCase(),n=h=h.toLowerCase()),r){case"*=":i=u.indexOf(h)>=0;break;case"$=":i=u.indexOf(h,u.length-h.length)>=0;break;case"^=":i=u.indexOf(h)===0;break;case"=":i=t===n;break;case">":p=!0,i=t>n;break;case">=":p=!0,i=t>=n;break;case"<":p=!0,i=t1&&arguments[1]!==void 0?arguments[1]:!0;return xF(this,e,t,C1t)};o(S1t,"addParent");E1.forEachUp=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return xF(this,e,t,S1t)};o(HJt,"addParentAndChildren");E1.forEachUpAndDown=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return xF(this,e,t,HJt)};E1.ancestors=E1.parents;bb=A1t={data:sn.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:sn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:sn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:sn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:sn.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:sn.removeData({field:"rscratch",triggerEvent:!1}),id:o(function(){var t=this[0];if(t)return t._private.data.id},"id")};bb.attr=bb.data;bb.removeAttr=bb.removeData;WJt=A1t,PC={};o(OB,"defineDegreeFunction");ir(PC,{degree:OB(function(e,t){return t.source().same(t.target())?2:1}),indegree:OB(function(e,t){return t.target().same(e)?1:0}),outdegree:OB(function(e,t){return t.source().same(e)?1:0})});o(u1,"defineDegreeBoundsFunction");ir(PC,{minDegree:u1("degree",function(e,t){return et}),minIndegree:u1("indegree",function(e,t){return et}),minOutdegree:u1("outdegree",function(e,t){return et})});ir(PC,{totalDegree:o(function(t){for(var r=0,n=this.nodes(),i=0;i0,p=d;d&&(f=f[0]);var m=p?f.position():{x:0,y:0};r!==void 0?h.position(t,r+m[t]):a!==void 0&&h.position({x:a.x+m.x,y:a.y+m.y})}else{var g=n.position(),y=l?n.parent():null,v=y&&y.length>0,x=v;v&&(y=y[0]);var b=x?y.position():{x:0,y:0};return a={x:g.x-b.x,y:g.y-b.y},t===void 0?a:a[t]}else if(!s)return;return this},"relativePosition")};Kl.modelPosition=Kl.point=Kl.position;Kl.modelPositions=Kl.points=Kl.positions;Kl.renderedPoint=Kl.renderedPosition;Kl.relativePoint=Kl.relativePosition;YJt=_1t;b1=Pf={};Pf.renderedBoundingBox=function(e){var t=this.boundingBox(e),r=this.cy(),n=r.zoom(),i=r.pan(),a=t.x1*n+i.x,s=t.x2*n+i.x,l=t.y1*n+i.y,u=t.y2*n+i.y;return{x1:a,x2:s,y1:l,y2:u,w:s-a,h:u-l}};Pf.dirtyCompoundBoundsCache=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.cy();return!t.styleEnabled()||!t.hasCompoundNodes()?this:(this.forEachUp(function(r){if(r.isParent()){var n=r._private;n.compoundBoundsClean=!1,n.bbCache=null,e||r.emitAndNotify("bounds")}}),this)};Pf.updateCompoundBounds=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.cy();if(!t.styleEnabled()||!t.hasCompoundNodes())return this;if(!e&&t.batching())return this;function r(s){if(!s.isParent())return;var l=s._private,u=s.children(),h=s.pstyle("compound-sizing-wrt-labels").value==="include",f={width:{val:s.pstyle("min-width").pfValue,left:s.pstyle("min-width-bias-left"),right:s.pstyle("min-width-bias-right")},height:{val:s.pstyle("min-height").pfValue,top:s.pstyle("min-height-bias-top"),bottom:s.pstyle("min-height-bias-bottom")}},d=u.boundingBox({includeLabels:h,includeOverlays:!1,useCache:!1}),p=l.position;(d.w===0||d.h===0)&&(d={w:s.pstyle("width").pfValue,h:s.pstyle("height").pfValue},d.x1=p.x-d.w/2,d.x2=p.x+d.w/2,d.y1=p.y-d.h/2,d.y2=p.y+d.h/2);function m(L,M,N){var k=0,I=0,C=M+N;return L>0&&C>0&&(k=M/C*L,I=N/C*L),{biasDiff:k,biasComplementDiff:I}}o(m,"computeBiasValues");function g(L,M,N,k){if(N.units==="%")switch(k){case"width":return L>0?N.pfValue*L:0;case"height":return M>0?N.pfValue*M:0;case"average":return L>0&&M>0?N.pfValue*(L+M)/2:0;case"min":return L>0&&M>0?L>M?N.pfValue*M:N.pfValue*L:0;case"max":return L>0&&M>0?L>M?N.pfValue*L:N.pfValue*M:0;default:return 0}else return N.units==="px"?N.pfValue:0}o(g,"computePaddingValues");var y=f.width.left.value;f.width.left.units==="px"&&f.width.val>0&&(y=y*100/f.width.val);var v=f.width.right.value;f.width.right.units==="px"&&f.width.val>0&&(v=v*100/f.width.val);var x=f.height.top.value;f.height.top.units==="px"&&f.height.val>0&&(x=x*100/f.height.val);var b=f.height.bottom.value;f.height.bottom.units==="px"&&f.height.val>0&&(b=b*100/f.height.val);var w=m(f.width.val-d.w,y,v),S=w.biasDiff,T=w.biasComplementDiff,E=m(f.height.val-d.h,x,b),_=E.biasDiff,A=E.biasComplementDiff;l.autoPadding=g(d.w,d.h,s.pstyle("padding"),s.pstyle("padding-relative-to").value),l.autoWidth=Math.max(d.w,f.width.val),p.x=(-S+d.x1+d.x2+T)/2,l.autoHeight=Math.max(d.h,f.height.val),p.y=(-_+d.y1+d.y2+A)/2}o(r,"update");for(var n=0;nt.x2?i:t.x2,t.y1=nt.y2?a:t.y2,t.w=t.x2-t.x1,t.h=t.y2-t.y1)},"updateBounds"),W0=o(function(t,r){return r==null?t:Xl(t,r.x1,r.y1,r.x2,r.y2)},"updateBoundsFromBox"),nb=o(function(t,r,n){return jl(t,r,n)},"prefixedProperty"),eC=o(function(t,r,n){if(!r.cy().headless()){var i=r._private,a=i.rstyle,s=a.arrowWidth/2,l=r.pstyle(n+"-arrow-shape").value,u,h;if(l!=="none"){n==="source"?(u=a.srcX,h=a.srcY):n==="target"?(u=a.tgtX,h=a.tgtY):(u=a.midX,h=a.midY);var f=i.arrowBounds=i.arrowBounds||{},d=f[n]=f[n]||{};d.x1=u-s,d.y1=h-s,d.x2=u+s,d.y2=h+s,d.w=d.x2-d.x1,d.h=d.y2-d.y1,oC(d,1),Xl(t,d.x1,d.y1,d.x2,d.y2)}}},"updateBoundsFromArrow"),PB=o(function(t,r,n){if(!r.cy().headless()){var i;n?i=n+"-":i="";var a=r._private,s=a.rstyle,l=r.pstyle(i+"label").strValue;if(l){var u=r.pstyle("text-halign"),h=r.pstyle("text-valign"),f=nb(s,"labelWidth",n),d=nb(s,"labelHeight",n),p=nb(s,"labelX",n),m=nb(s,"labelY",n),g=r.pstyle(i+"text-margin-x").pfValue,y=r.pstyle(i+"text-margin-y").pfValue,v=r.isEdge(),x=r.pstyle(i+"text-rotation"),b=r.pstyle("text-outline-width").pfValue,w=r.pstyle("text-border-width").pfValue,S=w/2,T=r.pstyle("text-background-padding").pfValue,E=2,_=d,A=f,L=A/2,M=_/2,N,k,I,C;if(v)N=p-L,k=p+L,I=m-M,C=m+M;else{switch(u.value){case"left":N=p-A,k=p;break;case"center":N=p-L,k=p+L;break;case"right":N=p,k=p+A;break}switch(h.value){case"top":I=m-_,C=m;break;case"center":I=m-M,C=m+M;break;case"bottom":I=m,C=m+_;break}}N+=g-Math.max(b,S)-T-E,k+=g+Math.max(b,S)+T+E,I+=y-Math.max(b,S)-T-E,C+=y+Math.max(b,S)+T+E;var O=n||"main",D=a.labelBounds,P=D[O]=D[O]||{};P.x1=N,P.y1=I,P.x2=k,P.y2=C,P.w=k-N,P.h=C-I;var F=v&&x.strValue==="autorotate",B=x.pfValue!=null&&x.pfValue!==0;if(F||B){var G=F?nb(a.rstyle,"labelAngle",n):x.pfValue,z=Math.cos(G),W=Math.sin(G),Q=(N+k)/2,j=(I+C)/2;if(!v){switch(u.value){case"left":Q=k;break;case"right":Q=N;break}switch(h.value){case"top":j=C;break;case"bottom":j=I;break}}var at=o(function(ct,ut){return ct=ct-Q,ut=ut-j,{x:ct*z-ut*W+Q,y:ct*W+ut*z+j}},"rotate"),X=at(N,I),J=at(N,C),Z=at(k,I),H=at(k,C);N=Math.min(X.x,J.x,Z.x,H.x),k=Math.max(X.x,J.x,Z.x,H.x),I=Math.min(X.y,J.y,Z.y,H.y),C=Math.max(X.y,J.y,Z.y,H.y)}var q=O+"Rot",K=D[q]=D[q]||{};K.x1=N,K.y1=I,K.x2=k,K.y2=C,K.w=k-N,K.h=C-I,Xl(t,N,I,k,C),Xl(a.labelBounds.all,N,I,k,C)}return t}},"updateBoundsFromLabel"),qJt=o(function(t,r){if(!r.cy().headless()){var n=r.pstyle("outline-opacity").value,i=r.pstyle("outline-width").value;if(n>0&&i>0){var a=r.pstyle("outline-offset").value,s=r.pstyle("shape").value,l=i+a,u=(t.w+l*2)/t.w,h=(t.h+l*2)/t.h,f=0,d=0;["diamond","pentagon","round-triangle"].includes(s)?(u=(t.w+l*2.4)/t.w,d=-l/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(s)?u=(t.w+l*2.4)/t.w:s==="star"?(u=(t.w+l*2.8)/t.w,h=(t.h+l*2.6)/t.h,d=-l/3.8):s==="triangle"?(u=(t.w+l*2.8)/t.w,h=(t.h+l*2.4)/t.h,d=-l/1.4):s==="vee"&&(u=(t.w+l*4.4)/t.w,h=(t.h+l*3.8)/t.h,d=-l*.5);var p=t.h*h-t.h,m=t.w*u-t.w;if(lC(t,[Math.ceil(p/2),Math.ceil(m/2)]),f!=0||d!==0){var g=pKt(t,f,d);n1t(t,g)}}}},"updateBoundsFromOutline"),XJt=o(function(t,r){var n=t._private.cy,i=n.styleEnabled(),a=n.headless(),s=Ys(),l=t._private,u=t.isNode(),h=t.isEdge(),f,d,p,m,g,y,v=l.rstyle,x=u&&i?t.pstyle("bounds-expansion").pfValue:[0],b=o(function(Mt){return Mt.pstyle("display").value!=="none"},"isDisplayed"),w=!i||b(t)&&(!h||b(t.source())&&b(t.target()));if(w){var S=0,T=0;i&&r.includeOverlays&&(S=t.pstyle("overlay-opacity").value,S!==0&&(T=t.pstyle("overlay-padding").value));var E=0,_=0;i&&r.includeUnderlays&&(E=t.pstyle("underlay-opacity").value,E!==0&&(_=t.pstyle("underlay-padding").value));var A=Math.max(T,_),L=0,M=0;if(i&&(L=t.pstyle("width").pfValue,M=L/2),u&&r.includeNodes){var N=t.position();g=N.x,y=N.y;var k=t.outerWidth(),I=k/2,C=t.outerHeight(),O=C/2;f=g-I,d=g+I,p=y-O,m=y+O,Xl(s,f,p,d,m),i&&r.includeOutlines&&qJt(s,t)}else if(h&&r.includeEdges)if(i&&!a){var D=t.pstyle("curve-style").strValue;if(f=Math.min(v.srcX,v.midX,v.tgtX),d=Math.max(v.srcX,v.midX,v.tgtX),p=Math.min(v.srcY,v.midY,v.tgtY),m=Math.max(v.srcY,v.midY,v.tgtY),f-=M,d+=M,p-=M,m+=M,Xl(s,f,p,d,m),D==="haystack"){var P=v.haystackPts;if(P&&P.length===2){if(f=P[0].x,p=P[0].y,d=P[1].x,m=P[1].y,f>d){var F=f;f=d,d=F}if(p>m){var B=p;p=m,m=B}Xl(s,f-M,p-M,d+M,m+M)}}else if(D==="bezier"||D==="unbundled-bezier"||D.endsWith("segments")||D.endsWith("taxi")){var G;switch(D){case"bezier":case"unbundled-bezier":G=v.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":G=v.linePts;break}if(G!=null)for(var z=0;zd){var J=f;f=d,d=J}if(p>m){var Z=p;p=m,m=Z}f-=M,d+=M,p-=M,m+=M,Xl(s,f,p,d,m)}if(i&&r.includeEdges&&h&&(eC(s,t,"mid-source"),eC(s,t,"mid-target"),eC(s,t,"source"),eC(s,t,"target")),i){var H=t.pstyle("ghost").value==="yes";if(H){var q=t.pstyle("ghost-offset-x").pfValue,K=t.pstyle("ghost-offset-y").pfValue;Xl(s,s.x1+q,s.y1+K,s.x2+q,s.y2+K)}}var ot=l.bodyBounds=l.bodyBounds||{};Rmt(ot,s),lC(ot,x),oC(ot,1),i&&(f=s.x1,d=s.x2,p=s.y1,m=s.y2,Xl(s,f-A,p-A,d+A,m+A));var ct=l.overlayBounds=l.overlayBounds||{};Rmt(ct,s),lC(ct,x),oC(ct,1);var ut=l.labelBounds=l.labelBounds||{};ut.all!=null?dKt(ut.all):ut.all=Ys(),i&&r.includeLabels&&(r.includeMainLabels&&PB(s,t,null),h&&(r.includeSourceLabels&&PB(s,t,"source"),r.includeTargetLabels&&PB(s,t,"target")))}return s.x1=il(s.x1),s.y1=il(s.y1),s.x2=il(s.x2),s.y2=il(s.y2),s.w=il(s.x2-s.x1),s.h=il(s.y2-s.y1),s.w>0&&s.h>0&&w&&(lC(s,x),oC(s,1)),s},"boundingBoxImpl"),D1t=o(function(t){var r=0,n=o(function(s){return(s?1:0)<=0;l--)s(l);return this};Of.removeAllListeners=function(){return this.removeListener("*")};Of.emit=Of.trigger=function(e,t,r){var n=this.listeners,i=n.length;return this.emitting++,kn(t)||(t=[t]),ute(this,function(a,s){r!=null&&(n=[{event:s.event,type:s.type,namespace:s.namespace,callback:r}],i=n.length);for(var l=o(function(f){var d=n[f];if(d.type===s.type&&(!d.namespace||d.namespace===s.namespace||d.namespace===lte)&&a.eventMatches(a.context,d,s)){var p=[s];t!=null&&Gjt(p,t),a.beforeEmit(a.context,d,s),d.conf&&d.conf.one&&(a.listeners=a.listeners.filter(function(y){return y!==d}));var m=a.callbackContext(a.context,d,s),g=d.callback.apply(m,p);a.afterEmit(a.context,d,s),g===!1&&(s.stopPropagation(),s.preventDefault())}},"_loop2"),u=0;u1&&!s){var l=this.length-1,u=this[l],h=u._private.data.id;this[l]=void 0,this[t]=u,a.set(h,{ele:u,index:t})}return this.length--,this},"unmergeAt"),unmergeOne:o(function(t){t=t[0];var r=this._private,n=t._private.data.id,i=r.map,a=i.get(n);if(!a)return this;var s=a.index;return this.unmergeAt(s),this},"unmergeOne"),unmerge:o(function(t){var r=this._private.cy;if(!t)return this;if(t&&Ke(t)){var n=t;t=r.mutableElements().filter(n)}for(var i=0;i=0;r--){var n=this[r];t(n)&&this.unmergeAt(r)}return this},"unmergeBy"),map:o(function(t,r){for(var n=[],i=this,a=0;an&&(n=u,i=l)}return{value:n,ele:i}},"max"),min:o(function(t,r){for(var n=1/0,i,a=this,s=0;s=0&&a"u"?"undefined":ji(Symbol))!=t&&ji(Symbol.iterator)!=t;r&&(TC[Symbol.iterator]=function(){var n=this,i={value:void 0,done:!1},a=0,s=this.length;return Ogt({next:o(function(){return a1&&arguments[1]!==void 0?arguments[1]:!0,n=this[0],i=n.cy();if(i.styleEnabled()&&n){this.cleanStyle();var a=n._private.style[t];return a??(r?i.style().getDefaultProperty(t):null)}},"parsedStyle"),numericStyle:o(function(t){var r=this[0];if(r.cy().styleEnabled()&&r){var n=r.pstyle(t);return n.pfValue!==void 0?n.pfValue:n.value}},"numericStyle"),numericStyleUnits:o(function(t){var r=this[0];if(r.cy().styleEnabled()&&r)return r.pstyle(t).units},"numericStyleUnits"),renderedStyle:o(function(t){var r=this.cy();if(!r.styleEnabled())return this;var n=this[0];if(n)return r.style().getRenderedStyle(n,t)},"renderedStyle"),style:o(function(t,r){var n=this.cy();if(!n.styleEnabled())return this;var i=!1,a=n.style();if(Ur(t)){var s=t;a.applyBypass(this,s,i),this.emitAndNotify("style")}else if(Ke(t))if(r===void 0){var l=this[0];return l?a.getStylePropertyValue(l,t):void 0}else a.applyBypass(this,t,r,i),this.emitAndNotify("style");else if(t===void 0){var u=this[0];return u?a.getRawStyle(u):void 0}return this},"style"),removeStyle:o(function(t){var r=this.cy();if(!r.styleEnabled())return this;var n=!1,i=r.style(),a=this;if(t===void 0)for(var s=0;s0&&t.push(f[0]),t.push(l[0])}return this.spawn(t,!0).filter(e)},"neighborhood"),closedNeighborhood:o(function(t){return this.neighborhood().add(this).filter(t)},"closedNeighborhood"),openNeighborhood:o(function(t){return this.neighborhood(t)},"openNeighborhood")});Ua.neighbourhood=Ua.neighborhood;Ua.closedNeighbourhood=Ua.closedNeighborhood;Ua.openNeighbourhood=Ua.openNeighborhood;ir(Ua,{source:al(o(function(t){var r=this[0],n;return r&&(n=r._private.source||r.cy().collection()),n&&t?n.filter(t):n},"sourceImpl"),"source"),target:al(o(function(t){var r=this[0],n;return r&&(n=r._private.target||r.cy().collection()),n&&t?n.filter(t):n},"targetImpl"),"target"),sources:cgt({attr:"source"}),targets:cgt({attr:"target"})});o(cgt,"defineSourceFunction");ir(Ua,{edgesWith:al(ugt(),"edgesWith"),edgesTo:al(ugt({thisIsSrc:!0}),"edgesTo")});o(ugt,"defineEdgesWithFunction");ir(Ua,{connectedEdges:al(function(e){for(var t=[],r=this,n=0;n0);return s},"components"),component:o(function(){var t=this[0];return t.cy().mutableElements().components(t)[0]},"component")});Ua.componentsOf=Ua.components;La=o(function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(t===void 0){fi("A collection must have a reference to the core");return}var a=new Qc,s=!1;if(!r)r=[];else if(r.length>0&&Ur(r[0])&&!Cb(r[0])){s=!0;for(var l=[],u=new C1,h=0,f=r.length;h0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=r.cy(),i=n._private,a=[],s=[],l,u=0,h=r.length;u0){for(var B=l.length===r.length?r:new La(n,l),G=0;G0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=[],i={},a=r._private.cy;function s(C){for(var O=C._private.edges,D=0;D0&&(e?N.emitAndNotify("remove"):t&&N.emit("remove"));for(var k=0;kf&&Math.abs(g.v)>f;);return p?function(y){return u[y*(u.length-1)|0]}:h},"springRK4Factory")}(),In=o(function(t,r,n,i){var a=bte(t,r,n,i);return function(s,l,u){return s+(l-s)*a(u)}},"cubicBezier"),hC={linear:o(function(t,r,n){return t+(r-t)*n},"linear"),ease:In(.25,.1,.25,1),"ease-in":In(.42,0,1,1),"ease-out":In(0,0,.58,1),"ease-in-out":In(.42,0,.58,1),"ease-in-sine":In(.47,0,.745,.715),"ease-out-sine":In(.39,.575,.565,1),"ease-in-out-sine":In(.445,.05,.55,.95),"ease-in-quad":In(.55,.085,.68,.53),"ease-out-quad":In(.25,.46,.45,.94),"ease-in-out-quad":In(.455,.03,.515,.955),"ease-in-cubic":In(.55,.055,.675,.19),"ease-out-cubic":In(.215,.61,.355,1),"ease-in-out-cubic":In(.645,.045,.355,1),"ease-in-quart":In(.895,.03,.685,.22),"ease-out-quart":In(.165,.84,.44,1),"ease-in-out-quart":In(.77,0,.175,1),"ease-in-quint":In(.755,.05,.855,.06),"ease-out-quint":In(.23,1,.32,1),"ease-in-out-quint":In(.86,0,.07,1),"ease-in-expo":In(.95,.05,.795,.035),"ease-out-expo":In(.19,1,.22,1),"ease-in-out-expo":In(1,0,0,1),"ease-in-circ":In(.6,.04,.98,.335),"ease-out-circ":In(.075,.82,.165,1),"ease-in-out-circ":In(.785,.135,.15,.86),spring:o(function(t,r,n){if(n===0)return hC.linear;var i=wte(t,r,n);return function(a,s,l){return a+(s-a)*i(l)}},"spring"),"cubic-bezier":In};o(fgt,"getEasedValue");o(dgt,"getValue");o(h1,"ease");o(Tte,"step$1");o(ab,"valid");o(kte,"startAnimation");o(pgt,"stepAll");Ete={animate:sn.animate(),animation:sn.animation(),animated:sn.animated(),clearQueue:sn.clearQueue(),delay:sn.delay(),delayAnimation:sn.delayAnimation(),stop:sn.stop(),addToAnimationPool:o(function(t){var r=this;r.styleEnabled()&&r._private.aniEles.merge(t)},"addToAnimationPool"),stopAnimationLoop:o(function(){this._private.animationsRunning=!1},"stopAnimationLoop"),startAnimationLoop:o(function(){var t=this;if(t._private.animationsRunning=!0,!t.styleEnabled())return;function r(){t._private.animationsRunning&&yC(o(function(a){pgt(a,t),r()},"animationStep"))}o(r,"headlessStep");var n=t.renderer();n&&n.beforeRender?n.beforeRender(o(function(a,s){pgt(s,t)},"rendererAnimationStep"),n.beforeRenderPriorities.animations):r()},"startAnimationLoop")},Cte={qualifierCompare:o(function(t,r){return t==null||r==null?t==null&&r==null:t.sameText(r)},"qualifierCompare"),eventMatches:o(function(t,r,n){var i=r.qualifier;return i!=null?t!==n.target&&Cb(n.target)&&i.matches(n.target):!0},"eventMatches"),addEventFields:o(function(t,r){r.cy=t,r.target=t},"addEventFields"),callbackContext:o(function(t,r,n){return r.qualifier!=null?n.target:t},"callbackContext")},iC=o(function(t){return Ke(t)?new Mf(t):t},"argSelector"),G1t={createEmitter:o(function(){var t=this._private;return t.emitter||(t.emitter=new BC(Cte,this)),this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(t,r,n){return this.emitter().on(t,iC(r),n),this},"on"),removeListener:o(function(t,r,n){return this.emitter().removeListener(t,iC(r),n),this},"removeListener"),removeAllListeners:o(function(){return this.emitter().removeAllListeners(),this},"removeAllListeners"),one:o(function(t,r,n){return this.emitter().one(t,iC(r),n),this},"one"),once:o(function(t,r,n){return this.emitter().one(t,iC(r),n),this},"once"),emit:o(function(t,r){return this.emitter().emit(t,r),this},"emit"),emitAndNotify:o(function(t,r){return this.emit(t),this.notify(t,r),this},"emitAndNotify")};sn.eventAliasesOn(G1t);XB={png:o(function(t){var r=this._private.renderer;return t=t||{},r.png(t)},"png"),jpg:o(function(t){var r=this._private.renderer;return t=t||{},t.bg=t.bg||"#fff",r.jpg(t)},"jpg")};XB.jpeg=XB.jpg;fC={layout:o(function(t){var r=this;if(t==null){fi("Layout options must be specified to make a layout");return}if(t.name==null){fi("A `name` must be specified to make a layout");return}var n=t.name,i=r.extension("layout",n);if(i==null){fi("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var a;Ke(t.eles)?a=r.$(t.eles):a=t.eles!=null?t.eles:r.$();var s=new i(ir({},t,{cy:r,eles:a}));return s},"layout")};fC.createLayout=fC.makeLayout=fC.layout;Ste={notify:o(function(t,r){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var i=n.batchNotifications[t]=n.batchNotifications[t]||this.collection();r!=null&&i.merge(r);return}if(n.notificationsEnabled){var a=this.renderer();this.destroyed()||!a||a.notify(t,r)}},"notify"),notifications:o(function(t){var r=this._private;return t===void 0?r.notificationsEnabled:(r.notificationsEnabled=!!t,this)},"notifications"),noNotifications:o(function(t){this.notifications(!1),t(),this.notifications(!0)},"noNotifications"),batching:o(function(){return this._private.batchCount>0},"batching"),startBatch:o(function(){var t=this._private;return t.batchCount==null&&(t.batchCount=0),t.batchCount===0&&(t.batchStyleEles=this.collection(),t.batchNotifications={}),t.batchCount++,this},"startBatch"),endBatch:o(function(){var t=this._private;if(t.batchCount===0)return this;if(t.batchCount--,t.batchCount===0){t.batchStyleEles.updateStyle();var r=this.renderer();Object.keys(t.batchNotifications).forEach(function(n){var i=t.batchNotifications[n];i.empty()?r.notify(n):r.notify(n,i)})}return this},"endBatch"),batch:o(function(t){return this.startBatch(),t(),this.endBatch(),this},"batch"),batchData:o(function(t){var r=this;return this.batch(function(){for(var n=Object.keys(t),i=0;i0;)r.removeChild(r.childNodes[0]);t._private.renderer=null,t.mutableElements().forEach(function(n){var i=n._private;i.rscratch={},i.rstyle={},i.animation.current=[],i.animation.queue=[]})},"destroyRenderer"),onRender:o(function(t){return this.on("render",t)},"onRender"),offRender:o(function(t){return this.off("render",t)},"offRender")};jB.invalidateDimensions=jB.resize;dC={collection:o(function(t,r){return Ke(t)?this.$(t):wo(t)?t.collection():kn(t)?(r||(r={}),new La(this,t,r.unique,r.removed)):new La(this)},"collection"),nodes:o(function(t){var r=this.$(function(n){return n.isNode()});return t?r.filter(t):r},"nodes"),edges:o(function(t){var r=this.$(function(n){return n.isEdge()});return t?r.filter(t):r},"edges"),$:o(function(t){var r=this._private.elements;return t?r.filter(t):r.spawnSelf()},"$"),mutableElements:o(function(){return this._private.elements},"mutableElements")};dC.elements=dC.filter=dC.$;Wa={},hb="t",_te="f";Wa.apply=function(e){for(var t=this,r=t._private,n=r.cy,i=n.collection(),a=0;a0;if(p||d&&m){var g=void 0;p&&m||p?g=h.properties:m&&(g=h.mappedProperties);for(var y=0;y1&&(S=1),l.color){var E=n.valueMin[0],_=n.valueMax[0],A=n.valueMin[1],L=n.valueMax[1],M=n.valueMin[2],N=n.valueMax[2],k=n.valueMin[3]==null?1:n.valueMin[3],I=n.valueMax[3]==null?1:n.valueMax[3],C=[Math.round(E+(_-E)*S),Math.round(A+(L-A)*S),Math.round(M+(N-M)*S),Math.round(k+(I-k)*S)];a={bypass:n.bypass,name:n.name,value:C,strValue:"rgb("+C[0]+", "+C[1]+", "+C[2]+")"}}else if(l.number){var O=n.valueMin+(n.valueMax-n.valueMin)*S;a=this.parse(n.name,O,n.bypass,p)}else return!1;if(!a)return y(),!1;a.mapping=n,n=a;break}case s.data:{for(var D=n.field.split("."),P=d.data,F=0;F0&&a>0){for(var l={},u=!1,h=0;h0?e.delayAnimation(s).play().promise().then(w):w()}).then(function(){return e.animation({style:l,duration:a,easing:e.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){r.removeBypasses(e,i),e.emitAndNotify("style"),n.transitioning=!1})}else n.transitioning&&(this.removeBypasses(e,i),e.emitAndNotify("style"),n.transitioning=!1)};Wa.checkTrigger=function(e,t,r,n,i,a){var s=this.properties[t],l=i(s);l!=null&&l(r,n)&&a(s)};Wa.checkZOrderTrigger=function(e,t,r,n){var i=this;this.checkTrigger(e,t,r,n,function(a){return a.triggersZOrder},function(){i._private.cy.notify("zorder",e)})};Wa.checkBoundsTrigger=function(e,t,r,n){this.checkTrigger(e,t,r,n,function(i){return i.triggersBounds},function(i){e.dirtyCompoundBoundsCache(),e.dirtyBoundingBoxCache(),i.triggersBoundsOfParallelBeziers&&t==="curve-style"&&(r==="bezier"||n==="bezier")&&e.parallelEdges().forEach(function(a){a.isBundledBezier()&&a.dirtyBoundingBoxCache()}),i.triggersBoundsOfConnectedEdges&&t==="display"&&(r==="none"||n==="none")&&e.connectedEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})};Wa.checkTriggers=function(e,t,r,n){e.dirtyStyleCache(),this.checkZOrderTrigger(e,t,r,n),this.checkBoundsTrigger(e,t,r,n)};Lb={};Lb.applyBypass=function(e,t,r,n){var i=this,a=[],s=!0;if(t==="*"||t==="**"){if(r!==void 0)for(var l=0;li.length?n=n.substr(i.length):n=""}o(l,"removeSelAndBlockFromRemaining");function u(){a.length>s.length?a=a.substr(s.length):a=""}for(o(u,"removePropAndValFromRem");;){var h=n.match(/^\s*$/);if(h)break;var f=n.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!f){on("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+n);break}i=f[0];var d=f[1];if(d!=="core"){var p=new Mf(d);if(p.invalid){on("Skipping parsing of block: Invalid selector found in string stylesheet: "+d),l();continue}}var m=f[2],g=!1;a=m;for(var y=[];;){var v=a.match(/^\s*$/);if(v)break;var x=a.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!x){on("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+m),g=!0;break}s=x[0];var b=x[1],w=x[2],S=t.properties[b];if(!S){on("Skipping property: Invalid property name in: "+s),u();continue}var T=r.parse(b,w);if(!T){on("Skipping property: Invalid property definition in: "+s),u();continue}y.push({name:b,val:w}),u()}if(g){l();break}r.selector(d);for(var E=0;E=7&&t[0]==="d"&&(f=new RegExp(l.data.regex).exec(t))){if(r)return!1;var p=l.data;return{name:e,value:f,strValue:""+t,mapped:p,field:f[1],bypass:r}}else if(t.length>=10&&t[0]==="m"&&(d=new RegExp(l.mapData.regex).exec(t))){if(r||h.multiple)return!1;var m=l.mapData;if(!(h.color||h.number))return!1;var g=this.parse(e,d[4]);if(!g||g.mapped)return!1;var y=this.parse(e,d[5]);if(!y||y.mapped)return!1;if(g.pfValue===y.pfValue||g.strValue===y.strValue)return on("`"+e+": "+t+"` is not a valid mapper because the output range is zero; converting to `"+e+": "+g.strValue+"`"),this.parse(e,g.strValue);if(h.color){var v=g.value,x=y.value,b=v[0]===x[0]&&v[1]===x[1]&&v[2]===x[2]&&(v[3]===x[3]||(v[3]==null||v[3]===1)&&(x[3]==null||x[3]===1));if(b)return!1}return{name:e,value:d,strValue:""+t,mapped:m,field:d[1],fieldMin:parseFloat(d[2]),fieldMax:parseFloat(d[3]),valueMin:g.value,valueMax:y.value,bypass:r}}}if(h.multiple&&n!=="multiple"){var w;if(u?w=t.split(/\s+/):kn(t)?w=t:w=[t],h.evenMultiple&&w.length%2!==0)return null;for(var S=[],T=[],E=[],_="",A=!1,L=0;L0?" ":"")+M.strValue}return h.validate&&!h.validate(S,T)?null:h.singleEnum&&A?S.length===1&&Ke(S[0])?{name:e,value:S[0],strValue:S[0],bypass:r}:null:{name:e,value:S,pfValue:E,strValue:_,bypass:r,units:T}}var N=o(function(){for(var H=0;Hh.max||h.strictMax&&t===h.max))return null;var D={name:e,value:t,strValue:""+t+(k||""),units:k,bypass:r};return h.unitless||k!=="px"&&k!=="em"?D.pfValue=t:D.pfValue=k==="px"||!k?t:this.getEmSizeInPixels()*t,(k==="ms"||k==="s")&&(D.pfValue=k==="ms"?t:1e3*t),(k==="deg"||k==="rad")&&(D.pfValue=k==="rad"?t:cKt(t)),k==="%"&&(D.pfValue=t/100),D}else if(h.propList){var P=[],F=""+t;if(F!=="none"){for(var B=F.split(/\s*,\s*|\s+/),G=0;G0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0){u=Math.min((s-2*r)/n.w,(l-2*r)/n.h),u=u>this._private.maxZoom?this._private.maxZoom:u,u=u=n.minZoom&&(n.maxZoom=r),this},"zoomRange"),minZoom:o(function(t){return t===void 0?this._private.minZoom:this.zoomRange({min:t})},"minZoom"),maxZoom:o(function(t){return t===void 0?this._private.maxZoom:this.zoomRange({max:t})},"maxZoom"),getZoomedViewport:o(function(t){var r=this._private,n=r.pan,i=r.zoom,a,s,l=!1;if(r.zoomingEnabled||(l=!0),be(t)?s=t:Ur(t)&&(s=t.level,t.position!=null?a=RC(t.position,i,n):t.renderedPosition!=null&&(a=t.renderedPosition),a!=null&&!r.panningEnabled&&(l=!0)),s=s>r.maxZoom?r.maxZoom:s,s=sr.maxZoom||!r.zoomingEnabled?s=!0:(r.zoom=u,a.push("zoom"))}if(i&&(!s||!t.cancelOnFailedZoom)&&r.panningEnabled){var h=t.pan;be(h.x)&&(r.pan.x=h.x,l=!1),be(h.y)&&(r.pan.y=h.y,l=!1),l||a.push("pan")}return a.length>0&&(a.push("viewport"),this.emit(a.join(" ")),this.notify("viewport")),this},"viewport"),center:o(function(t){var r=this.getCenterPan(t);return r&&(this._private.pan=r,this.emit("pan viewport"),this.notify("viewport")),this},"center"),getCenterPan:o(function(t,r){if(this._private.panningEnabled){if(Ke(t)){var n=t;t=this.mutableElements().filter(n)}else wo(t)||(t=this.mutableElements());if(t.length!==0){var i=t.boundingBox(),a=this.width(),s=this.height();r=r===void 0?this._private.zoom:r;var l={x:(a-r*(i.x1+i.x2))/2,y:(s-r*(i.y1+i.y2))/2};return l}}},"getCenterPan"),reset:o(function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},"reset"),invalidateSize:o(function(){this._private.sizeCache=null},"invalidateSize"),size:o(function(){var t=this._private,r=t.container,n=this;return t.sizeCache=t.sizeCache||(r?function(){var i=n.window().getComputedStyle(r),a=o(function(l){return parseFloat(i.getPropertyValue(l))},"val");return{width:r.clientWidth-a("padding-left")-a("padding-right"),height:r.clientHeight-a("padding-top")-a("padding-bottom")}}():{width:1,height:1})},"size"),width:o(function(){return this.size().width},"width"),height:o(function(){return this.size().height},"height"),extent:o(function(){var t=this._private.pan,r=this._private.zoom,n=this.renderedExtent(),i={x1:(n.x1-t.x)/r,x2:(n.x2-t.x)/r,y1:(n.y1-t.y)/r,y2:(n.y2-t.y)/r};return i.w=i.x2-i.x1,i.h=i.y2-i.y1,i},"extent"),renderedExtent:o(function(){var t=this.width(),r=this.height();return{x1:0,y1:0,x2:t,y2:r,w:t,h:r}},"renderedExtent"),multiClickDebounceTime:o(function(t){if(t)this._private.multiClickDebounceTime=t;else return this._private.multiClickDebounceTime;return this},"multiClickDebounceTime")};tp.centre=tp.center;tp.autolockNodes=tp.autolock;tp.autoungrabifyNodes=tp.autoungrabify;Tb={data:sn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:sn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:sn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:sn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Tb.attr=Tb.data;Tb.removeAttr=Tb.removeData;kb=o(function(t){var r=this;t=ir({},t);var n=t.container;n&&!gC(n)&&gC(n[0])&&(n=n[0]);var i=n?n._cyreg:null;i=i||{},i&&i.cy&&(i.cy.destroy(),i={});var a=i.readies=i.readies||[];n&&(n._cyreg=i),i.cy=r;var s=qi!==void 0&&n!==void 0&&!t.headless,l=t;l.layout=ir({name:s?"grid":"null"},l.layout),l.renderer=ir({name:s?"canvas":"null"},l.renderer);var u=o(function(g,y,v){return y!==void 0?y:v!==void 0?v:g},"defVal"),h=this._private={container:n,ready:!1,options:l,elements:new La(this),listeners:[],aniEles:new La(this),data:l.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:u(!0,l.zoomingEnabled),userZoomingEnabled:u(!0,l.userZoomingEnabled),panningEnabled:u(!0,l.panningEnabled),userPanningEnabled:u(!0,l.userPanningEnabled),boxSelectionEnabled:u(!0,l.boxSelectionEnabled),autolock:u(!1,l.autolock,l.autolockNodes),autoungrabify:u(!1,l.autoungrabify,l.autoungrabifyNodes),autounselectify:u(!1,l.autounselectify),styleEnabled:l.styleEnabled===void 0?s:l.styleEnabled,zoom:be(l.zoom)?l.zoom:1,pan:{x:Ur(l.pan)&&be(l.pan.x)?l.pan.x:0,y:Ur(l.pan)&&be(l.pan.y)?l.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:u(250,l.multiClickDebounceTime)};this.createEmitter(),this.selectionType(l.selectionType),this.zoomRange({min:l.minZoom,max:l.maxZoom});var f=o(function(g,y){var v=g.some(MXt);if(v)return S1.all(g).then(y);y(g)},"loadExtData");h.styleEnabled&&r.setStyle([]);var d=ir({},l,l.renderer);r.initRenderer(d);var p=o(function(g,y,v){r.notifications(!1);var x=r.mutableElements();x.length>0&&x.remove(),g!=null&&(Ur(g)||kn(g))&&r.add(g),r.one("layoutready",function(w){r.notifications(!0),r.emit(w),r.one("load",y),r.emitAndNotify("load")}).one("layoutstop",function(){r.one("done",v),r.emit("done")});var b=ir({},r._private.options.layout);b.eles=r.elements(),r.layout(b).run()},"setElesAndLayout");f([l.style,l.elements],function(m){var g=m[0],y=m[1];h.styleEnabled&&r.style().append(g),p(y,function(){r.startAnimationLoop(),h.ready=!0,ni(l.ready)&&r.on("ready",l.ready);for(var v=0;v0,u=Ys(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),h;if(wo(t.roots))h=t.roots;else if(kn(t.roots)){for(var f=[],d=0;d0;){var O=C(),D=M(O,k);if(D)O.outgoers().filter(function(ut){return ut.isNode()&&n.has(ut)}).forEach(I);else if(D===null){on("Detected double maximal shift for node `"+O.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}L();var P=0;if(t.avoidOverlap)for(var F=0;F0&&x[0].length<=3?Pt/2:0),Y=2*Math.PI/x[it].length*wt;return it===0&&x[0].length===1&&(dt=1),{x:K.x+dt*Math.cos(Y),y:K.y+dt*Math.sin(Y)}}else{var _t={x:K.x+(wt+1-(Ot+1)/2)*St,y:(it+1)*Vt};return _t}},"getPosition");return n.nodes().layoutPositions(this,t,ct),this};Mte={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(t,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(t,r){return r},"transform")};o(U1t,"CircleLayout");U1t.prototype.run=function(){var e=this.options,t=e,r=e.cy,n=t.eles,i=t.counterclockwise!==void 0?!t.counterclockwise:t.clockwise,a=n.nodes().not(":parent");t.sort&&(a=a.sort(t.sort));for(var s=Ys(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=t.sweep===void 0?2*Math.PI-2*Math.PI/a.length:t.sweep,h=u/Math.max(1,a.length-1),f,d=0,p=0;p1&&t.avoidOverlap){d*=1.75;var x=Math.cos(h)-Math.cos(0),b=Math.sin(h)-Math.sin(0),w=Math.sqrt(d*d/(x*x+b*b));f=Math.max(w,f)}var S=o(function(E,_){var A=t.startAngle+_*h*(i?1:-1),L=f*Math.cos(A),M=f*Math.sin(A),N={x:l.x+L,y:l.y+M};return N},"getPos");return n.nodes().layoutPositions(this,t,S),this};Ite={fit:!0,padding:30,startAngle:3/2*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:o(function(t){return t.degree()},"concentric"),levelWidth:o(function(t){return t.maxDegree()/4},"levelWidth"),animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(t,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(t,r){return r},"transform")};o(H1t,"ConcentricLayout");H1t.prototype.run=function(){for(var e=this.options,t=e,r=t.counterclockwise!==void 0?!t.counterclockwise:t.clockwise,n=e.cy,i=t.eles,a=i.nodes().not(":parent"),s=Ys(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=[],h=0,f=0;f0){var T=Math.abs(b[0].value-S.value);T>=v&&(b=[],x.push(b))}b.push(S)}var E=h+t.minNodeSpacing;if(!t.avoidOverlap){var _=x.length>0&&x[0].length>1,A=Math.min(s.w,s.h)/2-E,L=A/(x.length+_?1:0);E=Math.min(E,L)}for(var M=0,N=0;N1&&t.avoidOverlap){var O=Math.cos(C)-Math.cos(0),D=Math.sin(C)-Math.sin(0),P=Math.sqrt(E*E/(O*O+D*D));M=Math.max(P,M)}k.r=M,M+=E}if(t.equidistant){for(var F=0,B=0,G=0;G=e.numIter||(Vte(n,e),n.temperature=n.temperature*e.coolingFactor,n.temperature=e.animationThreshold&&a(),yC(d)}},"frame");f()}else{for(;h;)h=s(u),u++;ygt(n,e),l()}return this};VC.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this};VC.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};Pte=o(function(t,r,n){for(var i=n.eles.edges(),a=n.eles.nodes(),s=Ys(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:t.width(),h:t.height()}),l={isCompound:t.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:a.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:i.size(),temperature:n.initialTemp,clientWidth:s.w,clientHeight:s.h,boundingBox:s},u=n.eles.components(),h={},f=0;f0){l.graphSet.push(A);for(var f=0;fi.count?0:i.graph},"findLCA"),Fte=o(function e(t,r,n,i){var a=i.graphSet[n];if(-10)var d=i.nodeOverlap*f,p=Math.sqrt(l*l+u*u),m=d*l/p,g=d*u/p;else var y=EC(t,l,u),v=EC(r,-1*l,-1*u),x=v.x-y.x,b=v.y-y.y,w=x*x+b*b,p=Math.sqrt(w),d=(t.nodeRepulsion+r.nodeRepulsion)/w,m=d*x/p,g=d*b/p;t.isLocked||(t.offsetX-=m,t.offsetY-=g),r.isLocked||(r.offsetX+=m,r.offsetY+=g)}},"nodeRepulsion"),Wte=o(function(t,r,n,i){if(n>0)var a=t.maxX-r.minX;else var a=r.maxX-t.minX;if(i>0)var s=t.maxY-r.minY;else var s=r.maxY-t.minY;return a>=0&&s>=0?Math.sqrt(a*a+s*s):0},"nodesOverlap"),EC=o(function(t,r,n){var i=t.positionX,a=t.positionY,s=t.height||1,l=t.width||1,u=n/r,h=s/l,f={};return r===0&&0n?(f.x=i,f.y=a+s/2,f):0r&&-1*h<=u&&u<=h?(f.x=i-l/2,f.y=a-l*n/2/r,f):0=h)?(f.x=i+s*r/2/n,f.y=a+s/2,f):(0>n&&(u<=-1*h||u>=h)&&(f.x=i-s*r/2/n,f.y=a-s/2),f)},"findClippingPoint"),Yte=o(function(t,r){for(var n=0;nn){var v=r.gravity*m/y,x=r.gravity*g/y;p.offsetX+=v,p.offsetY+=x}}}}},"calculateGravityForces"),Xte=o(function(t,r){var n=[],i=0,a=-1;for(n.push.apply(n,t.graphSet[0]),a+=t.graphSet[0].length;i<=a;){var s=n[i++],l=t.idToIndex[s],u=t.layoutNodes[l],h=u.children;if(0n)var a={x:n*t/i,y:n*r/i};else var a={x:t,y:r};return a},"limitForce"),Qte=o(function e(t,r){var n=t.parentId;if(n!=null){var i=r.layoutNodes[r.idToIndex[n]],a=!1;if((i.maxX==null||t.maxX+i.padRight>i.maxX)&&(i.maxX=t.maxX+i.padRight,a=!0),(i.minX==null||t.minX-i.padLefti.maxY)&&(i.maxY=t.maxY+i.padBottom,a=!0),(i.minY==null||t.minY-i.padTopx&&(g+=v+r.componentSpacing,m=0,y=0,v=0)}}},"separateComponents"),Zte={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:o(function(t){},"position"),sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(t,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(t,r){return r},"transform")};o(Y1t,"GridLayout");Y1t.prototype.run=function(){var e=this.options,t=e,r=e.cy,n=t.eles,i=n.nodes().not(":parent");t.sort&&(i=i.sort(t.sort));var a=Ys(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(a.h===0||a.w===0)n.nodes().layoutPositions(this,t,function(Q){return{x:a.x1,y:a.y1}});else{var s=i.size(),l=Math.sqrt(s*a.h/a.w),u=Math.round(l),h=Math.round(a.w/a.h*l),f=o(function(j){if(j==null)return Math.min(u,h);var at=Math.min(u,h);at==u?u=j:h=j},"small"),d=o(function(j){if(j==null)return Math.max(u,h);var at=Math.max(u,h);at==u?u=j:h=j},"large"),p=t.rows,m=t.cols!=null?t.cols:t.columns;if(p!=null&&m!=null)u=p,h=m;else if(p!=null&&m==null)u=p,h=Math.ceil(s/u);else if(p==null&&m!=null)h=m,u=Math.ceil(s/h);else if(h*u>s){var g=f(),y=d();(g-1)*y>=s?f(g-1):(y-1)*g>=s&&d(y-1)}else for(;h*u=s?d(x+1):f(v+1)}var b=a.w/h,w=a.h/u;if(t.condense&&(b=0,w=0),t.avoidOverlap)for(var S=0;S=h&&(O=0,C++)},"moveToNextCell"),P={},F=0;F(O=TKt(e,t,D[P],D[P+1],D[P+2],D[P+3])))return v(_,O),!0}else if(L.edgeType==="bezier"||L.edgeType==="multibezier"||L.edgeType==="self"||L.edgeType==="compound"){for(var D=L.allpts,P=0;P+5(O=wKt(e,t,D[P],D[P+1],D[P+2],D[P+3],D[P+4],D[P+5])))return v(_,O),!0}for(var F=F||A.source,B=B||A.target,G=i.getArrowWidth(M,N),z=[{name:"source",x:L.arrowStartX,y:L.arrowStartY,angle:L.srcArrowAngle},{name:"target",x:L.arrowEndX,y:L.arrowEndY,angle:L.tgtArrowAngle},{name:"mid-source",x:L.midX,y:L.midY,angle:L.midsrcArrowAngle},{name:"mid-target",x:L.midX,y:L.midY,angle:L.midtgtArrowAngle}],P=0;P0&&(x(F),x(B))}o(b,"checkEdge");function w(_,A,L){return jl(_,A,L)}o(w,"preprop");function S(_,A){var L=_._private,M=p,N;A?N=A+"-":N="",_.boundingBox();var k=L.labelBounds[A||"main"],I=_.pstyle(N+"label").value,C=_.pstyle("text-events").strValue==="yes";if(!(!C||!I)){var O=w(L.rscratch,"labelX",A),D=w(L.rscratch,"labelY",A),P=w(L.rscratch,"labelAngle",A),F=_.pstyle(N+"text-margin-x").pfValue,B=_.pstyle(N+"text-margin-y").pfValue,G=k.x1-M-F,z=k.x2+M-F,W=k.y1-M-B,Q=k.y2+M-B;if(P){var j=Math.cos(P),at=Math.sin(P),X=o(function(ct,ut){return ct=ct-O,ut=ut-D,{x:ct*j-ut*at+O,y:ct*at+ut*j+D}},"rotate"),J=X(G,W),Z=X(G,Q),H=X(z,W),q=X(z,Q),K=[J.x+F,J.y+B,H.x+F,H.y+B,q.x+F,q.y+B,Z.x+F,Z.y+B];if(Ws(e,t,K))return v(_),!0}else if(T1(k,e,t))return v(_),!0}}o(S,"checkLabel");for(var T=s.length-1;T>=0;T--){var E=s[T];E.isNode()?x(E)||S(E):b(E)||S(E)||S(E,"source")||S(E,"target")}return l};rp.getAllInBox=function(e,t,r,n){var i=this.getCachedZSortedEles().interactive,a=[],s=Math.min(e,r),l=Math.max(e,r),u=Math.min(t,n),h=Math.max(t,n);e=s,r=l,t=u,n=h;for(var f=Ys({x1:e,y1:t,x2:r,y2:n}),d=0;d0?-(Math.PI-t.ang):Math.PI+t.ang},"invertVec"),iee=o(function(t,r,n,i,a){if(t!==Tgt?kgt(r,t,jc):nee(nl,jc),kgt(r,n,nl),bgt=jc.nx*nl.ny-jc.ny*nl.nx,wgt=jc.nx*nl.nx-jc.ny*-nl.ny,th=Math.asin(Math.max(-1,Math.min(1,bgt))),Math.abs(th)<1e-6){KB=r.x,QB=r.y,Y0=d1=0;return}q0=1,pC=!1,wgt<0?th<0?th=Math.PI+th:(th=Math.PI-th,q0=-1,pC=!0):th>0&&(q0=-1,pC=!0),r.radius!==void 0?d1=r.radius:d1=i,V0=th/2,aC=Math.min(jc.len/2,nl.len/2),a?(Xc=Math.abs(Math.cos(V0)*d1/Math.sin(V0)),Xc>aC?(Xc=aC,Y0=Math.abs(Xc*Math.sin(V0)/Math.cos(V0))):Y0=d1):(Xc=Math.min(aC,d1),Y0=Math.abs(Xc*Math.sin(V0)/Math.cos(V0))),ZB=r.x+nl.nx*Xc,JB=r.y+nl.ny*Xc,KB=ZB-nl.ny*Y0*q0,QB=JB+nl.nx*Y0*q0,K1t=r.x+jc.nx*Xc,Q1t=r.y+jc.ny*Xc,Tgt=r},"calcCornerArc");o(Z1t,"drawPreparedRoundCorner");o(CF,"getRoundCorner");Ya={};Ya.findMidptPtsEtc=function(e,t){var r=t.posPts,n=t.intersectionPts,i=t.vectorNormInverse,a,s=e.pstyle("source-endpoint"),l=e.pstyle("target-endpoint"),u=s.units!=null&&l.units!=null,h=o(function(T,E,_,A){var L=A-E,M=_-T,N=Math.sqrt(M*M+L*L);return{x:-L/N,y:M/N}},"recalcVectorNormInverse"),f=e.pstyle("edge-distances").value;switch(f){case"node-position":a=r;break;case"intersection":a=n;break;case"endpoints":{if(u){var d=this.manualEndptToPx(e.source()[0],s),p=ql(d,2),m=p[0],g=p[1],y=this.manualEndptToPx(e.target()[0],l),v=ql(y,2),x=v[0],b=v[1],w={x1:m,y1:g,x2:x,y2:b};i=h(m,g,x,b),a=w}else on("Edge ".concat(e.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),a=n;break}}return{midptPts:a,vectorNormInverse:i}};Ya.findHaystackPoints=function(e){for(var t=0;t0?Math.max(kt-Ct,0):Math.min(kt+Ct,0)},"subDWH"),I=k(M,A),C=k(N,L),O=!1;b===h?x=Math.abs(I)>Math.abs(C)?i:n:b===u||b===l?(x=n,O=!0):(b===a||b===s)&&(x=i,O=!0);var D=x===n,P=D?C:I,F=D?N:M,B=r1t(F),G=!1;!(O&&(S||E))&&(b===l&&F<0||b===u&&F>0||b===a&&F>0||b===s&&F<0)&&(B*=-1,P=B*Math.abs(P),G=!0);var z;if(S){var W=T<0?1+T:T;z=W*P}else{var Q=T<0?P:0;z=Q+T*B}var j=o(function(kt){return Math.abs(kt)<_||Math.abs(kt)>=Math.abs(P)},"getIsTooClose"),at=j(z),X=j(Math.abs(P)-Math.abs(z)),J=at||X;if(J&&!G)if(D){var Z=Math.abs(F)<=p/2,H=Math.abs(M)<=m/2;if(Z){var q=(f.x1+f.x2)/2,K=f.y1,ot=f.y2;r.segpts=[q,K,q,ot]}else if(H){var ct=(f.y1+f.y2)/2,ut=f.x1,et=f.x2;r.segpts=[ut,ct,et,ct]}else r.segpts=[f.x1,f.y2]}else{var Mt=Math.abs(F)<=d/2,it=Math.abs(N)<=g/2;if(Mt){var wt=(f.y1+f.y2)/2,Ot=f.x1,St=f.x2;r.segpts=[Ot,wt,St,wt]}else if(it){var Vt=(f.x1+f.x2)/2,Pt=f.y1,_t=f.y2;r.segpts=[Vt,Pt,Vt,_t]}else r.segpts=[f.x2,f.y1]}else if(D){var dt=f.y1+z+(v?p/2*B:0),Y=f.x1,ft=f.x2;r.segpts=[Y,dt,ft,dt]}else{var mt=f.x1+z+(v?d/2*B:0),rt=f.y1,ht=f.y2;r.segpts=[mt,rt,mt,ht]}if(r.isRound){var nt=e.pstyle("taxi-radius").value,st=e.pstyle("radius-type").value[0]==="arc-radius";r.radii=new Array(r.segpts.length/2).fill(nt),r.isArcRadius=new Array(r.segpts.length/2).fill(st)}};Ya.tryToCorrectInvalidPoints=function(e,t){var r=e._private.rscratch;if(r.edgeType==="bezier"){var n=t.srcPos,i=t.tgtPos,a=t.srcW,s=t.srcH,l=t.tgtW,u=t.tgtH,h=t.srcShape,f=t.tgtShape,d=t.srcCornerRadius,p=t.tgtCornerRadius,m=t.srcRs,g=t.tgtRs,y=!be(r.startX)||!be(r.startY),v=!be(r.arrowStartX)||!be(r.arrowStartY),x=!be(r.endX)||!be(r.endY),b=!be(r.arrowEndX)||!be(r.arrowEndY),w=3,S=this.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.arrowShapeWidth,T=w*S,E=Q0({x:r.ctrlpts[0],y:r.ctrlpts[1]},{x:r.startX,y:r.startY}),_=EC.poolIndex()){var O=I;I=C,C=O}var D=L.srcPos=I.position(),P=L.tgtPos=C.position(),F=L.srcW=I.outerWidth(),B=L.srcH=I.outerHeight(),G=L.tgtW=C.outerWidth(),z=L.tgtH=C.outerHeight(),W=L.srcShape=r.nodeShapes[t.getNodeShape(I)],Q=L.tgtShape=r.nodeShapes[t.getNodeShape(C)],j=L.srcCornerRadius=I.pstyle("corner-radius").value==="auto"?"auto":I.pstyle("corner-radius").pfValue,at=L.tgtCornerRadius=C.pstyle("corner-radius").value==="auto"?"auto":C.pstyle("corner-radius").pfValue,X=L.tgtRs=C._private.rscratch,J=L.srcRs=I._private.rscratch;L.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var Z=0;Z0){var ot=a,ct=H0(ot,m1(r)),ut=H0(ot,m1(K)),et=ct;if(ut2){var Mt=H0(ot,{x:K[2],y:K[3]});Mt0){var ht=s,nt=H0(ht,m1(r)),st=H0(ht,m1(rt)),Tt=nt;if(st2){var kt=H0(ht,{x:rt[2],y:rt[3]});kt=g||_){v={cp:S,segment:E};break}}if(v)break}var A=v.cp,L=v.segment,M=(g-x)/L.length,N=L.t1-L.t0,k=m?L.t0+N*M:L.t1-N*M;k=yb(0,k,1),t=y1(A.p0,A.p1,A.p2,k),p=see(A.p0,A.p1,A.p2,k);break}case"straight":case"segments":case"haystack":{for(var I=0,C,O,D,P,F=n.allpts.length,B=0;B+3=g));B+=2);var G=g-O,z=G/C;z=yb(0,z,1),t=hKt(D,P,z),p=eyt(D,P);break}}s("labelX",d,t.x),s("labelY",d,t.y),s("labelAutoAngle",d,p)}},"calculateEndProjection");h("source"),h("target"),this.applyLabelDimensions(e)}};Jc.applyLabelDimensions=function(e){this.applyPrefixedLabelDimensions(e),e.isEdge()&&(this.applyPrefixedLabelDimensions(e,"source"),this.applyPrefixedLabelDimensions(e,"target"))};Jc.applyPrefixedLabelDimensions=function(e,t){var r=e._private,n=this.getLabelText(e,t),i=this.calculateLabelDimensions(e,n),a=e.pstyle("line-height").pfValue,s=e.pstyle("text-wrap").strValue,l=jl(r.rscratch,"labelWrapCachedLines",t)||[],u=s!=="wrap"?1:Math.max(l.length,1),h=i.height/u,f=h*a,d=i.width,p=i.height+(u-1)*(a-1)*h;Af(r.rstyle,"labelWidth",t,d),Af(r.rscratch,"labelWidth",t,d),Af(r.rstyle,"labelHeight",t,p),Af(r.rscratch,"labelHeight",t,p),Af(r.rscratch,"labelLineHeight",t,f)};Jc.getLabelText=function(e,t){var r=e._private,n=t?t+"-":"",i=e.pstyle(n+"label").strValue,a=e.pstyle("text-transform").value,s=o(function(Q,j){return j?(Af(r.rscratch,Q,t,j),j):jl(r.rscratch,Q,t)},"rscratch");if(!i)return"";a=="none"||(a=="uppercase"?i=i.toUpperCase():a=="lowercase"&&(i=i.toLowerCase()));var l=e.pstyle("text-wrap").value;if(l==="wrap"){var u=s("labelKey");if(u!=null&&s("labelWrapKey")===u)return s("labelWrapCachedText");for(var h="\u200B",f=i.split(` `),d=e.pstyle("text-max-width").pfValue,p=e.pstyle("text-overflow-wrap").value,m=p==="anywhere",g=[],y=/[\s\u200b]+|$/g,v=0;vd){var T=x.matchAll(y),E="",_=0,A=Bgt(T),L;try{for(A.s();!(L=A.n()).done;){var M=L.value,N=M[0],k=x.substring(_,M.index);_=M.index+N.length;var I=E.length===0?k:E+k+N,C=this.calculateLabelDimensions(e,I),O=C.width;O<=d?E+=k+N:(E&&g.push(E),E=k+N)}}catch(W){A.e(W)}finally{A.f()}E.match(/^[\s\u200b]+$/)||g.push(E)}else g.push(x)}s("labelWrapCachedLines",g),i=s("labelWrapCachedText",g.join(` `)),s("labelWrapKey",u)}else if(l==="ellipsis"){var D=e.pstyle("text-max-width").pfValue,P="",F="\u2026",B=!1;if(this.calculateLabelDimensions(e,i).widthD)break;P+=i[G],G===i.length-1&&(B=!0)}return B||(P+=F),P}return i};Jc.getLabelJustification=function(e){var t=e.pstyle("text-justification").strValue,r=e.pstyle("text-halign").strValue;if(t==="auto")if(e.isNode())switch(r){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return t};Jc.calculateLabelDimensions=function(e,t){var r=this,n=r.cy.window(),i=n.document,a=K0(t,e._private.labelDimsKey),s=r.labelDimCache||(r.labelDimCache=[]),l=s[a];if(l!=null)return l;var u=0,h=e.pstyle("font-style").strValue,f=e.pstyle("font-size").pfValue,d=e.pstyle("font-family").strValue,p=e.pstyle("font-weight").strValue,m=this.labelCalcCanvas,g=this.labelCalcCanvasContext;if(!m){m=this.labelCalcCanvas=i.createElement("canvas"),g=this.labelCalcCanvasContext=m.getContext("2d");var y=m.style;y.position="absolute",y.left="-9999px",y.top="-9999px",y.zIndex="-1",y.visibility="hidden",y.pointerEvents="none"}g.font="".concat(h," ").concat(p," ").concat(f,"px ").concat(d);for(var v=0,x=0,b=t.split(` `),w=0;w1&&arguments[1]!==void 0?arguments[1]:!0;if(t.merge(s),l)for(var u=0;u=e.desktopTapThreshold2}var me=i(Y);zt&&(e.hoverData.tapholdCancelled=!0);var Ht=o(function(){var qe=e.hoverData.dragDelta=e.hoverData.dragDelta||[];qe.length===0?(qe.push(yt[0]),qe.push(yt[1])):(qe[0]+=yt[0],qe[1]+=yt[1])},"updateDragDelta");mt=!0,n(At,["mousemove","vmousemove","tapdrag"],Y,{x:st[0],y:st[1]});var ne=o(function(){e.data.bgActivePosistion=void 0,e.hoverData.selecting||rt.emit({originalEvent:Y,type:"boxstart",position:{x:st[0],y:st[1]}}),Ct[4]=1,e.hoverData.selecting=!0,e.redrawHint("select",!0),e.redraw()},"goIntoBoxMode");if(e.hoverData.which===3){if(zt){var xe={originalEvent:Y,type:"cxtdrag",position:{x:st[0],y:st[1]}};Nt?Nt.emit(xe):rt.emit(xe),e.hoverData.cxtDragged=!0,(!e.hoverData.cxtOver||At!==e.hoverData.cxtOver)&&(e.hoverData.cxtOver&&e.hoverData.cxtOver.emit({originalEvent:Y,type:"cxtdragout",position:{x:st[0],y:st[1]}}),e.hoverData.cxtOver=At,At&&At.emit({originalEvent:Y,type:"cxtdragover",position:{x:st[0],y:st[1]}}))}}else if(e.hoverData.dragging){if(mt=!0,rt.panningEnabled()&&rt.userPanningEnabled()){var Se;if(e.hoverData.justStartedPan){var Ye=e.hoverData.mdownPos;Se={x:(st[0]-Ye[0])*ht,y:(st[1]-Ye[1])*ht},e.hoverData.justStartedPan=!1}else Se={x:yt[0]*ht,y:yt[1]*ht};rt.panBy(Se),rt.emit("dragpan"),e.hoverData.dragged=!0}st=e.projectIntoViewport(Y.clientX,Y.clientY)}else if(Ct[4]==1&&(Nt==null||Nt.pannable())){if(zt){if(!e.hoverData.dragging&&rt.boxSelectionEnabled()&&(me||!rt.panningEnabled()||!rt.userPanningEnabled()))ne();else if(!e.hoverData.selecting&&rt.panningEnabled()&&rt.userPanningEnabled()){var fe=a(Nt,e.hoverData.downs);fe&&(e.hoverData.dragging=!0,e.hoverData.justStartedPan=!0,Ct[4]=0,e.data.bgActivePosistion=m1(Tt),e.redrawHint("select",!0),e.redraw())}Nt&&Nt.pannable()&&Nt.active()&&Nt.unactivate()}}else{if(Nt&&Nt.pannable()&&Nt.active()&&Nt.unactivate(),(!Nt||!Nt.grabbed())&&At!=$t&&($t&&n($t,["mouseout","tapdragout"],Y,{x:st[0],y:st[1]}),At&&n(At,["mouseover","tapdragover"],Y,{x:st[0],y:st[1]}),e.hoverData.last=At),Nt)if(zt){if(rt.boxSelectionEnabled()&&me)Nt&&Nt.grabbed()&&(v(Ut),Nt.emit("freeon"),Ut.emit("free"),e.dragData.didDrag&&(Nt.emit("dragfreeon"),Ut.emit("dragfree"))),ne();else if(Nt&&Nt.grabbed()&&e.nodeIsDraggable(Nt)){var ee=!e.dragData.didDrag;ee&&e.redrawHint("eles",!0),e.dragData.didDrag=!0,e.hoverData.draggingEles||g(Ut,{inDragLayer:!0});var pe={x:0,y:0};if(be(yt[0])&&be(yt[1])&&(pe.x+=yt[0],pe.y+=yt[1],ee)){var Me=e.hoverData.dragDelta;Me&&be(Me[0])&&be(Me[1])&&(pe.x+=Me[0],pe.y+=Me[1])}e.hoverData.draggingEles=!0,Ut.silentShift(pe).emit("position drag"),e.redrawHint("drag",!0),e.redraw()}}else Ht();mt=!0}if(Ct[2]=st[0],Ct[3]=st[1],mt)return Y.stopPropagation&&Y.stopPropagation(),Y.preventDefault&&Y.preventDefault(),!1}},"mousemoveHandler"),!1);var M,N,k;e.registerBinding(t,"mouseup",o(function(Y){if(!(e.hoverData.which===1&&Y.which!==1&&e.hoverData.capture)){var ft=e.hoverData.capture;if(ft){e.hoverData.capture=!1;var mt=e.cy,rt=e.projectIntoViewport(Y.clientX,Y.clientY),ht=e.selection,nt=e.findNearestElement(rt[0],rt[1],!0,!1),st=e.dragData.possibleDragElements,Tt=e.hoverData.down,kt=i(Y);if(e.data.bgActivePosistion&&(e.redrawHint("select",!0),e.redraw()),e.hoverData.tapholdCancelled=!0,e.data.bgActivePosistion=void 0,Tt&&Tt.unactivate(),e.hoverData.which===3){var Ct={originalEvent:Y,type:"cxttapend",position:{x:rt[0],y:rt[1]}};if(Tt?Tt.emit(Ct):mt.emit(Ct),!e.hoverData.cxtDragged){var At={originalEvent:Y,type:"cxttap",position:{x:rt[0],y:rt[1]}};Tt?Tt.emit(At):mt.emit(At)}e.hoverData.cxtDragged=!1,e.hoverData.which=null}else if(e.hoverData.which===1){if(n(nt,["mouseup","tapend","vmouseup"],Y,{x:rt[0],y:rt[1]}),!e.dragData.didDrag&&!e.hoverData.dragged&&!e.hoverData.selecting&&!e.hoverData.isOverThresholdDrag&&(n(Tt,["click","tap","vclick"],Y,{x:rt[0],y:rt[1]}),N=!1,Y.timeStamp-k<=mt.multiClickDebounceTime()?(M&&clearTimeout(M),N=!0,k=null,n(Tt,["dblclick","dbltap","vdblclick"],Y,{x:rt[0],y:rt[1]})):(M=setTimeout(function(){N||n(Tt,["oneclick","onetap","voneclick"],Y,{x:rt[0],y:rt[1]})},mt.multiClickDebounceTime()),k=Y.timeStamp)),Tt==null&&!e.dragData.didDrag&&!e.hoverData.selecting&&!e.hoverData.dragged&&!i(Y)&&(mt.$(r).unselect(["tapunselect"]),st.length>0&&e.redrawHint("eles",!0),e.dragData.possibleDragElements=st=mt.collection()),nt==Tt&&!e.dragData.didDrag&&!e.hoverData.selecting&&nt!=null&&nt._private.selectable&&(e.hoverData.dragging||(mt.selectionType()==="additive"||kt?nt.selected()?nt.unselect(["tapunselect"]):nt.select(["tapselect"]):kt||(mt.$(r).unmerge(nt).unselect(["tapunselect"]),nt.select(["tapselect"]))),e.redrawHint("eles",!0)),e.hoverData.selecting){var $t=mt.collection(e.getAllInBox(ht[0],ht[1],ht[2],ht[3]));e.redrawHint("select",!0),$t.length>0&&e.redrawHint("eles",!0),mt.emit({type:"boxend",originalEvent:Y,position:{x:rt[0],y:rt[1]}});var Nt=o(function(zt){return zt.selectable()&&!zt.selected()},"eleWouldBeSelected");mt.selectionType()==="additive"||kt||mt.$(r).unmerge($t).unselect(),$t.emit("box").stdFilter(Nt).select().emit("boxselect"),e.redraw()}if(e.hoverData.dragging&&(e.hoverData.dragging=!1,e.redrawHint("select",!0),e.redrawHint("eles",!0),e.redraw()),!ht[4]){e.redrawHint("drag",!0),e.redrawHint("eles",!0);var yt=Tt&&Tt.grabbed();v(st),yt&&(Tt.emit("freeon"),st.emit("free"),e.dragData.didDrag&&(Tt.emit("dragfreeon"),st.emit("dragfree")))}}ht[4]=0,e.hoverData.down=null,e.hoverData.cxtStarted=!1,e.hoverData.draggingEles=!1,e.hoverData.selecting=!1,e.hoverData.isOverThresholdDrag=!1,e.dragData.didDrag=!1,e.hoverData.dragged=!1,e.hoverData.dragDelta=[],e.hoverData.mdownPos=null,e.hoverData.mdownGPos=null}}},"mouseupHandler"),!1);var I=o(function(Y){if(!e.scrollingPage){var ft=e.cy,mt=ft.zoom(),rt=ft.pan(),ht=e.projectIntoViewport(Y.clientX,Y.clientY),nt=[ht[0]*mt+rt.x,ht[1]*mt+rt.y];if(e.hoverData.draggingEles||e.hoverData.dragging||e.hoverData.cxtStarted||A()){Y.preventDefault();return}if(ft.panningEnabled()&&ft.userPanningEnabled()&&ft.zoomingEnabled()&&ft.userZoomingEnabled()){Y.preventDefault(),e.data.wheelZooming=!0,clearTimeout(e.data.wheelTimeout),e.data.wheelTimeout=setTimeout(function(){e.data.wheelZooming=!1,e.redrawHint("eles",!0),e.redraw()},150);var st;Y.deltaY!=null?st=Y.deltaY/-250:Y.wheelDeltaY!=null?st=Y.wheelDeltaY/1e3:st=Y.wheelDelta/1e3,st=st*e.wheelSensitivity;var Tt=Y.deltaMode===1;Tt&&(st*=33);var kt=ft.zoom()*Math.pow(10,st);Y.type==="gesturechange"&&(kt=e.gestureStartZoom*Y.scale),ft.zoom({level:kt,renderedPosition:{x:nt[0],y:nt[1]}}),ft.emit(Y.type==="gesturechange"?"pinchzoom":"scrollzoom")}}},"wheelHandler");e.registerBinding(e.container,"wheel",I,!0),e.registerBinding(t,"scroll",o(function(Y){e.scrollingPage=!0,clearTimeout(e.scrollingPageTimeout),e.scrollingPageTimeout=setTimeout(function(){e.scrollingPage=!1},250)},"scrollHandler"),!0),e.registerBinding(e.container,"gesturestart",o(function(Y){e.gestureStartZoom=e.cy.zoom(),e.hasTouchStarted||Y.preventDefault()},"gestureStartHandler"),!0),e.registerBinding(e.container,"gesturechange",function(dt){e.hasTouchStarted||I(dt)},!0),e.registerBinding(e.container,"mouseout",o(function(Y){var ft=e.projectIntoViewport(Y.clientX,Y.clientY);e.cy.emit({originalEvent:Y,type:"mouseout",position:{x:ft[0],y:ft[1]}})},"mouseOutHandler"),!1),e.registerBinding(e.container,"mouseover",o(function(Y){var ft=e.projectIntoViewport(Y.clientX,Y.clientY);e.cy.emit({originalEvent:Y,type:"mouseover",position:{x:ft[0],y:ft[1]}})},"mouseOverHandler"),!1);var C,O,D,P,F,B,G,z,W,Q,j,at,X,J=o(function(Y,ft,mt,rt){return Math.sqrt((mt-Y)*(mt-Y)+(rt-ft)*(rt-ft))},"distance"),Z=o(function(Y,ft,mt,rt){return(mt-Y)*(mt-Y)+(rt-ft)*(rt-ft)},"distanceSq"),H;e.registerBinding(e.container,"touchstart",H=o(function(Y){if(e.hasTouchStarted=!0,!!L(Y)){b(),e.touchData.capture=!0,e.data.bgActivePosistion=void 0;var ft=e.cy,mt=e.touchData.now,rt=e.touchData.earlier;if(Y.touches[0]){var ht=e.projectIntoViewport(Y.touches[0].clientX,Y.touches[0].clientY);mt[0]=ht[0],mt[1]=ht[1]}if(Y.touches[1]){var ht=e.projectIntoViewport(Y.touches[1].clientX,Y.touches[1].clientY);mt[2]=ht[0],mt[3]=ht[1]}if(Y.touches[2]){var ht=e.projectIntoViewport(Y.touches[2].clientX,Y.touches[2].clientY);mt[4]=ht[0],mt[5]=ht[1]}if(Y.touches[1]){e.touchData.singleTouchMoved=!0,v(e.dragData.touchDragEles);var nt=e.findContainerClientCoords();W=nt[0],Q=nt[1],j=nt[2],at=nt[3],C=Y.touches[0].clientX-W,O=Y.touches[0].clientY-Q,D=Y.touches[1].clientX-W,P=Y.touches[1].clientY-Q,X=0<=C&&C<=j&&0<=D&&D<=j&&0<=O&&O<=at&&0<=P&&P<=at;var st=ft.pan(),Tt=ft.zoom();F=J(C,O,D,P),B=Z(C,O,D,P),G=[(C+D)/2,(O+P)/2],z=[(G[0]-st.x)/Tt,(G[1]-st.y)/Tt];var kt=200,Ct=kt*kt;if(B=1){for(var ke=e.touchData.startPosition=[null,null,null,null,null,null],Ee=0;Ee=e.touchTapThreshold2}if(ft&&e.touchData.cxt){Y.preventDefault();var ke=Y.touches[0].clientX-W,Ee=Y.touches[0].clientY-Q,le=Y.touches[1].clientX-W,Zt=Y.touches[1].clientY-Q,me=Z(ke,Ee,le,Zt),Ht=me/B,ne=150,xe=ne*ne,Se=1.5,Ye=Se*Se;if(Ht>=Ye||me>=xe){e.touchData.cxt=!1,e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var fe={originalEvent:Y,type:"cxttapend",position:{x:ht[0],y:ht[1]}};e.touchData.start?(e.touchData.start.unactivate().emit(fe),e.touchData.start=null):rt.emit(fe)}}if(ft&&e.touchData.cxt){var fe={originalEvent:Y,type:"cxtdrag",position:{x:ht[0],y:ht[1]}};e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.touchData.start?e.touchData.start.emit(fe):rt.emit(fe),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxtDragged=!0;var ee=e.findNearestElement(ht[0],ht[1],!0,!0);(!e.touchData.cxtOver||ee!==e.touchData.cxtOver)&&(e.touchData.cxtOver&&e.touchData.cxtOver.emit({originalEvent:Y,type:"cxtdragout",position:{x:ht[0],y:ht[1]}}),e.touchData.cxtOver=ee,ee&&ee.emit({originalEvent:Y,type:"cxtdragover",position:{x:ht[0],y:ht[1]}}))}else if(ft&&Y.touches[2]&&rt.boxSelectionEnabled())Y.preventDefault(),e.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,e.touchData.selecting||rt.emit({originalEvent:Y,type:"boxstart",position:{x:ht[0],y:ht[1]}}),e.touchData.selecting=!0,e.touchData.didSelect=!0,mt[4]=1,!mt||mt.length===0||mt[0]===void 0?(mt[0]=(ht[0]+ht[2]+ht[4])/3,mt[1]=(ht[1]+ht[3]+ht[5])/3,mt[2]=(ht[0]+ht[2]+ht[4])/3+1,mt[3]=(ht[1]+ht[3]+ht[5])/3+1):(mt[2]=(ht[0]+ht[2]+ht[4])/3,mt[3]=(ht[1]+ht[3]+ht[5])/3),e.redrawHint("select",!0),e.redraw();else if(ft&&Y.touches[1]&&!e.touchData.didSelect&&rt.zoomingEnabled()&&rt.panningEnabled()&&rt.userZoomingEnabled()&&rt.userPanningEnabled()){Y.preventDefault(),e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var pe=e.dragData.touchDragEles;if(pe){e.redrawHint("drag",!0);for(var Me=0;Me0&&!e.hoverData.draggingEles&&!e.swipePanning&&e.data.bgActivePosistion!=null&&(e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.redraw())}},"touchmoveHandler"),!1);var K;e.registerBinding(t,"touchcancel",K=o(function(Y){var ft=e.touchData.start;e.touchData.capture=!1,ft&&ft.unactivate()},"touchcancelHandler"));var ot,ct,ut,et;if(e.registerBinding(t,"touchend",ot=o(function(Y){var ft=e.touchData.start,mt=e.touchData.capture;if(mt)Y.touches.length===0&&(e.touchData.capture=!1),Y.preventDefault();else return;var rt=e.selection;e.swipePanning=!1,e.hoverData.draggingEles=!1;var ht=e.cy,nt=ht.zoom(),st=e.touchData.now,Tt=e.touchData.earlier;if(Y.touches[0]){var kt=e.projectIntoViewport(Y.touches[0].clientX,Y.touches[0].clientY);st[0]=kt[0],st[1]=kt[1]}if(Y.touches[1]){var kt=e.projectIntoViewport(Y.touches[1].clientX,Y.touches[1].clientY);st[2]=kt[0],st[3]=kt[1]}if(Y.touches[2]){var kt=e.projectIntoViewport(Y.touches[2].clientX,Y.touches[2].clientY);st[4]=kt[0],st[5]=kt[1]}ft&&ft.unactivate();var Ct;if(e.touchData.cxt){if(Ct={originalEvent:Y,type:"cxttapend",position:{x:st[0],y:st[1]}},ft?ft.emit(Ct):ht.emit(Ct),!e.touchData.cxtDragged){var At={originalEvent:Y,type:"cxttap",position:{x:st[0],y:st[1]}};ft?ft.emit(At):ht.emit(At)}e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!1,e.touchData.start=null,e.redraw();return}if(!Y.touches[2]&&ht.boxSelectionEnabled()&&e.touchData.selecting){e.touchData.selecting=!1;var $t=ht.collection(e.getAllInBox(rt[0],rt[1],rt[2],rt[3]));rt[0]=void 0,rt[1]=void 0,rt[2]=void 0,rt[3]=void 0,rt[4]=0,e.redrawHint("select",!0),ht.emit({type:"boxend",originalEvent:Y,position:{x:st[0],y:st[1]}});var Nt=o(function(xe){return xe.selectable()&&!xe.selected()},"eleWouldBeSelected");$t.emit("box").stdFilter(Nt).select().emit("boxselect"),$t.nonempty()&&e.redrawHint("eles",!0),e.redraw()}if(ft?.unactivate(),Y.touches[2])e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);else if(!Y.touches[1]){if(!Y.touches[0]){if(!Y.touches[0]){e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var yt=e.dragData.touchDragEles;if(ft!=null){var Ut=ft._private.grabbed;v(yt),e.redrawHint("drag",!0),e.redrawHint("eles",!0),Ut&&(ft.emit("freeon"),yt.emit("free"),e.dragData.didDrag&&(ft.emit("dragfreeon"),yt.emit("dragfree"))),n(ft,["touchend","tapend","vmouseup","tapdragout"],Y,{x:st[0],y:st[1]}),ft.unactivate(),e.touchData.start=null}else{var zt=e.findNearestElement(st[0],st[1],!0,!0);n(zt,["touchend","tapend","vmouseup","tapdragout"],Y,{x:st[0],y:st[1]})}var ae=e.touchData.startPosition[0]-st[0],ke=ae*ae,Ee=e.touchData.startPosition[1]-st[1],le=Ee*Ee,Zt=ke+le,me=Zt*nt*nt;e.touchData.singleTouchMoved||(ft||ht.$(":selected").unselect(["tapunselect"]),n(ft,["tap","vclick"],Y,{x:st[0],y:st[1]}),ct=!1,Y.timeStamp-et<=ht.multiClickDebounceTime()?(ut&&clearTimeout(ut),ct=!0,et=null,n(ft,["dbltap","vdblclick"],Y,{x:st[0],y:st[1]})):(ut=setTimeout(function(){ct||n(ft,["onetap","voneclick"],Y,{x:st[0],y:st[1]})},ht.multiClickDebounceTime()),et=Y.timeStamp)),ft!=null&&!e.dragData.didDrag&&ft._private.selectable&&me"u"){var Mt=[],it=o(function(Y){return{clientX:Y.clientX,clientY:Y.clientY,force:1,identifier:Y.pointerId,pageX:Y.pageX,pageY:Y.pageY,radiusX:Y.width/2,radiusY:Y.height/2,screenX:Y.screenX,screenY:Y.screenY,target:Y.target}},"makeTouch"),wt=o(function(Y){return{event:Y,touch:it(Y)}},"makePointer"),Ot=o(function(Y){Mt.push(wt(Y))},"addPointer"),St=o(function(Y){for(var ft=0;ft0)return W[0]}return null},"getCurveT"),g=Object.keys(p),y=0;y0?m:a1t(a,s,t,r,n,i,l,u)},"intersectLine"),checkPoint:o(function(t,r,n,i,a,s,l,u){u=u==="auto"?Z0(i,a):u;var h=2*u;if(rh(t,r,this.points,s,l,i,a-h,[0,-1],n)||rh(t,r,this.points,s,l,i-h,a,[0,-1],n))return!0;var f=i/2+2*n,d=a/2+2*n,p=[s-f,l-d,s-f,l,s+f,l,s+f,l-d];return!!(Ws(t,r,p)||X0(t,r,h,h,s+i/2-u,l+a/2-u,n)||X0(t,r,h,h,s-i/2+u,l+a/2-u,n))},"checkPoint")}};ih.registerNodeShapes=function(){var e=this.nodeShapes={},t=this;this.generateEllipse(),this.generatePolygon("triangle",fs(3,0)),this.generateRoundPolygon("round-triangle",fs(3,0)),this.generatePolygon("rectangle",fs(4,0)),e.square=e.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var r=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",r),this.generateRoundPolygon("round-diamond",r)}this.generatePolygon("pentagon",fs(5,0)),this.generateRoundPolygon("round-pentagon",fs(5,0)),this.generatePolygon("hexagon",fs(6,0)),this.generateRoundPolygon("round-hexagon",fs(6,0)),this.generatePolygon("heptagon",fs(7,0)),this.generateRoundPolygon("round-heptagon",fs(7,0)),this.generatePolygon("octagon",fs(8,0)),this.generateRoundPolygon("round-octagon",fs(8,0));var n=new Array(20);{var i=VB(5,0),a=VB(5,Math.PI/5),s=.5*(3-Math.sqrt(5));s*=1.57;for(var l=0;l=t.deqFastCost*S)break}else if(h){if(b>=t.deqCost*m||b>=t.deqAvgCost*p)break}else if(w>=t.deqNoDrawCost*zB)break;var T=t.deq(n,v,y);if(T.length>0)for(var E=0;E0&&(t.onDeqd(n,g),!h&&t.shouldRedraw(n,g,v,y)&&a())},"dequeue"),l=t.priority||cF;i.beforeRender(s,l(n))}},"setupDequeueingImpl")},"setupDequeueing")},lee=function(){function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:vC;iF(this,e),this.idsByKey=new Qc,this.keyForId=new Qc,this.cachesByLvl=new Qc,this.lvls=[],this.getKey=t,this.doesEleInvalidateKey=r}return o(e,"ElementTextureCacheLookup"),aF(e,[{key:"getIdsFor",value:o(function(r){r==null&&fi("Can not get id list for null key");var n=this.idsByKey,i=this.idsByKey.get(r);return i||(i=new C1,n.set(r,i)),i},"getIdsFor")},{key:"addIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).add(n)},"addIdForKey")},{key:"deleteIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).delete(n)},"deleteIdForKey")},{key:"getNumberOfIdsForKey",value:o(function(r){return r==null?0:this.getIdsFor(r).size},"getNumberOfIdsForKey")},{key:"updateKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);this.deleteIdForKey(i,n),this.addIdForKey(a,n),this.keyForId.set(n,a)},"updateKeyMappingFor")},{key:"deleteKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteIdForKey(i,n),this.keyForId.delete(n)},"deleteKeyMappingFor")},{key:"keyHasChangedFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);return i!==a},"keyHasChangedFor")},{key:"isInvalid",value:o(function(r){return this.keyHasChangedFor(r)||this.doesEleInvalidateKey(r)},"isInvalid")},{key:"getCachesAt",value:o(function(r){var n=this.cachesByLvl,i=this.lvls,a=n.get(r);return a||(a=new Qc,n.set(r,a),i.push(r)),a},"getCachesAt")},{key:"getCache",value:o(function(r,n){return this.getCachesAt(n).get(r)},"getCache")},{key:"get",value:o(function(r,n){var i=this.getKey(r),a=this.getCache(i,n);return a!=null&&this.updateKeyMappingFor(r),a},"get")},{key:"getForCachedKey",value:o(function(r,n){var i=this.keyForId.get(r.id()),a=this.getCache(i,n);return a},"getForCachedKey")},{key:"hasCache",value:o(function(r,n){return this.getCachesAt(n).has(r)},"hasCache")},{key:"has",value:o(function(r,n){var i=this.getKey(r);return this.hasCache(i,n)},"has")},{key:"setCache",value:o(function(r,n,i){i.key=r,this.getCachesAt(n).set(r,i)},"setCache")},{key:"set",value:o(function(r,n,i){var a=this.getKey(r);this.setCache(a,n,i),this.updateKeyMappingFor(r)},"set")},{key:"deleteCache",value:o(function(r,n){this.getCachesAt(n).delete(r)},"deleteCache")},{key:"delete",value:o(function(r,n){var i=this.getKey(r);this.deleteCache(i,n)},"_delete")},{key:"invalidateKey",value:o(function(r){var n=this;this.lvls.forEach(function(i){return n.deleteCache(r,i)})},"invalidateKey")},{key:"invalidate",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteKeyMappingFor(r);var a=this.doesEleInvalidateKey(r);return a&&this.invalidateKey(i),a||this.getNumberOfIdsForKey(i)===0},"invalidate")}]),e}(),Agt=25,sC=50,mC=-4,tF=3,cee=7.99,uee=8,hee=1024,fee=1024,dee=1024,pee=.2,mee=.8,gee=10,yee=.15,vee=.1,xee=.9,bee=.9,wee=100,Tee=1,g1={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},kee=Da({getKey:null,doesEleInvalidateKey:vC,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:Qgt,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),ub=o(function(t,r){var n=this;n.renderer=t,n.onDequeues=[];var i=kee(r);ir(n,i),n.lookup=new lee(i.getKey,i.doesEleInvalidateKey),n.setupDequeueing()},"ElementTextureCache"),Ki=ub.prototype;Ki.reasons=g1;Ki.getTextureQueue=function(e){var t=this;return t.eleImgCaches=t.eleImgCaches||{},t.eleImgCaches[e]=t.eleImgCaches[e]||[]};Ki.getRetiredTextureQueue=function(e){var t=this,r=t.eleImgCaches.retired=t.eleImgCaches.retired||{},n=r[e]=r[e]||[];return n};Ki.getElementQueue=function(){var e=this,t=e.eleCacheQueue=e.eleCacheQueue||new Ab(function(r,n){return n.reqs-r.reqs});return t};Ki.getElementKeyToQueue=function(){var e=this,t=e.eleKeyToCacheQueue=e.eleKeyToCacheQueue||{};return t};Ki.getElement=function(e,t,r,n,i){var a=this,s=this.renderer,l=s.cy.zoom(),u=this.lookup;if(!t||t.w===0||t.h===0||isNaN(t.w)||isNaN(t.h)||!e.visible()||e.removed()||!a.allowEdgeTxrCaching&&e.isEdge()||!a.allowParentTxrCaching&&e.isParent())return null;if(n==null&&(n=Math.ceil(hF(l*r))),n=cee||n>tF)return null;var h=Math.pow(2,n),f=t.h*h,d=t.w*h,p=s.eleTextBiggerThanMin(e,h);if(!this.isVisible(e,p))return null;var m=u.get(e,n);if(m&&m.invalidated&&(m.invalidated=!1,m.texture.invalidatedWidth-=m.width),m)return m;var g;if(f<=Agt?g=Agt:f<=sC?g=sC:g=Math.ceil(f/sC)*sC,f>dee||d>fee)return null;var y=a.getTextureQueue(g),v=y[y.length-2],x=o(function(){return a.recycleTexture(g,d)||a.addTexture(g,d)},"addNewTxr");v||(v=y[y.length-1]),v||(v=x()),v.width-v.usedWidthn;N--)L=a.getElement(e,t,r,N,g1.downscale);M()}else return a.queueElement(e,E.level-1),E;else{var k;if(!w&&!S&&!T)for(var I=n-1;I>=mC;I--){var C=u.get(e,I);if(C){k=C;break}}if(b(k))return a.queueElement(e,n),k;v.context.translate(v.usedWidth,0),v.context.scale(h,h),this.drawElement(v.context,e,t,p,!1),v.context.scale(1/h,1/h),v.context.translate(-v.usedWidth,0)}return m={x:v.usedWidth,texture:v,level:n,scale:h,width:d,height:f,scaledLabelShown:p},v.usedWidth+=Math.ceil(d+uee),v.eleCaches.push(m),u.set(e,n,m),a.checkTextureFullness(v),m};Ki.invalidateElements=function(e){for(var t=0;t=pee*e.width&&this.retireTexture(e)};Ki.checkTextureFullness=function(e){var t=this,r=t.getTextureQueue(e.height);e.usedWidth/e.width>mee&&e.fullnessChecks>=gee?Nf(r,e):e.fullnessChecks++};Ki.retireTexture=function(e){var t=this,r=e.height,n=t.getTextureQueue(r),i=this.lookup;Nf(n,e),e.retired=!0;for(var a=e.eleCaches,s=0;s=t)return s.retired=!1,s.usedWidth=0,s.invalidatedWidth=0,s.fullnessChecks=0,uF(s.eleCaches),s.context.setTransform(1,0,0,1,0,0),s.context.clearRect(0,0,s.width,s.height),Nf(i,s),n.push(s),s}};Ki.queueElement=function(e,t){var r=this,n=r.getElementQueue(),i=r.getElementKeyToQueue(),a=this.getKey(e),s=i[a];if(s)s.level=Math.max(s.level,t),s.eles.merge(e),s.reqs++,n.updateItem(s);else{var l={eles:e.spawn().merge(e),level:t,reqs:1,key:a};n.push(l),i[a]=l}};Ki.dequeue=function(e){for(var t=this,r=t.getElementQueue(),n=t.getElementKeyToQueue(),i=[],a=t.lookup,s=0;s0;s++){var l=r.pop(),u=l.key,h=l.eles[0],f=a.hasCache(h,l.level);if(n[u]=null,f)continue;i.push(l);var d=t.getBoundingBox(h);t.getElement(h,d,e,l.level,g1.dequeue)}return i};Ki.removeFromQueue=function(e){var t=this,r=t.getElementQueue(),n=t.getElementKeyToQueue(),i=this.getKey(e),a=n[i];a!=null&&(a.eles.length===1?(a.reqs=lF,r.updateItem(a),r.pop(),n[i]=null):a.eles.unmerge(e))};Ki.onDequeue=function(e){this.onDequeues.push(e)};Ki.offDequeue=function(e){Nf(this.onDequeues,e)};Ki.setupDequeueing=syt.setupDequeueing({deqRedrawThreshold:wee,deqCost:yee,deqAvgCost:vee,deqNoDrawCost:xee,deqFastCost:bee,deq:o(function(t,r,n){return t.dequeue(r,n)},"deq"),onDeqd:o(function(t,r){for(var n=0;n=Cee||r>SC)return null}n.validateLayersElesOrdering(r,e);var u=n.layersByLevel,h=Math.pow(2,r),f=u[r]=u[r]||[],d,p=n.levelIsComplete(r,e),m,g=o(function(){var M=o(function(O){if(n.validateLayersElesOrdering(O,e),n.levelIsComplete(O,e))return m=u[O],!0},"canUseAsTmpLvl"),N=o(function(O){if(!m)for(var D=r+O;fb<=D&&D<=SC&&!M(D);D+=O);},"checkLvls");N(1),N(-1);for(var k=f.length-1;k>=0;k--){var I=f[k];I.invalid&&Nf(f,I)}},"checkTempLevels");if(!p)g();else return f;var y=o(function(){if(!d){d=Ys();for(var M=0;MMee)return null;var I=n.makeLayer(d,r);if(N!=null){var C=f.indexOf(N)+1;f.splice(C,0,I)}else(M.insert===void 0||M.insert)&&f.unshift(I);return I},"makeLayer");if(n.skipping&&!l)return null;for(var x=null,b=e.length/Eee,w=!l,S=0;S=b||!i1t(x.bb,T.boundingBox()))&&(x=v({insert:!0,after:x}),!x))return null;m||w?n.queueLayer(x,T):n.drawEleInLayer(x,T,r,t),x.eles.push(T),_[r]=x}return m||(w?null:f)};Ra.getEleLevelForLayerLevel=function(e,t){return e};Ra.drawEleInLayer=function(e,t,r,n){var i=this,a=this.renderer,s=e.context,l=t.boundingBox();l.w===0||l.h===0||!t.visible()||(r=i.getEleLevelForLayerLevel(r,n),a.setImgSmoothing(s,!1),a.drawCachedElement(s,t,null,null,r,Iee),a.setImgSmoothing(s,!0))};Ra.levelIsComplete=function(e,t){var r=this,n=r.layersByLevel[e];if(!n||n.length===0)return!1;for(var i=0,a=0;a0||s.invalid)return!1;i+=s.eles.length}return i===t.length};Ra.validateLayersElesOrdering=function(e,t){var r=this.layersByLevel[e];if(r)for(var n=0;n0){t=!0;break}}return t};Ra.invalidateElements=function(e){var t=this;e.length!==0&&(t.lastInvalidationTime=eh(),!(e.length===0||!t.haveLayers())&&t.updateElementsInLayers(e,o(function(n,i,a){t.invalidateLayer(n)},"invalAssocLayers")))};Ra.invalidateLayer=function(e){if(this.lastInvalidationTime=eh(),!e.invalid){var t=e.level,r=e.eles,n=this.layersByLevel[t];Nf(n,e),e.elesQueue=[],e.invalid=!0,e.replacement&&(e.replacement.invalid=!0);for(var i=0;i3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l=t._private.rscratch;if(!(a&&!t.visible())&&!(l.badLine||l.allpts==null||isNaN(l.allpts[0]))){var u;r&&(u=r,e.translate(-u.x1,-u.y1));var h=a?t.pstyle("opacity").value:1,f=a?t.pstyle("line-opacity").value:1,d=t.pstyle("curve-style").value,p=t.pstyle("line-style").value,m=t.pstyle("width").pfValue,g=t.pstyle("line-cap").value,y=t.pstyle("line-outline-width").value,v=t.pstyle("line-outline-color").value,x=h*f,b=h*f,w=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;d==="straight-triangle"?(s.eleStrokeStyle(e,t,O),s.drawEdgeTrianglePath(t,e,l.allpts)):(e.lineWidth=m,e.lineCap=g,s.eleStrokeStyle(e,t,O),s.drawEdgePath(t,e,l.allpts,p),e.lineCap="butt")},"drawLine"),S=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;if(e.lineWidth=m+y,e.lineCap=g,y>0)s.colorStrokeStyle(e,v[0],v[1],v[2],O);else{e.lineCap="butt";return}d==="straight-triangle"?s.drawEdgeTrianglePath(t,e,l.allpts):(s.drawEdgePath(t,e,l.allpts,p),e.lineCap="butt")},"drawLineOutline"),T=o(function(){i&&s.drawEdgeOverlay(e,t)},"drawOverlay"),E=o(function(){i&&s.drawEdgeUnderlay(e,t)},"drawUnderlay"),_=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b;s.drawArrowheads(e,t,O)},"drawArrows"),A=o(function(){s.drawElementText(e,t,null,n)},"drawText");e.lineJoin="round";var L=t.pstyle("ghost").value==="yes";if(L){var M=t.pstyle("ghost-offset-x").pfValue,N=t.pstyle("ghost-offset-y").pfValue,k=t.pstyle("ghost-opacity").value,I=x*k;e.translate(M,N),w(I),_(I),e.translate(-M,-N)}else S();E(),w(),_(),T(),A(),r&&e.translate(u.x1,u.y1)}};cyt=o(function(t){if(!["overlay","underlay"].includes(t))throw new Error("Invalid state");return function(r,n){if(n.visible()){var i=n.pstyle("".concat(t,"-opacity")).value;if(i!==0){var a=this,s=a.usePaths(),l=n._private.rscratch,u=n.pstyle("".concat(t,"-padding")).pfValue,h=2*u,f=n.pstyle("".concat(t,"-color")).value;r.lineWidth=h,l.edgeType==="self"&&!s?r.lineCap="butt":r.lineCap="round",a.colorStrokeStyle(r,f[0],f[1],f[2],i),a.drawEdgePath(n,r,l.allpts,"solid")}}}},"drawEdgeOverlayUnderlay");ah.drawEdgeOverlay=cyt("overlay");ah.drawEdgeUnderlay=cyt("underlay");ah.drawEdgePath=function(e,t,r,n){var i=e._private.rscratch,a=t,s,l=!1,u=this.usePaths(),h=e.pstyle("line-dash-pattern").pfValue,f=e.pstyle("line-dash-offset").pfValue;if(u){var d=r.join("$"),p=i.pathCacheKey&&i.pathCacheKey===d;p?(s=t=i.pathCache,l=!0):(s=t=new Path2D,i.pathCacheKey=d,i.pathCache=s)}if(a.setLineDash)switch(n){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(h),a.lineDashOffset=f;break;case"solid":a.setLineDash([]);break}if(!l&&!i.badLine)switch(t.beginPath&&t.beginPath(),t.moveTo(r[0],r[1]),i.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var m=2;m+35&&arguments[5]!==void 0?arguments[5]:!0,s=this;if(n==null){if(a&&!s.eleTextBiggerThanMin(t))return}else if(n===!1)return;if(t.isNode()){var l=t.pstyle("label");if(!l||!l.value)return;var u=s.getLabelJustification(t);e.textAlign=u,e.textBaseline="bottom"}else{var h=t.element()._private.rscratch.badLine,f=t.pstyle("label"),d=t.pstyle("source-label"),p=t.pstyle("target-label");if(h||(!f||!f.value)&&(!d||!d.value)&&(!p||!p.value))return;e.textAlign="center",e.textBaseline="bottom"}var m=!r,g;r&&(g=r,e.translate(-g.x1,-g.y1)),i==null?(s.drawText(e,t,null,m,a),t.isEdge()&&(s.drawText(e,t,"source",m,a),s.drawText(e,t,"target",m,a))):s.drawText(e,t,i,m,a),r&&e.translate(g.x1,g.y1)};np.getFontCache=function(e){var t;this.fontCaches=this.fontCaches||[];for(var r=0;r2&&arguments[2]!==void 0?arguments[2]:!0,n=t.pstyle("font-style").strValue,i=t.pstyle("font-size").pfValue+"px",a=t.pstyle("font-family").strValue,s=t.pstyle("font-weight").strValue,l=r?t.effectiveOpacity()*t.pstyle("text-opacity").value:1,u=t.pstyle("text-outline-opacity").value*l,h=t.pstyle("color").value,f=t.pstyle("text-outline-color").value;e.font=n+" "+s+" "+i+" "+a,e.lineJoin="round",this.colorFillStyle(e,h[0],h[1],h[2],l),this.colorStrokeStyle(e,f[0],f[1],f[2],u)};o(GB,"roundRect");np.getTextAngle=function(e,t){var r,n=e._private,i=n.rscratch,a=t?t+"-":"",s=e.pstyle(a+"text-rotation"),l=jl(i,"labelAngle",t);return s.strValue==="autorotate"?r=e.isEdge()?l:0:s.strValue==="none"?r=0:r=s.pfValue,r};np.drawText=function(e,t,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=t._private,s=a.rscratch,l=i?t.effectiveOpacity():1;if(!(i&&(l===0||t.pstyle("text-opacity").value===0))){r==="main"&&(r=null);var u=jl(s,"labelX",r),h=jl(s,"labelY",r),f,d,p=this.getLabelText(t,r);if(p!=null&&p!==""&&!isNaN(u)&&!isNaN(h)){this.setupTextStyle(e,t,i);var m=r?r+"-":"",g=jl(s,"labelWidth",r),y=jl(s,"labelHeight",r),v=t.pstyle(m+"text-margin-x").pfValue,x=t.pstyle(m+"text-margin-y").pfValue,b=t.isEdge(),w=t.pstyle("text-halign").value,S=t.pstyle("text-valign").value;b&&(w="center",S="center"),u+=v,h+=x;var T;switch(n?T=this.getTextAngle(t,r):T=0,T!==0&&(f=u,d=h,e.translate(f,d),e.rotate(T),u=0,h=0),S){case"top":break;case"center":h+=y/2;break;case"bottom":h+=y;break}var E=t.pstyle("text-background-opacity").value,_=t.pstyle("text-border-opacity").value,A=t.pstyle("text-border-width").pfValue,L=t.pstyle("text-background-padding").pfValue,M=t.pstyle("text-background-shape").strValue,N=M.indexOf("round")===0,k=2;if(E>0||A>0&&_>0){var I=u-L;switch(w){case"left":I-=g;break;case"center":I-=g/2;break}var C=h-y-L,O=g+2*L,D=y+2*L;if(E>0){var P=e.fillStyle,F=t.pstyle("text-background-color").value;e.fillStyle="rgba("+F[0]+","+F[1]+","+F[2]+","+E*l+")",N?GB(e,I,C,O,D,k):e.fillRect(I,C,O,D),e.fillStyle=P}if(A>0&&_>0){var B=e.strokeStyle,G=e.lineWidth,z=t.pstyle("text-border-color").value,W=t.pstyle("text-border-style").value;if(e.strokeStyle="rgba("+z[0]+","+z[1]+","+z[2]+","+_*l+")",e.lineWidth=A,e.setLineDash)switch(W){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"double":e.lineWidth=A/4,e.setLineDash([]);break;case"solid":e.setLineDash([]);break}if(N?GB(e,I,C,O,D,k,"stroke"):e.strokeRect(I,C,O,D),W==="double"){var Q=A/2;N?GB(e,I+Q,C+Q,O-Q*2,D-Q*2,k,"stroke"):e.strokeRect(I+Q,C+Q,O-Q*2,D-Q*2)}e.setLineDash&&e.setLineDash([]),e.lineWidth=G,e.strokeStyle=B}}var j=2*t.pstyle("text-outline-width").pfValue;if(j>0&&(e.lineWidth=j),t.pstyle("text-wrap").value==="wrap"){var at=jl(s,"labelWrapCachedLines",r),X=jl(s,"labelLineHeight",r),J=g/2,Z=this.getLabelJustification(t);switch(Z==="auto"||(w==="left"?Z==="left"?u+=-g:Z==="center"&&(u+=-J):w==="center"?Z==="left"?u+=-J:Z==="right"&&(u+=J):w==="right"&&(Z==="center"?u+=J:Z==="right"&&(u+=g))),S){case"top":h-=(at.length-1)*X;break;case"center":case"bottom":h-=(at.length-1)*X;break}for(var H=0;H0&&e.strokeText(at[H],u,h),e.fillText(at[H],u,h),h+=X}else j>0&&e.strokeText(p,u,h),e.fillText(p,u,h);T!==0&&(e.rotate(-T),e.translate(-f,-d))}}};I1={};I1.drawNode=function(e,t,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l,u,h=t._private,f=h.rscratch,d=t.position();if(!(!be(d.x)||!be(d.y))&&!(a&&!t.visible())){var p=a?t.effectiveOpacity():1,m=s.usePaths(),g,y=!1,v=t.padding();l=t.width()+2*v,u=t.height()+2*v;var x;r&&(x=r,e.translate(-x.x1,-x.y1));for(var b=t.pstyle("background-image"),w=b.value,S=new Array(w.length),T=new Array(w.length),E=0,_=0;_0&&arguments[0]!==void 0?arguments[0]:I;s.eleFillStyle(e,t,nt)},"setupShapeColor"),H=o(function(){var nt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:z;s.colorStrokeStyle(e,C[0],C[1],C[2],nt)},"setupBorderColor"),q=o(function(){var nt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:at;s.colorStrokeStyle(e,Q[0],Q[1],Q[2],nt)},"setupOutlineColor"),K=o(function(nt,st,Tt,kt){var Ct=s.nodePathCache=s.nodePathCache||[],At=Kgt(Tt==="polygon"?Tt+","+kt.join(","):Tt,""+st,""+nt,""+J),$t=Ct[At],Nt,yt=!1;return $t!=null?(Nt=$t,yt=!0,f.pathCache=Nt):(Nt=new Path2D,Ct[At]=f.pathCache=Nt),{path:Nt,cacheHit:yt}},"getPath"),ot=t.pstyle("shape").strValue,ct=t.pstyle("shape-polygon-points").pfValue;if(m){e.translate(d.x,d.y);var ut=K(l,u,ot,ct);g=ut.path,y=ut.cacheHit}var et=o(function(){if(!y){var nt=d;m&&(nt={x:0,y:0}),s.nodeShapes[s.getNodeShape(t)].draw(g||e,nt.x,nt.y,l,u,J,f)}m?e.fill(g):e.fill()},"drawShape"),Mt=o(function(){for(var nt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,st=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,Tt=h.backgrounding,kt=0,Ct=0;Ct0&&arguments[0]!==void 0?arguments[0]:!1,st=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p;s.hasPie(t)&&(s.drawPie(e,t,st),nt&&(m||s.nodeShapes[s.getNodeShape(t)].draw(e,d.x,d.y,l,u,J,f)))},"drawPie"),wt=o(function(){var nt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,st=(N>0?N:-N)*nt,Tt=N>0?0:255;N!==0&&(s.colorFillStyle(e,Tt,Tt,Tt,st),m?e.fill(g):e.fill())},"darken"),Ot=o(function(){if(k>0){if(e.lineWidth=k,e.lineCap=P,e.lineJoin=D,e.setLineDash)switch(O){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash(B),e.lineDashOffset=G;break;case"solid":case"double":e.setLineDash([]);break}if(F!=="center"){if(e.save(),e.lineWidth*=2,F==="inside")m?e.clip(g):e.clip();else{var nt=new Path2D;nt.rect(-l/2-k,-u/2-k,l+2*k,u+2*k),nt.addPath(g),e.clip(nt,"evenodd")}m?e.stroke(g):e.stroke(),e.restore()}else m?e.stroke(g):e.stroke();if(O==="double"){e.lineWidth=k/3;var st=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",m?e.stroke(g):e.stroke(),e.globalCompositeOperation=st}e.setLineDash&&e.setLineDash([])}},"drawBorder"),St=o(function(){if(W>0){if(e.lineWidth=W,e.lineCap="butt",e.setLineDash)switch(j){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"solid":case"double":e.setLineDash([]);break}var nt=d;m&&(nt={x:0,y:0});var st=s.getNodeShape(t),Tt=k;F==="inside"&&(Tt=0),F==="outside"&&(Tt*=2);var kt=(l+Tt+(W+X))/l,Ct=(u+Tt+(W+X))/u,At=l*kt,$t=u*Ct,Nt=s.nodeShapes[st].points,yt;if(m){var Ut=K(At,$t,st,Nt);yt=Ut.path}if(st==="ellipse")s.drawEllipsePath(yt||e,nt.x,nt.y,At,$t);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(st)){var zt=0,ae=0,ke=0;st==="round-diamond"?zt=(Tt+X+W)*1.4:st==="round-heptagon"?(zt=(Tt+X+W)*1.075,ke=-(Tt/2+X+W)/35):st==="round-hexagon"?zt=(Tt+X+W)*1.12:st==="round-pentagon"?(zt=(Tt+X+W)*1.13,ke=-(Tt/2+X+W)/15):st==="round-tag"?(zt=(Tt+X+W)*1.12,ae=(Tt/2+W+X)*.07):st==="round-triangle"&&(zt=(Tt+X+W)*(Math.PI/2),ke=-(Tt+X/2+W)/Math.PI),zt!==0&&(kt=(l+zt)/l,At=l*kt,["round-hexagon","round-tag"].includes(st)||(Ct=(u+zt)/u,$t=u*Ct)),J=J==="auto"?o1t(At,$t):J;for(var Ee=At/2,le=$t/2,Zt=J+(Tt+W+X)/2,me=new Array(Nt.length/2),Ht=new Array(Nt.length/2),ne=0;ne0){if(i=i||n.position(),a==null||s==null){var m=n.padding();a=n.width()+2*m,s=n.height()+2*m}l.colorFillStyle(r,f[0],f[1],f[2],h),l.nodeShapes[d].draw(r,i.x,i.y,a+u*2,s+u*2,p),r.fill()}}}},"drawNodeOverlayUnderlay");I1.drawNodeOverlay=uyt("overlay");I1.drawNodeUnderlay=uyt("underlay");I1.hasPie=function(e){return e=e[0],e._private.hasPie};I1.drawPie=function(e,t,r,n){t=t[0],n=n||t.position();var i=t.cy().style(),a=t.pstyle("pie-size"),s=n.x,l=n.y,u=t.width(),h=t.height(),f=Math.min(u,h)/2,d=0,p=this.usePaths();p&&(s=0,l=0),a.units==="%"?f=f*a.pfValue:a.pfValue!==void 0&&(f=a.pfValue/2);for(var m=1;m<=i.pieBackgroundN;m++){var g=t.pstyle("pie-"+m+"-background-size").value,y=t.pstyle("pie-"+m+"-background-color").value,v=t.pstyle("pie-"+m+"-background-opacity").value*r,x=g/100;x+d>1&&(x=1-d);var b=1.5*Math.PI+2*Math.PI*d,w=2*Math.PI*x,S=b+w;g===0||d>=1||d+x>1||(e.beginPath(),e.moveTo(s,l),e.arc(s,l,f,b,S),e.closePath(),this.colorFillStyle(e,y[0],y[1],y[2],v),e.fill(),d+=x)}};To={},Wee=100;To.getPixelRatio=function(){var e=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var t=this.cy.window(),r=e.backingStorePixelRatio||e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return(t.devicePixelRatio||1)/r};To.paintCache=function(e){for(var t=this.paintCaches=this.paintCaches||[],r=!0,n,i=0;is.minMbLowQualFrames&&(s.motionBlurPxRatio=s.mbPxRBlurry)),s.clearingMotionBlur&&(s.motionBlurPxRatio=1),s.textureDrawLastFrame&&!d&&(f[s.NODE]=!0,f[s.SELECT_BOX]=!0);var b=u.style(),w=u.zoom(),S=i!==void 0?i:w,T=u.pan(),E={x:T.x,y:T.y},_={zoom:w,pan:{x:T.x,y:T.y}},A=s.prevViewport,L=A===void 0||_.zoom!==A.zoom||_.pan.x!==A.pan.x||_.pan.y!==A.pan.y;!L&&!(y&&!g)&&(s.motionBlurPxRatio=1),a&&(E=a),S*=l,E.x*=l,E.y*=l;var M=s.getCachedZSortedEles();function N(ut,et,Mt,it,wt){var Ot=ut.globalCompositeOperation;ut.globalCompositeOperation="destination-out",s.colorFillStyle(ut,255,255,255,s.motionBlurTransparency),ut.fillRect(et,Mt,it,wt),ut.globalCompositeOperation=Ot}o(N,"mbclear");function k(ut,et){var Mt,it,wt,Ot;!s.clearingMotionBlur&&(ut===h.bufferContexts[s.MOTIONBLUR_BUFFER_NODE]||ut===h.bufferContexts[s.MOTIONBLUR_BUFFER_DRAG])?(Mt={x:T.x*m,y:T.y*m},it=w*m,wt=s.canvasWidth*m,Ot=s.canvasHeight*m):(Mt=E,it=S,wt=s.canvasWidth,Ot=s.canvasHeight),ut.setTransform(1,0,0,1,0,0),et==="motionBlur"?N(ut,0,0,wt,Ot):!t&&(et===void 0||et)&&ut.clearRect(0,0,wt,Ot),r||(ut.translate(Mt.x,Mt.y),ut.scale(it,it)),a&&ut.translate(a.x,a.y),i&&ut.scale(i,i)}if(o(k,"setContextTransform"),d||(s.textureDrawLastFrame=!1),d){if(s.textureDrawLastFrame=!0,!s.textureCache){s.textureCache={},s.textureCache.bb=u.mutableElements().boundingBox(),s.textureCache.texture=s.data.bufferCanvases[s.TEXTURE_BUFFER];var I=s.data.bufferContexts[s.TEXTURE_BUFFER];I.setTransform(1,0,0,1,0,0),I.clearRect(0,0,s.canvasWidth*s.textureMult,s.canvasHeight*s.textureMult),s.render({forcedContext:I,drawOnlyNodeLayer:!0,forcedPxRatio:l*s.textureMult});var _=s.textureCache.viewport={zoom:u.zoom(),pan:u.pan(),width:s.canvasWidth,height:s.canvasHeight};_.mpan={x:(0-_.pan.x)/_.zoom,y:(0-_.pan.y)/_.zoom}}f[s.DRAG]=!1,f[s.NODE]=!1;var C=h.contexts[s.NODE],O=s.textureCache.texture,_=s.textureCache.viewport;C.setTransform(1,0,0,1,0,0),p?N(C,0,0,_.width,_.height):C.clearRect(0,0,_.width,_.height);var D=b.core("outside-texture-bg-color").value,P=b.core("outside-texture-bg-opacity").value;s.colorFillStyle(C,D[0],D[1],D[2],P),C.fillRect(0,0,_.width,_.height);var w=u.zoom();k(C,!1),C.clearRect(_.mpan.x,_.mpan.y,_.width/_.zoom/l,_.height/_.zoom/l),C.drawImage(O,_.mpan.x,_.mpan.y,_.width/_.zoom/l,_.height/_.zoom/l)}else s.textureOnViewport&&!t&&(s.textureCache=null);var F=u.extent(),B=s.pinching||s.hoverData.dragging||s.swipePanning||s.data.wheelZooming||s.hoverData.draggingEles||s.cy.animated(),G=s.hideEdgesOnViewport&&B,z=[];if(z[s.NODE]=!f[s.NODE]&&p&&!s.clearedForMotionBlur[s.NODE]||s.clearingMotionBlur,z[s.NODE]&&(s.clearedForMotionBlur[s.NODE]=!0),z[s.DRAG]=!f[s.DRAG]&&p&&!s.clearedForMotionBlur[s.DRAG]||s.clearingMotionBlur,z[s.DRAG]&&(s.clearedForMotionBlur[s.DRAG]=!0),f[s.NODE]||r||n||z[s.NODE]){var W=p&&!z[s.NODE]&&m!==1,C=t||(W?s.data.bufferContexts[s.MOTIONBLUR_BUFFER_NODE]:h.contexts[s.NODE]),Q=p&&!W?"motionBlur":void 0;k(C,Q),G?s.drawCachedNodes(C,M.nondrag,l,F):s.drawLayeredElements(C,M.nondrag,l,F),s.debug&&s.drawDebugPoints(C,M.nondrag),!r&&!p&&(f[s.NODE]=!1)}if(!n&&(f[s.DRAG]||r||z[s.DRAG])){var W=p&&!z[s.DRAG]&&m!==1,C=t||(W?s.data.bufferContexts[s.MOTIONBLUR_BUFFER_DRAG]:h.contexts[s.DRAG]);k(C,p&&!W?"motionBlur":void 0),G?s.drawCachedNodes(C,M.drag,l,F):s.drawCachedElements(C,M.drag,l,F),s.debug&&s.drawDebugPoints(C,M.drag),!r&&!p&&(f[s.DRAG]=!1)}if(s.showFps||!n&&f[s.SELECT_BOX]&&!r){var C=t||h.contexts[s.SELECT_BOX];if(k(C),s.selection[4]==1&&(s.hoverData.selecting||s.touchData.selecting)){var w=s.cy.zoom(),j=b.core("selection-box-border-width").value/w;C.lineWidth=j,C.fillStyle="rgba("+b.core("selection-box-color").value[0]+","+b.core("selection-box-color").value[1]+","+b.core("selection-box-color").value[2]+","+b.core("selection-box-opacity").value+")",C.fillRect(s.selection[0],s.selection[1],s.selection[2]-s.selection[0],s.selection[3]-s.selection[1]),j>0&&(C.strokeStyle="rgba("+b.core("selection-box-border-color").value[0]+","+b.core("selection-box-border-color").value[1]+","+b.core("selection-box-border-color").value[2]+","+b.core("selection-box-opacity").value+")",C.strokeRect(s.selection[0],s.selection[1],s.selection[2]-s.selection[0],s.selection[3]-s.selection[1]))}if(h.bgActivePosistion&&!s.hoverData.selecting){var w=s.cy.zoom(),at=h.bgActivePosistion;C.fillStyle="rgba("+b.core("active-bg-color").value[0]+","+b.core("active-bg-color").value[1]+","+b.core("active-bg-color").value[2]+","+b.core("active-bg-opacity").value+")",C.beginPath(),C.arc(at.x,at.y,b.core("active-bg-size").pfValue/w,0,2*Math.PI),C.fill()}var X=s.lastRedrawTime;if(s.showFps&&X){X=Math.round(X);var J=Math.round(1e3/X);C.setTransform(1,0,0,1,0,0),C.fillStyle="rgba(255, 0, 0, 0.75)",C.strokeStyle="rgba(255, 0, 0, 0.75)",C.lineWidth=1,C.fillText("1 frame = "+X+" ms = "+J+" fps",0,20);var Z=60;C.strokeRect(0,30,250,20),C.fillRect(0,30,250*Math.min(J/Z,1),20)}r||(f[s.SELECT_BOX]=!1)}if(p&&m!==1){var H=h.contexts[s.NODE],q=s.data.bufferCanvases[s.MOTIONBLUR_BUFFER_NODE],K=h.contexts[s.DRAG],ot=s.data.bufferCanvases[s.MOTIONBLUR_BUFFER_DRAG],ct=o(function(et,Mt,it){et.setTransform(1,0,0,1,0,0),it||!x?et.clearRect(0,0,s.canvasWidth,s.canvasHeight):N(et,0,0,s.canvasWidth,s.canvasHeight);var wt=m;et.drawImage(Mt,0,0,s.canvasWidth*wt,s.canvasHeight*wt,0,0,s.canvasWidth,s.canvasHeight)},"drawMotionBlur");(f[s.NODE]||z[s.NODE])&&(ct(H,q,z[s.NODE]),f[s.NODE]=!1),(f[s.DRAG]||z[s.DRAG])&&(ct(K,ot,z[s.DRAG]),f[s.DRAG]=!1)}s.prevViewport=_,s.clearingMotionBlur&&(s.clearingMotionBlur=!1,s.motionBlurCleared=!0,s.motionBlur=!0),p&&(s.motionBlurTimeout=setTimeout(function(){s.motionBlurTimeout=null,s.clearedForMotionBlur[s.NODE]=!1,s.clearedForMotionBlur[s.DRAG]=!1,s.motionBlur=!1,s.clearingMotionBlur=!d,s.mbFrames=0,f[s.NODE]=!0,f[s.DRAG]=!0,s.redraw()},Wee)),t||u.emit("render")};Bf={};Bf.drawPolygonPath=function(e,t,r,n,i,a){var s=n/2,l=i/2;e.beginPath&&e.beginPath(),e.moveTo(t+s*a[0],r+l*a[1]);for(var u=1;u0&&s>0){m.clearRect(0,0,a,s),m.globalCompositeOperation="source-over";var g=this.getCachedZSortedEles();if(e.full)m.translate(-n.x1*h,-n.y1*h),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(n.x1*h,n.y1*h);else{var y=t.pan(),v={x:y.x*h,y:y.y*h};h*=t.zoom(),m.translate(v.x,v.y),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(-v.x,-v.y)}e.bg&&(m.globalCompositeOperation="destination-over",m.fillStyle=e.bg,m.rect(0,0,a,s),m.fill())}return p};o(Yee,"b64ToBlob");o(Igt,"b64UriToB64");o(fyt,"output");Nb.png=function(e){return fyt(e,this.bufferCanvasImage(e),"image/png")};Nb.jpg=function(e){return fyt(e,this.bufferCanvasImage(e),"image/jpeg")};dyt={};dyt.nodeShapeImpl=function(e,t,r,n,i,a,s,l){switch(e){case"ellipse":return this.drawEllipsePath(t,r,n,i,a);case"polygon":return this.drawPolygonPath(t,r,n,i,a,s);case"round-polygon":return this.drawRoundPolygonPath(t,r,n,i,a,s,l);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(t,r,n,i,a,l);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(t,r,n,i,a,s,l);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(t,r,n,i,a,l);case"barrel":return this.drawBarrelPath(t,r,n,i,a)}};qee=pyt,Kr=pyt.prototype;Kr.CANVAS_LAYERS=3;Kr.SELECT_BOX=0;Kr.DRAG=1;Kr.NODE=2;Kr.BUFFER_COUNT=3;Kr.TEXTURE_BUFFER=0;Kr.MOTIONBLUR_BUFFER_NODE=1;Kr.MOTIONBLUR_BUFFER_DRAG=2;o(pyt,"CanvasRenderer");Kr.redrawHint=function(e,t){var r=this;switch(e){case"eles":r.data.canvasNeedsRedraw[Kr.NODE]=t;break;case"drag":r.data.canvasNeedsRedraw[Kr.DRAG]=t;break;case"select":r.data.canvasNeedsRedraw[Kr.SELECT_BOX]=t;break}};Xee=typeof Path2D<"u";Kr.path2dEnabled=function(e){if(e===void 0)return this.pathsEnabled;this.pathsEnabled=!!e};Kr.usePaths=function(){return Xee&&this.pathsEnabled};Kr.setImgSmoothing=function(e,t){e.imageSmoothingEnabled!=null?e.imageSmoothingEnabled=t:(e.webkitImageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t,e.msImageSmoothingEnabled=t)};Kr.getImgSmoothing=function(e){return e.imageSmoothingEnabled!=null?e.imageSmoothingEnabled:e.webkitImageSmoothingEnabled||e.mozImageSmoothingEnabled||e.msImageSmoothingEnabled};Kr.makeOffscreenCanvas=function(e,t){var r;if((typeof OffscreenCanvas>"u"?"undefined":ji(OffscreenCanvas))!=="undefined")r=new OffscreenCanvas(e,t);else{var n=this.cy.window(),i=n.document;r=i.createElement("canvas"),r.width=e,r.height=t}return r};[lyt,tu,ah,AF,np,I1,To,Bf,Nb,dyt].forEach(function(e){ir(Kr,e)});jee=[{name:"null",impl:j1t},{name:"base",impl:ayt},{name:"canvas",impl:qee}],Kee=[{type:"layout",extensions:ree},{type:"renderer",extensions:jee}],myt={},gyt={};o(yyt,"setExtension");o(vyt,"getExtension");o(Qee,"setModule");o(Zee,"getModule");nF=o(function(){if(arguments.length===2)return vyt.apply(null,arguments);if(arguments.length===3)return yyt.apply(null,arguments);if(arguments.length===4)return Zee.apply(null,arguments);if(arguments.length===5)return Qee.apply(null,arguments);fi("Invalid extension access syntax")},"extension");kb.prototype.extension=nF;Kee.forEach(function(e){e.extensions.forEach(function(t){yyt(e.type,t.name,t.impl)})});xyt=o(function e(){if(!(this instanceof e))return new e;this.length=0},"Stylesheet"),ep=xyt.prototype;ep.instanceString=function(){return"stylesheet"};ep.selector=function(e){var t=this.length++;return this[t]={selector:e,properties:[]},this};ep.css=function(e,t){var r=this.length-1;if(Ke(e))this[r].properties.push({name:e,value:t});else if(Ur(e))for(var n=e,i=Object.keys(n),a=0;a{"use strict";o(function(t,r){typeof Mb=="object"&&typeof LF=="object"?LF.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Mb=="object"?Mb.layoutBase=r():t.layoutBase=r()},"webpackUniversalModuleDefinition")(Mb,function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=e,r.c=t,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=26)}([function(e,t,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,e.exports=n},function(e,t,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},e.exports=s},function(e,t,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),e.exports=n},function(e,t,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(4);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp&&(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)),this.labelHeight>m&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-m)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-m),this.setHeight(this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},e.exports=h},function(e,t,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},e.exports=n},function(e,t,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(6),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,w=0;w-1&&E>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(T,1),x.target!=x.source&&x.target.edges.splice(E,1);var S=x.source.owner.getEdges().indexOf(x);if(S==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(S,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,w=this.getNodes(),S=w.length,T=0;Tv&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(w[0].getParent().paddingLeft!=null?b=w[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,w,S,T,E,_,A=this.nodes,L=A.length,M=0;Mw&&(y=w),vT&&(x=T),bw&&(y=w),vT&&(x=T),b=this.nodes.length){var L=0;v.forEach(function(M){M.owner==g&&L++}),L==this.nodes.length&&(this.isConnected=!0)}},e.exports=p},function(e,t,r){"use strict";var n,i=r(1);function a(s){n=r(5),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=A,!1;if(hf)return l[0]=p,l[1]=h,l[2]=E,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,k=!0):(l[0]=g,l[1]=m,k=!0):C===D&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=x,l[1]=v,k=!0)),-O===D?f>u?(l[2]=_,l[3]=A,I=!0):(l[2]=E,l[3]=T,I=!0):O===D&&(f>u?(l[2]=S,l[3]=T,I=!0):(l[2]=L,l[3]=A,I=!0)),k&&I)return!1;if(u>f?h>d?(P=this.getCardinalDirection(C,D,4),F=this.getCardinalDirection(O,D,2)):(P=this.getCardinalDirection(-C,D,3),F=this.getCardinalDirection(-O,D,1)):h>d?(P=this.getCardinalDirection(-C,D,1),F=this.getCardinalDirection(-O,D,3)):(P=this.getCardinalDirection(C,D,2),F=this.getCardinalDirection(O,D,4)),!k)switch(P){case 1:G=m,B=u+-w/D,l[0]=B,l[1]=G;break;case 2:B=x,G=h+b*D,l[0]=B,l[1]=G;break;case 3:G=v,B=u+w/D,l[0]=B,l[1]=G;break;case 4:B=y,G=h+-b*D,l[0]=B,l[1]=G;break}if(!I)switch(F){case 1:W=T,z=f+-N/D,l[2]=z,l[3]=W;break;case 2:z=L,W=d+M*D,l[2]=z,l[3]=W;break;case 3:W=A,z=f+N/D,l[2]=z,l[3]=W;break;case 4:z=_,W=d+-M*D,l[2]=z,l[3]=W;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,w=void 0,S=void 0,T=void 0,E=void 0,_=void 0,A=void 0,L=void 0;return w=p-f,T=h-d,_=d*f-h*p,S=v-g,E=m-y,A=y*g-m*v,L=w*E-S*T,L===0?null:(x=(T*A-E*_)/L,b=(S*_-w*A)/L,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},e.exports=n},function(e,t,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,e.exports=n},function(e,t,r){"use strict";var n=function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},e.exports=i},function(e,t,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(w.push(T[0]);w.length>0&&g;){var E=w[0];w.splice(0,1),b.add(E);for(var _=E.getEdges(),x=0;x<_.length;x++){var A=_[x].getOtherEnd(E);if(S.get(E)!=A)if(!b.has(A))w.push(A),S.set(A,E);else{g=!1;break}}}if(!g)m=[];else{var L=[].concat(n(b));m.push(L);for(var x=0;x-1&&T.splice(N,1)}b=new Set,S=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(A,1);var L=S.getNeighborsList();L.forEach(function(k){if(y.indexOf(k)<0){var I=v.get(k),C=I-1;C==1&&E.push(k),v.set(k,C)}})}y=y.concat(E),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},e.exports=p},function(e,t,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},e.exports=n},function(e,t,r){"use strict";var n=r(4);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},e.exports=i},function(e,t,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mw||b>w)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(w=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>w||b>w)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||w>=x[0].length)){for(var S=0;Sh},"_defaultCompareFunction")}]),l}();e.exports=s},function(e,t,r){"use strict";var n=function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o(function(t,r){typeof Ib=="object"&&typeof RF=="object"?RF.exports=r(DF()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof Ib=="object"?Ib.coseBase=r(DF()):t.coseBase=r(t.layoutBase)},"webpackUniversalModuleDefinition")(Ib,function(e){return function(t){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return t[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=t,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=7)}([function(t,r){t.exports=e},function(t,r,n){"use strict";var i=n(0).FDLayoutConstants;function a(){}o(a,"CoSEConstants");for(var s in i)a[s]=i[s];a.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,a.DEFAULT_RADIAL_SEPARATION=i.DEFAULT_EDGE_LENGTH,a.DEFAULT_COMPONENT_SEPERATION=60,a.TILE=!0,a.TILING_PADDING_VERTICAL=10,a.TILING_PADDING_HORIZONTAL=10,a.TREE_REDUCTION_ON_INCREMENTAL=!1,t.exports=a},function(t,r,n){"use strict";var i=n(0).FDLayoutEdge;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEEdge"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];t.exports=a},function(t,r,n){"use strict";var i=n(0).LGraph;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEGraph"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];t.exports=a},function(t,r,n){"use strict";var i=n(0).LGraphManager;function a(l){i.call(this,l)}o(a,"CoSEGraphManager"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];t.exports=a},function(t,r,n){"use strict";var i=n(0).FDLayoutNode,a=n(0).IMath;function s(u,h,f,d){i.call(this,u,h,f,d)}o(s,"CoSENode"),s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.move=function(){var u=this.graphManager.getLayout();this.displacementX=u.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=u.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementX=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementX)),Math.abs(this.displacementY)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementY=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),u.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},s.prototype.propogateDisplacementToChildren=function(u,h){for(var f=this.getChild().getNodes(),d,p=0;p0)this.positionNodesRadially(T);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),_=this.nodesWithGravity.filter(function(A){return E.has(A)});this.graphManager.setAllNodesToApplyGravitation(_),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},w.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;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle: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 T=new Set(this.getAllNodes()),E=this.nodesWithGravity.filter(function(L){return T.has(L)});this.graphManager.setAllNodesToApplyGravitation(E),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;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=f.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var _=!this.isTreeGrowing&&!this.isGrowthFinished,A=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(_,A),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},w.prototype.getPositionsData=function(){for(var T=this.graphManager.getAllNodes(),E={},_=0;_1){var k;for(k=0;kA&&(A=Math.floor(N.y)),M=Math.floor(N.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new m(d.WORLD_CENTER_X-N.x/2,d.WORLD_CENTER_Y-N.y/2))},w.radialLayout=function(T,E,_){var A=Math.max(this.maxDiagonalInTree(T),h.DEFAULT_RADIAL_SEPARATION);w.branchRadialLayout(E,null,0,359,0,A);var L=x.calculateBounds(T),M=new b;M.setDeviceOrgX(L.getMinX()),M.setDeviceOrgY(L.getMinY()),M.setWorldOrgX(_.x),M.setWorldOrgY(_.y);for(var N=0;N1;){var Q=W[0];W.splice(0,1);var j=P.indexOf(Q);j>=0&&P.splice(j,1),G--,F--}E!=null?z=(P.indexOf(W[0])+1)%G:z=0;for(var at=Math.abs(A-_)/F,X=z;B!=F;X=++X%G){var J=P[X].getOtherEnd(T);if(J!=E){var Z=(_+B*at)%360,H=(Z+at)%360;w.branchRadialLayout(J,T,Z,H,L+M,M),B++}}},w.maxDiagonalInTree=function(T){for(var E=y.MIN_VALUE,_=0;_E&&(E=L)}return E},w.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},w.prototype.groupZeroDegreeMembers=function(){var T=this,E={};this.memberGroups={},this.idToDummyNode={};for(var _=[],A=this.graphManager.getAllNodes(),L=0;L"u"&&(E[k]=[]),E[k]=E[k].concat(M)}Object.keys(E).forEach(function(I){if(E[I].length>1){var C="DummyCompound_"+I;T.memberGroups[C]=E[I];var O=E[I][0].getParent(),D=new l(T.graphManager);D.id=C,D.paddingLeft=O.paddingLeft||0,D.paddingRight=O.paddingRight||0,D.paddingBottom=O.paddingBottom||0,D.paddingTop=O.paddingTop||0,T.idToDummyNode[C]=D;var P=T.getGraphManager().add(T.newGraph(),D),F=O.getChild();F.add(D);for(var B=0;B=0;T--){var E=this.compoundOrder[T],_=E.id,A=E.paddingLeft,L=E.paddingTop;this.adjustLocations(this.tiledMemberPack[_],E.rect.x,E.rect.y,A,L)}},w.prototype.repopulateZeroDegreeMembers=function(){var T=this,E=this.tiledZeroDegreePack;Object.keys(E).forEach(function(_){var A=T.idToDummyNode[_],L=A.paddingLeft,M=A.paddingTop;T.adjustLocations(E[_],A.rect.x,A.rect.y,L,M)})},w.prototype.getToBeTiled=function(T){var E=T.id;if(this.toBeTiled[E]!=null)return this.toBeTiled[E];var _=T.getChild();if(_==null)return this.toBeTiled[E]=!1,!1;for(var A=_.getNodes(),L=0;L0)return this.toBeTiled[E]=!1,!1;if(M.getChild()==null){this.toBeTiled[M.id]=!1;continue}if(!this.getToBeTiled(M))return this.toBeTiled[E]=!1,!1}return this.toBeTiled[E]=!0,!0},w.prototype.getNodeDegree=function(T){for(var E=T.id,_=T.getEdges(),A=0,L=0;L<_.length;L++){var M=_[L];M.getSource().id!==M.getTarget().id&&(A=A+1)}return A},w.prototype.getNodeDegreeWithChildren=function(T){var E=this.getNodeDegree(T);if(T.getChild()==null)return E;for(var _=T.getChild().getNodes(),A=0;A<_.length;A++){var L=_[A];E+=this.getNodeDegreeWithChildren(L)}return E},w.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},w.prototype.fillCompexOrderByDFS=function(T){for(var E=0;EI&&(I=O.rect.height)}_+=I+T.verticalPadding}},w.prototype.tileCompoundMembers=function(T,E){var _=this;this.tiledMemberPack=[],Object.keys(T).forEach(function(A){var L=E[A];_.tiledMemberPack[A]=_.tileNodes(T[A],L.paddingLeft+L.paddingRight),L.rect.width=_.tiledMemberPack[A].width,L.rect.height=_.tiledMemberPack[A].height})},w.prototype.tileNodes=function(T,E){var _=h.TILING_PADDING_VERTICAL,A=h.TILING_PADDING_HORIZONTAL,L={rows:[],rowWidth:[],rowHeight:[],width:0,height:E,verticalPadding:_,horizontalPadding:A};T.sort(function(k,I){return k.rect.width*k.rect.height>I.rect.width*I.rect.height?-1:k.rect.width*k.rect.height0&&(N+=T.horizontalPadding),T.rowWidth[_]=N,T.width0&&(k+=T.verticalPadding);var I=0;k>T.rowHeight[_]&&(I=T.rowHeight[_],T.rowHeight[_]=k,I=T.rowHeight[_]-I),T.height+=I,T.rows[_].push(E)},w.prototype.getShortestRowIndex=function(T){for(var E=-1,_=Number.MAX_VALUE,A=0;A_&&(E=A,_=T.rowWidth[A]);return E},w.prototype.canAddHorizontal=function(T,E,_){var A=this.getShortestRowIndex(T);if(A<0)return!0;var L=T.rowWidth[A];if(L+T.horizontalPadding+E<=T.width)return!0;var M=0;T.rowHeight[A]<_&&A>0&&(M=_+T.verticalPadding-T.rowHeight[A]);var N;T.width-L>=E+T.horizontalPadding?N=(T.height+M)/(L+E+T.horizontalPadding):N=(T.height+M)/T.width,M=_+T.verticalPadding;var k;return T.widthM&&E!=_){A.splice(-1,1),T.rows[_].push(L),T.rowWidth[E]=T.rowWidth[E]-M,T.rowWidth[_]=T.rowWidth[_]+M,T.width=T.rowWidth[instance.getLongestRowIndex(T)];for(var N=Number.MIN_VALUE,k=0;kN&&(N=A[k].height);E>0&&(N+=T.verticalPadding);var I=T.rowHeight[E]+T.rowHeight[_];T.rowHeight[E]=N,T.rowHeight[_]0)for(var F=L;F<=M;F++)P[0]+=this.grid[F][N-1].length+this.grid[F][N].length-1;if(M0)for(var F=N;F<=k;F++)P[3]+=this.grid[L-1][F].length+this.grid[L][F].length-1;for(var B=y.MAX_VALUE,G,z,W=0;W{"use strict";o(function(t,r){typeof Ob=="object"&&typeof MF=="object"?MF.exports=r(NF()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof Ob=="object"?Ob.cytoscapeCoseBilkent=r(NF()):t.cytoscapeCoseBilkent=r(t.coseBase)},"webpackUniversalModuleDefinition")(Ob,function(e){return function(t){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return t[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=t,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=1)}([function(t,r){t.exports=e},function(t,r,n){"use strict";var i=n(0).layoutBase.LayoutConstants,a=n(0).layoutBase.FDLayoutConstants,s=n(0).CoSEConstants,l=n(0).CoSELayout,u=n(0).CoSENode,h=n(0).layoutBase.PointD,f=n(0).layoutBase.DimensionD,d={ready:o(function(){},"ready"),stop:o(function(){},"stop"),quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:.45,nestingFactor:.1,gravity:.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:.5};function p(v,x){var b={};for(var w in v)b[w]=v[w];for(var w in x)b[w]=x[w];return b}o(p,"extend");function m(v){this.options=p(d,v),g(this.options)}o(m,"_CoSELayout");var g=o(function(x){x.nodeRepulsion!=null&&(s.DEFAULT_REPULSION_STRENGTH=a.DEFAULT_REPULSION_STRENGTH=x.nodeRepulsion),x.idealEdgeLength!=null&&(s.DEFAULT_EDGE_LENGTH=a.DEFAULT_EDGE_LENGTH=x.idealEdgeLength),x.edgeElasticity!=null&&(s.DEFAULT_SPRING_STRENGTH=a.DEFAULT_SPRING_STRENGTH=x.edgeElasticity),x.nestingFactor!=null&&(s.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=x.nestingFactor),x.gravity!=null&&(s.DEFAULT_GRAVITY_STRENGTH=a.DEFAULT_GRAVITY_STRENGTH=x.gravity),x.numIter!=null&&(s.MAX_ITERATIONS=a.MAX_ITERATIONS=x.numIter),x.gravityRange!=null&&(s.DEFAULT_GRAVITY_RANGE_FACTOR=a.DEFAULT_GRAVITY_RANGE_FACTOR=x.gravityRange),x.gravityCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_STRENGTH=a.DEFAULT_COMPOUND_GRAVITY_STRENGTH=x.gravityCompound),x.gravityRangeCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=x.gravityRangeCompound),x.initialEnergyOnIncremental!=null&&(s.DEFAULT_COOLING_FACTOR_INCREMENTAL=a.DEFAULT_COOLING_FACTOR_INCREMENTAL=x.initialEnergyOnIncremental),x.quality=="draft"?i.QUALITY=0:x.quality=="proof"?i.QUALITY=2:i.QUALITY=1,s.NODE_DIMENSIONS_INCLUDE_LABELS=a.NODE_DIMENSIONS_INCLUDE_LABELS=i.NODE_DIMENSIONS_INCLUDE_LABELS=x.nodeDimensionsIncludeLabels,s.DEFAULT_INCREMENTAL=a.DEFAULT_INCREMENTAL=i.DEFAULT_INCREMENTAL=!x.randomize,s.ANIMATE=a.ANIMATE=i.ANIMATE=x.animate,s.TILE=x.tile,s.TILING_PADDING_VERTICAL=typeof x.tilingPaddingVertical=="function"?x.tilingPaddingVertical.call():x.tilingPaddingVertical,s.TILING_PADDING_HORIZONTAL=typeof x.tilingPaddingHorizontal=="function"?x.tilingPaddingHorizontal.call():x.tilingPaddingHorizontal},"getUserOptions");m.prototype.run=function(){var v,x,b=this.options,w=this.idToLNode={},S=this.layout=new l,T=this;T.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var E=S.newGraphManager();this.gm=E;var _=this.options.eles.nodes(),A=this.options.eles.edges();this.root=E.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(_),S);for(var L=0;L0){var k;k=b.getGraphManager().add(b.newGraph(),_),this.processChildrenList(k,E,b)}}},m.prototype.stop=function(){return this.stopped=!0,this};var y=o(function(x){x("layout","cose-bilkent",m)},"register");typeof cytoscape<"u"&&y(cytoscape),t.exports=y}])})});function sre(e,t,r,n,i){return e.insert("polygon",":first-child").attr("points",n.map(function(a){return a.x+","+a.y}).join(" ")).attr("transform","translate("+(i.width-t)/2+", "+r+")")}var tre,ere,rre,nre,ire,are,ore,lre,wyt,Tyt,kyt=R(()=>{"use strict";Nl();_r();tre=12,ere=o(function(e,t,r,n){t.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.type2Str(r.type)).attr("d",`M0 ${r.height-5} v${-r.height+2*5} q0,-5 5,-5 h${r.width-2*5} q5,0 5,5 v${r.height-5} H0 Z`),t.append("line").attr("class","node-line-"+n).attr("x1",0).attr("y1",r.height).attr("x2",r.width).attr("y2",r.height)},"defaultBkg"),rre=o(function(e,t,r){t.append("rect").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.type2Str(r.type)).attr("height",r.height).attr("width",r.width)},"rectBkg"),nre=o(function(e,t,r){let n=r.width,i=r.height,a=.15*n,s=.25*n,l=.35*n,u=.2*n;t.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.type2Str(r.type)).attr("d",`M0 0 a${a},${a} 0 0,1 ${n*.25},${-1*n*.1} a${l},${l} 1 0,1 ${n*.4},${-1*n*.1} a${s},${s} 1 0,1 ${n*.35},${1*n*.2} a${a},${a} 1 0,1 ${n*.15},${1*i*.35} a${u},${u} 1 0,1 ${-1*n*.15},${1*i*.65} a${s},${a} 1 0,1 ${-1*n*.25},${n*.15} a${l},${l} 1 0,1 ${-1*n*.5},0 a${a},${a} 1 0,1 ${-1*n*.25},${-1*n*.15} a${a},${a} 1 0,1 ${-1*n*.1},${-1*i*.35} a${u},${u} 1 0,1 ${n*.1},${-1*i*.65} H0 V0 Z`)},"cloudBkg"),ire=o(function(e,t,r){let n=r.width,i=r.height,a=.15*n;t.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.type2Str(r.type)).attr("d",`M0 0 a${a},${a} 1 0,0 ${n*.25},${-1*i*.1} a${a},${a} 1 0,0 ${n*.25},0 a${a},${a} 1 0,0 ${n*.25},0 a${a},${a} 1 0,0 ${n*.25},${1*i*.1} a${a},${a} 1 0,0 ${n*.15},${1*i*.33} a${a*.8},${a*.8} 1 0,0 0,${1*i*.34} a${a},${a} 1 0,0 ${-1*n*.15},${1*i*.33} a${a},${a} 1 0,0 ${-1*n*.25},${i*.15} a${a},${a} 1 0,0 ${-1*n*.25},0 a${a},${a} 1 0,0 ${-1*n*.25},0 a${a},${a} 1 0,0 ${-1*n*.25},${-1*i*.15} a${a},${a} 1 0,0 ${-1*n*.1},${-1*i*.33} a${a*.8},${a*.8} 1 0,0 0,${-1*i*.34} a${a},${a} 1 0,0 ${n*.1},${-1*i*.33} H0 V0 Z`)},"bangBkg"),are=o(function(e,t,r){t.append("circle").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.type2Str(r.type)).attr("r",r.width/2)},"circleBkg");o(sre,"insertPolygonShape");ore=o(function(e,t,r){let n=r.height,a=n/4,s=r.width-r.padding+2*a,l=[{x:a,y:0},{x:s-a,y:0},{x:s,y:-n/2},{x:s-a,y:-n},{x:a,y:-n},{x:0,y:-n/2}];sre(t,s,n,l,r)},"hexagonBkg"),lre=o(function(e,t,r){t.append("rect").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.type2Str(r.type)).attr("height",r.height).attr("rx",r.padding).attr("ry",r.padding).attr("width",r.width)},"roundedRectBkg"),wyt=o(async function(e,t,r,n,i){let a=i.htmlLabels,s=n%(tre-1),l=t.append("g");r.section=s;let u="section-"+s;s<0&&(u+=" section-root"),l.attr("class",(r.class?r.class+" ":"")+"mindmap-node "+u);let h=l.append("g"),f=l.append("g"),d=r.descr.replace(/()/g,` `);await ia(f,d,{useHtmlLabels:a,width:r.width,classes:"mindmap-node-label"},i),a||f.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");let p=f.node().getBBox(),[m]=Tc(i.fontSize);if(r.height=p.height+m*1.1*.5+r.padding,r.width=p.width+2*r.padding,r.icon)if(r.type===e.nodeType.CIRCLE)r.height+=50,r.width+=50,l.append("foreignObject").attr("height","50px").attr("width",r.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+s+" "+r.icon),f.attr("transform","translate("+r.width/2+", "+(r.height/2-1.5*r.padding)+")");else{r.width+=50;let g=r.height;r.height=Math.max(g,60);let y=Math.abs(r.height-g);l.append("foreignObject").attr("width","60px").attr("height",r.height).attr("style","text-align: center;margin-top:"+y/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+s+" "+r.icon),f.attr("transform","translate("+(25+r.width/2)+", "+(y/2+r.padding/2)+")")}else if(a){let g=(r.width-p.width)/2,y=(r.height-p.height)/2;f.attr("transform","translate("+g+", "+y+")")}else{let g=r.width/2,y=r.padding/2;f.attr("transform","translate("+g+", "+y+")")}switch(r.type){case e.nodeType.DEFAULT:ere(e,h,r,s);break;case e.nodeType.ROUNDED_RECT:lre(e,h,r,s);break;case e.nodeType.RECT:rre(e,h,r,s);break;case e.nodeType.CIRCLE:h.attr("transform","translate("+r.width/2+", "+ +r.height/2+")"),are(e,h,r,s);break;case e.nodeType.CLOUD:nre(e,h,r,s);break;case e.nodeType.BANG:ire(e,h,r,s);break;case e.nodeType.HEXAGON:ore(e,h,r,s);break}return e.setElementForId(r.id,l),r.height},"drawNode"),Tyt=o(function(e,t){let r=e.getElementById(t.id),n=t.x||0,i=t.y||0;r.attr("transform","translate("+n+","+i+")")},"positionNode")});async function Cyt(e,t,r,n,i){await wyt(e,t,r,n,i),r.children&&await Promise.all(r.children.map((a,s)=>Cyt(e,t,a,n<0?s:n,i)))}function cre(e,t){t.edges().map((r,n)=>{let i=r.data();if(r[0]._private.bodyBounds){let a=r[0]._private.rscratch;V.trace("Edge: ",n,i),e.insert("path").attr("d",`M ${a.startX},${a.startY} L ${a.midX},${a.midY} L${a.endX},${a.endY} `).attr("class","edge section-edge-"+i.section+" edge-depth-"+i.depth)}})}function Syt(e,t,r,n){t.add({group:"nodes",data:{id:e.id.toString(),labelText:e.descr,height:e.height,width:e.width,level:n,nodeId:e.id,padding:e.padding,type:e.type},position:{x:e.x,y:e.y}}),e.children&&e.children.forEach(i=>{Syt(i,t,r,n+1),t.add({group:"edges",data:{id:`${e.id}_${i.id}`,source:e.id,target:i.id,depth:n,section:i.section}})})}function ure(e,t){return new Promise(r=>{let n=Gt("body").append("div").attr("id","cy").attr("style","display:none"),i=sl({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});n.remove(),Syt(e,i,t,0),i.nodes().forEach(function(a){a.layoutDimensions=()=>{let s=a.data();return{w:s.width,h:s.height}}}),i.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),i.ready(a=>{V.info("Ready",a),r(i)})})}function hre(e,t){t.nodes().map((r,n)=>{let i=r.data();i.x=r.position().x,i.y=r.position().y,Tyt(e,i);let a=e.getElementById(i.nodeId);V.info("Id:",n,"Position: (",r.position().x,", ",r.position().y,")",i),a.attr("transform",`translate(${r.position().x-i.width/2}, ${r.position().y-i.height/2})`),a.attr("attr",`apa-${n})`)})}var Eyt,fre,Ayt,_yt=R(()=>{"use strict";_F();Eyt=Qi(byt(),1);ur();Ue();ce();xf();Jn();kyt();hl();sl.use(Eyt.default);o(Cyt,"drawNodes");o(cre,"drawEdges");o(Syt,"addNodes");o(ure,"layoutMindmap");o(hre,"positionNodes");fre=o(async(e,t,r,n)=>{V.debug(`Rendering mindmap diagram `+e);let i=n.db,a=i.getMindmap();if(!a)return;let s=pt();s.htmlLabels=!1;let l=Vs(t),u=l.append("g");u.attr("class","mindmap-edges");let h=l.append("g");h.attr("class","mindmap-nodes"),await Cyt(i,h,a,-1,s);let f=await ure(a,s);cre(u,f),hre(i,f),No(void 0,l,s.mindmap?.padding??Er.mindmap.padding,s.mindmap?.useMaxWidth??Er.mindmap.useMaxWidth)},"draw"),Ayt={draw:fre}});var dre,pre,Lyt,Dyt=R(()=>{"use strict";ul();dre=o(e=>{let t="";for(let r=0;r` .edge { stroke-width: 3; } ${dre(e)} .section-root rect, .section-root path, .section-root circle, .section-root polygon { fill: ${e.git0}; } .section-root text { fill: ${e.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; } `,"getStyles"),Lyt=pre});var Ryt={};xr(Ryt,{diagram:()=>mre});var mre,Nyt=R(()=>{"use strict";ymt();bmt();_yt();Dyt();mre={db:xmt,renderer:Ayt,parser:gmt,styles:Lyt}});var IF,Pb,Oyt=R(()=>{"use strict";IF=function(){var e=o(function(l,u,h,f){for(h=h||{},f=l.length;f--;h[l[f]]=u);return h},"o"),t=[1,9],r=[1,10],n=[1,5,10,12],i={trace:o(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:o(function(u,h,f,d,p,m,g){var y=m.length-1;switch(p){case 7:let v=d.findOrCreateNode(m[y-4].trim().replaceAll('""','"')),x=d.findOrCreateNode(m[y-2].trim().replaceAll('""','"')),b=parseFloat(m[y].trim());d.addLink(v,x,b);break;case 8:case 9:case 11:this.$=m[y];break;case 10:this.$=m[y-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:t,20:r},{1:[2,6],7:11,10:[1,12]},e(r,[2,4],{9:13,5:[1,14]}),{12:[1,15]},e(n,[2,8]),e(n,[2,9]),{19:[1,16]},e(n,[2,11]),{1:[2,1]},{1:[2,5]},e(r,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:t,20:r},{15:18,16:7,17:8,18:t,20:r},{18:[1,19]},e(r,[2,3]),{12:[1,20]},e(n,[2,10]),{15:21,16:7,17:8,18:t,20:r},e([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:o(function(u,h){if(h.recoverable)this.trace(u);else{var f=new Error(u);throw f.hash=h,f}},"parseError"),parse:o(function(u){var h=this,f=[0],d=[],p=[null],m=[],g=this.table,y="",v=0,x=0,b=0,w=2,S=1,T=m.slice.call(arguments,1),E=Object.create(this.lexer),_={yy:{}};for(var A in this.yy)Object.prototype.hasOwnProperty.call(this.yy,A)&&(_.yy[A]=this.yy[A]);E.setInput(u,_.yy),_.yy.lexer=E,_.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var L=E.yylloc;m.push(L);var M=E.options&&E.options.ranges;typeof _.yy.parseError=="function"?this.parseError=_.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function N(at){f.length=f.length-2*at,p.length=p.length-at,m.length=m.length-at}o(N,"popStack");function k(){var at;return at=d.pop()||E.lex()||S,typeof at!="number"&&(at instanceof Array&&(d=at,at=d.pop()),at=h.symbols_[at]||at),at}o(k,"lex");for(var I,C,O,D,P,F,B={},G,z,W,Q;;){if(O=f[f.length-1],this.defaultActions[O]?D=this.defaultActions[O]:((I===null||typeof I>"u")&&(I=k()),D=g[O]&&g[O][I]),typeof D>"u"||!D.length||!D[0]){var j="";Q=[];for(G in g[O])this.terminals_[G]&&G>w&&Q.push("'"+this.terminals_[G]+"'");E.showPosition?j="Parse error on line "+(v+1)+`: `+E.showPosition()+` Expecting `+Q.join(", ")+", got '"+(this.terminals_[I]||I)+"'":j="Parse error on line "+(v+1)+": Unexpected "+(I==S?"end of input":"'"+(this.terminals_[I]||I)+"'"),this.parseError(j,{text:E.match,token:this.terminals_[I]||I,line:E.yylineno,loc:L,expected:Q})}if(D[0]instanceof Array&&D.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+I);switch(D[0]){case 1:f.push(I),p.push(E.yytext),m.push(E.yylloc),f.push(D[1]),I=null,C?(I=C,C=null):(x=E.yyleng,y=E.yytext,v=E.yylineno,L=E.yylloc,b>0&&b--);break;case 2:if(z=this.productions_[D[1]][1],B.$=p[p.length-z],B._$={first_line:m[m.length-(z||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-(z||1)].first_column,last_column:m[m.length-1].last_column},M&&(B._$.range=[m[m.length-(z||1)].range[0],m[m.length-1].range[1]]),F=this.performAction.apply(B,[y,x,v,_.yy,D[1],p,m].concat(T)),typeof F<"u")return F;z&&(f=f.slice(0,-1*z*2),p=p.slice(0,-1*z),m=m.slice(0,-1*z)),f.push(this.productions_[D[1]][0]),p.push(B.$),m.push(B._$),W=g[f[f.length-2]][f[f.length-1]],f.push(W);break;case 3:return!0}}return!0},"parse")},a=function(){var l={EOF:1,parseError:o(function(h,f){if(this.yy.parser)this.yy.parser.parseError(h,f);else throw new Error(h)},"parseError"),setInput:o(function(u,h){return this.yy=h||this.yy||{},this._input=u,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]),this.offset=0,this},"setInput"),input:o(function(){var u=this._input[0];this.yytext+=u,this.yyleng++,this.offset++,this.match+=u,this.matched+=u;var h=u.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),u},"input"),unput:o(function(u){var h=u.length,f=u.split(/(?:\r\n?|\n)/g);this._input=u+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var d=this.match.split(/(?:\r\n?|\n)/g);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 p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===d.length?this.yylloc.first_column:0)+d[d.length-f.length].length-f[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(u){this.unput(this.match.slice(u))},"less"),pastInput:o(function(){var u=this.matched.substr(0,this.matched.length-this.match.length);return(u.length>20?"...":"")+u.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var u=this.match;return u.length<20&&(u+=this._input.substr(0,20-u.length)),(u.substr(0,20)+(u.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var u=this.pastInput(),h=new Array(u.length+1).join("-");return u+this.upcomingInput()+` `+h+"^"},"showPosition"),test_match:o(function(u,h){var f,d,p;if(this.options.backtrack_lexer&&(p={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&&(p.yylloc.range=this.yylloc.range.slice(0))),d=u[0].match(/(?:\r\n?|\n).*/g),d&&(this.yylineno+=d.length),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+u[0].length},this.yytext+=u[0],this.match+=u[0],this.matches=u,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(u[0].length),this.matched+=u[0],f=this.performAction.call(this,this.yy,this,h,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),f)return f;if(this._backtrack){for(var m in p)this[m]=p[m];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var u,h,f,d;this._more||(this.yytext="",this.match="");for(var p=this._currentRules(),m=0;mh[0].length)){if(h=f,d=m,this.options.backtrack_lexer){if(u=this.test_match(f,p[m]),u!==!1)return u;if(this._backtrack){h=!1;continue}else return!1}else if(!this.options.flex)break}return h?(u=this.test_match(h,p[d]),u!==!1?u:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var h=this.next();return h||this.lex()},"lex"),begin:o(function(h){this.conditionStack.push(h)},"begin"),popState:o(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:o(function(h){this.begin(h)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(h,f,d,p){var m=p;switch(d){case 0:return this.pushState("csv"),4;break;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;break;case 5:return 20;case 6:return this.popState("escaped_text"),18;break;case 7:return 19}},"anonymous"),rules:[/^(?:sankey-beta\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:[1,2,3,4,5,6,7],inclusive:!1},escaped_text:{rules:[6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return l}();i.lexer=a;function s(){this.yy={}}return o(s,"Parser"),s.prototype=i,i.Parser=s,new s}();IF.parser=IF;Pb=IF});var YC,qC,WC,xre,OF,bre,PF,wre,Tre,kre,Ere,Pyt,Byt=R(()=>{"use strict";Ue();hr();Ci();YC=[],qC=[],WC=new Map,xre=o(()=>{YC=[],qC=[],WC=new Map,Ar()},"clear"),OF=class{constructor(t,r,n=0){this.source=t;this.target=r;this.value=n}static{o(this,"SankeyLink")}},bre=o((e,t,r)=>{YC.push(new OF(e,t,r))},"addLink"),PF=class{constructor(t){this.ID=t}static{o(this,"SankeyNode")}},wre=o(e=>{e=Yt.sanitizeText(e,pt());let t=WC.get(e);return t===void 0&&(t=new PF(e),WC.set(e,t),qC.push(t)),t},"findOrCreateNode"),Tre=o(()=>qC,"getNodes"),kre=o(()=>YC,"getLinks"),Ere=o(()=>({nodes:qC.map(e=>({id:e.ID})),links:YC.map(e=>({source:e.source.ID,target:e.target.ID,value:e.value}))}),"getGraph"),Pyt={nodesMap:WC,getConfig:o(()=>pt().sankey,"getConfig"),getNodes:Tre,getLinks:kre,getGraph:Ere,addLink:bre,findOrCreateNode:wre,getAccTitle:Br,setAccTitle:Mr,getAccDescription:zr,setAccDescription:Fr,getDiagramTitle:Jr,setDiagramTitle:cn,clear:xre}});function Bb(e,t){let r;if(t===void 0)for(let n of e)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of e)(i=t(i,++n,e))!=null&&(r=i)&&(r=i)}return r}var Fyt=R(()=>{"use strict";o(Bb,"max")});function O1(e,t){let r;if(t===void 0)for(let n of e)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of e)(i=t(i,++n,e))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var zyt=R(()=>{"use strict";o(O1,"min")});function P1(e,t){let r=0;if(t===void 0)for(let n of e)(n=+n)&&(r+=n);else{let n=-1;for(let i of e)(i=+t(i,++n,e))&&(r+=i)}return r}var $yt=R(()=>{"use strict";o(P1,"sum")});var BF=R(()=>{"use strict";Fyt();zyt();$yt()});function Cre(e){return e.target.depth}function FF(e){return e.depth}function zF(e,t){return t-1-e.height}function Fb(e,t){return e.sourceLinks.length?e.depth:t-1}function $F(e){return e.targetLinks.length?e.depth:e.sourceLinks.length?O1(e.sourceLinks,Cre)-1:0}var GF=R(()=>{"use strict";BF();o(Cre,"targetDepth");o(FF,"left");o(zF,"right");o(Fb,"justify");o($F,"center")});function B1(e){return function(){return e}}var Gyt=R(()=>{"use strict";o(B1,"constant")});function Vyt(e,t){return XC(e.source,t.source)||e.index-t.index}function Uyt(e,t){return XC(e.target,t.target)||e.index-t.index}function XC(e,t){return e.y0-t.y0}function VF(e){return e.value}function Sre(e){return e.index}function Are(e){return e.nodes}function _re(e){return e.links}function Hyt(e,t){let r=e.get(t);if(!r)throw new Error("missing: "+t);return r}function Wyt({nodes:e}){for(let t of e){let r=t.y0,n=r;for(let i of t.sourceLinks)i.y0=r+i.width/2,r+=i.width;for(let i of t.targetLinks)i.y1=n+i.width/2,n+=i.width}}function jC(){let e=0,t=0,r=1,n=1,i=24,a=8,s,l=Sre,u=Fb,h,f,d=Are,p=_re,m=6;function g(){let O={nodes:d.apply(null,arguments),links:p.apply(null,arguments)};return y(O),v(O),x(O),b(O),T(O),Wyt(O),O}o(g,"sankey"),g.update=function(O){return Wyt(O),O},g.nodeId=function(O){return arguments.length?(l=typeof O=="function"?O:B1(O),g):l},g.nodeAlign=function(O){return arguments.length?(u=typeof O=="function"?O:B1(O),g):u},g.nodeSort=function(O){return arguments.length?(h=O,g):h},g.nodeWidth=function(O){return arguments.length?(i=+O,g):i},g.nodePadding=function(O){return arguments.length?(a=s=+O,g):a},g.nodes=function(O){return arguments.length?(d=typeof O=="function"?O:B1(O),g):d},g.links=function(O){return arguments.length?(p=typeof O=="function"?O:B1(O),g):p},g.linkSort=function(O){return arguments.length?(f=O,g):f},g.size=function(O){return arguments.length?(e=t=0,r=+O[0],n=+O[1],g):[r-e,n-t]},g.extent=function(O){return arguments.length?(e=+O[0][0],r=+O[1][0],t=+O[0][1],n=+O[1][1],g):[[e,t],[r,n]]},g.iterations=function(O){return arguments.length?(m=+O,g):m};function y({nodes:O,links:D}){for(let[F,B]of O.entries())B.index=F,B.sourceLinks=[],B.targetLinks=[];let P=new Map(O.map((F,B)=>[l(F,B,O),F]));for(let[F,B]of D.entries()){B.index=F;let{source:G,target:z}=B;typeof G!="object"&&(G=B.source=Hyt(P,G)),typeof z!="object"&&(z=B.target=Hyt(P,z)),G.sourceLinks.push(B),z.targetLinks.push(B)}if(f!=null)for(let{sourceLinks:F,targetLinks:B}of O)F.sort(f),B.sort(f)}o(y,"computeNodeLinks");function v({nodes:O}){for(let D of O)D.value=D.fixedValue===void 0?Math.max(P1(D.sourceLinks,VF),P1(D.targetLinks,VF)):D.fixedValue}o(v,"computeNodeValues");function x({nodes:O}){let D=O.length,P=new Set(O),F=new Set,B=0;for(;P.size;){for(let G of P){G.depth=B;for(let{target:z}of G.sourceLinks)F.add(z)}if(++B>D)throw new Error("circular link");P=F,F=new Set}}o(x,"computeNodeDepths");function b({nodes:O}){let D=O.length,P=new Set(O),F=new Set,B=0;for(;P.size;){for(let G of P){G.height=B;for(let{source:z}of G.targetLinks)F.add(z)}if(++B>D)throw new Error("circular link");P=F,F=new Set}}o(b,"computeNodeHeights");function w({nodes:O}){let D=Bb(O,B=>B.depth)+1,P=(r-e-i)/(D-1),F=new Array(D);for(let B of O){let G=Math.max(0,Math.min(D-1,Math.floor(u.call(null,B,D))));B.layer=G,B.x0=e+G*P,B.x1=B.x0+i,F[G]?F[G].push(B):F[G]=[B]}if(h)for(let B of F)B.sort(h);return F}o(w,"computeNodeLayers");function S(O){let D=O1(O,P=>(n-t-(P.length-1)*s)/P1(P,VF));for(let P of O){let F=t;for(let B of P){B.y0=F,B.y1=F+B.value*D,F=B.y1+s;for(let G of B.sourceLinks)G.width=G.value*D}F=(n-F+s)/(P.length+1);for(let B=0;BP.length)-1)),S(D);for(let P=0;P0))continue;let j=(W/Q-z.y0)*D;z.y0+=j,z.y1+=j,N(z)}h===void 0&&G.sort(XC),A(G,P)}}o(E,"relaxLeftToRight");function _(O,D,P){for(let F=O.length,B=F-2;B>=0;--B){let G=O[B];for(let z of G){let W=0,Q=0;for(let{target:at,value:X}of z.sourceLinks){let J=X*(at.layer-z.layer);W+=C(z,at)*J,Q+=J}if(!(Q>0))continue;let j=(W/Q-z.y0)*D;z.y0+=j,z.y1+=j,N(z)}h===void 0&&G.sort(XC),A(G,P)}}o(_,"relaxRightToLeft");function A(O,D){let P=O.length>>1,F=O[P];M(O,F.y0-s,P-1,D),L(O,F.y1+s,P+1,D),M(O,n,O.length-1,D),L(O,t,0,D)}o(A,"resolveCollisions");function L(O,D,P,F){for(;P1e-6&&(B.y0+=G,B.y1+=G),D=B.y1+s}}o(L,"resolveCollisionsTopToBottom");function M(O,D,P,F){for(;P>=0;--P){let B=O[P],G=(B.y1-D)*F;G>1e-6&&(B.y0-=G,B.y1-=G),D=B.y0-s}}o(M,"resolveCollisionsBottomToTop");function N({sourceLinks:O,targetLinks:D}){if(f===void 0){for(let{source:{sourceLinks:P}}of D)P.sort(Uyt);for(let{target:{targetLinks:P}}of O)P.sort(Vyt)}}o(N,"reorderNodeLinks");function k(O){if(f===void 0)for(let{sourceLinks:D,targetLinks:P}of O)D.sort(Uyt),P.sort(Vyt)}o(k,"reorderLinks");function I(O,D){let P=O.y0-(O.sourceLinks.length-1)*s/2;for(let{target:F,width:B}of O.sourceLinks){if(F===D)break;P+=B+s}for(let{source:F,width:B}of D.targetLinks){if(F===O)break;P-=B}return P}o(I,"targetTop");function C(O,D){let P=D.y0-(D.targetLinks.length-1)*s/2;for(let{source:F,width:B}of D.targetLinks){if(F===O)break;P+=B+s}for(let{target:F,width:B}of O.sourceLinks){if(F===D)break;P-=B}return P}return o(C,"sourceTop"),g}var Yyt=R(()=>{"use strict";BF();GF();Gyt();o(Vyt,"ascendingSourceBreadth");o(Uyt,"ascendingTargetBreadth");o(XC,"ascendingBreadth");o(VF,"value");o(Sre,"defaultId");o(Are,"defaultNodes");o(_re,"defaultLinks");o(Hyt,"find");o(Wyt,"computeLinkBreadths");o(jC,"Sankey")});function WF(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function qyt(){return new WF}var UF,HF,ip,Lre,YF,Xyt=R(()=>{"use strict";UF=Math.PI,HF=2*UF,ip=1e-6,Lre=HF-ip;o(WF,"Path");o(qyt,"path");WF.prototype=qyt.prototype={constructor:WF,moveTo:o(function(e,t){this._+="M"+(this._x0=this._x1=+e)+","+(this._y0=this._y1=+t)},"moveTo"),closePath:o(function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},"closePath"),lineTo:o(function(e,t){this._+="L"+(this._x1=+e)+","+(this._y1=+t)},"lineTo"),quadraticCurveTo:o(function(e,t,r,n){this._+="Q"+ +e+","+ +t+","+(this._x1=+r)+","+(this._y1=+n)},"quadraticCurveTo"),bezierCurveTo:o(function(e,t,r,n,i,a){this._+="C"+ +e+","+ +t+","+ +r+","+ +n+","+(this._x1=+i)+","+(this._y1=+a)},"bezierCurveTo"),arcTo:o(function(e,t,r,n,i){e=+e,t=+t,r=+r,n=+n,i=+i;var a=this._x1,s=this._y1,l=r-e,u=n-t,h=a-e,f=s-t,d=h*h+f*f;if(i<0)throw new Error("negative radius: "+i);if(this._x1===null)this._+="M"+(this._x1=e)+","+(this._y1=t);else if(d>ip)if(!(Math.abs(f*l-u*h)>ip)||!i)this._+="L"+(this._x1=e)+","+(this._y1=t);else{var p=r-a,m=n-s,g=l*l+u*u,y=p*p+m*m,v=Math.sqrt(g),x=Math.sqrt(d),b=i*Math.tan((UF-Math.acos((g+d-y)/(2*v*x)))/2),w=b/x,S=b/v;Math.abs(w-1)>ip&&(this._+="L"+(e+w*h)+","+(t+w*f)),this._+="A"+i+","+i+",0,0,"+ +(f*p>h*m)+","+(this._x1=e+S*l)+","+(this._y1=t+S*u)}},"arcTo"),arc:o(function(e,t,r,n,i,a){e=+e,t=+t,r=+r,a=!!a;var s=r*Math.cos(n),l=r*Math.sin(n),u=e+s,h=t+l,f=1^a,d=a?n-i:i-n;if(r<0)throw new Error("negative radius: "+r);this._x1===null?this._+="M"+u+","+h:(Math.abs(this._x1-u)>ip||Math.abs(this._y1-h)>ip)&&(this._+="L"+u+","+h),r&&(d<0&&(d=d%HF+HF),d>Lre?this._+="A"+r+","+r+",0,1,"+f+","+(e-s)+","+(t-l)+"A"+r+","+r+",0,1,"+f+","+(this._x1=u)+","+(this._y1=h):d>ip&&(this._+="A"+r+","+r+",0,"+ +(d>=UF)+","+f+","+(this._x1=e+r*Math.cos(i))+","+(this._y1=t+r*Math.sin(i))))},"arc"),rect:o(function(e,t,r,n){this._+="M"+(this._x0=this._x1=+e)+","+(this._y0=this._y1=+t)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},"rect"),toString:o(function(){return this._},"toString")};YF=qyt});var jyt=R(()=>{"use strict";Xyt()});function KC(e){return o(function(){return e},"constant")}var Kyt=R(()=>{"use strict";o(KC,"default")});function Qyt(e){return e[0]}function Zyt(e){return e[1]}var Jyt=R(()=>{"use strict";o(Qyt,"x");o(Zyt,"y")});var tvt,evt=R(()=>{"use strict";tvt=Array.prototype.slice});function Dre(e){return e.source}function Rre(e){return e.target}function Nre(e){var t=Dre,r=Rre,n=Qyt,i=Zyt,a=null;function s(){var l,u=tvt.call(arguments),h=t.apply(this,u),f=r.apply(this,u);if(a||(a=l=YF()),e(a,+n.apply(this,(u[0]=h,u)),+i.apply(this,u),+n.apply(this,(u[0]=f,u)),+i.apply(this,u)),l)return a=null,l+""||null}return o(s,"link"),s.source=function(l){return arguments.length?(t=l,s):t},s.target=function(l){return arguments.length?(r=l,s):r},s.x=function(l){return arguments.length?(n=typeof l=="function"?l:KC(+l),s):n},s.y=function(l){return arguments.length?(i=typeof l=="function"?l:KC(+l),s):i},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function Mre(e,t,r,n,i){e.moveTo(t,r),e.bezierCurveTo(t=(t+n)/2,r,t,i,n,i)}function qF(){return Nre(Mre)}var rvt=R(()=>{"use strict";jyt();evt();Kyt();Jyt();o(Dre,"linkSource");o(Rre,"linkTarget");o(Nre,"link");o(Mre,"curveHorizontal");o(qF,"linkHorizontal")});var nvt=R(()=>{"use strict";rvt()});function Ire(e){return[e.source.x1,e.y0]}function Ore(e){return[e.target.x0,e.y1]}function QC(){return qF().source(Ire).target(Ore)}var ivt=R(()=>{"use strict";nvt();o(Ire,"horizontalSource");o(Ore,"horizontalTarget");o(QC,"default")});var avt=R(()=>{"use strict";Yyt();GF();ivt()});var zb,svt=R(()=>{"use strict";zb=class e{static{o(this,"Uid")}static{this.count=0}static next(t){return new e(t+ ++e.count)}constructor(t){this.id=t,this.href=`#${t}`}toString(){return"url("+this.href+")"}}});var Pre,Bre,ovt,lvt=R(()=>{"use strict";Ue();ur();avt();Jn();svt();Pre={left:FF,right:zF,center:$F,justify:Fb},Bre=o(function(e,t,r,n){let{securityLevel:i,sankey:a}=pt(),s=X4.sankey,l;i==="sandbox"&&(l=Gt("#i"+t));let u=i==="sandbox"?Gt(l.nodes()[0].contentDocument.body):Gt("body"),h=i==="sandbox"?u.select(`[id="${t}"]`):Gt(`[id="${t}"]`),f=a?.width??s.width,d=a?.height??s.width,p=a?.useMaxWidth??s.useMaxWidth,m=a?.nodeAlignment??s.nodeAlignment,g=a?.prefix??s.prefix,y=a?.suffix??s.suffix,v=a?.showValues??s.showValues,x=n.db.getGraph(),b=Pre[m];jC().nodeId(M=>M.id).nodeWidth(10).nodePadding(10+(v?15:0)).nodeAlign(b).extent([[0,0],[f,d]])(x);let T=bu(z_);h.append("g").attr("class","nodes").selectAll(".node").data(x.nodes).join("g").attr("class","node").attr("id",M=>(M.uid=zb.next("node-")).id).attr("transform",function(M){return"translate("+M.x0+","+M.y0+")"}).attr("x",M=>M.x0).attr("y",M=>M.y0).append("rect").attr("height",M=>M.y1-M.y0).attr("width",M=>M.x1-M.x0).attr("fill",M=>T(M.id));let E=o(({id:M,value:N})=>v?`${M} ${g}${Math.round(N*100)/100}${y}`:M,"getText");h.append("g").attr("class","node-labels").attr("font-family","sans-serif").attr("font-size",14).selectAll("text").data(x.nodes).join("text").attr("x",M=>M.x0(M.y1+M.y0)/2).attr("dy",`${v?"0":"0.35"}em`).attr("text-anchor",M=>M.x0(N.uid=zb.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",N=>N.source.x1).attr("x2",N=>N.target.x0);M.append("stop").attr("offset","0%").attr("stop-color",N=>T(N.source.id)),M.append("stop").attr("offset","100%").attr("stop-color",N=>T(N.target.id))}let L;switch(A){case"gradient":L=o(M=>M.uid,"coloring");break;case"source":L=o(M=>T(M.source.id),"coloring");break;case"target":L=o(M=>T(M.target.id),"coloring");break;default:L=A}_.append("path").attr("d",QC()).attr("stroke",L).attr("stroke-width",M=>Math.max(1,M.width)),No(void 0,h,0,p)},"draw"),ovt={draw:Bre}});var cvt,uvt=R(()=>{"use strict";cvt=o(e=>e.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` `).trim(),"prepareTextForParsing")});var hvt={};xr(hvt,{diagram:()=>zre});var Fre,zre,fvt=R(()=>{"use strict";Oyt();Byt();lvt();uvt();Fre=Pb.parse.bind(Pb);Pb.parse=e=>Fre(cvt(e));zre={parser:Pb,db:Pyt,renderer:ovt}});var mvt,XF,Ure,Hre,Wre,Yre,qre,Ff,jF=R(()=>{"use strict";js();hl();_r();Ci();mvt={packet:[]},XF=structuredClone(mvt),Ure=Er.packet,Hre=o(()=>{let e=Ss({...Ure,...Nr().packet});return e.showBits&&(e.paddingY+=10),e},"getConfig"),Wre=o(()=>XF.packet,"getPacket"),Yre=o(e=>{e.length>0&&XF.packet.push(e)},"pushWord"),qre=o(()=>{Ar(),XF=structuredClone(mvt)},"clear"),Ff={pushWord:Yre,getPacket:Wre,getConfig:Hre,clear:qre,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,getAccDescription:zr,setAccDescription:Fr}});var Xre,jre,Kre,gvt,yvt=R(()=>{"use strict";Hg();ce();Dx();jF();Xre=1e4,jre=o(e=>{pf(e,Ff);let t=-1,r=[],n=1,{bitsPerRow:i}=Ff.getConfig();for(let{start:a,end:s,label:l}of e.blocks){if(s&&s{if(e.end===void 0&&(e.end=e.start),e.start>e.end)throw new Error(`Block start ${e.start} is greater than block end ${e.end}.`);return e.end+1<=t*r?[e,void 0]:[{start:e.start,end:t*r-1,label:e.label},{start:t*r,end:e.end,label:e.label}]},"getNextFittingBlock"),gvt={parse:o(async e=>{let t=await Ul("packet",e);V.debug(t),jre(t)},"parse")}});var Qre,Zre,vvt,xvt=R(()=>{"use strict";xf();Jn();Qre=o((e,t,r,n)=>{let i=n.db,a=i.getConfig(),{rowHeight:s,paddingY:l,bitWidth:u,bitsPerRow:h}=a,f=i.getPacket(),d=i.getDiagramTitle(),p=s+l,m=p*(f.length+1)-(d?0:s),g=u*h+2,y=Vs(t);y.attr("viewbox",`0 0 ${g} ${m}`),Pr(y,m,g,a.useMaxWidth);for(let[v,x]of f.entries())Zre(y,x,v,a);y.append("text").text(d).attr("x",g/2).attr("y",m-p/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),Zre=o((e,t,r,{rowHeight:n,paddingX:i,paddingY:a,bitWidth:s,bitsPerRow:l,showBits:u})=>{let h=e.append("g"),f=r*(n+a)+a;for(let d of t){let p=d.start%l*s+1,m=(d.end-d.start+1)*s-i;if(h.append("rect").attr("x",p).attr("y",f).attr("width",m).attr("height",n).attr("class","packetBlock"),h.append("text").attr("x",p+m/2).attr("y",f+n/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(d.label),!u)continue;let g=d.end===d.start,y=f-2;h.append("text").attr("x",p+(g?m/2:0)).attr("y",y).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",g?"middle":"start").text(d.start),g||h.append("text").attr("x",p+m).attr("y",y).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(d.end)}},"drawWord"),vvt={draw:Qre}});var Jre,bvt,wvt=R(()=>{"use strict";_r();Jre={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},bvt=o(({packet:e}={})=>{let t=Ss(Jre,e);return` .packetByte { font-size: ${t.byteFontSize}; } .packetByte.start { fill: ${t.startByteColor}; } .packetByte.end { fill: ${t.endByteColor}; } .packetLabel { fill: ${t.labelColor}; font-size: ${t.labelFontSize}; } .packetTitle { fill: ${t.titleColor}; font-size: ${t.titleFontSize}; } .packetBlock { stroke: ${t.blockStrokeColor}; stroke-width: ${t.blockStrokeWidth}; fill: ${t.blockFillColor}; } `},"styles")});var Tvt={};xr(Tvt,{diagram:()=>tne});var tne,kvt=R(()=>{"use strict";jF();yvt();xvt();wvt();tne={parser:gvt,db:Ff,renderer:vvt,styles:bvt}});var KF,Svt,Avt=R(()=>{"use strict";KF=function(){var e=o(function(w,S,T,E){for(T=T||{},E=w.length;E--;T[w[E]]=S);return T},"o"),t=[1,7],r=[1,13],n=[1,14],i=[1,15],a=[1,19],s=[1,16],l=[1,17],u=[1,18],h=[8,30],f=[8,21,28,29,30,31,32,40,44,47],d=[1,23],p=[1,24],m=[8,15,16,21,28,29,30,31,32,40,44,47],g=[8,15,16,21,27,28,29,30,31,32,40,44,47],y=[1,49],v={trace:o(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,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList: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:49,$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:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"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],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:o(function(S,T,E,_,A,L,M){var N=L.length-1;switch(A){case 4:_.getLogger().debug("Rule: separator (NL) ");break;case 5:_.getLogger().debug("Rule: separator (Space) ");break;case 6:_.getLogger().debug("Rule: separator (EOF) ");break;case 7:_.getLogger().debug("Rule: hierarchy: ",L[N-1]),_.setHierarchy(L[N-1]);break;case 8:_.getLogger().debug("Stop NL ");break;case 9:_.getLogger().debug("Stop EOF ");break;case 10:_.getLogger().debug("Stop NL2 ");break;case 11:_.getLogger().debug("Stop EOF2 ");break;case 12:_.getLogger().debug("Rule: statement: ",L[N]),typeof L[N].length=="number"?this.$=L[N]:this.$=[L[N]];break;case 13:_.getLogger().debug("Rule: statement #2: ",L[N-1]),this.$=[L[N-1]].concat(L[N]);break;case 14:_.getLogger().debug("Rule: link: ",L[N],S),this.$={edgeTypeStr:L[N],label:""};break;case 15:_.getLogger().debug("Rule: LABEL link: ",L[N-3],L[N-1],L[N]),this.$={edgeTypeStr:L[N],label:L[N-1]};break;case 18:let k=parseInt(L[N]),I=_.generateId();this.$={id:I,type:"space",label:"",width:k,children:[]};break;case 23:_.getLogger().debug("Rule: (nodeStatement link node) ",L[N-2],L[N-1],L[N]," typestr: ",L[N-1].edgeTypeStr);let C=_.edgeStrToEdgeData(L[N-1].edgeTypeStr);this.$=[{id:L[N-2].id,label:L[N-2].label,type:L[N-2].type,directions:L[N-2].directions},{id:L[N-2].id+"-"+L[N].id,start:L[N-2].id,end:L[N].id,label:L[N-1].label,type:"edge",directions:L[N].directions,arrowTypeEnd:C,arrowTypeStart:"arrow_open"},{id:L[N].id,label:L[N].label,type:_.typeStr2Type(L[N].typeStr),directions:L[N].directions}];break;case 24:_.getLogger().debug("Rule: nodeStatement (abc88 node size) ",L[N-1],L[N]),this.$={id:L[N-1].id,label:L[N-1].label,type:_.typeStr2Type(L[N-1].typeStr),directions:L[N-1].directions,widthInColumns:parseInt(L[N],10)};break;case 25:_.getLogger().debug("Rule: nodeStatement (node) ",L[N]),this.$={id:L[N].id,label:L[N].label,type:_.typeStr2Type(L[N].typeStr),directions:L[N].directions,widthInColumns:1};break;case 26:_.getLogger().debug("APA123",this?this:"na"),_.getLogger().debug("COLUMNS: ",L[N]),this.$={type:"column-setting",columns:L[N]==="auto"?-1:parseInt(L[N])};break;case 27:_.getLogger().debug("Rule: id-block statement : ",L[N-2],L[N-1]);let O=_.generateId();this.$={...L[N-2],type:"composite",children:L[N-1]};break;case 28:_.getLogger().debug("Rule: blockStatement : ",L[N-2],L[N-1],L[N]);let D=_.generateId();this.$={id:D,type:"composite",label:"",children:L[N-1]};break;case 29:_.getLogger().debug("Rule: node (NODE_ID separator): ",L[N]),this.$={id:L[N]};break;case 30:_.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",L[N-1],L[N]),this.$={id:L[N-1],label:L[N].label,typeStr:L[N].typeStr,directions:L[N].directions};break;case 31:_.getLogger().debug("Rule: dirList: ",L[N]),this.$=[L[N]];break;case 32:_.getLogger().debug("Rule: dirList: ",L[N-1],L[N]),this.$=[L[N-1]].concat(L[N]);break;case 33:_.getLogger().debug("Rule: nodeShapeNLabel: ",L[N-2],L[N-1],L[N]),this.$={typeStr:L[N-2]+L[N],label:L[N-1]};break;case 34:_.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",L[N-3],L[N-2]," #3:",L[N-1],L[N]),this.$={typeStr:L[N-3]+L[N],label:L[N-2],directions:L[N-1]};break;case 35:case 36:this.$={type:"classDef",id:L[N-1].trim(),css:L[N].trim()};break;case 37:this.$={type:"applyClass",id:L[N-1].trim(),styleClass:L[N].trim()};break;case 38:this.$={type:"applyStyles",id:L[N-1].trim(),stylesStr:L[N].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{8:[1,20]},e(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:t,28:r,29:n,31:i,32:a,40:s,44:l,47:u}),e(f,[2,16],{14:22,15:d,16:p}),e(f,[2,17]),e(f,[2,18]),e(f,[2,19]),e(f,[2,20]),e(f,[2,21]),e(f,[2,22]),e(m,[2,25],{27:[1,25]}),e(f,[2,26]),{19:26,26:12,32:a},{11:27,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},e(g,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},e(h,[2,13]),{26:35,32:a},{32:[2,14]},{17:[1,36]},e(m,[2,24]),{11:37,13:4,14:22,15:d,16:p,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},e(g,[2,30]),{18:[1,43]},{18:[1,44]},e(m,[2,23]),{18:[1,45]},{30:[1,46]},e(f,[2,28]),e(f,[2,35]),e(f,[2,36]),e(f,[2,37]),e(f,[2,38]),{37:[1,47]},{34:48,35:y},{15:[1,50]},e(f,[2,27]),e(g,[2,33]),{39:[1,51]},{34:52,35:y,39:[2,31]},{32:[2,15]},e(g,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:o(function(S,T){if(T.recoverable)this.trace(S);else{var E=new Error(S);throw E.hash=T,E}},"parseError"),parse:o(function(S){var T=this,E=[0],_=[],A=[null],L=[],M=this.table,N="",k=0,I=0,C=0,O=2,D=1,P=L.slice.call(arguments,1),F=Object.create(this.lexer),B={yy:{}};for(var G in this.yy)Object.prototype.hasOwnProperty.call(this.yy,G)&&(B.yy[G]=this.yy[G]);F.setInput(S,B.yy),B.yy.lexer=F,B.yy.parser=this,typeof F.yylloc>"u"&&(F.yylloc={});var z=F.yylloc;L.push(z);var W=F.options&&F.options.ranges;typeof B.yy.parseError=="function"?this.parseError=B.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Q(it){E.length=E.length-2*it,A.length=A.length-it,L.length=L.length-it}o(Q,"popStack");function j(){var it;return it=_.pop()||F.lex()||D,typeof it!="number"&&(it instanceof Array&&(_=it,it=_.pop()),it=T.symbols_[it]||it),it}o(j,"lex");for(var at,X,J,Z,H,q,K={},ot,ct,ut,et;;){if(J=E[E.length-1],this.defaultActions[J]?Z=this.defaultActions[J]:((at===null||typeof at>"u")&&(at=j()),Z=M[J]&&M[J][at]),typeof Z>"u"||!Z.length||!Z[0]){var Mt="";et=[];for(ot in M[J])this.terminals_[ot]&&ot>O&&et.push("'"+this.terminals_[ot]+"'");F.showPosition?Mt="Parse error on line "+(k+1)+`: `+F.showPosition()+` Expecting `+et.join(", ")+", got '"+(this.terminals_[at]||at)+"'":Mt="Parse error on line "+(k+1)+": Unexpected "+(at==D?"end of input":"'"+(this.terminals_[at]||at)+"'"),this.parseError(Mt,{text:F.match,token:this.terminals_[at]||at,line:F.yylineno,loc:z,expected:et})}if(Z[0]instanceof Array&&Z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+at);switch(Z[0]){case 1:E.push(at),A.push(F.yytext),L.push(F.yylloc),E.push(Z[1]),at=null,X?(at=X,X=null):(I=F.yyleng,N=F.yytext,k=F.yylineno,z=F.yylloc,C>0&&C--);break;case 2:if(ct=this.productions_[Z[1]][1],K.$=A[A.length-ct],K._$={first_line:L[L.length-(ct||1)].first_line,last_line:L[L.length-1].last_line,first_column:L[L.length-(ct||1)].first_column,last_column:L[L.length-1].last_column},W&&(K._$.range=[L[L.length-(ct||1)].range[0],L[L.length-1].range[1]]),q=this.performAction.apply(K,[N,I,k,B.yy,Z[1],A,L].concat(P)),typeof q<"u")return q;ct&&(E=E.slice(0,-1*ct*2),A=A.slice(0,-1*ct),L=L.slice(0,-1*ct)),E.push(this.productions_[Z[1]][0]),A.push(K.$),L.push(K._$),ut=M[E[E.length-2]][E[E.length-1]],E.push(ut);break;case 3:return!0}}return!0},"parse")},x=function(){var w={EOF:1,parseError:o(function(T,E){if(this.yy.parser)this.yy.parser.parseError(T,E);else throw new Error(T)},"parseError"),setInput:o(function(S,T){return this.yy=T||this.yy||{},this._input=S,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]),this.offset=0,this},"setInput"),input:o(function(){var S=this._input[0];this.yytext+=S,this.yyleng++,this.offset++,this.match+=S,this.matched+=S;var T=S.match(/(?:\r\n?|\n).*/g);return T?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),S},"input"),unput:o(function(S){var T=S.length,E=S.split(/(?:\r\n?|\n)/g);this._input=S+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-T),this.offset-=T;var _=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),E.length-1&&(this.yylineno-=E.length-1);var A=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:E?(E.length===_.length?this.yylloc.first_column:0)+_[_.length-E.length].length-E[0].length:this.yylloc.first_column-T},this.options.ranges&&(this.yylloc.range=[A[0],A[0]+this.yyleng-T]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(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:o(function(S){this.unput(this.match.slice(S))},"less"),pastInput:o(function(){var S=this.matched.substr(0,this.matched.length-this.match.length);return(S.length>20?"...":"")+S.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var S=this.match;return S.length<20&&(S+=this._input.substr(0,20-S.length)),(S.substr(0,20)+(S.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var S=this.pastInput(),T=new Array(S.length+1).join("-");return S+this.upcomingInput()+` `+T+"^"},"showPosition"),test_match:o(function(S,T){var E,_,A;if(this.options.backtrack_lexer&&(A={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&&(A.yylloc.range=this.yylloc.range.slice(0))),_=S[0].match(/(?:\r\n?|\n).*/g),_&&(this.yylineno+=_.length),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+S[0].length},this.yytext+=S[0],this.match+=S[0],this.matches=S,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(S[0].length),this.matched+=S[0],E=this.performAction.call(this,this.yy,this,T,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),E)return E;if(this._backtrack){for(var L in A)this[L]=A[L];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var S,T,E,_;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),L=0;LT[0].length)){if(T=E,_=L,this.options.backtrack_lexer){if(S=this.test_match(E,A[L]),S!==!1)return S;if(this._backtrack){T=!1;continue}else return!1}else if(!this.options.flex)break}return T?(S=this.test_match(T,A[_]),S!==!1?S:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var T=this.next();return T||this.lex()},"lex"),begin:o(function(T){this.conditionStack.push(T)},"begin"),popState:o(function(){var T=this.conditionStack.length-1;return T>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(T){return T=this.conditionStack.length-1-Math.abs(T||0),T>=0?this.conditionStack[T]:"INITIAL"},"topState"),pushState:o(function(T){this.begin(T)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(T,E,_,A){var L=A;switch(_){case 0:return 10;case 1:return T.getLogger().debug("Found space-block"),31;break;case 2:return T.getLogger().debug("Found nl-block"),31;break;case 3:return T.getLogger().debug("Found space-block"),29;break;case 4:T.getLogger().debug(".",E.yytext);break;case 5:T.getLogger().debug("_",E.yytext);break;case 6:return 5;case 7:return E.yytext=-1,28;break;case 8:return E.yytext=E.yytext.replace(/columns\s+/,""),T.getLogger().debug("COLUMNS (LEX)",E.yytext),28;break;case 9:this.pushState("md_string");break;case 10:return"MD_STR";case 11:this.popState();break;case 12:this.pushState("string");break;case 13:T.getLogger().debug("LEX: POPPING STR:",E.yytext),this.popState();break;case 14:return T.getLogger().debug("LEX: STR end:",E.yytext),"STR";break;case 15:return E.yytext=E.yytext.replace(/space\:/,""),T.getLogger().debug("SPACE NUM (LEX)",E.yytext),21;break;case 16:return E.yytext="1",T.getLogger().debug("COLUMNS (LEX)",E.yytext),21;break;case 17:return 43;case 18:return"LINKSTYLE";case 19:return"INTERPOLATE";case 20:return this.pushState("CLASSDEF"),40;break;case 21:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 22:return this.popState(),this.pushState("CLASSDEFID"),41;break;case 23:return this.popState(),42;break;case 24:return this.pushState("CLASS"),44;break;case 25:return this.popState(),this.pushState("CLASS_STYLE"),45;break;case 26:return this.popState(),46;break;case 27:return this.pushState("STYLE_STMNT"),47;break;case 28:return this.popState(),this.pushState("STYLE_DEFINITION"),48;break;case 29:return this.popState(),49;break;case 30:return this.pushState("acc_title"),"acc_title";break;case 31:return this.popState(),"acc_title_value";break;case 32:return this.pushState("acc_descr"),"acc_descr";break;case 33:return this.popState(),"acc_descr_value";break;case 34:this.pushState("acc_descr_multiline");break;case 35:this.popState();break;case 36:return"acc_descr_multiline_value";case 37:return 30;case 38:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 40:return this.popState(),T.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 41:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 43:return this.popState(),T.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 44:return this.popState(),T.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 45:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 46:return this.popState(),T.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 47:return this.popState(),T.getLogger().debug("Lex: ("),"NODE_DEND";break;case 48:return this.popState(),T.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 49:return this.popState(),T.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),T.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 51:return this.popState(),T.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 52:return this.popState(),T.getLogger().debug("Lex: )"),"NODE_DEND";break;case 53:return this.popState(),T.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 54:return this.popState(),T.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 55:return T.getLogger().debug("Lexa: -)"),this.pushState("NODE"),36;break;case 56:return T.getLogger().debug("Lexa: (-"),this.pushState("NODE"),36;break;case 57:return T.getLogger().debug("Lexa: ))"),this.pushState("NODE"),36;break;case 58:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 59:return T.getLogger().debug("Lex: ((("),this.pushState("NODE"),36;break;case 60:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 61:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 62:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 63:return T.getLogger().debug("Lexc: >"),this.pushState("NODE"),36;break;case 64:return T.getLogger().debug("Lexa: (["),this.pushState("NODE"),36;break;case 65:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 66:return this.pushState("NODE"),36;break;case 67:return this.pushState("NODE"),36;break;case 68:return this.pushState("NODE"),36;break;case 69:return this.pushState("NODE"),36;break;case 70:return this.pushState("NODE"),36;break;case 71:return this.pushState("NODE"),36;break;case 72:return this.pushState("NODE"),36;break;case 73:return T.getLogger().debug("Lexa: ["),this.pushState("NODE"),36;break;case 74:return this.pushState("BLOCK_ARROW"),T.getLogger().debug("LEX ARR START"),38;break;case 75:return T.getLogger().debug("Lex: NODE_ID",E.yytext),32;break;case 76:return T.getLogger().debug("Lex: EOF",E.yytext),8;break;case 77:this.pushState("md_string");break;case 78:this.pushState("md_string");break;case 79:return"NODE_DESCR";case 80:this.popState();break;case 81:T.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 82:T.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 83:return T.getLogger().debug("LEX: NODE_DESCR:",E.yytext),"NODE_DESCR";break;case 84:T.getLogger().debug("LEX POPPING"),this.popState();break;case 85:T.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 86:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (right): dir:",E.yytext),"DIR";break;case 87:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (left):",E.yytext),"DIR";break;case 88:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (x):",E.yytext),"DIR";break;case 89:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (y):",E.yytext),"DIR";break;case 90:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (up):",E.yytext),"DIR";break;case 91:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (down):",E.yytext),"DIR";break;case 92:return E.yytext="]>",T.getLogger().debug("Lex (ARROW_DIR end):",E.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 93:return T.getLogger().debug("Lex: LINK","#"+E.yytext+"#"),15;break;case 94:return T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 95:return T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 96:return T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 97:return T.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 98:return T.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 99:return T.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 100:this.pushState("md_string");break;case 101:return T.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 102:return this.popState(),T.getLogger().debug("Lex: LINK","#"+E.yytext+"#"),15;break;case 103:return this.popState(),T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 104:return this.popState(),T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 105:return T.getLogger().debug("Lex: COLON",E.yytext),E.yytext=E.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block\s+)/,/^(?:block\n+)/,/^(?:block:)/,/^(?:[\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:[29],inclusive:!1},STYLE_STMNT:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[23],inclusive:!1},CLASSDEF:{rules:[21,22],inclusive:!1},CLASS_STYLE:{rules:[26],inclusive:!1},CLASS:{rules:[25],inclusive:!1},LLABEL:{rules:[100,101,102,103,104],inclusive:!1},ARROW_DIR:{rules:[86,87,88,89,90,91,92],inclusive:!1},BLOCK_ARROW:{rules:[77,82,85],inclusive:!1},NODE:{rules:[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,78,81],inclusive:!1},md_string:{rules:[10,11,79,80],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[13,14,83,84],inclusive:!1},acc_descr_multiline:{rules:[35,36],inclusive:!1},acc_descr:{rules:[33],inclusive:!1},acc_title:{rules:[31],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,12,15,16,17,18,19,20,24,27,30,32,34,37,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,93,94,95,96,97,98,99,105],inclusive:!0}}};return w}();v.lexer=x;function b(){this.yy={}}return o(b,"Parser"),b.prototype=v,v.Parser=b,new b}();KF.parser=KF;Svt=KF});function une(e){switch(V.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return V.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 hne(e){switch(V.debug("typeStr2Type",e),e){case"==":return"thick";default:return"normal"}}function fne(e){switch(e.trim()){case"--x":return"arrow_cross";case"--o":return"arrow_circle";default:return"arrow_point"}}var Ql,ZF,QF,_vt,Lvt,nne,Rvt,ine,ZC,ane,sne,one,lne,Nvt,JF,$b,cne,Dvt,dne,pne,mne,gne,yne,vne,xne,bne,wne,Tne,kne,Mvt,Ivt=R(()=>{"use strict";wD();js();Ue();ce();hr();Ci();Ql=new Map,ZF=[],QF=new Map,_vt="color",Lvt="fill",nne="bgFill",Rvt=",",ine=pt(),ZC=new Map,ane=o(e=>Yt.sanitizeText(e,ine),"sanitizeText"),sne=o(function(e,t=""){let r=ZC.get(e);r||(r={id:e,styles:[],textStyles:[]},ZC.set(e,r)),t?.split(Rvt).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(_vt).exec(n)){let s=i.replace(Lvt,nne).replace(_vt,Lvt);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),one=o(function(e,t=""){let r=Ql.get(e);t!=null&&(r.styles=t.split(Rvt))},"addStyle2Node"),lne=o(function(e,t){e.split(",").forEach(function(r){let n=Ql.get(r);if(n===void 0){let i=r.trim();n={id:i,type:"na",children:[]},Ql.set(i,n)}n.classes||(n.classes=[]),n.classes.push(t)})},"setCssClass"),Nvt=o((e,t)=>{let r=e.flat(),n=[];for(let i of r){if(i.label&&(i.label=ane(i.label)),i.type==="classDef"){sne(i.id,i.css);continue}if(i.type==="applyClass"){lne(i.id,i?.styleClass??"");continue}if(i.type==="applyStyles"){i?.stylesStr&&one(i.id,i?.stylesStr);continue}if(i.type==="column-setting")t.columns=i.columns??-1;else if(i.type==="edge"){let a=(QF.get(i.id)??0)+1;QF.set(i.id,a),i.id=a+"-"+i.id,ZF.push(i)}else{i.label||(i.type==="composite"?i.label="":i.label=i.id);let a=Ql.get(i.id);if(a===void 0?Ql.set(i.id,i):(i.type!=="na"&&(a.type=i.type),i.label!==i.id&&(a.label=i.label)),i.children&&Nvt(i.children,i),i.type==="space"){let s=i.width??1;for(let l=0;l{V.debug("Clear called"),Ar(),$b={id:"root",type:"composite",children:[],columns:-1},Ql=new Map([["root",$b]]),JF=[],ZC=new Map,ZF=[],QF=new Map},"clear");o(une,"typeStr2Type");o(hne,"edgeTypeStr2Type");o(fne,"edgeStrToEdgeData");Dvt=0,dne=o(()=>(Dvt++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Dvt),"generateId"),pne=o(e=>{$b.children=e,Nvt(e,$b),JF=$b.children},"setHierarchy"),mne=o(e=>{let t=Ql.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1},"getColumns"),gne=o(()=>[...Ql.values()],"getBlocksFlat"),yne=o(()=>JF||[],"getBlocks"),vne=o(()=>ZF,"getEdges"),xne=o(e=>Ql.get(e),"getBlock"),bne=o(e=>{Ql.set(e.id,e)},"setBlock"),wne=o(()=>console,"getLogger"),Tne=o(function(){return ZC},"getClasses"),kne={getConfig:o(()=>Nr().block,"getConfig"),typeStr2Type:une,edgeTypeStr2Type:hne,edgeStrToEdgeData:fne,getLogger:wne,getBlocksFlat:gne,getBlocks:yne,getEdges:vne,setHierarchy:pne,getBlock:xne,setBlock:bne,getColumns:mne,getClasses:Tne,clear:cne,generateId:dne},Mvt=kne});var JC,Ene,Ovt,Pvt=R(()=>{"use strict";ul();JC=o((e,t)=>{let r=ay,n=r(e,"r"),i=r(e,"g"),a=r(e,"b");return Xs(n,i,a,t)},"fade"),Ene=o(e=>`.label { font-family: ${e.fontFamily}; color: ${e.nodeTextColor||e.textColor}; } .cluster-label text { fill: ${e.titleColor}; } .cluster-label span,p { color: ${e.titleColor}; } .label text,span,p { fill: ${e.nodeTextColor||e.textColor}; color: ${e.nodeTextColor||e.textColor}; } .node rect, .node circle, .node ellipse, .node polygon, .node path { fill: ${e.mainBkg}; stroke: ${e.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: ${e.arrowheadColor}; } .edgePath .path { stroke: ${e.lineColor}; stroke-width: 2.0px; } .flowchart-link { stroke: ${e.lineColor}; fill: none; } .edgeLabel { background-color: ${e.edgeLabelBackground}; rect { opacity: 0.5; background-color: ${e.edgeLabelBackground}; fill: ${e.edgeLabelBackground}; } text-align: center; } /* For html labels only */ .labelBkg { background-color: ${JC(e.edgeLabelBackground,.5)}; // background-color: } .node .cluster { // fill: ${JC(e.mainBkg,.5)}; fill: ${JC(e.clusterBkg,.5)}; stroke: ${JC(e.clusterBorder,.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: ${e.titleColor}; } .cluster span,p { color: ${e.titleColor}; } /* .cluster div { color: ${e.titleColor}; } */ div.mermaidTooltip { position: absolute; text-align: center; max-width: 200px; padding: 2px; font-family: ${e.fontFamily}; font-size: 12px; background: ${e.tertiaryColor}; border: 1px solid ${e.border2}; border-radius: 2px; pointer-events: none; z-index: 100; } .flowchartTitleText { text-anchor: middle; font-size: 18px; fill: ${e.textColor}; } `,"getStyles"),Ovt=Ene});function Cne(e,t){if(e===0||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);if(e<0)return{px:t,py:0};if(e===1)return{px:0,py:t};let r=t%e,n=Math.floor(t/e);return{px:r,py:n}}function tz(e,t,r=0,n=0){V.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"sieblingWidth",r),e?.size?.width||(e.size={width:r,height:n,x:0,y:0});let i=0,a=0;if(e.children?.length>0){for(let m of e.children)tz(m,t);let s=Sne(e);i=s.width,a=s.height,V.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",i,a);for(let m of e.children)m.size&&(V.debug(`abc95 Setting size of children of ${e.id} id=${m.id} ${i} ${a} ${JSON.stringify(m.size)}`),m.size.width=i*(m.widthInColumns??1)+bi*((m.widthInColumns??1)-1),m.size.height=a,m.size.x=0,m.size.y=0,V.debug(`abc95 updating size of ${e.id} children child:${m.id} maxWidth:${i} maxHeight:${a}`));for(let m of e.children)tz(m,t,i,a);let l=e.columns??-1,u=0;for(let m of e.children)u+=m.widthInColumns??1;let h=e.children.length;l>0&&l0?Math.min(e.children.length,l):e.children.length;if(m>0){let g=(d-m*bi-bi)/m;V.debug("abc95 (growing to fit) width",e.id,d,e.size?.width,g);for(let y of e.children)y.size&&(y.size.width=g)}}e.size={width:d,height:p,x:0,y:0}}V.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}function Bvt(e,t){V.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);let r=e.columns??-1;if(V.debug("layoutBlocks columns abc95",e.id,"=>",r,e),e.children&&e.children.length>0){let n=e?.children[0]?.size?.width??0,i=e.children.length*n+(e.children.length-1)*bi;V.debug("widthOfChildren 88",i,"posX");let a=0;V.debug("abc91 block?.size?.x",e.id,e?.size?.x);let s=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-bi,l=0;for(let u of e.children){let h=e;if(!u.size)continue;let{width:f,height:d}=u.size,{px:p,py:m}=Cne(r,a);if(m!=l&&(l=m,s=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-bi,V.debug("New row in layout for block",e.id," and child ",u.id,l)),V.debug(`abc89 layout blocks (child) id: ${u.id} Pos: ${a} (px, py) ${p},${m} (${h?.size?.x},${h?.size?.y}) parent: ${h.id} width: ${f}${bi}`),h.size){let g=f/2;u.size.x=s+bi+g,V.debug(`abc91 layout blocks (calc) px, pyid:${u.id} startingPos=X${s} new startingPosX${u.size.x} ${g} padding=${bi} width=${f} halfWidth=${g} => x:${u.size.x} y:${u.size.y} ${u.widthInColumns} (width * (child?.w || 1)) / 2 ${f*(u?.widthInColumns??1)/2}`),s=u.size.x+g,u.size.y=h.size.y-h.size.height/2+m*(d+bi)+d/2+bi,V.debug(`abc88 layout blocks (calc) px, pyid:${u.id}startingPosX${s}${bi}${g}=>x:${u.size.x}y:${u.size.y}${u.widthInColumns}(width * (child?.w || 1)) / 2${f*(u?.widthInColumns??1)/2}`)}u.children&&Bvt(u,t),a+=u?.widthInColumns??1,V.debug("abc88 columnsPos",u,a)}}V.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}function Fvt(e,{minX:t,minY:r,maxX:n,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&e.id!=="root"){let{x:a,y:s,width:l,height:u}=e.size;a-l/2n&&(n=a+l/2),s+u/2>i&&(i=s+u/2)}if(e.children)for(let a of e.children)({minX:t,minY:r,maxX:n,maxY:i}=Fvt(a,{minX:t,minY:r,maxX:n,maxY:i}));return{minX:t,minY:r,maxX:n,maxY:i}}function zvt(e){let t=e.getBlock("root");if(!t)return;tz(t,e,0,0),Bvt(t,e),V.debug("getBlocks",JSON.stringify(t,null,2));let{minX:r,minY:n,maxX:i,maxY:a}=Fvt(t),s=a-n,l=i-r;return{x:r,y:n,width:l,height:s}}var bi,Sne,$vt=R(()=>{"use strict";ce();Ue();bi=pt()?.block?.padding??8;o(Cne,"calculateBlockPosition");Sne=o(e=>{let t=0,r=0;for(let n of e.children){let{width:i,height:a,x:s,y:l}=n.size??{width:0,height:0,x:0,y:0};V.debug("getMaxChildSize abc95 child:",n.id,"width:",i,"height:",a,"x:",s,"y:",l,n.type),n.type!=="space"&&(i>t&&(t=i/(e.widthInColumns??1)),a>r&&(r=a))}return{width:t,height:r}},"getMaxChildSize");o(tz,"setBlockSizes");o(Bvt,"layoutBlocks");o(Fvt,"findBounds");o(zvt,"layout")});function Gvt(e,t,r=!1){let n=e,i="default";(n?.classes?.length||0)>0&&(i=(n?.classes??[]).join(" ")),i=i+" flowchart-label";let a=0,s="",l;switch(n.type){case"round":a=5,s="rect";break;case"composite":a=0,s="composite",l=0;break;case"square":s="rect";break;case"diamond":s="question";break;case"hexagon":s="hexagon";break;case"block_arrow":s="block_arrow";break;case"odd":s="rect_left_inv_arrow";break;case"lean_right":s="lean_right";break;case"lean_left":s="lean_left";break;case"trapezoid":s="trapezoid";break;case"inv_trapezoid":s="inv_trapezoid";break;case"rect_left_inv_arrow":s="rect_left_inv_arrow";break;case"circle":s="circle";break;case"ellipse":s="ellipse";break;case"stadium":s="stadium";break;case"subroutine":s="subroutine";break;case"cylinder":s="cylinder";break;case"group":s="rect";break;case"doublecircle":s="doublecircle";break;default:s="rect"}let u=gm(n?.styles??[]),h=n.label,f=n.size??{width:0,height:0,x:0,y:0};return{labelStyle:u.labelStyle,shape:s,labelText:h,rx:a,ry:a,class:i,style:u.style,id:n.id,directions:n.directions,width:f.width,height:f.height,x:f.x,y:f.y,positioned:r,intersect:void 0,type:n.type,padding:l??Nr()?.block?.padding??0}}async function Ane(e,t,r){let n=Gvt(t,r,!1);if(n.type==="group")return;let i=Nr(),a=await jx(e,n,{config:i}),s=a.node().getBBox(),l=r.getBlock(n.id);l.size={width:s.width,height:s.height,x:0,y:0,node:a},r.setBlock(l),a.remove()}async function _ne(e,t,r){let n=Gvt(t,r,!0);if(r.getBlock(n.id).type!=="space"){let a=Nr();await jx(e,n,{config:a}),t.intersect=n?.intersect,Kx(n)}}async function ez(e,t,r,n){for(let i of t)await n(e,i,r),i.children&&await ez(e,i.children,r,n)}async function Vvt(e,t,r){await ez(e,t,r,Ane)}async function Uvt(e,t,r){await ez(e,t,r,_ne)}async function Hvt(e,t,r,n,i){let a=new yr({multigraph:!0,compound:!0});a.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let s of r)s.size&&a.setNode(s.id,{width:s.size.width,height:s.size.height,intersect:s.intersect});for(let s of t)if(s.start&&s.end){let l=n.getBlock(s.start),u=n.getBlock(s.end);if(l?.size&&u?.size){let h=l.size,f=u.size,d=[{x:h.x,y:h.y},{x:h.x+(f.x-h.x)/2,y:h.y+(f.y-h.y)/2},{x:f.x,y:f.y}];L6(e,{v:s.start,w:s.end,name:s.id},{...s,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",a,i),s.label&&(await A6(e,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),_6({...s,x:d[1].x,y:d[1].y},{originalPath:d}))}}}var Wvt=R(()=>{"use strict";wa();js();$P();zP();_r();o(Gvt,"getNodeFromBlock");o(Ane,"calculateBlockSize");o(_ne,"insertBlockPositioned");o(ez,"performOperations");o(Vvt,"calculateBlockSizes");o(Uvt,"insertBlocks");o(Hvt,"insertEdges")});var Lne,Dne,Yvt,qvt=R(()=>{"use strict";ur();js();IP();ce();Jn();$vt();Wvt();Lne=o(function(e,t){return t.db.getClasses()},"getClasses"),Dne=o(async function(e,t,r,n){let{securityLevel:i,block:a}=Nr(),s=n.db,l;i==="sandbox"&&(l=Gt("#i"+t));let u=i==="sandbox"?Gt(l.nodes()[0].contentDocument.body):Gt("body"),h=i==="sandbox"?u.select(`[id="${t}"]`):Gt(`[id="${t}"]`);b6(h,["point","circle","cross"],n.type,t);let d=s.getBlocks(),p=s.getBlocksFlat(),m=s.getEdges(),g=h.insert("g").attr("class","block");await Vvt(g,d,s);let y=zvt(s);if(await Uvt(g,d,s),await Hvt(g,m,p,s,t),y){let v=y,x=Math.max(1,Math.round(.125*(v.width/v.height))),b=v.height+x+10,w=v.width+10,{useMaxWidth:S}=a;Pr(h,b,w,!!S),V.debug("Here Bounds",y,v),h.attr("viewBox",`${v.x-5} ${v.y-5} ${v.width+10} ${v.height+10}`)}},"draw"),Yvt={draw:Dne,getClasses:Lne}});var Xvt={};xr(Xvt,{diagram:()=>Rne});var Rne,jvt=R(()=>{"use strict";Avt();Ivt();Pvt();qvt();Rne={parser:Svt,db:Mvt,renderer:Yvt,styles:Ovt}});var rz,nz,Gb,Zvt,iz,ds,eu,tS,Jvt,One,Vb,t2t,e2t,r2t,n2t,eS,zf,rS=R(()=>{"use strict";rz={L:"left",R:"right",T:"top",B:"bottom"},nz={L:o(e=>`${e},${e/2} 0,${e} 0,0`,"L"),R:o(e=>`0,${e/2} ${e},0 ${e},${e}`,"R"),T:o(e=>`0,0 ${e},0 ${e/2},${e}`,"T"),B:o(e=>`${e/2},0 ${e},${e} 0,${e}`,"B")},Gb={L:o((e,t)=>e-t+2,"L"),R:o((e,t)=>e-2,"R"),T:o((e,t)=>e-t+2,"T"),B:o((e,t)=>e-2,"B")},Zvt=o(function(e){return ds(e)?e==="L"?"R":"L":e==="T"?"B":"T"},"getOppositeArchitectureDirection"),iz=o(function(e){let t=e;return t==="L"||t==="R"||t==="T"||t==="B"},"isArchitectureDirection"),ds=o(function(e){let t=e;return t==="L"||t==="R"},"isArchitectureDirectionX"),eu=o(function(e){let t=e;return t==="T"||t==="B"},"isArchitectureDirectionY"),tS=o(function(e,t){let r=ds(e)&&eu(t),n=eu(e)&&ds(t);return r||n},"isArchitectureDirectionXY"),Jvt=o(function(e){let t=e[0],r=e[1],n=ds(t)&&eu(r),i=eu(t)&&ds(r);return n||i},"isArchitecturePairXY"),One=o(function(e){return e!=="LL"&&e!=="RR"&&e!=="TT"&&e!=="BB"},"isValidArchitectureDirectionPair"),Vb=o(function(e,t){let r=`${e}${t}`;return One(r)?r:void 0},"getArchitectureDirectionPair"),t2t=o(function([e,t],r){let n=r[0],i=r[1];return ds(n)?eu(i)?[e+(n==="L"?-1:1),t+(i==="T"?1:-1)]:[e+(n==="L"?-1:1),t]:ds(i)?[e+(i==="L"?1:-1),t+(n==="T"?1:-1)]:[e,t+(n==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),e2t=o(function(e){return e==="LT"||e==="TL"?[1,1]:e==="BL"||e==="LB"?[1,-1]:e==="BR"||e==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),r2t=o(function(e){return e.type==="service"},"isArchitectureService"),n2t=o(function(e){return e.type==="junction"},"isArchitectureJunction"),eS=o(e=>e.data(),"edgeData"),zf=o(e=>e.data(),"nodeData")});function Di(e){let t=pt().architecture;return t?.[e]?t[e]:i2t[e]}var i2t,pr,Pne,Bne,Fne,zne,$ne,Gne,Vne,Une,Hne,Wne,Yne,qne,Xne,jne,ap,Ub=R(()=>{"use strict";hl();Ue();HE();Ci();rS();i2t=Er.architecture,pr=new mf(()=>({nodes:{},groups:{},edges:[],registeredIds:{},config:i2t,dataStructures:void 0,elements:{}})),Pne=o(()=>{pr.reset(),Ar()},"clear"),Bne=o(function({id:e,icon:t,in:r,title:n,iconText:i}){if(pr.records.registeredIds[e]!==void 0)throw new Error(`The service id [${e}] is already in use by another ${pr.records.registeredIds[e]}`);if(r!==void 0){if(e===r)throw new Error(`The service [${e}] cannot be placed within itself`);if(pr.records.registeredIds[r]===void 0)throw new Error(`The service [${e}]'s parent does not exist. Please make sure the parent is created before this service`);if(pr.records.registeredIds[r]==="node")throw new Error(`The service [${e}]'s parent is not a group`)}pr.records.registeredIds[e]="node",pr.records.nodes[e]={id:e,type:"service",icon:t,iconText:i,title:n,edges:[],in:r}},"addService"),Fne=o(()=>Object.values(pr.records.nodes).filter(r2t),"getServices"),zne=o(function({id:e,in:t}){pr.records.registeredIds[e]="node",pr.records.nodes[e]={id:e,type:"junction",edges:[],in:t}},"addJunction"),$ne=o(()=>Object.values(pr.records.nodes).filter(n2t),"getJunctions"),Gne=o(()=>Object.values(pr.records.nodes),"getNodes"),Vne=o(e=>pr.records.nodes[e],"getNode"),Une=o(function({id:e,icon:t,in:r,title:n}){if(pr.records.registeredIds[e]!==void 0)throw new Error(`The group id [${e}] is already in use by another ${pr.records.registeredIds[e]}`);if(r!==void 0){if(e===r)throw new Error(`The group [${e}] cannot be placed within itself`);if(pr.records.registeredIds[r]===void 0)throw new Error(`The group [${e}]'s parent does not exist. Please make sure the parent is created before this group`);if(pr.records.registeredIds[r]==="node")throw new Error(`The group [${e}]'s parent is not a group`)}pr.records.registeredIds[e]="group",pr.records.groups[e]={id:e,icon:t,title:n,in:r}},"addGroup"),Hne=o(()=>Object.values(pr.records.groups),"getGroups"),Wne=o(function({lhsId:e,rhsId:t,lhsDir:r,rhsDir:n,lhsInto:i,rhsInto:a,lhsGroup:s,rhsGroup:l,title:u}){if(!iz(r))throw new Error(`Invalid direction given for left hand side of edge ${e}--${t}. Expected (L,R,T,B) got ${r}`);if(!iz(n))throw new Error(`Invalid direction given for right hand side of edge ${e}--${t}. Expected (L,R,T,B) got ${n}`);if(pr.records.nodes[e]===void 0&&pr.records.groups[e]===void 0)throw new Error(`The left-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(pr.records.nodes[t]===void 0&&pr.records.groups[e]===void 0)throw new Error(`The right-hand id [${t}] does not yet exist. Please create the service/group before declaring an edge to it.`);let h=pr.records.nodes[e].in,f=pr.records.nodes[t].in;if(s&&h&&f&&h==f)throw new Error(`The left-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(l&&h&&f&&h==f)throw new Error(`The right-hand id [${t}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let d={lhsId:e,lhsDir:r,lhsInto:i,lhsGroup:s,rhsId:t,rhsDir:n,rhsInto:a,rhsGroup:l,title:u};pr.records.edges.push(d),pr.records.nodes[e]&&pr.records.nodes[t]&&(pr.records.nodes[e].edges.push(pr.records.edges[pr.records.edges.length-1]),pr.records.nodes[t].edges.push(pr.records.edges[pr.records.edges.length-1]))},"addEdge"),Yne=o(()=>pr.records.edges,"getEdges"),qne=o(()=>{if(pr.records.dataStructures===void 0){let e=Object.entries(pr.records.nodes).reduce((s,[l,u])=>(s[l]=u.edges.reduce((h,f)=>{if(f.lhsId===l){let d=Vb(f.lhsDir,f.rhsDir);d&&(h[d]=f.rhsId)}else{let d=Vb(f.rhsDir,f.lhsDir);d&&(h[d]=f.lhsId)}return h},{}),s),{}),t=Object.keys(e)[0],r={[t]:1},n=Object.keys(e).reduce((s,l)=>l===t?s:{...s,[l]:1},{}),i=o(s=>{let l={[s]:[0,0]},u=[s];for(;u.length>0;){let h=u.shift();if(h){r[h]=1,delete n[h];let f=e[h],[d,p]=l[h];Object.entries(f).forEach(([m,g])=>{r[g]||(l[g]=t2t([d,p],m),u.push(g))})}}return l},"BFS"),a=[i(t)];for(;Object.keys(n).length>0;)a.push(i(Object.keys(n)[0]));pr.records.dataStructures={adjList:e,spatialMaps:a}}return pr.records.dataStructures},"getDataStructures"),Xne=o((e,t)=>{pr.records.elements[e]=t},"setElementForId"),jne=o(e=>pr.records.elements[e],"getElementById"),ap={clear:Pne,setDiagramTitle:cn,getDiagramTitle:Jr,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addService:Bne,getServices:Fne,addJunction:zne,getJunctions:$ne,getNodes:Gne,getNode:Vne,addGroup:Une,getGroups:Hne,addEdge:Wne,getEdges:Yne,setElementForId:Xne,getElementById:jne,getDataStructures:qne};o(Di,"getConfigField")});var Kne,a2t,s2t=R(()=>{"use strict";Hg();ce();Dx();Ub();Kne=o((e,t)=>{pf(e,t),e.groups.map(t.addGroup),e.services.map(r=>t.addService({...r,type:"service"})),e.junctions.map(r=>t.addJunction({...r,type:"junction"})),e.edges.map(t.addEdge)},"populateDb"),a2t={parse:o(async e=>{let t=await Ul("architecture",e);V.debug(t),Kne(t,ap)},"parse")}});var Qne,o2t,l2t=R(()=>{"use strict";Qne=o(e=>` .edge { stroke-width: ${e.archEdgeWidth}; stroke: ${e.archEdgeColor}; fill: none; } .arrow { fill: ${e.archEdgeArrowColor}; } .node-bkg { fill: none; stroke: ${e.archGroupBorderColor}; stroke-width: ${e.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"),o2t=Qne});var sz=Ti((Hb,az)=>{"use strict";o(function(t,r){typeof Hb=="object"&&typeof az=="object"?az.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Hb=="object"?Hb.layoutBase=r():t.layoutBase=r()},"webpackUniversalModuleDefinition")(Hb,function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=e,r.c=t,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=28)}([function(e,t,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,e.exports=n},function(e,t,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},e.exports=s},function(e,t,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),e.exports=n},function(e,t,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(5);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp?(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(p+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(m+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>m?(this.rect.y-=(this.labelHeight-m)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(m+this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},e.exports=h},function(e,t,r){"use strict";var n=r(0);function i(){}o(i,"FDLayoutConstants");for(var a in n)i[a]=n[a];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,i.COOLING_ADAPTATION_FACTOR=.33,i.ADAPTATION_LOWER_NODE_LIMIT=1e3,i.ADAPTATION_UPPER_NODE_LIMIT=5e3,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,e.exports=i},function(e,t,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},e.exports=n},function(e,t,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(7),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,w=0;w-1&&E>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(T,1),x.target!=x.source&&x.target.edges.splice(E,1);var S=x.source.owner.getEdges().indexOf(x);if(S==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(S,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,w=this.getNodes(),S=w.length,T=0;Tv&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(w[0].getParent().paddingLeft!=null?b=w[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,w,S,T,E,_,A=this.nodes,L=A.length,M=0;Mw&&(y=w),vT&&(x=T),bw&&(y=w),vT&&(x=T),b=this.nodes.length){var L=0;v.forEach(function(M){M.owner==g&&L++}),L==this.nodes.length&&(this.isConnected=!0)}},e.exports=p},function(e,t,r){"use strict";var n,i=r(1);function a(s){n=r(6),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=A,!1;if(hf)return l[0]=p,l[1]=h,l[2]=E,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,k=!0):(l[0]=g,l[1]=m,k=!0):C===D&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=x,l[1]=v,k=!0)),-O===D?f>u?(l[2]=_,l[3]=A,I=!0):(l[2]=E,l[3]=T,I=!0):O===D&&(f>u?(l[2]=S,l[3]=T,I=!0):(l[2]=L,l[3]=A,I=!0)),k&&I)return!1;if(u>f?h>d?(P=this.getCardinalDirection(C,D,4),F=this.getCardinalDirection(O,D,2)):(P=this.getCardinalDirection(-C,D,3),F=this.getCardinalDirection(-O,D,1)):h>d?(P=this.getCardinalDirection(-C,D,1),F=this.getCardinalDirection(-O,D,3)):(P=this.getCardinalDirection(C,D,2),F=this.getCardinalDirection(O,D,4)),!k)switch(P){case 1:G=m,B=u+-w/D,l[0]=B,l[1]=G;break;case 2:B=x,G=h+b*D,l[0]=B,l[1]=G;break;case 3:G=v,B=u+w/D,l[0]=B,l[1]=G;break;case 4:B=y,G=h+-b*D,l[0]=B,l[1]=G;break}if(!I)switch(F){case 1:W=T,z=f+-N/D,l[2]=z,l[3]=W;break;case 2:z=L,W=d+M*D,l[2]=z,l[3]=W;break;case 3:W=A,z=f+N/D,l[2]=z,l[3]=W;break;case 4:z=_,W=d+-M*D,l[2]=z,l[3]=W;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,w=void 0,S=void 0,T=void 0,E=void 0,_=void 0,A=void 0,L=void 0;return w=p-f,T=h-d,_=d*f-h*p,S=v-g,E=m-y,A=y*g-m*v,L=w*E-S*T,L===0?null:(x=(T*A-E*_)/L,b=(S*_-w*A)/L,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l=0){var v=(-m+Math.sqrt(m*m-4*p*g))/(2*p),x=(-m-Math.sqrt(m*m-4*p*g))/(2*p),b=null;return v>=0&&v<=1?[v]:x>=0&&x<=1?[x]:b}else return null},i.HALF_PI=.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,e.exports=i},function(e,t,r){"use strict";function n(){}o(n,"IMath"),n.sign=function(i){return i>0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},e.exports=n},function(e,t,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,e.exports=n},function(e,t,r){"use strict";var n=function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},e.exports=i},function(e,t,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(w.push(T[0]);w.length>0&&g;){var E=w[0];w.splice(0,1),b.add(E);for(var _=E.getEdges(),x=0;x<_.length;x++){var A=_[x].getOtherEnd(E);if(S.get(E)!=A)if(!b.has(A))w.push(A),S.set(A,E);else{g=!1;break}}}if(!g)m=[];else{var L=[].concat(n(b));m.push(L);for(var x=0;x-1&&T.splice(N,1)}b=new Set,S=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(A,1);var L=S.getNeighborsList();L.forEach(function(k){if(y.indexOf(k)<0){var I=v.get(k),C=I-1;C==1&&E.push(k),v.set(k,C)}})}y=y.concat(E),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},e.exports=p},function(e,t,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},e.exports=n},function(e,t,r){"use strict";var n=r(5);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},e.exports=i},function(e,t,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mw||b>w)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(w=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>w||b>w)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||w>=x[0].length)){for(var S=0;Sh},"_defaultCompareFunction")}]),l}();e.exports=s},function(e,t,r){"use strict";function n(){}o(n,"SVD"),n.svd=function(i){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=i.length,this.n=i[0].length;var a=Math.min(this.m,this.n);this.s=function(fe){for(var ee=[];fe-- >0;)ee.push(0);return ee}(Math.min(this.m+1,this.n)),this.U=function(fe){var ee=o(function pe(Me){if(Me.length==0)return 0;for(var oe=[],qe=0;qe0;)ee.push(0);return ee}(this.n),l=function(fe){for(var ee=[];fe-- >0;)ee.push(0);return ee}(this.m),u=!0,h=!0,f=Math.min(this.m-1,this.n),d=Math.max(0,Math.min(this.n-2,this.m)),p=0;p=0;D--)if(this.s[D]!==0){for(var P=D+1;P=0;j--){if(function(fe,ee){return fe&&ee}(j0;){var ut=void 0,et=void 0;for(ut=I-2;ut>=-1&&ut!==-1;ut--)if(Math.abs(s[ut])<=ct+ot*(Math.abs(this.s[ut])+Math.abs(this.s[ut+1]))){s[ut]=0;break}if(ut===I-2)et=4;else{var Mt=void 0;for(Mt=I-1;Mt>=ut&&Mt!==ut;Mt--){var it=(Mt!==I?Math.abs(s[Mt]):0)+(Mt!==ut+1?Math.abs(s[Mt-1]):0);if(Math.abs(this.s[Mt])<=ct+ot*it){this.s[Mt]=0;break}}Mt===ut?et=3:Mt===I-1?et=1:(et=2,ut=Mt)}switch(ut++,et){case 1:{var wt=s[I-2];s[I-2]=0;for(var Ot=I-2;Ot>=ut;Ot--){var St=n.hypot(this.s[Ot],wt),Vt=this.s[Ot]/St,Pt=wt/St;if(this.s[Ot]=St,Ot!==ut&&(wt=-Pt*s[Ot-1],s[Ot-1]=Vt*s[Ot-1]),h)for(var _t=0;_t=this.s[ut+1]);){var ne=this.s[ut];if(this.s[ut]=this.s[ut+1],this.s[ut+1]=ne,h&&utMath.abs(a)?(s=a/i,s=Math.abs(i)*Math.sqrt(1+s*s)):a!=0?(s=i/a,s=Math.abs(a)*Math.sqrt(1+s*s)):s=0,s},e.exports=n},function(e,t,r){"use strict";var n=function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o(function(t,r){typeof Wb=="object"&&typeof oz=="object"?oz.exports=r(sz()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof Wb=="object"?Wb.coseBase=r(sz()):t.coseBase=r(t.layoutBase)},"webpackUniversalModuleDefinition")(Wb,function(e){return(()=>{"use strict";var t={45:(a,s,l)=>{var u={};u.layoutBase=l(551),u.CoSEConstants=l(806),u.CoSEEdge=l(767),u.CoSEGraph=l(880),u.CoSEGraphManager=l(578),u.CoSELayout=l(765),u.CoSENode=l(991),u.ConstraintHandler=l(902),a.exports=u},806:(a,s,l)=>{var u=l(551).FDLayoutConstants;function h(){}o(h,"CoSEConstants");for(var f in u)h[f]=u[f];h.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,h.DEFAULT_RADIAL_SEPARATION=u.DEFAULT_EDGE_LENGTH,h.DEFAULT_COMPONENT_SEPERATION=60,h.TILE=!0,h.TILING_PADDING_VERTICAL=10,h.TILING_PADDING_HORIZONTAL=10,h.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,h.ENFORCE_CONSTRAINTS=!0,h.APPLY_LAYOUT=!0,h.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,h.TREE_REDUCTION_ON_INCREMENTAL=!0,h.PURE_INCREMENTAL=h.DEFAULT_INCREMENTAL,a.exports=h},767:(a,s,l)=>{var u=l(551).FDLayoutEdge;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEEdge"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},880:(a,s,l)=>{var u=l(551).LGraph;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEGraph"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},578:(a,s,l)=>{var u=l(551).LGraphManager;function h(d){u.call(this,d)}o(h,"CoSEGraphManager"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},765:(a,s,l)=>{var u=l(551).FDLayout,h=l(578),f=l(880),d=l(991),p=l(767),m=l(806),g=l(902),y=l(551).FDLayoutConstants,v=l(551).LayoutConstants,x=l(551).Point,b=l(551).PointD,w=l(551).DimensionD,S=l(551).Layout,T=l(551).Integer,E=l(551).IGeometry,_=l(551).LGraph,A=l(551).Transform,L=l(551).LinkedList;function M(){u.call(this),this.toBeTiled={},this.constraints={}}o(M,"CoSELayout"),M.prototype=Object.create(u.prototype);for(var N in u)M[N]=u[N];M.prototype.newGraphManager=function(){var k=new h(this);return this.graphManager=k,k},M.prototype.newGraph=function(k){return new f(null,this.graphManager,k)},M.prototype.newNode=function(k){return new d(this.graphManager,k)},M.prototype.newEdge=function(k){return new p(null,null,k)},M.prototype.initParameters=function(){u.prototype.initParameters.call(this,arguments),this.isSubLayout||(m.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=m.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=m.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=y.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=y.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=y.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},M.prototype.initSpringEmbedder=function(){u.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/y.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},M.prototype.layout=function(){var k=v.DEFAULT_CREATE_BENDS_AS_NEEDED;return k&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},M.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){if(m.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var I=new Set(this.getAllNodes()),C=this.nodesWithGravity.filter(function(P){return I.has(P)});this.graphManager.setAllNodesToApplyGravitation(C)}}else{var k=this.getFlatForest();if(k.length>0)this.positionNodesRadially(k);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var I=new Set(this.getAllNodes()),C=this.nodesWithGravity.filter(function(O){return I.has(O)});this.graphManager.setAllNodesToApplyGravitation(C),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(g.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),m.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},M.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%y.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle: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 k=new Set(this.getAllNodes()),I=this.nodesWithGravity.filter(function(D){return k.has(D)});this.graphManager.setAllNodesToApplyGravitation(I),this.graphManager.updateBounds(),this.updateGrid(),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var C=!this.isTreeGrowing&&!this.isGrowthFinished,O=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(C,O),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},M.prototype.getPositionsData=function(){for(var k=this.graphManager.getAllNodes(),I={},C=0;C0&&this.updateDisplacements();for(var C=0;C0&&(O.fixedNodeWeight=P)}}if(this.constraints.relativePlacementConstraint){var F=new Map,B=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(J){k.fixedNodesOnHorizontal.add(J),k.fixedNodesOnVertical.add(J)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var G=this.constraints.alignmentConstraint.vertical,C=0;C=2*J.length/3;q--)Z=Math.floor(Math.random()*(q+1)),H=J[q],J[q]=J[Z],J[Z]=H;return J},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(J){if(J.left){var Z=F.has(J.left)?F.get(J.left):J.left,H=F.has(J.right)?F.get(J.right):J.right;k.nodesInRelativeHorizontal.includes(Z)||(k.nodesInRelativeHorizontal.push(Z),k.nodeToRelativeConstraintMapHorizontal.set(Z,[]),k.dummyToNodeForVerticalAlignment.has(Z)?k.nodeToTempPositionMapHorizontal.set(Z,k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(Z)[0]).getCenterX()):k.nodeToTempPositionMapHorizontal.set(Z,k.idToNodeMap.get(Z).getCenterX())),k.nodesInRelativeHorizontal.includes(H)||(k.nodesInRelativeHorizontal.push(H),k.nodeToRelativeConstraintMapHorizontal.set(H,[]),k.dummyToNodeForVerticalAlignment.has(H)?k.nodeToTempPositionMapHorizontal.set(H,k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(H)[0]).getCenterX()):k.nodeToTempPositionMapHorizontal.set(H,k.idToNodeMap.get(H).getCenterX())),k.nodeToRelativeConstraintMapHorizontal.get(Z).push({right:H,gap:J.gap}),k.nodeToRelativeConstraintMapHorizontal.get(H).push({left:Z,gap:J.gap})}else{var q=B.has(J.top)?B.get(J.top):J.top,K=B.has(J.bottom)?B.get(J.bottom):J.bottom;k.nodesInRelativeVertical.includes(q)||(k.nodesInRelativeVertical.push(q),k.nodeToRelativeConstraintMapVertical.set(q,[]),k.dummyToNodeForHorizontalAlignment.has(q)?k.nodeToTempPositionMapVertical.set(q,k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(q)[0]).getCenterY()):k.nodeToTempPositionMapVertical.set(q,k.idToNodeMap.get(q).getCenterY())),k.nodesInRelativeVertical.includes(K)||(k.nodesInRelativeVertical.push(K),k.nodeToRelativeConstraintMapVertical.set(K,[]),k.dummyToNodeForHorizontalAlignment.has(K)?k.nodeToTempPositionMapVertical.set(K,k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(K)[0]).getCenterY()):k.nodeToTempPositionMapVertical.set(K,k.idToNodeMap.get(K).getCenterY())),k.nodeToRelativeConstraintMapVertical.get(q).push({bottom:K,gap:J.gap}),k.nodeToRelativeConstraintMapVertical.get(K).push({top:q,gap:J.gap})}});else{var W=new Map,Q=new Map;this.constraints.relativePlacementConstraint.forEach(function(J){if(J.left){var Z=F.has(J.left)?F.get(J.left):J.left,H=F.has(J.right)?F.get(J.right):J.right;W.has(Z)?W.get(Z).push(H):W.set(Z,[H]),W.has(H)?W.get(H).push(Z):W.set(H,[Z])}else{var q=B.has(J.top)?B.get(J.top):J.top,K=B.has(J.bottom)?B.get(J.bottom):J.bottom;Q.has(q)?Q.get(q).push(K):Q.set(q,[K]),Q.has(K)?Q.get(K).push(q):Q.set(K,[q])}});var j=o(function(Z,H){var q=[],K=[],ot=new L,ct=new Set,ut=0;return Z.forEach(function(et,Mt){if(!ct.has(Mt)){q[ut]=[],K[ut]=!1;var it=Mt;for(ot.push(it),ct.add(it),q[ut].push(it);ot.length!=0;){it=ot.shift(),H.has(it)&&(K[ut]=!0);var wt=Z.get(it);wt.forEach(function(Ot){ct.has(Ot)||(ot.push(Ot),ct.add(Ot),q[ut].push(Ot))})}ut++}}),{components:q,isFixed:K}},"constructComponents"),at=j(W,k.fixedNodesOnHorizontal);this.componentsOnHorizontal=at.components,this.fixedComponentsOnHorizontal=at.isFixed;var X=j(Q,k.fixedNodesOnVertical);this.componentsOnVertical=X.components,this.fixedComponentsOnVertical=X.isFixed}}},M.prototype.updateDisplacements=function(){var k=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(X){var J=k.idToNodeMap.get(X.nodeId);J.displacementX=0,J.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var I=this.constraints.alignmentConstraint.vertical,C=0;C1){var B;for(B=0;BO&&(O=Math.floor(F.y)),P=Math.floor(F.x+m.DEFAULT_COMPONENT_SEPERATION)}this.transform(new b(v.WORLD_CENTER_X-F.x/2,v.WORLD_CENTER_Y-F.y/2))},M.radialLayout=function(k,I,C){var O=Math.max(this.maxDiagonalInTree(k),m.DEFAULT_RADIAL_SEPARATION);M.branchRadialLayout(I,null,0,359,0,O);var D=_.calculateBounds(k),P=new A;P.setDeviceOrgX(D.getMinX()),P.setDeviceOrgY(D.getMinY()),P.setWorldOrgX(C.x),P.setWorldOrgY(C.y);for(var F=0;F1;){var q=H[0];H.splice(0,1);var K=j.indexOf(q);K>=0&&j.splice(K,1),J--,at--}I!=null?Z=(j.indexOf(H[0])+1)%J:Z=0;for(var ot=Math.abs(O-C)/at,ct=Z;X!=at;ct=++ct%J){var ut=j[ct].getOtherEnd(k);if(ut!=I){var et=(C+X*ot)%360,Mt=(et+ot)%360;M.branchRadialLayout(ut,k,et,Mt,D+P,P),X++}}},M.maxDiagonalInTree=function(k){for(var I=T.MIN_VALUE,C=0;CI&&(I=D)}return I},M.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},M.prototype.groupZeroDegreeMembers=function(){var k=this,I={};this.memberGroups={},this.idToDummyNode={};for(var C=[],O=this.graphManager.getAllNodes(),D=0;D"u"&&(I[B]=[]),I[B]=I[B].concat(P)}Object.keys(I).forEach(function(G){if(I[G].length>1){var z="DummyCompound_"+G;k.memberGroups[z]=I[G];var W=I[G][0].getParent(),Q=new d(k.graphManager);Q.id=z,Q.paddingLeft=W.paddingLeft||0,Q.paddingRight=W.paddingRight||0,Q.paddingBottom=W.paddingBottom||0,Q.paddingTop=W.paddingTop||0,k.idToDummyNode[z]=Q;var j=k.getGraphManager().add(k.newGraph(),Q),at=W.getChild();at.add(Q);for(var X=0;XD?(O.rect.x-=(O.labelWidth-D)/2,O.setWidth(O.labelWidth),O.labelMarginLeft=(O.labelWidth-D)/2):O.labelPosHorizontal=="right"&&O.setWidth(D+O.labelWidth)),O.labelHeight&&(O.labelPosVertical=="top"?(O.rect.y-=O.labelHeight,O.setHeight(P+O.labelHeight),O.labelMarginTop=O.labelHeight):O.labelPosVertical=="center"&&O.labelHeight>P?(O.rect.y-=(O.labelHeight-P)/2,O.setHeight(O.labelHeight),O.labelMarginTop=(O.labelHeight-P)/2):O.labelPosVertical=="bottom"&&O.setHeight(P+O.labelHeight))}})},M.prototype.repopulateCompounds=function(){for(var k=this.compoundOrder.length-1;k>=0;k--){var I=this.compoundOrder[k],C=I.id,O=I.paddingLeft,D=I.paddingTop,P=I.labelMarginLeft,F=I.labelMarginTop;this.adjustLocations(this.tiledMemberPack[C],I.rect.x,I.rect.y,O,D,P,F)}},M.prototype.repopulateZeroDegreeMembers=function(){var k=this,I=this.tiledZeroDegreePack;Object.keys(I).forEach(function(C){var O=k.idToDummyNode[C],D=O.paddingLeft,P=O.paddingTop,F=O.labelMarginLeft,B=O.labelMarginTop;k.adjustLocations(I[C],O.rect.x,O.rect.y,D,P,F,B)})},M.prototype.getToBeTiled=function(k){var I=k.id;if(this.toBeTiled[I]!=null)return this.toBeTiled[I];var C=k.getChild();if(C==null)return this.toBeTiled[I]=!1,!1;for(var O=C.getNodes(),D=0;D0)return this.toBeTiled[I]=!1,!1;if(P.getChild()==null){this.toBeTiled[P.id]=!1;continue}if(!this.getToBeTiled(P))return this.toBeTiled[I]=!1,!1}return this.toBeTiled[I]=!0,!0},M.prototype.getNodeDegree=function(k){for(var I=k.id,C=k.getEdges(),O=0,D=0;DW&&(W=j.rect.height)}C+=W+k.verticalPadding}},M.prototype.tileCompoundMembers=function(k,I){var C=this;this.tiledMemberPack=[],Object.keys(k).forEach(function(O){var D=I[O];if(C.tiledMemberPack[O]=C.tileNodes(k[O],D.paddingLeft+D.paddingRight),D.rect.width=C.tiledMemberPack[O].width,D.rect.height=C.tiledMemberPack[O].height,D.setCenter(C.tiledMemberPack[O].centerX,C.tiledMemberPack[O].centerY),D.labelMarginLeft=0,D.labelMarginTop=0,m.NODE_DIMENSIONS_INCLUDE_LABELS){var P=D.rect.width,F=D.rect.height;D.labelWidth&&(D.labelPosHorizontal=="left"?(D.rect.x-=D.labelWidth,D.setWidth(P+D.labelWidth),D.labelMarginLeft=D.labelWidth):D.labelPosHorizontal=="center"&&D.labelWidth>P?(D.rect.x-=(D.labelWidth-P)/2,D.setWidth(D.labelWidth),D.labelMarginLeft=(D.labelWidth-P)/2):D.labelPosHorizontal=="right"&&D.setWidth(P+D.labelWidth)),D.labelHeight&&(D.labelPosVertical=="top"?(D.rect.y-=D.labelHeight,D.setHeight(F+D.labelHeight),D.labelMarginTop=D.labelHeight):D.labelPosVertical=="center"&&D.labelHeight>F?(D.rect.y-=(D.labelHeight-F)/2,D.setHeight(D.labelHeight),D.labelMarginTop=(D.labelHeight-F)/2):D.labelPosVertical=="bottom"&&D.setHeight(F+D.labelHeight))}})},M.prototype.tileNodes=function(k,I){var C=this.tileNodesByFavoringDim(k,I,!0),O=this.tileNodesByFavoringDim(k,I,!1),D=this.getOrgRatio(C),P=this.getOrgRatio(O),F;return PB&&(B=X.getWidth())});var G=P/D,z=F/D,W=Math.pow(C-O,2)+4*(G+O)*(z+C)*D,Q=(O-C+Math.sqrt(W))/(2*(G+O)),j;I?(j=Math.ceil(Q),j==Q&&j++):j=Math.floor(Q);var at=j*(G+O)-O;return B>at&&(at=B),at+=O*2,at},M.prototype.tileNodesByFavoringDim=function(k,I,C){var O=m.TILING_PADDING_VERTICAL,D=m.TILING_PADDING_HORIZONTAL,P=m.TILING_COMPARE_BY,F={rows:[],rowWidth:[],rowHeight:[],width:0,height:I,verticalPadding:O,horizontalPadding:D,centerX:0,centerY:0};P&&(F.idealRowWidth=this.calcIdealRowWidth(k,C));var B=o(function(J){return J.rect.width*J.rect.height},"getNodeArea"),G=o(function(J,Z){return B(Z)-B(J)},"areaCompareFcn");k.sort(function(X,J){var Z=G;return F.idealRowWidth?(Z=P,Z(X.id,J.id)):Z(X,J)});for(var z=0,W=0,Q=0;Q0&&(F+=k.horizontalPadding),k.rowWidth[C]=F,k.width0&&(B+=k.verticalPadding);var G=0;B>k.rowHeight[C]&&(G=k.rowHeight[C],k.rowHeight[C]=B,G=k.rowHeight[C]-G),k.height+=G,k.rows[C].push(I)},M.prototype.getShortestRowIndex=function(k){for(var I=-1,C=Number.MAX_VALUE,O=0;OC&&(I=O,C=k.rowWidth[O]);return I},M.prototype.canAddHorizontal=function(k,I,C){if(k.idealRowWidth){var O=k.rows.length-1,D=k.rowWidth[O];return D+I+k.horizontalPadding<=k.idealRowWidth}var P=this.getShortestRowIndex(k);if(P<0)return!0;var F=k.rowWidth[P];if(F+k.horizontalPadding+I<=k.width)return!0;var B=0;k.rowHeight[P]0&&(B=C+k.verticalPadding-k.rowHeight[P]);var G;k.width-F>=I+k.horizontalPadding?G=(k.height+B)/(F+I+k.horizontalPadding):G=(k.height+B)/k.width,B=C+k.verticalPadding;var z;return k.widthP&&I!=C){O.splice(-1,1),k.rows[C].push(D),k.rowWidth[I]=k.rowWidth[I]-P,k.rowWidth[C]=k.rowWidth[C]+P,k.width=k.rowWidth[instance.getLongestRowIndex(k)];for(var F=Number.MIN_VALUE,B=0;BF&&(F=O[B].height);I>0&&(F+=k.verticalPadding);var G=k.rowHeight[I]+k.rowHeight[C];k.rowHeight[I]=F,k.rowHeight[C]0)for(var at=D;at<=P;at++)j[0]+=this.grid[at][F-1].length+this.grid[at][F].length-1;if(P0)for(var at=F;at<=B;at++)j[3]+=this.grid[D-1][at].length+this.grid[D][at].length-1;for(var X=T.MAX_VALUE,J,Z,H=0;H{var u=l(551).FDLayoutNode,h=l(551).IMath;function f(p,m,g,y){u.call(this,p,m,g,y)}o(f,"CoSENode"),f.prototype=Object.create(u.prototype);for(var d in u)f[d]=u[d];f.prototype.calculateDisplacement=function(){var p=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementX=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementX)),Math.abs(this.displacementY)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementY=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},f.prototype.propogateDisplacementToChildren=function(p,m){for(var g=this.getChild().getNodes(),y,v=0;v{function u(g){if(Array.isArray(g)){for(var y=0,v=Array(g.length);y0){var me=0;Zt.forEach(function(ne){Tt=="horizontal"?(yt.set(ne,x.has(ne)?b[x.get(ne)]:Ct.get(ne)),me+=yt.get(ne)):(yt.set(ne,x.has(ne)?w[x.get(ne)]:Ct.get(ne)),me+=yt.get(ne))}),me=me/Zt.length,le.forEach(function(ne){kt.has(ne)||yt.set(ne,me)})}else{var Ht=0;le.forEach(function(ne){Tt=="horizontal"?Ht+=x.has(ne)?b[x.get(ne)]:Ct.get(ne):Ht+=x.has(ne)?w[x.get(ne)]:Ct.get(ne)}),Ht=Ht/le.length,le.forEach(function(ne){yt.set(ne,Ht)})}});for(var ae=o(function(){var Zt=zt.shift(),me=st.get(Zt);me.forEach(function(Ht){if(yt.get(Ht.id)ne&&(ne=oe),qexe&&(xe=qe)}}catch(Pn){Ye=!0,fe=Pn}finally{try{!Se&&ee.return&&ee.return()}finally{if(Ye)throw fe}}var Cr=(me+ne)/2-(Ht+xe)/2,En=!0,or=!1,ln=void 0;try{for(var Ir=le[Symbol.iterator](),ii;!(En=(ii=Ir.next()).done);En=!0){var mn=ii.value;yt.set(mn,yt.get(mn)+Cr)}}catch(Pn){or=!0,ln=Pn}finally{try{!En&&Ir.return&&Ir.return()}finally{if(or)throw ln}}})}return yt},"findAppropriatePositionForRelativePlacement"),N=o(function(st){var Tt=0,kt=0,Ct=0,At=0;if(st.forEach(function(Ut){Ut.left?b[x.get(Ut.left)]-b[x.get(Ut.right)]>=0?Tt++:kt++:w[x.get(Ut.top)]-w[x.get(Ut.bottom)]>=0?Ct++:At++}),Tt>kt&&Ct>At)for(var $t=0;$tkt)for(var Nt=0;NtAt)for(var yt=0;yt1)y.fixedNodeConstraint.forEach(function(nt,st){O[st]=[nt.position.x,nt.position.y],D[st]=[b[x.get(nt.nodeId)],w[x.get(nt.nodeId)]]}),P=!0;else if(y.alignmentConstraint)(function(){var nt=0;if(y.alignmentConstraint.vertical){for(var st=y.alignmentConstraint.vertical,Tt=o(function(yt){var Ut=new Set;st[yt].forEach(function(ke){Ut.add(ke)});var zt=new Set([].concat(u(Ut)).filter(function(ke){return B.has(ke)})),ae=void 0;zt.size>0?ae=b[x.get(zt.values().next().value)]:ae=L(Ut).x,st[yt].forEach(function(ke){O[nt]=[ae,w[x.get(ke)]],D[nt]=[b[x.get(ke)],w[x.get(ke)]],nt++})},"_loop2"),kt=0;kt0?ae=b[x.get(zt.values().next().value)]:ae=L(Ut).y,Ct[yt].forEach(function(ke){O[nt]=[b[x.get(ke)],ae],D[nt]=[b[x.get(ke)],w[x.get(ke)]],nt++})},"_loop3"),$t=0;$tQ&&(Q=W[at].length,j=at);if(Q0){var Vt={x:0,y:0};y.fixedNodeConstraint.forEach(function(nt,st){var Tt={x:b[x.get(nt.nodeId)],y:w[x.get(nt.nodeId)]},kt=nt.position,Ct=A(kt,Tt);Vt.x+=Ct.x,Vt.y+=Ct.y}),Vt.x/=y.fixedNodeConstraint.length,Vt.y/=y.fixedNodeConstraint.length,b.forEach(function(nt,st){b[st]+=Vt.x}),w.forEach(function(nt,st){w[st]+=Vt.y}),y.fixedNodeConstraint.forEach(function(nt){b[x.get(nt.nodeId)]=nt.position.x,w[x.get(nt.nodeId)]=nt.position.y})}if(y.alignmentConstraint){if(y.alignmentConstraint.vertical)for(var Pt=y.alignmentConstraint.vertical,_t=o(function(st){var Tt=new Set;Pt[st].forEach(function(At){Tt.add(At)});var kt=new Set([].concat(u(Tt)).filter(function(At){return B.has(At)})),Ct=void 0;kt.size>0?Ct=b[x.get(kt.values().next().value)]:Ct=L(Tt).x,Tt.forEach(function(At){B.has(At)||(b[x.get(At)]=Ct)})},"_loop4"),dt=0;dt0?Ct=w[x.get(kt.values().next().value)]:Ct=L(Tt).y,Tt.forEach(function(At){B.has(At)||(w[x.get(At)]=Ct)})},"_loop5"),mt=0;mt{a.exports=e}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return t[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(45);return i})()})});var c2t=Ti((Yb,cz)=>{"use strict";o(function(t,r){typeof Yb=="object"&&typeof cz=="object"?cz.exports=r(lz()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof Yb=="object"?Yb.cytoscapeFcose=r(lz()):t.cytoscapeFcose=r(t.coseBase)},"webpackUniversalModuleDefinition")(Yb,function(e){return(()=>{"use strict";var t={658:a=>{a.exports=Object.assign!=null?Object.assign.bind(Object):function(s){for(var l=arguments.length,u=Array(l>1?l-1:0),h=1;h{var u=function(){function d(p,m){var g=[],y=!0,v=!1,x=void 0;try{for(var b=p[Symbol.iterator](),w;!(y=(w=b.next()).done)&&(g.push(w.value),!(m&&g.length===m));y=!0);}catch(S){v=!0,x=S}finally{try{!y&&b.return&&b.return()}finally{if(v)throw x}}return g}return o(d,"sliceIterator"),function(p,m){if(Array.isArray(p))return p;if(Symbol.iterator in Object(p))return d(p,m);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),h=l(140).layoutBase.LinkedList,f={};f.getTopMostNodes=function(d){for(var p={},m=0;m0&&P.merge(z)});for(var F=0;F1){w=x[0],S=w.connectedEdges().length,x.forEach(function(D){D.connectedEdges().length0&&g.set("dummy"+(g.size+1),_),A},f.relocateComponent=function(d,p,m){if(!m.fixedNodeConstraint){var g=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY,v=Number.POSITIVE_INFINITY,x=Number.NEGATIVE_INFINITY;if(m.quality=="draft"){var b=!0,w=!1,S=void 0;try{for(var T=p.nodeIndexes[Symbol.iterator](),E;!(b=(E=T.next()).done);b=!0){var _=E.value,A=u(_,2),L=A[0],M=A[1],N=m.cy.getElementById(L);if(N){var k=N.boundingBox(),I=p.xCoords[M]-k.w/2,C=p.xCoords[M]+k.w/2,O=p.yCoords[M]-k.h/2,D=p.yCoords[M]+k.h/2;Iy&&(y=C),Ox&&(x=D)}}}catch(z){w=!0,S=z}finally{try{!b&&T.return&&T.return()}finally{if(w)throw S}}var P=d.x-(y+g)/2,F=d.y-(x+v)/2;p.xCoords=p.xCoords.map(function(z){return z+P}),p.yCoords=p.yCoords.map(function(z){return z+F})}else{Object.keys(p).forEach(function(z){var W=p[z],Q=W.getRect().x,j=W.getRect().x+W.getRect().width,at=W.getRect().y,X=W.getRect().y+W.getRect().height;Qy&&(y=j),atx&&(x=X)});var B=d.x-(y+g)/2,G=d.y-(x+v)/2;Object.keys(p).forEach(function(z){var W=p[z];W.setCenter(W.getCenterX()+B,W.getCenterY()+G)})}}},f.calcBoundingBox=function(d,p,m,g){for(var y=Number.MAX_SAFE_INTEGER,v=Number.MIN_SAFE_INTEGER,x=Number.MAX_SAFE_INTEGER,b=Number.MIN_SAFE_INTEGER,w=void 0,S=void 0,T=void 0,E=void 0,_=d.descendants().not(":parent"),A=_.length,L=0;Lw&&(y=w),vT&&(x=T),b{var u=l(548),h=l(140).CoSELayout,f=l(140).CoSENode,d=l(140).layoutBase.PointD,p=l(140).layoutBase.DimensionD,m=l(140).layoutBase.LayoutConstants,g=l(140).layoutBase.FDLayoutConstants,y=l(140).CoSEConstants,v=o(function(b,w){var S=b.cy,T=b.eles,E=T.nodes(),_=T.edges(),A=void 0,L=void 0,M=void 0,N={};b.randomize&&(A=w.nodeIndexes,L=w.xCoords,M=w.yCoords);var k=o(function(z){return typeof z=="function"},"isFn"),I=o(function(z,W){return k(z)?z(W):z},"optFn"),C=u.calcParentsWithoutChildren(S,T),O=o(function G(z,W,Q,j){for(var at=W.length,X=0;X0){var ot=void 0;ot=Q.getGraphManager().add(Q.newGraph(),H),G(ot,Z,Q,j)}}},"processChildrenList"),D=o(function(z,W,Q){for(var j=0,at=0,X=0;X0?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=j/at:k(b.idealEdgeLength)?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=50:y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=b.idealEdgeLength,y.MIN_REPULSION_DIST=g.MIN_REPULSION_DIST=g.DEFAULT_EDGE_LENGTH/10,y.DEFAULT_RADIAL_SEPARATION=g.DEFAULT_EDGE_LENGTH)},"processEdges"),P=o(function(z,W){W.fixedNodeConstraint&&(z.constraints.fixedNodeConstraint=W.fixedNodeConstraint),W.alignmentConstraint&&(z.constraints.alignmentConstraint=W.alignmentConstraint),W.relativePlacementConstraint&&(z.constraints.relativePlacementConstraint=W.relativePlacementConstraint)},"processConstraints");b.nestingFactor!=null&&(y.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=g.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=b.nestingFactor),b.gravity!=null&&(y.DEFAULT_GRAVITY_STRENGTH=g.DEFAULT_GRAVITY_STRENGTH=b.gravity),b.numIter!=null&&(y.MAX_ITERATIONS=g.MAX_ITERATIONS=b.numIter),b.gravityRange!=null&&(y.DEFAULT_GRAVITY_RANGE_FACTOR=g.DEFAULT_GRAVITY_RANGE_FACTOR=b.gravityRange),b.gravityCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_STRENGTH=g.DEFAULT_COMPOUND_GRAVITY_STRENGTH=b.gravityCompound),b.gravityRangeCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=g.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=b.gravityRangeCompound),b.initialEnergyOnIncremental!=null&&(y.DEFAULT_COOLING_FACTOR_INCREMENTAL=g.DEFAULT_COOLING_FACTOR_INCREMENTAL=b.initialEnergyOnIncremental),b.tilingCompareBy!=null&&(y.TILING_COMPARE_BY=b.tilingCompareBy),b.quality=="proof"?m.QUALITY=2:m.QUALITY=0,y.NODE_DIMENSIONS_INCLUDE_LABELS=g.NODE_DIMENSIONS_INCLUDE_LABELS=m.NODE_DIMENSIONS_INCLUDE_LABELS=b.nodeDimensionsIncludeLabels,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!b.randomize,y.ANIMATE=g.ANIMATE=m.ANIMATE=b.animate,y.TILE=b.tile,y.TILING_PADDING_VERTICAL=typeof b.tilingPaddingVertical=="function"?b.tilingPaddingVertical.call():b.tilingPaddingVertical,y.TILING_PADDING_HORIZONTAL=typeof b.tilingPaddingHorizontal=="function"?b.tilingPaddingHorizontal.call():b.tilingPaddingHorizontal,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!0,y.PURE_INCREMENTAL=!b.randomize,m.DEFAULT_UNIFORM_LEAF_NODE_SIZES=b.uniformNodeDimensions,b.step=="transformed"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!1),b.step=="enforced"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!1),b.step=="cose"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!0),b.step=="all"&&(b.randomize?y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!0),b.fixedNodeConstraint||b.alignmentConstraint||b.relativePlacementConstraint?y.TREE_REDUCTION_ON_INCREMENTAL=!1:y.TREE_REDUCTION_ON_INCREMENTAL=!0;var F=new h,B=F.newGraphManager();return O(B.addRoot(),u.getTopMostNodes(E),F,b),D(F,B,_),P(F,b),F.runLayout(),N},"coseLayout");a.exports={coseLayout:v}},212:(a,s,l)=>{var u=function(){function b(w,S){for(var T=0;T0)if(D){var B=d.getTopMostNodes(T.eles.nodes());if(k=d.connectComponents(E,T.eles,B),k.forEach(function(it){var wt=it.boundingBox();I.push({x:wt.x1+wt.w/2,y:wt.y1+wt.h/2})}),T.randomize&&k.forEach(function(it){T.eles=it,A.push(m(T))}),T.quality=="default"||T.quality=="proof"){var G=E.collection();if(T.tile){var z=new Map,W=[],Q=[],j=0,at={nodeIndexes:z,xCoords:W,yCoords:Q},X=[];if(k.forEach(function(it,wt){it.edges().length==0&&(it.nodes().forEach(function(Ot,St){G.merge(it.nodes()[St]),Ot.isParent()||(at.nodeIndexes.set(it.nodes()[St].id(),j++),at.xCoords.push(it.nodes()[0].position().x),at.yCoords.push(it.nodes()[0].position().y))}),X.push(wt))}),G.length>1){var J=G.boundingBox();I.push({x:J.x1+J.w/2,y:J.y1+J.h/2}),k.push(G),A.push(at);for(var Z=X.length-1;Z>=0;Z--)k.splice(X[Z],1),A.splice(X[Z],1),I.splice(X[Z],1)}}k.forEach(function(it,wt){T.eles=it,N.push(y(T,A[wt])),d.relocateComponent(I[wt],N[wt],T)})}else k.forEach(function(it,wt){d.relocateComponent(I[wt],A[wt],T)});var H=new Set;if(k.length>1){var q=[],K=_.filter(function(it){return it.css("display")=="none"});k.forEach(function(it,wt){var Ot=void 0;if(T.quality=="draft"&&(Ot=A[wt].nodeIndexes),it.nodes().not(K).length>0){var St={};St.edges=[],St.nodes=[];var Vt=void 0;it.nodes().not(K).forEach(function(Pt){if(T.quality=="draft")if(!Pt.isParent())Vt=Ot.get(Pt.id()),St.nodes.push({x:A[wt].xCoords[Vt]-Pt.boundingbox().w/2,y:A[wt].yCoords[Vt]-Pt.boundingbox().h/2,width:Pt.boundingbox().w,height:Pt.boundingbox().h});else{var _t=d.calcBoundingBox(Pt,A[wt].xCoords,A[wt].yCoords,Ot);St.nodes.push({x:_t.topLeftX,y:_t.topLeftY,width:_t.width,height:_t.height})}else N[wt][Pt.id()]&&St.nodes.push({x:N[wt][Pt.id()].getLeft(),y:N[wt][Pt.id()].getTop(),width:N[wt][Pt.id()].getWidth(),height:N[wt][Pt.id()].getHeight()})}),it.edges().forEach(function(Pt){var _t=Pt.source(),dt=Pt.target();if(_t.css("display")!="none"&&dt.css("display")!="none")if(T.quality=="draft"){var Y=Ot.get(_t.id()),ft=Ot.get(dt.id()),mt=[],rt=[];if(_t.isParent()){var ht=d.calcBoundingBox(_t,A[wt].xCoords,A[wt].yCoords,Ot);mt.push(ht.topLeftX+ht.width/2),mt.push(ht.topLeftY+ht.height/2)}else mt.push(A[wt].xCoords[Y]),mt.push(A[wt].yCoords[Y]);if(dt.isParent()){var nt=d.calcBoundingBox(dt,A[wt].xCoords,A[wt].yCoords,Ot);rt.push(nt.topLeftX+nt.width/2),rt.push(nt.topLeftY+nt.height/2)}else rt.push(A[wt].xCoords[ft]),rt.push(A[wt].yCoords[ft]);St.edges.push({startX:mt[0],startY:mt[1],endX:rt[0],endY:rt[1]})}else N[wt][_t.id()]&&N[wt][dt.id()]&&St.edges.push({startX:N[wt][_t.id()].getCenterX(),startY:N[wt][_t.id()].getCenterY(),endX:N[wt][dt.id()].getCenterX(),endY:N[wt][dt.id()].getCenterY()})}),St.nodes.length>0&&(q.push(St),H.add(wt))}});var ot=O.packComponents(q,T.randomize).shifts;if(T.quality=="draft")A.forEach(function(it,wt){var Ot=it.xCoords.map(function(Vt){return Vt+ot[wt].dx}),St=it.yCoords.map(function(Vt){return Vt+ot[wt].dy});it.xCoords=Ot,it.yCoords=St});else{var ct=0;H.forEach(function(it){Object.keys(N[it]).forEach(function(wt){var Ot=N[it][wt];Ot.setCenter(Ot.getCenterX()+ot[ct].dx,Ot.getCenterY()+ot[ct].dy)}),ct++})}}}else{var P=T.eles.boundingBox();if(I.push({x:P.x1+P.w/2,y:P.y1+P.h/2}),T.randomize){var F=m(T);A.push(F)}T.quality=="default"||T.quality=="proof"?(N.push(y(T,A[0])),d.relocateComponent(I[0],N[0],T)):d.relocateComponent(I[0],A[0],T)}var ut=o(function(wt,Ot){if(T.quality=="default"||T.quality=="proof"){typeof wt=="number"&&(wt=Ot);var St=void 0,Vt=void 0,Pt=wt.data("id");return N.forEach(function(dt){Pt in dt&&(St={x:dt[Pt].getRect().getCenterX(),y:dt[Pt].getRect().getCenterY()},Vt=dt[Pt])}),T.nodeDimensionsIncludeLabels&&(Vt.labelWidth&&(Vt.labelPosHorizontal=="left"?St.x+=Vt.labelWidth/2:Vt.labelPosHorizontal=="right"&&(St.x-=Vt.labelWidth/2)),Vt.labelHeight&&(Vt.labelPosVertical=="top"?St.y+=Vt.labelHeight/2:Vt.labelPosVertical=="bottom"&&(St.y-=Vt.labelHeight/2))),St==null&&(St={x:wt.position("x"),y:wt.position("y")}),{x:St.x,y:St.y}}else{var _t=void 0;return A.forEach(function(dt){var Y=dt.nodeIndexes.get(wt.id());Y!=null&&(_t={x:dt.xCoords[Y],y:dt.yCoords[Y]})}),_t==null&&(_t={x:wt.position("x"),y:wt.position("y")}),{x:_t.x,y:_t.y}}},"getPositions");if(T.quality=="default"||T.quality=="proof"||T.randomize){var et=d.calcParentsWithoutChildren(E,_),Mt=_.filter(function(it){return it.css("display")=="none"});T.eles=_.not(Mt),_.nodes().not(":parent").not(Mt).layoutPositions(S,T,ut),et.length>0&&et.forEach(function(it){it.position(ut(it))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")},"run")}]),b}();a.exports=x},657:(a,s,l)=>{var u=l(548),h=l(140).layoutBase.Matrix,f=l(140).layoutBase.SVD,d=o(function(m){var g=m.cy,y=m.eles,v=y.nodes(),x=y.nodes(":parent"),b=new Map,w=new Map,S=new Map,T=[],E=[],_=[],A=[],L=[],M=[],N=[],k=[],I=void 0,C=void 0,O=1e8,D=1e-9,P=m.piTol,F=m.samplingType,B=m.nodeSeparation,G=void 0,z=o(function(){for(var Tt=0,kt=0,Ct=!1;kt=$t;){yt=At[$t++];for(var le=T[yt],Zt=0;Ztae&&(ae=L[Ht],ke=Ht)}return ke},"BFS"),Q=o(function(Tt){var kt=void 0;if(Tt){kt=Math.floor(Math.random()*C),I=kt;for(var At=0;At=1)break;ae=zt}for(var le=0;le=1)break;ae=zt}for(var me=0;me0&&(kt.isParent()?T[Tt].push(S.get(kt.id())):T[Tt].push(kt.id()))})});var et=o(function(Tt){var kt=w.get(Tt),Ct=void 0;b.get(Tt).forEach(function(At){g.getElementById(At).isParent()?Ct=S.get(At):Ct=At,T[kt].push(Ct),T[w.get(Ct)].push(Tt)})},"_loop"),Mt=!0,it=!1,wt=void 0;try{for(var Ot=b.keys()[Symbol.iterator](),St;!(Mt=(St=Ot.next()).done);Mt=!0){var Vt=St.value;et(Vt)}}catch(st){it=!0,wt=st}finally{try{!Mt&&Ot.return&&Ot.return()}finally{if(it)throw wt}}C=w.size;var Pt=void 0;if(C>2){G=C{var u=l(212),h=o(function(d){d&&d("layout","fcose",u)},"register");typeof cytoscape<"u"&&h(cytoscape),a.exports=h},140:a=>{a.exports=e}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return t[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(579);return i})()})});var F1,sp,uz=R(()=>{"use strict";iu();F1=o(e=>`${e}`,"wrapIcon"),sp={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:F1('')},server:{body:F1('')},disk:{body:F1('')},internet:{body:F1('')},cloud:{body:F1('')},unknown:CS,blank:{body:F1("")}}}});var u2t,h2t,f2t,d2t,p2t=R(()=>{"use strict";iu();Ue();Nl();Ub();uz();rS();u2t=o(async function(e,t){let r=Di("padding"),n=Di("iconSize"),i=n/2,a=n/6,s=a/2;await Promise.all(t.edges().map(async l=>{let{source:u,sourceDir:h,sourceArrow:f,sourceGroup:d,target:p,targetDir:m,targetArrow:g,targetGroup:y,label:v}=eS(l),{x,y:b}=l[0].sourceEndpoint(),{x:w,y:S}=l[0].midpoint(),{x:T,y:E}=l[0].targetEndpoint(),_=r+4;if(d&&(ds(h)?x+=h==="L"?-_:_:b+=h==="T"?-_:_+18),y&&(ds(m)?T+=m==="L"?-_:_:E+=m==="T"?-_:_+18),!d&&ap.getNode(u)?.type==="junction"&&(ds(h)?x+=h==="L"?i:-i:b+=h==="T"?i:-i),!y&&ap.getNode(p)?.type==="junction"&&(ds(m)?T+=m==="L"?i:-i:E+=m==="T"?i:-i),l[0]._private.rscratch){let A=e.insert("g");if(A.insert("path").attr("d",`M ${x},${b} L ${w},${S} L${T},${E} `).attr("class","edge"),f){let L=ds(h)?Gb[h](x,a):x-s,M=eu(h)?Gb[h](b,a):b-s;A.insert("polygon").attr("points",nz[h](a)).attr("transform",`translate(${L},${M})`).attr("class","arrow")}if(g){let L=ds(m)?Gb[m](T,a):T-s,M=eu(m)?Gb[m](E,a):E-s;A.insert("polygon").attr("points",nz[m](a)).attr("transform",`translate(${L},${M})`).attr("class","arrow")}if(v){let L=tS(h,m)?"XY":ds(h)?"X":"Y",M=0;L==="X"?M=Math.abs(x-T):L==="Y"?M=Math.abs(b-E)/1.5:M=Math.abs(x-T)/2;let N=A.append("g");if(await ia(N,v,{useHtmlLabels:!1,width:M,classes:"architecture-service-label"},pt()),N.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),L==="X")N.attr("transform","translate("+w+", "+S+")");else if(L==="Y")N.attr("transform","translate("+w+", "+S+") rotate(-90)");else if(L==="XY"){let k=Vb(h,m);if(k&&Jvt(k)){let I=N.node().getBoundingClientRect(),[C,O]=e2t(k);N.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*C*O*45})`);let D=N.node().getBoundingClientRect();N.attr("transform",` translate(${w}, ${S-I.height/2}) translate(${C*D.width/2}, ${O*D.height/2}) rotate(${-1*C*O*45}, 0, ${I.height/2}) `)}}}}}))},"drawEdges"),h2t=o(async function(e,t){let n=Di("padding")*.75,i=Di("fontSize"),s=Di("iconSize")/2;await Promise.all(t.nodes().map(async l=>{let u=zf(l);if(u.type==="group"){let{h,w:f,x1:d,y1:p}=l.boundingBox();e.append("rect").attr("x",d+s).attr("y",p+s).attr("width",f).attr("height",h).attr("class","node-bkg");let m=e.append("g"),g=d,y=p;if(u.icon){let v=m.append("g");v.html(`${await Ao(u.icon,{height:n,width:n,fallbackPrefix:sp.prefix})}`),v.attr("transform","translate("+(g+s+1)+", "+(y+s+1)+")"),g+=n,y+=i/2-1-2}if(u.label){let v=m.append("g");await ia(v,u.label,{useHtmlLabels:!1,width:f,classes:"architecture-service-label"},pt()),v.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),v.attr("transform","translate("+(g+s+4)+", "+(y+s+2)+")")}}}))},"drawGroups"),f2t=o(async function(e,t,r){for(let n of r){let i=t.append("g"),a=Di("iconSize");if(n.title){let h=i.append("g");await ia(h,n.title,{useHtmlLabels:!1,width:a*1.5,classes:"architecture-service-label"},pt()),h.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),h.attr("transform","translate("+a/2+", "+a+")")}let s=i.append("g");if(n.icon)s.html(`${await Ao(n.icon,{height:a,width:a,fallbackPrefix:sp.prefix})}`);else if(n.iconText){s.html(`${await Ao("blank",{height:a,width:a,fallbackPrefix:sp.prefix})}`);let d=s.append("g").append("foreignObject").attr("width",a).attr("height",a).append("div").attr("class","node-icon-text").attr("style",`height: ${a}px;`).append("div").html(n.iconText),p=parseInt(window.getComputedStyle(d.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;d.attr("style",`-webkit-line-clamp: ${Math.floor((a-2)/p)};`)}else s.append("path").attr("class","node-bkg").attr("id","node-"+n.id).attr("d",`M0 ${a} v${-a} q0,-5 5,-5 h${a} q5,0 5,5 v${a} H0 Z`);i.attr("class","architecture-service");let{width:l,height:u}=i._groups[0][0].getBBox();n.width=l,n.height=u,e.setElementForId(n.id,i)}return 0},"drawServices"),d2t=o(function(e,t,r){r.forEach(n=>{let i=t.append("g"),a=Di("iconSize");i.append("g").append("rect").attr("id","node-"+n.id).attr("fill-opacity","0").attr("width",a).attr("height",a),i.attr("class","architecture-junction");let{width:l,height:u}=i._groups[0][0].getBBox();i.width=l,i.height=u,e.setElementForId(n.id,i)})},"drawJunctions")});function Zne(e,t){e.forEach(r=>{t.add({group:"nodes",data:{type:"service",id:r.id,icon:r.icon,label:r.title,parent:r.in,width:Di("iconSize"),height:Di("iconSize")},classes:"node-service"})})}function Jne(e,t){e.forEach(r=>{t.add({group:"nodes",data:{type:"junction",id:r.id,parent:r.in,width:Di("iconSize"),height:Di("iconSize")},classes:"node-junction"})})}function tie(e,t){t.nodes().map(r=>{let n=zf(r);if(n.type==="group")return;n.x=r.position().x,n.y=r.position().y,e.getElementById(n.id).attr("transform","translate("+(n.x||0)+","+(n.y||0)+")")})}function eie(e,t){e.forEach(r=>{t.add({group:"nodes",data:{type:"group",id:r.id,icon:r.icon,label:r.title,parent:r.in},classes:"node-group"})})}function rie(e,t){e.forEach(r=>{let{lhsId:n,rhsId:i,lhsInto:a,lhsGroup:s,rhsInto:l,lhsDir:u,rhsDir:h,rhsGroup:f,title:d}=r,p=tS(r.lhsDir,r.rhsDir)?"segments":"straight",m={id:`${n}-${i}`,label:d,source:n,sourceDir:u,sourceArrow:a,sourceGroup:s,sourceEndpoint:u==="L"?"0 50%":u==="R"?"100% 50%":u==="T"?"50% 0":"50% 100%",target:i,targetDir:h,targetArrow:l,targetGroup:f,targetEndpoint:h==="L"?"0 50%":h==="R"?"100% 50%":h==="T"?"50% 0":"50% 100%"};t.add({group:"edges",data:m,classes:p})})}function nie(e){let t=e.map(i=>{let a={},s={};return Object.entries(i).forEach(([l,[u,h]])=>{a[h]||(a[h]=[]),s[u]||(s[u]=[]),a[h].push(l),s[u].push(l)}),{horiz:Object.values(a).filter(l=>l.length>1),vert:Object.values(s).filter(l=>l.length>1)}}),[r,n]=t.reduce(([i,a],{horiz:s,vert:l})=>[[...i,...s],[...a,...l]],[[],[]]);return{horizontal:r,vertical:n}}function iie(e){let t=[],r=o(i=>`${i[0]},${i[1]}`,"posToStr"),n=o(i=>i.split(",").map(a=>parseInt(a)),"strToPos");return e.forEach(i=>{let a=Object.fromEntries(Object.entries(i).map(([h,f])=>[r(f),h])),s=[r([0,0])],l={},u={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;s.length>0;){let h=s.shift();if(h){l[h]=1;let f=a[h];if(f){let d=n(h);Object.entries(u).forEach(([p,m])=>{let g=r([d[0]+m[0],d[1]+m[1]]),y=a[g];y&&!l[g]&&(s.push(g),t.push({[rz[p]]:y,[rz[Zvt(p)]]:f,gap:1.5*Di("iconSize")}))})}}}}),t}function aie(e,t,r,n,{spatialMaps:i}){return new Promise(a=>{let s=Gt("body").append("div").attr("id","cy").attr("style","display:none"),l=sl({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight",label:"data(label)","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.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":`${Di("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:`${Di("padding")}px`}}]});s.remove(),eie(r,l),Zne(e,l),Jne(t,l),rie(n,l);let u=nie(i),h=iie(i),f=l.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(d){let[p,m]=d.connectedNodes(),{parent:g}=zf(p),{parent:y}=zf(m);return g===y?1.5*Di("iconSize"):.5*Di("iconSize")},edgeElasticity(d){let[p,m]=d.connectedNodes(),{parent:g}=zf(p),{parent:y}=zf(m);return g===y?.45:.001},alignmentConstraint:u,relativePlacementConstraint:h});f.one("layoutstop",()=>{function d(p,m,g,y){let v,x,{x:b,y:w}=p,{x:S,y:T}=m;x=(y-w+(b-g)*(w-T)/(b-S))/Math.sqrt(1+Math.pow((w-T)/(b-S),2)),v=Math.sqrt(Math.pow(y-w,2)+Math.pow(g-b,2)-Math.pow(x,2));let E=Math.sqrt(Math.pow(S-b,2)+Math.pow(T-w,2));v=v/E;let _=(S-b)*(y-w)-(T-w)*(g-b);switch(!0){case _>=0:_=1;break;case _<0:_=-1;break}let A=(S-b)*(g-b)+(T-w)*(y-w);switch(!0){case A>=0:A=1;break;case A<0:A=-1;break}return x=Math.abs(x)*_,v=v*A,{distances:x,weights:v}}o(d,"getSegmentWeights"),l.startBatch();for(let p of Object.values(l.edges()))if(p.data?.()){let{x:m,y:g}=p.source().position(),{x:y,y:v}=p.target().position();if(m!==y&&g!==v){let x=p.sourceEndpoint(),b=p.targetEndpoint(),{sourceDir:w}=eS(p),[S,T]=eu(w)?[x.x,b.y]:[b.x,x.y],{weights:E,distances:_}=d(x,b,S,T);p.style("segment-distances",_),p.style("segment-weights",E)}}l.endBatch(),f.run()}),f.run(),l.ready(d=>{V.info("Ready",d),a(l)})})}var m2t,sie,g2t,y2t=R(()=>{"use strict";iu();_F();m2t=Qi(c2t(),1);ur();ce();xf();Jn();Ub();uz();rS();p2t();a4([{name:sp.prefix,icons:sp}]);sl.use(m2t.default);o(Zne,"addServices");o(Jne,"addJunctions");o(tie,"positionNodes");o(eie,"addGroups");o(rie,"addEdges");o(nie,"getAlignments");o(iie,"getRelativeConstraints");o(aie,"layoutArchitecture");sie=o(async(e,t,r,n)=>{let i=n.db,a=i.getServices(),s=i.getJunctions(),l=i.getGroups(),u=i.getEdges(),h=i.getDataStructures(),f=Vs(t),d=f.append("g");d.attr("class","architecture-edges");let p=f.append("g");p.attr("class","architecture-services");let m=f.append("g");m.attr("class","architecture-groups"),await f2t(i,p,a),d2t(i,p,s);let g=await aie(a,s,l,u,h);await u2t(d,g),await h2t(m,g),tie(i,g),No(void 0,f,Di("padding"),Di("useMaxWidth"))},"draw"),g2t={draw:sie}});var v2t={};xr(v2t,{diagram:()=>oie});var oie,x2t=R(()=>{"use strict";s2t();Ub();l2t();y2t();oie={parser:a2t,db:ap,renderer:g2t,styles:o2t}});var qie={};xr(qie,{default:()=>Yie});iu();SS();jf();var Oj="c4",$St=o(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),"detector"),GSt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Ij(),Mj));return{id:Oj,diagram:e}},"loader"),VSt={id:Oj,detector:$St,loader:GSt},Pj=VSt;var qit="flowchart",UOt=o((e,t)=>t?.flowchart?.defaultRenderer==="dagre-wrapper"||t?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(e),"detector"),HOt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(ek(),tk));return{id:qit,diagram:e}},"loader"),WOt={id:qit,detector:UOt,loader:HOt},Xit=WOt;var jit="flowchart-v2",YOt=o((e,t)=>t?.flowchart?.defaultRenderer==="dagre-d3"?!1:(t?.flowchart?.defaultRenderer==="elk"&&(t.layout="elk"),/^\s*graph/.test(e)&&t?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(e)),"detector"),qOt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(ek(),tk));return{id:jit,diagram:e}},"loader"),XOt={id:jit,detector:YOt,loader:qOt},Kit=XOt;var Cat="er",kPt=o(e=>/^\s*erDiagram/.test(e),"detector"),EPt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Eat(),kat));return{id:Cat,diagram:e}},"loader"),CPt={id:Cat,detector:kPt,loader:EPt},Sat=CPt;var Put="gitGraph",j$t=o(e=>/^\s*gitGraph/.test(e),"detector"),K$t=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Out(),Iut));return{id:Put,diagram:e}},"loader"),Q$t={id:Put,detector:j$t,loader:K$t},But=Q$t;var dht="gantt",FGt=o(e=>/^\s*gantt/.test(e),"detector"),zGt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(fht(),hht));return{id:dht,diagram:e}},"loader"),$Gt={id:dht,detector:FGt,loader:zGt},pht=$Gt;var kht="info",YGt=o(e=>/^\s*info/.test(e),"detector"),qGt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Tht(),wht));return{id:kht,diagram:e}},"loader"),Eht={id:kht,detector:YGt,loader:qGt};var Iht="pie",sVt=o(e=>/^\s*pie/.test(e),"detector"),oVt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Mht(),Nht));return{id:Iht,diagram:e}},"loader"),Oht={id:Iht,detector:sVt,loader:oVt};var Xht="quadrantChart",CVt=o(e=>/^\s*quadrantChart/.test(e),"detector"),SVt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(qht(),Yht));return{id:Xht,diagram:e}},"loader"),AVt={id:Xht,detector:CVt,loader:SVt},jht=AVt;var Tft="xychart",UVt=o(e=>/^\s*xychart-beta/.test(e),"detector"),HVt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(wft(),bft));return{id:Tft,diagram:e}},"loader"),WVt={id:Tft,detector:UVt,loader:HVt},kft=WVt;var zft="requirement",xUt=o(e=>/^\s*requirement(Diagram)?/.test(e),"detector"),bUt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Fft(),Bft));return{id:zft,diagram:e}},"loader"),wUt={id:zft,detector:xUt,loader:bUt},$ft=wUt;var ddt="sequence",EHt=o(e=>/^\s*sequenceDiagram/.test(e),"detector"),CHt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(fdt(),hdt));return{id:ddt,diagram:e}},"loader"),SHt={id:ddt,detector:EHt,loader:CHt},pdt=SHt;var Ldt="class",sWt=o((e,t)=>t?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(e),"detector"),oWt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(_dt(),Adt));return{id:Ldt,diagram:e}},"loader"),lWt={id:Ldt,detector:sWt,loader:oWt},Ddt=lWt;var E0t="classDiagram",fYt=o((e,t)=>/^\s*classDiagram/.test(e)&&t?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(e),"detector"),dYt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(k0t(),T0t));return{id:E0t,diagram:e}},"loader"),pYt={id:E0t,detector:fYt,loader:dYt},C0t=pYt;var gpt="state",cqt=o((e,t)=>t?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(e),"detector"),uqt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(mpt(),ppt));return{id:gpt,diagram:e}},"loader"),hqt={id:gpt,detector:cqt,loader:uqt},ypt=hqt;var bpt="stateDiagram",dqt=o((e,t)=>!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&t?.state?.defaultRenderer==="dagre-wrapper"),"detector"),pqt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(xpt(),vpt));return{id:bpt,diagram:e}},"loader"),mqt={id:bpt,detector:dqt,loader:pqt},wpt=mqt;var Bpt="journey",Pqt=o(e=>/^\s*journey/.test(e),"detector"),Bqt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Ppt(),Opt));return{id:Bpt,diagram:e}},"loader"),Fqt={id:Bpt,detector:Pqt,loader:Bqt},Fpt=Fqt;ce();xf();Jn();var zqt=o((e,t,r)=>{V.debug(`rendering svg for syntax error `);let n=Vs(t),i=n.append("g");n.attr("viewBox","0 0 2412 512"),Pr(n,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)},"draw"),TB={draw:zqt},zpt=TB;var $qt={db:{},renderer:TB,parser:{parse:o(()=>{},"parse")}},$pt=$qt;var Gpt="flowchart-elk",Gqt=o((e,t={})=>/^\s*flowchart-elk/.test(e)||/^\s*flowchart|graph/.test(e)&&t?.flowchart?.defaultRenderer==="elk"?(t.layout="elk",!0):!1,"detector"),Vqt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(ek(),tk));return{id:Gpt,diagram:e}},"loader"),Uqt={id:Gpt,detector:Gqt,loader:Vqt},Vpt=Uqt;var pmt="timeline",lXt=o(e=>/^\s*timeline/.test(e),"detector"),cXt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(dmt(),fmt));return{id:pmt,diagram:e}},"loader"),uXt={id:pmt,detector:lXt,loader:cXt},mmt=uXt;var Myt="mindmap",gre=o(e=>/^\s*mindmap/.test(e),"detector"),yre=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Nyt(),Ryt));return{id:Myt,diagram:e}},"loader"),vre={id:Myt,detector:gre,loader:yre},Iyt=vre;var dvt="sankey",$re=o(e=>/^\s*sankey-beta/.test(e),"detector"),Gre=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(fvt(),hvt));return{id:dvt,diagram:e}},"loader"),Vre={id:dvt,detector:$re,loader:Gre},pvt=Vre;var Evt="packet",ene=o(e=>/^\s*packet-beta/.test(e),"detector"),rne=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(kvt(),Tvt));return{id:Evt,diagram:e}},"loader"),Cvt={id:Evt,detector:ene,loader:rne};var Kvt="block",Nne=o(e=>/^\s*block-beta/.test(e),"detector"),Mne=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(jvt(),Xvt));return{id:Kvt,diagram:e}},"loader"),Ine={id:Kvt,detector:Nne,loader:Mne},Qvt=Ine;var b2t="architecture",lie=o(e=>/^\s*architecture/.test(e),"detector"),cie=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(x2t(),v2t));return{id:b2t,diagram:e}},"loader"),uie={id:b2t,detector:lie,loader:cie},w2t=uie;jf();Ue();var T2t=!1,z1=o(()=>{T2t||(T2t=!0,id("error",$pt,e=>e.toLowerCase().trim()==="error"),id("---",{db:{clear:o(()=>{},"clear")},styles:{},renderer:{draw:o(()=>{},"draw")},parser:{parse:o(()=>{throw new 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:o(()=>null,"init")},e=>e.toLowerCase().trimStart().startsWith("---")),c4(Pj,C0t,Ddt,Sat,pht,Eht,Oht,$ft,pdt,Vpt,Kit,Xit,Iyt,mmt,But,wpt,ypt,Fpt,jht,pvt,Cvt,kft,Qvt,w2t))},"addDiagrams");ce();jf();Ue();var k2t=o(async()=>{V.debug("Loading registered diagrams");let t=(await Promise.allSettled(Object.entries(Xf).map(async([r,{detector:n,loader:i}])=>{if(i)try{by(r)}catch{try{let{diagram:a,id:s}=await i();id(s,a,n)}catch(a){throw V.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete Xf[r],a}}}))).filter(r=>r.status==="rejected");if(t.length>0){V.error(`Failed to load ${t.length} external diagrams`);for(let r of t)V.error(r);throw new Error(`Failed to load ${t.length} external diagrams`)}},"loadRegisteredDiagrams");ce();ur();var nS="comm",iS="rule",aS="decl";var E2t="@import";var C2t="@keyframes";var S2t="@layer";var hz=Math.abs,qb=String.fromCharCode;function sS(e){return e.trim()}o(sS,"trim");function Xb(e,t,r){return e.replace(t,r)}o(Xb,"replace");function A2t(e,t,r){return e.indexOf(t,r)}o(A2t,"indexof");function op(e,t){return e.charCodeAt(t)|0}o(op,"charat");function $f(e,t,r){return e.slice(t,r)}o($f,"substr");function ko(e){return e.length}o(ko,"strlen");function _2t(e){return e.length}o(_2t,"sizeof");function $1(e,t){return t.push(e),e}o($1,"append");var oS=1,G1=1,L2t=0,ol=0,Ri=0,U1="";function lS(e,t,r,n,i,a,s,l){return{value:e,root:t,parent:r,type:n,props:i,children:a,line:oS,column:G1,length:s,return:"",siblings:l}}o(lS,"node");function D2t(){return Ri}o(D2t,"char");function R2t(){return Ri=ol>0?op(U1,--ol):0,G1--,Ri===10&&(G1=1,oS--),Ri}o(R2t,"prev");function ll(){return Ri=ol2||V1(Ri)>3?"":" "}o(I2t,"whitespace");function O2t(e,t){for(;--t&&ll()&&!(Ri<48||Ri>102||Ri>57&&Ri<65||Ri>70&&Ri<97););return cS(e,jb()+(t<6&&sh()==32&&ll()==32))}o(O2t,"escaping");function fz(e){for(;ll();)switch(Ri){case e:return ol;case 34:case 39:e!==34&&e!==39&&fz(Ri);break;case 40:e===41&&fz(e);break;case 92:ll();break}return ol}o(fz,"delimiter");function P2t(e,t){for(;ll()&&e+Ri!==57;)if(e+Ri===84&&sh()===47)break;return"/*"+cS(t,ol-1)+"*"+qb(e===47?e:ll())}o(P2t,"commenter");function B2t(e){for(;!V1(sh());)ll();return cS(e,ol)}o(B2t,"identifier");function $2t(e){return M2t(hS("",null,null,null,[""],e=N2t(e),0,[0],e))}o($2t,"compile");function hS(e,t,r,n,i,a,s,l,u){for(var h=0,f=0,d=s,p=0,m=0,g=0,y=1,v=1,x=1,b=0,w="",S=i,T=a,E=n,_=w;v;)switch(g=b,b=ll()){case 40:if(g!=108&&op(_,d-1)==58){A2t(_+=Xb(uS(b),"&","&\f"),"&\f",hz(h?l[h-1]:0))!=-1&&(x=-1);break}case 34:case 39:case 91:_+=uS(b);break;case 9:case 10:case 13:case 32:_+=I2t(g);break;case 92:_+=O2t(jb()-1,7);continue;case 47:switch(sh()){case 42:case 47:$1(hie(P2t(ll(),jb()),t,r,u),u),(V1(g||1)==5||V1(sh()||1)==5)&&ko(_)&&$f(_,-1,void 0)!==" "&&(_+=" ");break;default:_+="/"}break;case 123*y:l[h++]=ko(_)*x;case 125*y:case 59:case 0:switch(b){case 0:case 125:v=0;case 59+f:x==-1&&(_=Xb(_,/\f/g,"")),m>0&&(ko(_)-d||y===0&&g===47)&&$1(m>32?z2t(_+";",n,r,d-1,u):z2t(Xb(_," ","")+";",n,r,d-2,u),u);break;case 59:_+=";";default:if($1(E=F2t(_,t,r,h,f,i,l,w,S=[],T=[],d,a),a),b===123)if(f===0)hS(_,t,E,E,S,a,d,l,T);else switch(p===99&&op(_,3)===110?100:p){case 100:case 108:case 109:case 115:hS(e,E,E,n&&$1(F2t(e,E,E,0,0,i,l,w,i,S=[],d,T),T),i,T,d,l,n?S:T);break;default:hS(_,E,E,E,[""],T,0,l,T)}}h=f=m=0,y=x=1,w=_="",d=s;break;case 58:d=1+ko(_),m=g;default:if(y<1){if(b==123)--y;else if(b==125&&y++==0&&R2t()==125)continue}switch(_+=qb(b),b*y){case 38:x=f>0?1:(_+="\f",-1);break;case 44:l[h++]=(ko(_)-1)*x,x=1;break;case 64:sh()===45&&(_+=uS(ll())),p=sh(),f=d=ko(w=_+=B2t(jb())),b++;break;case 45:g===45&&ko(_)==2&&(y=0)}}return a}o(hS,"parse");function F2t(e,t,r,n,i,a,s,l,u,h,f,d){for(var p=i-1,m=i===0?a:[""],g=_2t(m),y=0,v=0,x=0;y0?m[b]+" "+w:Xb(w,/&\f/g,m[b])))&&(u[x++]=S);return lS(e,t,r,i===0?iS:l,u,h,f,d)}o(F2t,"ruleset");function hie(e,t,r,n){return lS(e,t,r,nS,qb(D2t()),$f(e,2,-2),0,n)}o(hie,"comment");function z2t(e,t,r,n,i){return lS(e,t,r,aS,$f(e,0,n),$f(e,n+1,-1),n,i)}o(z2t,"declaration");function fS(e,t){for(var r="",n=0;n{H2t.forEach(e=>{e()}),H2t=[]},"attachFunctions");ce();var Y2t=o(e=>e.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");l4();sL();function q2t(e){let t=e.match(o4);if(!t)return{text:e,metadata:{}};let r=j5(t[1],{schema:X5})??{};r=typeof r=="object"&&!Array.isArray(r)?r:{};let n={};return r.displayMode&&(n.displayMode=r.displayMode.toString()),r.title&&(n.title=r.title.toString()),r.config&&(n.config=r.config),{text:e.slice(t[0].length),metadata:n}}o(q2t,"extractFrontMatter");_r();var die=o(e=>e.replace(/\r\n?/g,` `).replace(/<(\w+)([^>]*)>/g,(t,r,n)=>"<"+r+n.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),pie=o(e=>{let{text:t,metadata:r}=q2t(e),{displayMode:n,title:i,config:a={}}=r;return n&&(a.gantt||(a.gantt={}),a.gantt.displayMode=n),{title:i,config:a,text:t}},"processFrontmatter"),mie=o(e=>{let t=Oe.detectInit(e)??{},r=Oe.detectDirective(e,"wrap");return Array.isArray(r)?t.wrap=r.some(({type:n})=>n==="wrap"):r?.type==="wrap"&&(t.wrap=!0),{text:Tj(e),directive:t}},"processDirectives");function dz(e){let t=die(e),r=pie(t),n=mie(r.text),i=Ss(r.config,n.directive);return e=Y2t(n.text),{code:e,title:r.title,config:i}}o(dz,"preprocessDiagram");z7();g4();_r();function X2t(e){let t=new TextEncoder().encode(e),r=Array.from(t,n=>String.fromCodePoint(n)).join("");return btoa(r)}o(X2t,"toBase64");var gie=5e4,yie="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",vie="sandbox",xie="loose",bie="http://www.w3.org/2000/svg",wie="http://www.w3.org/1999/xlink",Tie="http://www.w3.org/1999/xhtml",kie="100%",Eie="100%",Cie="border:0;margin:0;",Sie="margin:0",Aie="allow-top-navigation-by-user-activation allow-popups",_ie='The "iframe" tag is not supported by your browser.',Lie=["foreignobject"],Die=["dominant-baseline"];function J2t(e){let t=dz(e);return ly(),q$(t.config??{}),t}o(J2t,"processAndSetConfigs");async function Rie(e,t){z1();try{let{code:r,config:n}=J2t(e);return{diagramType:(await txt(r)).type,config:n}}catch(r){if(t?.suppressErrors)return!1;throw r}}o(Rie,"parse");var j2t=o((e,t,r=[])=>` .${e} ${t} { ${r.join(" !important; ")} !important; }`,"cssImportantStyles"),Nie=o((e,t=new Map)=>{let r="";if(e.themeCSS!==void 0&&(r+=` ${e.themeCSS}`),e.fontFamily!==void 0&&(r+=` :root { --mermaid-font-family: ${e.fontFamily}}`),e.altFontFamily!==void 0&&(r+=` :root { --mermaid-alt-font-family: ${e.altFontFamily}}`),t instanceof Map){let s=e.htmlLabels??e.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];t.forEach(l=>{cr(l.styles)||s.forEach(u=>{r+=j2t(l.id,u,l.styles)}),cr(l.textStyles)||(r+=j2t(l.id,"tspan",(l?.textStyles||[]).map(u=>u.replace("color","fill"))))})}return r},"createCssStyles"),Mie=o((e,t,r,n)=>{let i=Nie(e,r),a=_V(t,i,e.themeVariables);return fS($2t(`${n}{${a}}`),G2t)},"createUserStyles"),Iie=o((e="",t,r)=>{let n=e;return!r&&!t&&(n=n.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),n=no(n),n=n.replace(/
    /g,"
    "),n},"cleanUpSvgCode"),Oie=o((e="",t)=>{let r=t?.viewBox?.baseVal?.height?t.viewBox.baseVal.height+"px":Eie,n=X2t(`${e}`);return``},"putIntoIFrame"),K2t=o((e,t,r,n,i)=>{let a=e.append("div");a.attr("id",r),n&&a.attr("style",n);let s=a.append("svg").attr("id",t).attr("width","100%").attr("xmlns",bie);return i&&s.attr("xmlns:xlink",i),s.append("g"),e},"appendDivSvgG");function Q2t(e,t){return e.append("iframe").attr("id",t).attr("style","width: 100%; height: 100%;").attr("sandbox","")}o(Q2t,"sandboxedIframe");var Pie=o((e,t,r,n)=>{e.getElementById(t)?.remove(),e.getElementById(r)?.remove(),e.getElementById(n)?.remove()},"removeExistingElements"),Bie=o(async function(e,t,r){z1();let n=J2t(t);t=n.code;let i=Nr();V.debug(i),t.length>(i?.maxTextSize??gie)&&(t=yie);let a="#"+e,s="i"+e,l="#"+s,u="d"+e,h="#"+u,f=o(()=>{let I=Gt(p?l:h).node();I&&"remove"in I&&I.remove()},"removeTempElements"),d=Gt("body"),p=i.securityLevel===vie,m=i.securityLevel===xie,g=i.fontFamily;if(r!==void 0){if(r&&(r.innerHTML=""),p){let k=Q2t(Gt(r),s);d=Gt(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=Gt(r);K2t(d,e,u,`font-family: ${g}`,wie)}else{if(Pie(document,e,u,s),p){let k=Q2t(Gt("body"),s);d=Gt(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=Gt("body");K2t(d,e,u)}let y,v;try{y=await H1.fromText(t,{title:n.title})}catch(k){if(i.suppressErrorRendering)throw f(),k;y=await H1.fromText("error"),v=k}let x=d.select(h).node(),b=y.type,w=x.firstChild,S=w.firstChild,T=y.renderer.getClasses?.(t,y),E=Mie(i,b,T,a),_=document.createElement("style");_.innerHTML=E,w.insertBefore(_,S);try{await y.renderer.draw(t,e,Px,y)}catch(k){throw i.suppressErrorRendering?f():zpt.draw(t,e,Px),k}let A=d.select(`${h} svg`),L=y.db.getAccTitle?.(),M=y.db.getAccDescription?.();zie(b,A,L,M),d.select(`[id="${e}"]`).selectAll("foreignobject > *").attr("xmlns",Tie);let N=d.select(h).node().innerHTML;if(V.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),N=Iie(N,p,Tr(i.arrowMarkerAbsolute)),p){let k=d.select(h+" svg").node();N=Oie(N,k)}else m||(N=Z2t.default.sanitize(N,{ADD_TAGS:Lie,ADD_ATTR:Die}));if(W2t(),v)throw v;return f(),{diagramType:b,svg:N,bindFunctions:y.db.bindFunctions}},"render");function Fie(e={}){let t=Vn({},e);t?.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables||(t.themeVariables={}),t.themeVariables.fontFamily=t.fontFamily),H$(t),t?.theme&&t.theme in _o?t.themeVariables=_o[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=_o.default.getThemeVariables(t.themeVariables));let r=typeof t=="object"?HS(t):WS();J1(r.logLevel),z1()}o(Fie,"initialize");var txt=o((e,t={})=>{let{code:r}=dz(e);return H1.fromText(r,t)},"getDiagramFromText");function zie(e,t,r,n){V2t(t,e),U2t(t,r,n,t.attr("id"))}o(zie,"addA11yInfo");var Gf=Object.freeze({render:Bie,parse:Rie,getDiagramFromText:txt,initialize:Fie,getConfig:Nr,setConfig:v4,getSiteConfig:WS,updateSiteConfig:W$,reset:o(()=>{ly()},"reset"),globalReset:o(()=>{ly(hh)},"globalReset"),defaultConfig:hh});J1(Nr().logLevel);ly(Nr());ZT();_r();var $ie=o((e,t,r)=>{V.warn(e),U9(e)?(r&&r(e.str,e.hash),t.push({...e,message:e.str,error:e})):(r&&r(e),e instanceof Error&&t.push({str:e.message,message:e.message,hash:e.name,error:e}))},"handleError"),ext=o(async function(e={querySelector:".mermaid"}){try{await Gie(e)}catch(t){if(U9(t)&&V.error(t.str),oh.parseError&&oh.parseError(t),!e.suppressErrors)throw V.error("Use the suppressErrors option to suppress these errors"),t}},"run"),Gie=o(async function({postRenderCallback:e,querySelector:t,nodes:r}={querySelector:".mermaid"}){let n=Gf.getConfig();V.debug(`${e?"":"No "}Callback function found`);let i;if(r)i=r;else if(t)i=document.querySelectorAll(t);else throw new Error("Nodes and querySelector are both undefined");V.debug(`Found ${i.length} diagrams`),n?.startOnLoad!==void 0&&(V.debug("Start On Load: "+n?.startOnLoad),Gf.updateSiteConfig({startOnLoad:n?.startOnLoad}));let a=new Oe.InitIDGenerator(n.deterministicIds,n.deterministicIDSeed),s,l=[];for(let u of Array.from(i)){V.info("Rendering diagram: "+u.id);if(u.getAttribute("data-processed"))continue;u.setAttribute("data-processed","true");let h=`mermaid-${a.next()}`;s=u.innerHTML,s=s4(Oe.entityDecode(s)).trim().replace(//gi,"
    ");let f=Oe.detectInit(s);f&&V.debug("Detected early reinit: ",f);try{let{svg:d,bindFunctions:p}=await axt(h,s,u);u.innerHTML=d,e&&await e(h),p&&p(u)}catch(d){$ie(d,l,oh.parseError)}}if(l.length>0)throw l[0]},"runThrowsErrors"),rxt=o(function(e){Gf.initialize(e)},"initialize"),Vie=o(async function(e,t,r){V.warn("mermaid.init is deprecated. Please use run instead."),e&&rxt(e);let n={postRenderCallback:r,querySelector:".mermaid"};typeof t=="string"?n.querySelector=t:t&&(t instanceof HTMLElement?n.nodes=[t]:n.nodes=t),await ext(n)},"init"),Uie=o(async(e,{lazyLoad:t=!0}={})=>{z1(),c4(...e),t===!1&&await k2t()},"registerExternalDiagrams"),nxt=o(function(){if(oh.startOnLoad){let{startOnLoad:e}=Gf.getConfig();e&&oh.run().catch(t=>V.error("Mermaid failed to initialize",t))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",nxt,!1)}var Hie=o(function(e){oh.parseError=e},"setParseErrorHandler"),dS=[],pz=!1,ixt=o(async()=>{if(!pz){for(pz=!0;dS.length>0;){let e=dS.shift();if(e)try{await e()}catch(t){V.error("Error executing queue",t)}}pz=!1}},"executeQueue"),Wie=o(async(e,t)=>new Promise((r,n)=>{let i=o(()=>new Promise((a,s)=>{Gf.parse(e,t).then(l=>{a(l),r(l)},l=>{V.error("Error parsing",l),oh.parseError?.(l),s(l),n(l)})}),"performCall");dS.push(i),ixt().catch(n)}),"parse"),axt=o((e,t,r)=>new Promise((n,i)=>{let a=o(()=>new Promise((s,l)=>{Gf.render(e,t,r).then(u=>{s(u),n(u)},u=>{V.error("Error parsing",u),oh.parseError?.(u),l(u),i(u)})}),"performCall");dS.push(a),ixt().catch(i)}),"render"),oh={startOnLoad:!0,mermaidAPI:Gf,parse:Wie,render:axt,init:Vie,run:ext,registerExternalDiagrams:Uie,registerLayoutLoaders:wR,initialize:rxt,parseError:void 0,contentLoaded:nxt,setParseErrorHandler:Hie,detectType:gp,registerIconPacks:a4},Yie=oh;return fxt(qie);})(); /*! Check if previously processed */ /*! * Wait for document loaded before starting the execution */ /*! Bundled license information: dompurify/dist/purify.js: (*! @license DOMPurify 3.1.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.6/LICENSE *) js-yaml/dist/js-yaml.mjs: (*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT *) lodash-es/lodash.js: (** * @license * Lodash (Custom Build) * Build: `lodash modularize exports="es" -o ./` * Copyright OpenJS Foundation and other contributors * Released under MIT license * Based on Underscore.js 1.8.3 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors *) cytoscape/dist/cytoscape.esm.mjs: (*! 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) *) (*! 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 *) (*! 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 *) */ globalThis.mermaid = globalThis.__esbuild_esm_mermaid.default;