>18&63],i+=w[s>>12&63],i+=w[s>>6&63],i+=w[s&63]),s=(s<<8)+t[a];return h=Q%3,h===0?(i+=w[s>>18&63],i+=w[s>>12&63],i+=w[s>>6&63],i+=w[s&63]):h===2?(i+=w[s>>10&63],i+=w[s>>4&63],i+=w[s<<2&63],i+=w[64]):h===1&&(i+=w[s>>2&63],i+=w[s<<4&63],i+=w[64],i+=w[64]),i}function Ydt(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var Ddt=new _Q("tag:yaml.org,2002:binary",{kind:"scalar",resolve:ddt,construct:Fdt,predicate:Ydt,represent:Mdt}),ydt=Object.prototype.hasOwnProperty,pdt=Object.prototype.toString;function Ndt(t){if(t===null)return!0;var i=[],s,a,h,Q,w,I=t;for(s=0,a=I.length;s>10)+55296,(t-65536&1023)+56320)}var Ume=new Array(256),bme=new Array(256);for(var Gj=0;Gj<256;Gj++)Ume[Gj]=mDe(Gj)?1:0,bme[Gj]=mDe(Gj);function Vdt(t,i){this.input=t,this.filename=i.filename||null,this.schema=i.schema||vdt,this.onWarning=i.onWarning||null,this.legacy=i.legacy||!1,this.json=i.json||!1,this.listener=i.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Hme(t,i){var s={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return s.snippet=JCt(s),new Jp(i,s)}function rc(t,i){throw Hme(t,i)}function LQA(t,i){t.onWarning&&t.onWarning.call(null,Hme(t,i))}var UDe={YAML:function(i,s,a){var h,Q,w;i.version!==null&&rc(i,"duplication of %YAML directive"),a.length!==1&&rc(i,"YAML directive accepts exactly one argument"),h=/^([0-9]+)\.([0-9]+)$/.exec(a[0]),h===null&&rc(i,"ill-formed argument of the YAML directive"),Q=parseInt(h[1],10),w=parseInt(h[2],10),Q!==1&&rc(i,"unacceptable YAML version of the document"),i.version=a[0],i.checkLineBreaks=w<2,w!==1&&w!==2&&LQA(i,"unsupported YAML version of the document")},TAG:function(i,s,a){var h,Q;a.length!==2&&rc(i,"TAG directive accepts exactly two arguments"),h=a[0],Q=a[1],Nme.test(h)||rc(i,"ill-formed tag handle (first argument) of the TAG directive"),sb.call(i.tagMap,h)&&rc(i,'there is a previously declared suffix for "'+h+'" tag handle'),mme.test(Q)||rc(i,"ill-formed tag prefix (second argument) of the TAG directive");try{Q=decodeURIComponent(Q)}catch{rc(i,"tag prefix is malformed: "+Q)}i.tagMap[h]=Q}};function $U(t,i,s,a){var h,Q,w,I;if(i1&&(t.result+=q1.repeat(``,i-1))}function Xdt(t,i,s){var a,h,Q,w,I,d,D,N,U=t.kind,R=t.result,T;if(T=t.input.charCodeAt(t.position),vE(T)||Kj(T)||T===35||T===38||T===42||T===33||T===124||T===62||T===39||T===34||T===37||T===64||T===96||(T===63||T===45)&&(h=t.input.charCodeAt(t.position+1),vE(h)||s&&Kj(h)))return!1;for(t.kind="scalar",t.result="",Q=w=t.position,I=!1;T!==0;){if(T===58){if(h=t.input.charCodeAt(t.position+1),vE(h)||s&&Kj(h))break}else if(T===35){if(a=t.input.charCodeAt(t.position-1),vE(a))break}else{if(t.position===t.lineStart&&n0A(t)||s&&Kj(T))break;if($D(T))if(d=t.line,D=t.lineStart,N=t.lineIndent,ql(t,!1,-1),t.lineIndent>=i){I=!0,T=t.input.charCodeAt(t.position);continue}else{t.position=w,t.line=d,t.lineStart=D,t.lineIndent=N;break}}I&&($U(t,Q,w,!1),QjA(t,t.line-d),Q=w=t.position,I=!1),HJ(T)||(w=t.position+1),T=t.input.charCodeAt(++t.position)}return $U(t,Q,w,!1),t.result?!0:(t.kind=U,t.result=R,!1)}function Zdt(t,i){var s,a,h;if(s=t.input.charCodeAt(t.position),s!==39)return!1;for(t.kind="scalar",t.result="",t.position++,a=h=t.position;(s=t.input.charCodeAt(t.position))!==0;)if(s===39)if($U(t,a,t.position,!0),s=t.input.charCodeAt(++t.position),s===39)a=t.position,t.position++,h=t.position;else return!0;else $D(s)?($U(t,a,h,!0),QjA(t,ql(t,!1,i)),a=h=t.position):t.position===t.lineStart&&n0A(t)?rc(t,"unexpected end of the document within a single quoted scalar"):(t.position++,h=t.position);rc(t,"unexpected end of the stream within a single quoted scalar")}function qdt(t,i){var s,a,h,Q,w,I;if(I=t.input.charCodeAt(t.position),I!==34)return!1;for(t.kind="scalar",t.result="",t.position++,s=a=t.position;(I=t.input.charCodeAt(t.position))!==0;){if(I===34)return $U(t,s,t.position,!0),t.position++,!0;if(I===92){if($U(t,s,t.position,!0),I=t.input.charCodeAt(++t.position),$D(I))ql(t,!1,i);else if(I<256&&Ume[I])t.result+=bme[I],t.position++;else if((w=Odt(I))>0){for(h=w,Q=0;h>0;h--)I=t.input.charCodeAt(++t.position),(w=Pdt(I))>=0?Q=(Q<<4)+w:rc(t,"expected hexadecimal character");t.result+=Kdt(Q),t.position++}else rc(t,"unknown escape sequence");s=a=t.position}else $D(I)?($U(t,s,a,!0),QjA(t,ql(t,!1,i)),s=a=t.position):t.position===t.lineStart&&n0A(t)?rc(t,"unexpected end of the document within a double quoted scalar"):(t.position++,a=t.position)}rc(t,"unexpected end of the stream within a double quoted scalar")}function _dt(t,i){var s=!0,a,h,Q,w=t.tag,I,d=t.anchor,D,N,U,R,T,j=Object.create(null),W,AA,X,K;if(K=t.input.charCodeAt(t.position),K===91)N=93,T=!1,I=[];else if(K===123)N=125,T=!0,I={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=I),K=t.input.charCodeAt(++t.position);K!==0;){if(ql(t,!0,i),K=t.input.charCodeAt(t.position),K===N)return t.position++,t.tag=w,t.anchor=d,t.kind=T?"mapping":"sequence",t.result=I,!0;s?K===44&&rc(t,"expected the node content, but found ','"):rc(t,"missed comma between flow collection entries"),AA=W=X=null,U=R=!1,K===63&&(D=t.input.charCodeAt(t.position+1),vE(D)&&(U=R=!0,t.position++,ql(t,!0,i))),a=t.line,h=t.lineStart,Q=t.position,US(t,i,jQA,!1,!0),AA=t.tag,W=t.result,ql(t,!0,i),K=t.input.charCodeAt(t.position),(R||t.line===a)&&K===58&&(U=!0,K=t.input.charCodeAt(++t.position),ql(t,!0,i),US(t,i,jQA,!1,!0),X=t.result),T?Vj(t,I,j,AA,W,X,a,h,Q):U?I.push(Vj(t,null,j,AA,W,X,a,h,Q)):I.push(W),ql(t,!0,i),K=t.input.charCodeAt(t.position),K===44?(s=!0,K=t.input.charCodeAt(++t.position)):s=!1}rc(t,"unexpected end of the stream within a flow collection")}function $dt(t,i){var s,a,h=mRA,Q=!1,w=!1,I=i,d=0,D=!1,N,U;if(U=t.input.charCodeAt(t.position),U===124)a=!1;else if(U===62)a=!0;else return!1;for(t.kind="scalar",t.result="";U!==0;)if(U=t.input.charCodeAt(++t.position),U===43||U===45)mRA===h?h=U===43?pDe:jdt:rc(t,"repeat of a chomping mode identifier");else if((N=Wdt(U))>=0)N===0?rc(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):w?rc(t,"repeat of an indentation width identifier"):(I=i+N-1,w=!0);else break;if(HJ(U)){do U=t.input.charCodeAt(++t.position);while(HJ(U));if(U===35)do U=t.input.charCodeAt(++t.position);while(!$D(U)&&U!==0)}for(;U!==0;){for(wjA(t),t.lineIndent=0,U=t.input.charCodeAt(t.position);(!w||t.lineIndentI&&(I=t.lineIndent),$D(U)){d++;continue}if(t.lineIndenti)&&d!==0)rc(t,"bad indentation of a sequence entry");else if(t.lineIndenti)&&(AA&&(w=t.line,I=t.lineStart,d=t.position),US(t,i,SQA,!0,h)&&(AA?j=t.result:W=t.result),AA||(Vj(t,U,R,T,j,W,w,I,d),T=j=W=null),ql(t,!0,-1),K=t.input.charCodeAt(t.position)),(t.line===Q||t.lineIndent>i)&&K!==0)rc(t,"bad indentation of a mapping entry");else if(t.lineIndenti?d=1:t.lineIndent===i?d=0:t.lineIndenti?d=1:t.lineIndent===i?d=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),U=0,R=t.implicitTypes.length;U"),t.result!==null&&j.kind!==t.kind&&rc(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+j.kind+'", not "'+t.kind+'"'),j.resolve(t.result,t.tag)?(t.result=j.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):rc(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||N}function iFt(t){var i=t.position,s,a,h,Q=!1,w;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(w=t.input.charCodeAt(t.position))!==0&&(ql(t,!0,-1),w=t.input.charCodeAt(t.position),!(t.lineIndent>0||w!==37));){for(Q=!0,w=t.input.charCodeAt(++t.position),s=t.position;w!==0&&!vE(w);)w=t.input.charCodeAt(++t.position);for(a=t.input.slice(s,t.position),h=[],a.length<1&&rc(t,"directive name must not be less than one character in length");w!==0;){for(;HJ(w);)w=t.input.charCodeAt(++t.position);if(w===35){do w=t.input.charCodeAt(++t.position);while(w!==0&&!$D(w));break}if($D(w))break;for(s=t.position;w!==0&&!vE(w);)w=t.input.charCodeAt(++t.position);h.push(t.input.slice(s,t.position))}w!==0&&wjA(t),sb.call(UDe,a)?UDe[a](t,a,h):LQA(t,'unknown document directive "'+a+'"')}if(ql(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,ql(t,!0,-1)):Q&&rc(t,"directives end mark is expected"),US(t,t.lineIndent-1,SQA,!1,!0),ql(t,!0,-1),t.checkLineBreaks&&Ldt.test(t.input.slice(i,t.position))&&LQA(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&n0A(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,ql(t,!0,-1));return}if(t.position "u"&&(s=i,i=null);var a=xme(t,s);if(typeof i!="function")return a;for(var h=0,Q=a.length;h ZTA(t,Q,s)),t):Array.isArray(i)&&Array.isArray(t)?(i.forEach(Q=>{t.includes(Q)||t.push(Q)}),t):t===void 0||a<=0?t!=null&&typeof t=="object"&&typeof i=="object"?Object.assign(t,i):i:(i!==void 0&&typeof t=="object"&&typeof i=="object"&&Object.keys(i).forEach(Q=>{typeof i[Q]=="object"&&(t[Q]===void 0||typeof t[Q]=="object")?(t[Q]===void 0&&(t[Q]=Array.isArray(i[Q])?[]:{}),t[Q]=ZTA(t[Q],i[Q],{depth:a-1,clobber:h})):(h||typeof t[Q]!="object"&&typeof i[Q]!="object")&&(t[Q]=i[Q])}),t)},Dw=ZTA,VJ=Object.freeze(Ru);let JE=Dw({},VJ),Jme,bS=[],IX=Dw({},VJ);const i0A=(t,i)=>{let s=Dw({},t),a={};for(const h of i)Tme(h),a=Dw(a,h);if(s=Dw(s,a),a.theme&&a.theme in Op){const h=Dw({},Jme),Q=Dw(h.themeVariables||{},a.themeVariables);s.theme&&s.theme in Op&&(s.themeVariables=Op[s.theme].getThemeVariables(Q))}return IX=s,jme(IX),IX},lFt=t=>(JE=Dw({},VJ),JE=Dw(JE,t),t.theme&&Op[t.theme]&&(JE.themeVariables=Op[t.theme].getThemeVariables(t.themeVariables)),i0A(JE,bS),JE),uFt=t=>{Jme=Dw({},t)},wFt=t=>(JE=Dw(JE,t),i0A(JE,bS),JE),kme=()=>Dw({},JE),Rme=t=>(jme(t),Dw(IX,t),Je()),Je=()=>Dw({},IX),Tme=t=>{["secure",...JE.secure??[]].forEach(i=>{t[i]!==void 0&&(_A.debug(`Denied attempt to modify a secure key ${i}`,t[i]),delete t[i])}),Object.keys(t).forEach(i=>{i.indexOf("__")===0&&delete t[i]}),Object.keys(t).forEach(i=>{typeof t[i]=="string"&&(t[i].includes("<")||t[i].includes(">")||t[i].includes("url(data:"))&&delete t[i],typeof t[i]=="object"&&Tme(t[i])})},vme=t=>{t.fontFamily&&(t.themeVariables?t.themeVariables.fontFamily||(t.themeVariables={fontFamily:t.fontFamily}):t.themeVariables={fontFamily:t.fontFamily}),bS.push(t),i0A(JE,bS)},zQA=(t=JE)=>{bS=[],i0A(t,bS)},QFt={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},xDe={},EFt=t=>{xDe[t]||(_A.warn(QFt[t]),xDe[t]=!0)},jme=t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&EFt("LAZY_LOAD_DEPRECATED")},fFt=function(t,i){for(let s of i)t.attr(s[0],s[1])},IFt=function(t,i,s){let a=new Map;return s?(a.set("width","100%"),a.set("style",`max-width: ${i}px;`)):(a.set("height",t),a.set("width",i)),a},B0=function(t,i,s,a){const h=IFt(i,s,a);fFt(t,h)},Ek=function(t,i,s,a){const h=i.node().getBBox(),Q=h.width,w=h.height;_A.info(`SVG bounds: ${Q}x${w}`,h);let I=0,d=0;_A.info(`Graph bounds: ${I}x${d}`,t),I=Q+s*2,d=w+s*2,_A.info(`Calculated bounds: ${I}x${d}`),B0(i,d,I,a);const D=`${h.x-s} ${h.y-s} ${h.width+2*s} ${h.height+2*s}`;i.attr("viewBox",D)},_wA={},CFt=(t,i,s)=>{let a="";return t in _wA&&_wA[t]?a=_wA[t](s):_A.warn(`No theme found for ${t}`),` & { font-family: ${s.fontFamily}; font-size: ${s.fontSize}; fill: ${s.textColor} } /* Classes common for multiple diagrams */ & .error-icon { fill: ${s.errorBkgColor}; } & .error-text { fill: ${s.errorTextColor}; stroke: ${s.errorTextColor}; } & .edge-thickness-normal { stroke-width: 2px; } & .edge-thickness-thick { stroke-width: 3.5px } & .edge-pattern-solid { stroke-dasharray: 0; } & .edge-pattern-dashed{ stroke-dasharray: 3; } .edge-pattern-dotted { stroke-dasharray: 2; } & .marker { fill: ${s.lineColor}; stroke: ${s.lineColor}; } & .marker.cross { stroke: ${s.lineColor}; } & svg { font-family: ${s.fontFamily}; font-size: ${s.fontSize}; } ${a} ${i}`},dFt=(t,i)=>{i!==void 0&&(_wA[t]=i)},FFt=CFt;let EjA="",r0A="",fjA="";const IjA=t=>o0(t,Je()),g0=function(){EjA="",fjA="",r0A=""},A1=function(t){EjA=IjA(t).replace(/^\s+/g,"")},h0=function(){return EjA||r0A},l0=function(t){fjA=IjA(t).replace(/\n\s+/g,``)},u0=function(){return fjA},EI=function(t){r0A=IjA(t)},zE=function(){return r0A},MFt={getAccTitle:h0,setAccTitle:A1,getDiagramTitle:zE,setDiagramTitle:EI,getAccDescription:u0,setAccDescription:l0,clear:g0},Sme=Object.freeze(Object.defineProperty({__proto__:null,clear:g0,default:MFt,getAccDescription:u0,getAccTitle:h0,getDiagramTitle:zE,setAccDescription:l0,setAccTitle:A1,setDiagramTitle:EI},Symbol.toStringTag,{value:"Module"}));let hJ={};const CjA=function(t,i,s,a){_A.debug("parseDirective is being called",i,s,a);try{if(i!==void 0)switch(i=i.trim(),s){case"open_directive":hJ={};break;case"type_directive":if(!hJ)throw new Error("currentDirective is undefined");hJ.type=i.toLowerCase();break;case"arg_directive":if(!hJ)throw new Error("currentDirective is undefined");hJ.args=JSON.parse(i);break;case"close_directive":YFt(t,hJ,a),hJ=void 0;break}}catch(h){_A.error(`Error while rendering sequenceDiagram directive: ${i} jison context: ${s}`),_A.error(h.message)}},YFt=function(t,i,s){switch(_A.info(`Directive type=${i.type} with args:`,i.args),i.type){case"init":case"initialize":{["config"].forEach(a=>{i.args[a]!==void 0&&(s==="flowchart-v2"&&(s="flowchart"),i.args[s]=i.args[a],delete i.args[a])}),_A.info("sanitize in handleDirective",i.args),xS(i.args),_A.info("sanitize in handleDirective (done)",i.args),vme(i.args);break}case"wrap":case"nowrap":t&&t.setWrap&&t.setWrap(i.type==="wrap");break;case"themeCss":_A.warn("themeCss encountered");break;default:_A.warn(`Unhandled directive: source: '%%{${i.type}: ${JSON.stringify(i.args?i.args:{})}}%%`,i);break}},DFt=_A,yFt=ljA,UZ=Je,pFt=t=>o0(t,UZ()),Lme=Ek,NFt=()=>Sme,mFt=(t,i,s,a)=>CjA(t,i,s,a),PQA={},OQA=(t,i,s)=>{if(PQA[t])throw new Error(`Diagram ${t} already registered.`);PQA[t]=i,s&&Ome(t,s),dFt(t,i.styles),i.injectUtils&&i.injectUtils(DFt,yFt,UZ,pFt,Lme,NFt(),mFt)},djA=t=>{if(t in PQA)return PQA[t];throw new UFt(t)};class UFt extends Error{constructor(i){super(`Diagram ${i} not found.`)}}class zme extends Error{constructor(i){super(i),this.name="UnknownDiagramError"}}const bFt=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,HFt=/\s*%%.*\n/gm,HS={},c0A=function(t,i){t=t.replace(Gme,"").replace(bFt,"").replace(HFt,``);for(const[s,{detector:a}]of Object.entries(HS))if(a(t,i))return s;throw new zme(`No diagram type detected matching given configuration for text: ${t}`)},Pme=(...t)=>{for(const{id:i,detector:s,loader:a}of t)Ome(i,s,a)},xFt=async()=>{_A.debug("Loading registered diagrams");const i=(await Promise.allSettled(Object.entries(HS).map(async([s,{detector:a,loader:h}])=>{if(h)try{djA(s)}catch{try{const{diagram:w,id:I}=await h();OQA(I,w,a)}catch(w){throw _A.error(`Failed to load external diagram with key ${s}. Removing from detectors.`),delete HS[s],w}}}))).filter(s=>s.status==="rejected");if(i.length>0){_A.error(`Failed to load ${i.length} external diagrams`);for(const s of i)_A.error(s);throw new Error(`Failed to load ${i.length} external diagrams`)}},Ome=(t,i,s)=>{HS[t]?_A.error(`Detector with key ${t} already exists`):HS[t]={detector:i,loader:s},_A.debug(`Detector with key ${t} added${s?" with loader":""}`)},GFt=t=>HS[t].loader,Wme="",JFt={curveBasis:MS,curveBasisClosed:y0t,curveBasisOpen:p0t,curveBumpX:N0t,curveBumpY:m0t,curveBundle:U0t,curveCardinalClosed:H0t,curveCardinalOpen:x0t,curveCardinal:b0t,curveCatmullRomClosed:J0t,curveCatmullRomOpen:k0t,curveCatmullRom:G0t,curveLinear:t0,curveLinearClosed:R0t,curveMonotoneX:T0t,curveMonotoneY:v0t,curveNatural:j0t,curveStep:S0t,curveStepAfter:z0t,curveStepBefore:L0t},URA=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,kFt=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,RFt=function(t,i){const s=Kme(t,/(?:init\b)|(?:initialize\b)/);let a={};if(Array.isArray(s)){const h=s.map(Q=>Q.args);xS(h),a=Dw(a,[...h])}else a=s.args;if(a){let h=c0A(t,i);["config"].forEach(Q=>{a[Q]!==void 0&&(h==="flowchart-v2"&&(h="flowchart"),a[h]=a[Q],delete a[Q])})}return a},Kme=function(t,i=null){try{const s=new RegExp(`[%]{2}(?![{]${kFt.source})(?=[}][%]{2}).*`,"ig");t=t.trim().replace(s,"").replace(/'/gm,'"'),_A.debug(`Detecting diagram directive${i!==null?" type:"+i:""} based on the text:${t}`);let a;const h=[];for(;(a=URA.exec(t))!==null;)if(a.index===URA.lastIndex&&URA.lastIndex++,a&&!i||i&&a[1]&&a[1].match(i)||i&&a[2]&&a[2].match(i)){const Q=a[1]?a[1]:a[2],w=a[3]?a[3].trim():a[4]?JSON.parse(a[4].trim()):null;h.push({type:Q,args:w})}return h.length===0&&h.push({type:t,args:null}),h.length===1?h[0]:h}catch(s){return _A.error(`ERROR: ${s.message} - Unable to parse directive ${i!==null?" type:"+i:""} based on the text:${t}`),{type:null,args:null}}},TFt=function(t,i){for(const[s,a]of i.entries())if(a.match(t))return s;return-1};function fd(t,i){if(!t)return i;const s=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return JFt[s]||i}function vFt(t,i){const s=t.trim();if(s)return i.securityLevel!=="loose"?ub.sanitizeUrl(s):s}const jFt=(t,...i)=>{const s=t.split("."),a=s.length-1,h=s[a];let Q=window;for(let w=0;w{s+=WQA(Q,i),i=Q});let a=s/2,h;return i=void 0,t.forEach(Q=>{if(i&&!h){const w=WQA(Q,i);if(w=1&&(h={x:Q.x,y:Q.y}),I>0&&I<1&&(h={x:(1-I)*i.x+I*Q.x,y:(1-I)*i.y+I*Q.y})}}i=Q}),h}function LFt(t){return t.length===1?t[0]:SFt(t)}const zFt=(t,i,s)=>{let a;_A.info(`our points ${JSON.stringify(i)}`),i[0]!==s&&(i=i.reverse());let Q=25,w;a=void 0,i.forEach(N=>{if(a&&!w){const U=WQA(N,a);if(U=1&&(w={x:N.x,y:N.y}),R>0&&R<1&&(w={x:(1-R)*a.x+R*N.x,y:(1-R)*a.y+R*N.y})}}a=N});const I=t?10:5,d=Math.atan2(i[0].y-w.y,i[0].x-w.x),D={x:0,y:0};return D.x=Math.sin(d)*I+(i[0].x+w.x)/2,D.y=-Math.cos(d)*I+(i[0].y+w.y)/2,D};function PFt(t,i,s){let a=JSON.parse(JSON.stringify(s)),h;_A.info("our points",a),i!=="start_left"&&i!=="start_right"&&(a=a.reverse()),a.forEach(U=>{h=U});let w=25+t,I;h=void 0,a.forEach(U=>{if(h&&!I){const R=WQA(U,h);if(R=1&&(I={x:U.x,y:U.y}),T>0&&T<1&&(I={x:(1-T)*h.x+T*U.x,y:(1-T)*h.y+T*U.y})}}h=U});const d=10+t*.5,D=Math.atan2(a[0].y-I.y,a[0].x-I.x),N={x:0,y:0};return N.x=Math.sin(D)*d+(a[0].x+I.x)/2,N.y=-Math.cos(D)*d+(a[0].y+I.y)/2,i==="start_left"&&(N.x=Math.sin(D+Math.PI)*d+(a[0].x+I.x)/2,N.y=-Math.cos(D+Math.PI)*d+(a[0].y+I.y)/2),i==="end_right"&&(N.x=Math.sin(D-Math.PI)*d+(a[0].x+I.x)/2-5,N.y=-Math.cos(D-Math.PI)*d+(a[0].y+I.y)/2-5),i==="end_left"&&(N.x=Math.sin(D)*d+(a[0].x+I.x)/2-5,N.y=-Math.cos(D)*d+(a[0].y+I.y)/2-5),N}function JM(t){let i="",s="";for(const a of t)a!==void 0&&(a.startsWith("color:")||a.startsWith("text-align:")?s=s+a+";":i=i+a+";");return{style:i,labelStyle:s}}let GDe=0;const Vme=()=>(GDe++,"id-"+Math.random().toString(36).substr(2,12)+"-"+GDe);function OFt(t){let i="";const s="0123456789abcdef",a=s.length;for(let h=0;h OFt(t.length),WFt=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}},KFt=function(t,i){const s=i.text.replace(Yi.lineBreakRegex," "),[,a]=A5(i.fontSize),h=t.append("text");h.attr("x",i.x),h.attr("y",i.y),h.style("text-anchor",i.anchor),h.style("font-family",i.fontFamily),h.style("font-size",a),h.style("font-weight",i.fontWeight),h.attr("fill",i.fill),i.class!==void 0&&h.attr("class",i.class);const Q=h.append("tspan");return Q.attr("x",i.x+i.textMargin*2),Q.attr("fill",i.fill),Q.text(s),h},Zme=_S((t,i,s)=>{if(!t||(s=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},s),Yi.lineBreakRegex.test(t)))return t;const a=t.split(" "),h=[];let Q="";return a.forEach((w,I)=>{const d=A2(`${w} `,s),D=A2(Q,s);if(d>i){const{hyphenatedStrings:R,remainingWord:T}=VFt(w,i,"-",s);h.push(Q,...R),Q=T}else D+d>=i?(h.push(Q),Q=w):Q=[Q,w].filter(Boolean).join(" ");I+1===a.length&&h.push(Q)}),h.filter(w=>w!=="").join(s.joinWith)},(t,i,s)=>`${t}${i}${s.fontSize}${s.fontWeight}${s.fontFamily}${s.joinWith}`),VFt=_S((t,i,s="-",a)=>{a=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},a);const h=[...t],Q=[];let w="";return h.forEach((I,d)=>{const D=`${w}${I}`;if(A2(D,a)>=i){const U=d+1,R=h.length===U,T=`${D}${s}`;Q.push(R?D:T),w=""}else w=D}),{hyphenatedStrings:Q,remainingWord:w}},(t,i,s="-",a)=>`${t}${i}${s}${a.fontSize}${a.fontWeight}${a.fontFamily}`);function qTA(t,i){return i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:15},i),FjA(t,i).height}function A2(t,i){return i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},i),FjA(t,i).width}const FjA=_S((t,i)=>{i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},i);const{fontSize:s,fontFamily:a,fontWeight:h}=i;if(!t)return{width:0,height:0};const[,Q]=A5(s),w=["sans-serif",a],I=t.split(Yi.lineBreakRegex),d=[],D=Nn("body");if(!D.remove)return{width:0,height:0,lineHeight:0};const N=D.append("svg");for(const R of w){let T=0;const j={width:0,height:0,lineHeight:0};for(const W of I){const AA=WFt();AA.text=W||Wme;const X=KFt(N,AA).style("font-size",Q).style("font-weight",h).style("font-family",R),K=(X._groups||X)[0][0].getBBox();if(K.width===0&&K.height===0)throw new Error("svg element not in render tree");j.width=Math.round(Math.max(j.width,K.width)),T=Math.round(K.height),j.height+=T,j.lineHeight=Math.round(Math.max(j.lineHeight,T))}d.push(j)}N.remove();const U=isNaN(d[1].height)||isNaN(d[1].width)||isNaN(d[1].lineHeight)||d[0].height>d[1].height&&d[0].width>d[1].width&&d[0].lineHeight>d[1].lineHeight?0:1;return d[U]},(t,i)=>`${t}${i.fontSize}${i.fontWeight}${i.fontFamily}`),XFt=class{constructor(i,s){this.deterministic=i,this.seed=s,this.count=s?s.length:0}next(){return this.deterministic?this.count++:Date.now()}};let gwA;const ZFt=function(t){return gwA=gwA||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),gwA.innerHTML=t,unescape(gwA.textContent)},xS=t=>{if(_A.debug("directiveSanitizer called with",t),typeof t=="object"&&(t.length?t.forEach(i=>xS(i)):Object.keys(t).forEach(i=>{_A.debug("Checking key",i),i.startsWith("__")&&(_A.debug("sanitize deleting __ option",i),delete t[i]),i.includes("proto")&&(_A.debug("sanitize deleting proto option",i),delete t[i]),i.includes("constr")&&(_A.debug("sanitize deleting constr option",i),delete t[i]),i.includes("themeCSS")&&(_A.debug("sanitizing themeCss option"),t[i]=$wA(t[i])),i.includes("fontFamily")&&(_A.debug("sanitizing fontFamily option"),t[i]=$wA(t[i])),i.includes("altFontFamily")&&(_A.debug("sanitizing altFontFamily option"),t[i]=$wA(t[i])),FCt.includes(i)?typeof t[i]=="object"&&(_A.debug("sanitize deleting object",i),xS(t[i])):(_A.debug("sanitize deleting option",i),delete t[i])})),t.themeVariables){const i=Object.keys(t.themeVariables);for(const s of i){const a=t.themeVariables[s];a&&a.match&&!a.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[s]="")}}_A.debug("After sanitization",t)},$wA=t=>{let i=0,s=0;for(const a of t){if(i{if(!a)return;const h=t.node().getBBox();t.append("text").text(a).attr("x",h.x+h.width/2).attr("y",-s).attr("class",i)},A5=t=>{if(typeof t=="number")return[t,t+"px"];const i=parseInt(t,10);return Number.isNaN(i)?[void 0,void 0]:t===String(i)?[i,t+"px"]:[i,t]},ms={assignWithDepth:Dw,wrapLabel:Zme,calculateTextHeight:qTA,calculateTextWidth:A2,calculateTextDimensions:FjA,detectInit:RFt,detectDirective:Kme,isSubstringInArray:TFt,interpolateToCurve:fd,calcLabelPosition:LFt,calcCardinalityPosition:zFt,calcTerminalLabelPosition:PFt,formatUrl:vFt,getStylesFromArray:JM,generateId:Vme,random:Xme,runFunc:jFt,entityDecode:ZFt,initIdGenerator:XFt,directiveSanitizer:xS,sanitizeCss:$wA,insertTitle:qFt,parseFontSize:A5},JDe="10.3.1",_me="c4",_Ft=t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),$Ft=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>g2t),void 0);return{id:_me,diagram:t}},AMt={id:_me,detector:_Ft,loader:$Ft},eMt=AMt,$me="flowchart",tMt=(t,i)=>{var s,a;return((s=i==null?void 0:i.flowchart)==null?void 0:s.defaultRenderer)==="dagre-wrapper"||((a=i==null?void 0:i.flowchart)==null?void 0:a.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)},nMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>k3t),void 0);return{id:$me,diagram:t}},iMt={id:$me,detector:tMt,loader:nMt},rMt=iMt,AUe="flowchart-v2",cMt=(t,i)=>{var s,a,h;return((s=i==null?void 0:i.flowchart)==null?void 0:s.defaultRenderer)==="dagre-d3"||((a=i==null?void 0:i.flowchart)==null?void 0:a.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)&&((h=i==null?void 0:i.flowchart)==null?void 0:h.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)},sMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>T3t),void 0);return{id:AUe,diagram:t}},oMt={id:AUe,detector:cMt,loader:sMt},aMt=oMt,eUe="er",BMt=t=>/^\s*erDiagram/.test(t),gMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>FGt),void 0);return{id:eUe,diagram:t}},hMt={id:eUe,detector:BMt,loader:gMt},lMt=hMt,tUe="gitGraph",uMt=t=>/^\s*gitGraph/.test(t),wMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>$Gt),void 0);return{id:tUe,diagram:t}},QMt={id:tUe,detector:uMt,loader:wMt},EMt=QMt,nUe="gantt",fMt=t=>/^\s*gantt/.test(t),IMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>ZJt),void 0);return{id:nUe,diagram:t}},CMt={id:nUe,detector:fMt,loader:IMt},dMt=CMt,iUe="info",FMt=t=>/^\s*info/.test(t),MMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>rkt),void 0);return{id:iUe,diagram:t}},YMt={id:iUe,detector:FMt,loader:MMt},rUe="pie",DMt=t=>/^\s*pie/.test(t),yMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>Ckt),void 0);return{id:rUe,diagram:t}},pMt={id:rUe,detector:DMt,loader:yMt},NMt=pMt,cUe="quadrantChart",mMt=t=>/^\s*quadrantChart/.test(t),UMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>Lkt),void 0);return{id:cUe,diagram:t}},bMt={id:cUe,detector:mMt,loader:UMt},HMt=bMt,sUe="requirement",xMt=t=>/^\s*requirement(Diagram)?/.test(t),GMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>dRt),void 0);return{id:sUe,diagram:t}},JMt={id:sUe,detector:xMt,loader:GMt},kMt=JMt,oUe="sequence",RMt=t=>/^\s*sequenceDiagram/.test(t),TMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>bTt),void 0);return{id:oUe,diagram:t}},vMt={id:oUe,detector:RMt,loader:TMt},jMt=vMt,aUe="class",SMt=(t,i)=>{var s;return((s=i==null?void 0:i.class)==null?void 0:s.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t)},LMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>a8t),void 0);return{id:aUe,diagram:t}},zMt={id:aUe,detector:SMt,loader:LMt},PMt=zMt,BUe="classDiagram",OMt=(t,i)=>{var s;return/^\s*classDiagram/.test(t)&&((s=i==null?void 0:i.class)==null?void 0:s.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t)},WMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>E8t),void 0);return{id:BUe,diagram:t}},KMt={id:BUe,detector:OMt,loader:WMt},VMt=KMt,gUe="state",XMt=(t,i)=>{var s;return((s=i==null?void 0:i.state)==null?void 0:s.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t)},ZMt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>ovt),void 0);return{id:gUe,diagram:t}},qMt={id:gUe,detector:XMt,loader:ZMt},_Mt=qMt,hUe="stateDiagram",$Mt=(t,i)=>{var s;return!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&((s=i==null?void 0:i.state)==null?void 0:s.defaultRenderer)==="dagre-wrapper")},AYt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>Gvt),void 0);return{id:hUe,diagram:t}},eYt={id:hUe,detector:$Mt,loader:AYt},tYt=eYt,lUe="journey",nYt=t=>/^\s*journey/.test(t),iYt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>ijt),void 0);return{id:lUe,diagram:t}},rYt={id:lUe,detector:nYt,loader:iYt},cYt=rYt,uUe=t=>{var i;const{securityLevel:s}=Je();let a=Nn("body");if(s==="sandbox"){const w=((i=Nn(`#i${t}`).node())==null?void 0:i.contentDocument)??document;a=Nn(w.body)}return a.select(`#${t}`)},sYt=(t,i,s)=>{_A.debug(`renering svg for syntax error`);const a=uUe(i);a.attr("viewBox","0 0 2412 512"),B0(a,100,512,!0);const h=a.append("g");h.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"),h.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"),h.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"),h.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"),h.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"),h.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"),h.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"),h.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${s}`)},wUe={draw:sYt},oYt=wUe,aYt={db:{},renderer:wUe,parser:{parser:{yy:{}},parse:()=>{}}},BYt=aYt,QUe="flowchart-elk",gYt=(t,i)=>{var s;return!!(/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&((s=i==null?void 0:i.flowchart)==null?void 0:s.defaultRenderer)==="elk")},hYt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>Mjt),void 0);return{id:QUe,diagram:t}},lYt={id:QUe,detector:gYt,loader:hYt},uYt=lYt,EUe="timeline",wYt=t=>/^\s*timeline/.test(t),QYt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>Wjt),void 0);return{id:EUe,diagram:t}},EYt={id:EUe,detector:wYt,loader:QYt},fYt=EYt,fUe="mindmap",IYt=t=>/^\s*mindmap/.test(t),CYt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>mSt),void 0);return{id:fUe,diagram:t}},dYt={id:fUe,detector:IYt,loader:CYt},FYt=dYt,IUe="sankey",MYt=t=>/^\s*sankey-beta/.test(t),YYt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>g5t),void 0);return{id:IUe,diagram:t}},DYt={id:IUe,detector:MYt,loader:YYt},yYt=DYt;let kDe=!1;const MjA=()=>{kDe||(kDe=!0,OQA("error",BYt,t=>t.toLowerCase().trim()==="error"),OQA("---",{db:{clear:()=>{}},styles:{},renderer:{},parser:{parser:{yy:{}},parse:()=>{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")}},init:()=>null},t=>t.toLowerCase().trimStart().startsWith("---")),Pme(eMt,VMt,PMt,lMt,dMt,YMt,NMt,kMt,jMt,uYt,aMt,rMt,FYt,fYt,EMt,tYt,_Mt,cYt,HMt,yYt))},pYt=t=>t.trimStart().replace(/^\s*%%(?!{)[^\n]+\n?/gm,"");class CUe{constructor(i){this.text=i,this.type="graph",this.text+=``;const s=Je();try{this.type=c0A(i,s)}catch(Q){this.type="error",this.detectError=Q}const a=djA(this.type);_A.debug("Type "+this.type),this.db=a.db,this.renderer=a.renderer,this.parser=a.parser;const h=this.parser.parse.bind(this.parser);this.parser.parse=Q=>h(pYt(hFt(Q,this.db))),this.parser.parser.yy=this.db,this.init=a.init,this.parse()}parse(){var i,s,a;if(this.detectError)throw this.detectError;(s=(i=this.db).clear)==null||s.call(i),(a=this.init)==null||a.call(this,Je()),this.parser.parse(this.text)}async render(i,s){await this.renderer.draw(this.text,i,s,this)}getParser(){return this.parser}getType(){return this.type}}const YjA=async t=>{const i=c0A(t,Je());try{djA(i)}catch{const a=GFt(i);if(!a)throw new zme(`Diagram ${i} not found.`);const{id:h,diagram:Q}=await a();OQA(h,Q)}return new CUe(t)};let _TA=[];const NYt=t=>{_TA.push(t)},mYt=()=>{_TA.forEach(t=>{t()}),_TA=[]},UYt="graphics-document document";function bYt(t,i){t.attr("role",UYt),i!==""&&t.attr("aria-roledescription",i)}function HYt(t,i,s,a){if(t.insert!==void 0){if(s){const h=`chart-desc-${a}`;t.attr("aria-describedby",h),t.insert("desc",":first-child").attr("id",h).text(s)}if(i){const h=`chart-title-${a}`;t.attr("aria-labelledby",h),t.insert("title",":first-child").attr("id",h).text(i)}}}const dUe=["graph","flowchart","flowchart-v2","flowchart-elk","stateDiagram","stateDiagram-v2"],xYt=5e4,GYt="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",JYt="sandbox",kYt="loose",RYt="http://www.w3.org/2000/svg",TYt="http://www.w3.org/1999/xlink",vYt="http://www.w3.org/1999/xhtml",jYt="100%",SYt="100%",LYt="border:0;margin:0;",zYt="margin:0",PYt="allow-top-navigation-by-user-activation allow-popups",OYt='The "iframe" tag is not supported by your browser.',WYt=["foreignobject"],KYt=["dominant-baseline"];async function VYt(t,i){MjA();try{await YjA(t)}catch(s){if(i!=null&&i.suppressErrors)return!1;throw s}return!0}const XYt=function(t){let i=t;return i=i.replace(/style.*:\S*#.*;/g,function(s){return s.substring(0,s.length-1)}),i=i.replace(/classDef.*:\S*#.*;/g,function(s){return s.substring(0,s.length-1)}),i=i.replace(/#\w+;/g,function(s){const a=s.substring(1,s.length-1);return/^\+?\d+$/.test(a)?"fl°°"+a+"¶ß":"fl°"+a+"¶ß"}),i},WX=function(t){return t.replace(/fl°°/g,"").replace(/fl°/g,"&").replace(/¶ß/g,";")},RDe=(t,i,s=[])=>`.${t} ${i} { ${s.join(" !important; ")} !important; }`,ZYt=(t,i,s={})=>{var a;let h="";if(t.themeCSS!==void 0&&(h+=`${t.themeCSS}`),t.fontFamily!==void 0&&(h+=`:root { --mermaid-font-family: ${t.fontFamily}}`),t.altFontFamily!==void 0&&(h+=`:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),!EX(s)&&dUe.includes(i)){const d=t.htmlLabels||((a=t.flowchart)==null?void 0:a.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const D in s){const N=s[D];EX(N.styles)||d.forEach(U=>{h+=RDe(N.id,U,N.styles)}),EX(N.textStyles)||(h+=RDe(N.id,"tspan",N.textStyles))}}return h},qYt=(t,i,s,a)=>{const h=ZYt(t,i,s),Q=FFt(i,h,t.themeVariables);return OTA($ft(`${a}{${Q}}`),eIt)},_Yt=(t="",i,s)=>{let a=t;return!s&&!i&&(a=a.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),a=WX(a),a=a.replace(/
/g,"
"),a},$Yt=(t="",i)=>{var s,a;const h=(a=(s=i==null?void 0:i.viewBox)==null?void 0:s.baseVal)!=null&&a.height?i.viewBox.baseVal.height+"px":SYt,Q=btoa(''+t+"");return``},TDe=(t,i,s,a,h)=>{const Q=t.append("div");Q.attr("id",s),a&&Q.attr("style",a);const w=Q.append("svg").attr("id",i).attr("width","100%").attr("xmlns",RYt);return h&&w.attr("xmlns:xlink",h),w.append("g"),t};function vDe(t,i){return t.append("iframe").attr("id",i).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const ADt=(t,i,s,a)=>{var h,Q,w;(h=t.getElementById(i))==null||h.remove(),(Q=t.getElementById(s))==null||Q.remove(),(w=t.getElementById(a))==null||w.remove()},eDt=async function(t,i,s){var a,h,Q,w;MjA(),zQA();const I=ms.detectInit(i);I&&(xS(I),vme(I));const d=Je();_A.debug(d),i.length>((d==null?void 0:d.maxTextSize)??xYt)&&(i=GYt),i=i.replace(/\r\n?/g,``),i=i.replace(/<(\w+)([^>]*)>/g,(JA,_,SA)=>"<"+_+SA.replace(/="([^"]*)"/g,"='$1'")+">");const D="#"+t,N="i"+t,U="#"+N,R="d"+t,T="#"+R;let j=Nn("body");const W=d.securityLevel===JYt,AA=d.securityLevel===kYt,X=d.fontFamily;if(s!==void 0){if(s&&(s.innerHTML=""),W){const JA=vDe(Nn(s),N);j=Nn(JA.nodes()[0].contentDocument.body),j.node().style.margin=0}else j=Nn(s);TDe(j,t,R,`font-family: ${X}`,TYt)}else{if(ADt(document,t,R,N),W){const JA=vDe(Nn("body"),N);j=Nn(JA.nodes()[0].contentDocument.body),j.node().style.margin=0}else j=Nn("body");TDe(j,t,R)}i=XYt(i);let K,$;try{K=await YjA(i)}catch(JA){K=new CUe("error"),$=JA}const QA=j.select(T).node(),hA=K.type,aA=QA.firstChild,iA=aA.firstChild,BA=dUe.includes(hA)?K.renderer.getClasses(i,K):{},rA=qYt(d,hA,BA,D),FA=document.createElement("style");FA.innerHTML=rA,aA.insertBefore(FA,iA);try{await K.renderer.draw(i,t,JDe,K)}catch(JA){throw oYt.draw(i,t,JDe),JA}const gA=j.select(`${T} svg`),fA=(h=(a=K.db).getAccTitle)==null?void 0:h.call(a),DA=(w=(Q=K.db).getAccDescription)==null?void 0:w.call(Q);nDt(hA,gA,fA,DA),j.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",vYt);let eA=j.select(T).node().innerHTML;if(_A.debug("config.arrowMarkerAbsolute",d.arrowMarkerAbsolute),eA=_Yt(eA,W,Lu(d.arrowMarkerAbsolute)),W){const JA=j.select(T+" svg").node();eA=$Yt(eA,JA)}else AA||(eA=vQA.sanitize(eA,{ADD_TAGS:WYt,ADD_ATTR:KYt}));if(mYt(),$)throw $;const cA=Nn(W?U:T).node();return cA&&"remove"in cA&&cA.remove(),{svg:eA,bindFunctions:K.db.bindFunctions}};function tDt(t={}){var i;t!=null&&t.fontFamily&&!((i=t.themeVariables)!=null&&i.fontFamily)&&(t.themeVariables||(t.themeVariables={}),t.themeVariables.fontFamily=t.fontFamily),uFt(t),t!=null&&t.theme&&t.theme in Op?t.themeVariables=Op[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=Op.default.getThemeVariables(t.themeVariables));const s=typeof t=="object"?lFt(t):kme();ljA(s.logLevel),MjA()}function nDt(t,i,s,a){bYt(i,t),HYt(i,s,a,i.attr("id"))}const zu=Object.freeze({render:eDt,parse:VYt,parseDirective:CjA,getDiagramFromText:YjA,initialize:tDt,getConfig:Je,setConfig:Rme,getSiteConfig:kme,updateSiteConfig:wFt,reset:()=>{zQA()},globalReset:()=>{zQA(VJ)},defaultConfig:VJ});ljA(Je().logLevel);zQA(Je());const iDt=(t,i,s)=>{_A.warn(t),qme(t)?(s&&s(t.str,t.hash),i.push({...t,message:t.str,error:t})):(s&&s(t),t instanceof Error&&i.push({str:t.message,message:t.message,hash:t.name,error:t}))},FUe=async function(t={querySelector:".mermaid"}){try{await rDt(t)}catch(i){if(qme(i)&&_A.error(i.str),kM.parseError&&kM.parseError(i),!t.suppressErrors)throw _A.error("Use the suppressErrors option to suppress these errors"),i}},rDt=async function({postRenderCallback:t,querySelector:i,nodes:s}={querySelector:".mermaid"}){const a=zu.getConfig();_A.debug(`${t?"":"No "}Callback function found`);let h;if(s)h=s;else if(i)h=document.querySelectorAll(i);else throw new Error("Nodes and querySelector are both undefined");_A.debug(`Found ${h.length} diagrams`),(a==null?void 0:a.startOnLoad)!==void 0&&(_A.debug("Start On Load: "+(a==null?void 0:a.startOnLoad)),zu.updateSiteConfig({startOnLoad:a==null?void 0:a.startOnLoad}));const Q=new ms.initIdGenerator(a.deterministicIds,a.deterministicIDSeed);let w;const I=[];for(const d of Array.from(h)){_A.info("Rendering diagram: "+d.id);/*! Check if previously processed */if(d.getAttribute("data-processed"))continue;d.setAttribute("data-processed","true");const D=`mermaid-${Q.next()}`;w=d.innerHTML,w=U4e(ms.entityDecode(w)).trim().replace(/
/gi,"
");const N=ms.detectInit(w);N&&_A.debug("Detected early reinit: ",N);try{const{svg:U,bindFunctions:R}=await yUe(D,w,d);d.innerHTML=U,t&&await t(D),R&&R(d)}catch(U){iDt(U,I,kM.parseError)}}if(I.length>0)throw I[0]},MUe=function(t){zu.initialize(t)},cDt=async function(t,i,s){_A.warn("mermaid.init is deprecated. Please use run instead."),t&&MUe(t);const a={postRenderCallback:s,querySelector:".mermaid"};typeof i=="string"?a.querySelector=i:i&&(i instanceof HTMLElement?a.nodes=[i]:a.nodes=i),await FUe(a)},sDt=async(t,{lazyLoad:i=!0}={})=>{Pme(...t),i===!1&&await xFt()},YUe=function(){if(kM.startOnLoad){const{startOnLoad:t}=zu.getConfig();t&&kM.run().catch(i=>_A.error("Mermaid failed to initialize",i))}};if(typeof document<"u"){/*! * Wait for document loaded before starting the execution */window.addEventListener("load",YUe,!1)}const oDt=function(t){kM.parseError=t},KQA=[];let bRA=!1;const DUe=async()=>{if(!bRA){for(bRA=!0;KQA.length>0;){const t=KQA.shift();if(t)try{await t()}catch(i){_A.error("Error executing queue",i)}}bRA=!1}},aDt=async(t,i)=>new Promise((s,a)=>{const h=()=>new Promise((Q,w)=>{zu.parse(t,i).then(I=>{Q(I),s(I)},I=>{var d;_A.error("Error parsing",I),(d=kM.parseError)==null||d.call(kM,I),w(I),a(I)})});KQA.push(h),DUe().catch(a)}),yUe=(t,i,s)=>new Promise((a,h)=>{const Q=()=>new Promise((w,I)=>{zu.render(t,i,s).then(d=>{w(d),a(d)},d=>{var D;_A.error("Error parsing",d),(D=kM.parseError)==null||D.call(kM,d),I(d),h(d)})});KQA.push(Q),DUe().catch(h)}),kM={startOnLoad:!0,mermaidAPI:zu,parse:aDt,render:yUe,init:cDt,run:FUe,registerExternalDiagrams:sDt,initialize:MUe,parseError:void 0,contentLoaded:YUe,setParseErrorHandler:oDt,detectType:c0A},pUe="zenuml",BDt=t=>/^\s*zenuml/.test(t),gDt=async()=>{const{diagram:t}=await Fl(()=>Promise.resolve().then(()=>icn),void 0);return{id:pUe,diagram:t}},hDt={id:pUe,detector:BDt,loader:gDt};globalThis.mermaid=kM;globalThis.zenuml=hDt;const s0A=function(t,i){const s=t.append("rect");if(s.attr("x",i.x),s.attr("y",i.y),s.attr("fill",i.fill),s.attr("stroke",i.stroke),s.attr("width",i.width),s.attr("height",i.height),s.attr("rx",i.rx),s.attr("ry",i.ry),i.attrs!=="undefined"&&i.attrs!==null)for(let a in i.attrs)s.attr(a,i.attrs[a]);return i.class!=="undefined"&&s.attr("class",i.class),s},NUe=function(t,i){s0A(t,{x:i.startx,y:i.starty,width:i.stopx-i.startx,height:i.stopy-i.starty,fill:i.fill,stroke:i.stroke,class:"rect"}).lower()},lDt=function(t,i){const s=i.text.replace(/
/gi," "),a=t.append("text");a.attr("x",i.x),a.attr("y",i.y),a.attr("class","legend"),a.style("text-anchor",i.anchor),i.class!==void 0&&a.attr("class",i.class);const h=a.append("tspan");return h.attr("x",i.x+i.textMargin*2),h.text(s),a},uDt=function(t,i,s,a){const h=t.append("image");h.attr("x",i),h.attr("y",s);var Q=ub.sanitizeUrl(a);h.attr("xlink:href",Q)},wDt=function(t,i,s,a){const h=t.append("use");h.attr("x",i),h.attr("y",s);const Q=ub.sanitizeUrl(a);h.attr("xlink:href","#"+Q)},fk=function(){return{x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}},DjA=function(){return{x:0,y:0,width:100,height:100,fill:void 0,anchor:void 0,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}};var VQA=function(){var t=function(mr,wn,Xn,Wi){for(Xn=Xn||{},Wi=mr.length;Wi--;Xn[mr[Wi]]=wn);return Xn},i=[1,6],s=[1,7],a=[1,8],h=[1,9],Q=[1,16],w=[1,11],I=[1,12],d=[1,13],D=[1,14],N=[1,15],U=[1,27],R=[1,33],T=[1,34],j=[1,35],W=[1,36],AA=[1,37],X=[1,72],K=[1,73],$=[1,74],QA=[1,75],hA=[1,76],aA=[1,77],iA=[1,78],BA=[1,38],rA=[1,39],FA=[1,40],gA=[1,41],fA=[1,42],DA=[1,43],eA=[1,44],GA=[1,45],cA=[1,46],JA=[1,47],_=[1,48],SA=[1,49],jA=[1,50],dA=[1,51],kA=[1,52],vA=[1,53],Fe=[1,54],at=[1,55],fe=[1,56],mt=[1,57],be=[1,59],ie=[1,60],ye=[1,61],Le=[1,62],HA=[1,63],WA=[1,64],XA=[1,65],ce=[1,66],ZA=[1,67],pe=[1,68],zA=[1,69],Ft=[24,52],RA=[24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Et=[15,24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],$A=[1,94],Ot=[1,95],zt=[1,96],Gt=[1,97],sn=[15,24,52],Ke=[7,8,9,10,18,22,25,26,27,28],lt=[15,24,43,52],gn=[15,24,43,52,86,87,89,90],Rt=[15,43],ln=[44,46,47,48,49,50,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],hi={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,directive:6,direction_tb:7,direction_bt:8,direction_rl:9,direction_lr:10,graphConfig:11,openDirective:12,typeDirective:13,closeDirective:14,NEWLINE:15,":":16,argDirective:17,open_directive:18,type_directive:19,arg_directive:20,close_directive:21,C4_CONTEXT:22,statements:23,EOF:24,C4_CONTAINER:25,C4_COMPONENT:26,C4_DYNAMIC:27,C4_DEPLOYMENT:28,otherStatements:29,diagramStatements:30,otherStatement:31,title:32,accDescription:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,boundaryStatement:39,boundaryStartStatement:40,boundaryStopStatement:41,boundaryStart:42,LBRACE:43,ENTERPRISE_BOUNDARY:44,attributes:45,SYSTEM_BOUNDARY:46,BOUNDARY:47,CONTAINER_BOUNDARY:48,NODE:49,NODE_L:50,NODE_R:51,RBRACE:52,diagramStatement:53,PERSON:54,PERSON_EXT:55,SYSTEM:56,SYSTEM_DB:57,SYSTEM_QUEUE:58,SYSTEM_EXT:59,SYSTEM_EXT_DB:60,SYSTEM_EXT_QUEUE:61,CONTAINER:62,CONTAINER_DB:63,CONTAINER_QUEUE:64,CONTAINER_EXT:65,CONTAINER_EXT_DB:66,CONTAINER_EXT_QUEUE:67,COMPONENT:68,COMPONENT_DB:69,COMPONENT_QUEUE:70,COMPONENT_EXT:71,COMPONENT_EXT_DB:72,COMPONENT_EXT_QUEUE:73,REL:74,BIREL:75,REL_U:76,REL_D:77,REL_L:78,REL_R:79,REL_B:80,REL_INDEX:81,UPDATE_EL_STYLE:82,UPDATE_REL_STYLE:83,UPDATE_LAYOUT_CONFIG:84,attribute:85,STR:86,STR_KEY:87,STR_VALUE:88,ATTRIBUTE:89,ATTRIBUTE_EMPTY:90,$accept:0,$end:1},terminals_:{2:"error",7:"direction_tb",8:"direction_bt",9:"direction_rl",10:"direction_lr",15:"NEWLINE",16:":",18:"open_directive",19:"type_directive",20:"arg_directive",21:"close_directive",22:"C4_CONTEXT",24:"EOF",25:"C4_CONTAINER",26:"C4_COMPONENT",27:"C4_DYNAMIC",28:"C4_DEPLOYMENT",32:"title",33:"accDescription",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",43:"LBRACE",44:"ENTERPRISE_BOUNDARY",46:"SYSTEM_BOUNDARY",47:"BOUNDARY",48:"CONTAINER_BOUNDARY",49:"NODE",50:"NODE_L",51:"NODE_R",52:"RBRACE",54:"PERSON",55:"PERSON_EXT",56:"SYSTEM",57:"SYSTEM_DB",58:"SYSTEM_QUEUE",59:"SYSTEM_EXT",60:"SYSTEM_EXT_DB",61:"SYSTEM_EXT_QUEUE",62:"CONTAINER",63:"CONTAINER_DB",64:"CONTAINER_QUEUE",65:"CONTAINER_EXT",66:"CONTAINER_EXT_DB",67:"CONTAINER_EXT_QUEUE",68:"COMPONENT",69:"COMPONENT_DB",70:"COMPONENT_QUEUE",71:"COMPONENT_EXT",72:"COMPONENT_EXT_DB",73:"COMPONENT_EXT_QUEUE",74:"REL",75:"BIREL",76:"REL_U",77:"REL_D",78:"REL_L",79:"REL_R",80:"REL_B",81:"REL_INDEX",82:"UPDATE_EL_STYLE",83:"UPDATE_REL_STYLE",84:"UPDATE_LAYOUT_CONFIG",86:"STR",87:"STR_KEY",88:"STR_VALUE",89:"ATTRIBUTE",90:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[3,2],[5,1],[5,1],[5,1],[5,1],[4,1],[6,4],[6,6],[12,1],[13,1],[17,1],[14,1],[11,4],[11,4],[11,4],[11,4],[11,4],[23,1],[23,1],[23,2],[29,1],[29,2],[29,3],[31,1],[31,1],[31,2],[31,2],[31,1],[39,3],[40,3],[40,3],[40,4],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[41,1],[30,1],[30,2],[30,3],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,1],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[45,1],[45,2],[85,1],[85,2],[85,1],[85,1]],performAction:function(wn,Xn,Wi,mn,Ec,An,Da){var Tn=An.length-1;switch(Ec){case 4:mn.setDirection("TB");break;case 5:mn.setDirection("BT");break;case 6:mn.setDirection("RL");break;case 7:mn.setDirection("LR");break;case 11:mn.parseDirective("%%{","open_directive");break;case 12:break;case 13:An[Tn]=An[Tn].trim().replace(/'/g,'"'),mn.parseDirective(An[Tn],"arg_directive");break;case 14:mn.parseDirective("}%%","close_directive","c4Context");break;case 15:case 16:case 17:case 18:case 19:mn.setC4Type(An[Tn-3]);break;case 26:mn.setTitle(An[Tn].substring(6)),this.$=An[Tn].substring(6);break;case 27:mn.setAccDescription(An[Tn].substring(15)),this.$=An[Tn].substring(15);break;case 28:this.$=An[Tn].trim(),mn.setTitle(this.$);break;case 29:case 30:this.$=An[Tn].trim(),mn.setAccDescription(this.$);break;case 35:case 36:An[Tn].splice(2,0,"ENTERPRISE"),mn.addPersonOrSystemBoundary(...An[Tn]),this.$=An[Tn];break;case 37:mn.addPersonOrSystemBoundary(...An[Tn]),this.$=An[Tn];break;case 38:An[Tn].splice(2,0,"CONTAINER"),mn.addContainerBoundary(...An[Tn]),this.$=An[Tn];break;case 39:mn.addDeploymentNode("node",...An[Tn]),this.$=An[Tn];break;case 40:mn.addDeploymentNode("nodeL",...An[Tn]),this.$=An[Tn];break;case 41:mn.addDeploymentNode("nodeR",...An[Tn]),this.$=An[Tn];break;case 42:mn.popBoundaryParseStack();break;case 46:mn.addPersonOrSystem("person",...An[Tn]),this.$=An[Tn];break;case 47:mn.addPersonOrSystem("external_person",...An[Tn]),this.$=An[Tn];break;case 48:mn.addPersonOrSystem("system",...An[Tn]),this.$=An[Tn];break;case 49:mn.addPersonOrSystem("system_db",...An[Tn]),this.$=An[Tn];break;case 50:mn.addPersonOrSystem("system_queue",...An[Tn]),this.$=An[Tn];break;case 51:mn.addPersonOrSystem("external_system",...An[Tn]),this.$=An[Tn];break;case 52:mn.addPersonOrSystem("external_system_db",...An[Tn]),this.$=An[Tn];break;case 53:mn.addPersonOrSystem("external_system_queue",...An[Tn]),this.$=An[Tn];break;case 54:mn.addContainer("container",...An[Tn]),this.$=An[Tn];break;case 55:mn.addContainer("container_db",...An[Tn]),this.$=An[Tn];break;case 56:mn.addContainer("container_queue",...An[Tn]),this.$=An[Tn];break;case 57:mn.addContainer("external_container",...An[Tn]),this.$=An[Tn];break;case 58:mn.addContainer("external_container_db",...An[Tn]),this.$=An[Tn];break;case 59:mn.addContainer("external_container_queue",...An[Tn]),this.$=An[Tn];break;case 60:mn.addComponent("component",...An[Tn]),this.$=An[Tn];break;case 61:mn.addComponent("component_db",...An[Tn]),this.$=An[Tn];break;case 62:mn.addComponent("component_queue",...An[Tn]),this.$=An[Tn];break;case 63:mn.addComponent("external_component",...An[Tn]),this.$=An[Tn];break;case 64:mn.addComponent("external_component_db",...An[Tn]),this.$=An[Tn];break;case 65:mn.addComponent("external_component_queue",...An[Tn]),this.$=An[Tn];break;case 67:mn.addRel("rel",...An[Tn]),this.$=An[Tn];break;case 68:mn.addRel("birel",...An[Tn]),this.$=An[Tn];break;case 69:mn.addRel("rel_u",...An[Tn]),this.$=An[Tn];break;case 70:mn.addRel("rel_d",...An[Tn]),this.$=An[Tn];break;case 71:mn.addRel("rel_l",...An[Tn]),this.$=An[Tn];break;case 72:mn.addRel("rel_r",...An[Tn]),this.$=An[Tn];break;case 73:mn.addRel("rel_b",...An[Tn]),this.$=An[Tn];break;case 74:An[Tn].splice(0,1),mn.addRel("rel",...An[Tn]),this.$=An[Tn];break;case 75:mn.updateElStyle("update_el_style",...An[Tn]),this.$=An[Tn];break;case 76:mn.updateRelStyle("update_rel_style",...An[Tn]),this.$=An[Tn];break;case 77:mn.updateLayoutConfig("update_layout_config",...An[Tn]),this.$=An[Tn];break;case 78:this.$=[An[Tn]];break;case 79:An[Tn].unshift(An[Tn-1]),this.$=An[Tn];break;case 80:case 82:this.$=An[Tn].trim();break;case 81:let ta={};ta[An[Tn-1].trim()]=An[Tn].trim(),this.$=ta;break;case 83:this.$="";break}},table:[{3:1,4:2,5:3,6:4,7:i,8:s,9:a,10:h,11:5,12:10,18:Q,22:w,25:I,26:d,27:D,28:N},{1:[3]},{1:[2,1]},{1:[2,2]},{3:17,4:2,5:3,6:4,7:i,8:s,9:a,10:h,11:5,12:10,18:Q,22:w,25:I,26:d,27:D,28:N},{1:[2,8]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{1:[2,7]},{13:18,19:[1,19]},{15:[1,20]},{15:[1,21]},{15:[1,22]},{15:[1,23]},{15:[1,24]},{19:[2,11]},{1:[2,3]},{14:25,16:[1,26],21:U},t([16,21],[2,12]),{23:28,29:29,30:30,31:31,32:R,33:T,34:j,36:W,38:AA,39:58,40:70,42:71,44:X,46:K,47:$,48:QA,49:hA,50:aA,51:iA,53:32,54:BA,55:rA,56:FA,57:gA,58:fA,59:DA,60:eA,61:GA,62:cA,63:JA,64:_,65:SA,66:jA,67:dA,68:kA,69:vA,70:Fe,71:at,72:fe,73:mt,74:be,75:ie,76:ye,77:Le,78:HA,79:WA,80:XA,81:ce,82:ZA,83:pe,84:zA},{23:79,29:29,30:30,31:31,32:R,33:T,34:j,36:W,38:AA,39:58,40:70,42:71,44:X,46:K,47:$,48:QA,49:hA,50:aA,51:iA,53:32,54:BA,55:rA,56:FA,57:gA,58:fA,59:DA,60:eA,61:GA,62:cA,63:JA,64:_,65:SA,66:jA,67:dA,68:kA,69:vA,70:Fe,71:at,72:fe,73:mt,74:be,75:ie,76:ye,77:Le,78:HA,79:WA,80:XA,81:ce,82:ZA,83:pe,84:zA},{23:80,29:29,30:30,31:31,32:R,33:T,34:j,36:W,38:AA,39:58,40:70,42:71,44:X,46:K,47:$,48:QA,49:hA,50:aA,51:iA,53:32,54:BA,55:rA,56:FA,57:gA,58:fA,59:DA,60:eA,61:GA,62:cA,63:JA,64:_,65:SA,66:jA,67:dA,68:kA,69:vA,70:Fe,71:at,72:fe,73:mt,74:be,75:ie,76:ye,77:Le,78:HA,79:WA,80:XA,81:ce,82:ZA,83:pe,84:zA},{23:81,29:29,30:30,31:31,32:R,33:T,34:j,36:W,38:AA,39:58,40:70,42:71,44:X,46:K,47:$,48:QA,49:hA,50:aA,51:iA,53:32,54:BA,55:rA,56:FA,57:gA,58:fA,59:DA,60:eA,61:GA,62:cA,63:JA,64:_,65:SA,66:jA,67:dA,68:kA,69:vA,70:Fe,71:at,72:fe,73:mt,74:be,75:ie,76:ye,77:Le,78:HA,79:WA,80:XA,81:ce,82:ZA,83:pe,84:zA},{23:82,29:29,30:30,31:31,32:R,33:T,34:j,36:W,38:AA,39:58,40:70,42:71,44:X,46:K,47:$,48:QA,49:hA,50:aA,51:iA,53:32,54:BA,55:rA,56:FA,57:gA,58:fA,59:DA,60:eA,61:GA,62:cA,63:JA,64:_,65:SA,66:jA,67:dA,68:kA,69:vA,70:Fe,71:at,72:fe,73:mt,74:be,75:ie,76:ye,77:Le,78:HA,79:WA,80:XA,81:ce,82:ZA,83:pe,84:zA},{15:[1,83]},{17:84,20:[1,85]},{15:[2,14]},{24:[1,86]},t(Ft,[2,20],{53:32,39:58,40:70,42:71,30:87,44:X,46:K,47:$,48:QA,49:hA,50:aA,51:iA,54:BA,55:rA,56:FA,57:gA,58:fA,59:DA,60:eA,61:GA,62:cA,63:JA,64:_,65:SA,66:jA,67:dA,68:kA,69:vA,70:Fe,71:at,72:fe,73:mt,74:be,75:ie,76:ye,77:Le,78:HA,79:WA,80:XA,81:ce,82:ZA,83:pe,84:zA}),t(Ft,[2,21]),t(RA,[2,23],{15:[1,88]}),t(Ft,[2,43],{15:[1,89]}),t(Et,[2,26]),t(Et,[2,27]),{35:[1,90]},{37:[1,91]},t(Et,[2,30]),{45:92,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:98,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:99,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:100,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:101,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:102,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:103,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:104,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:105,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:106,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:107,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:108,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:109,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:110,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:111,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:112,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:113,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:114,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:115,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:116,85:93,86:$A,87:Ot,89:zt,90:Gt},t(sn,[2,66]),{45:117,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:118,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:119,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:120,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:121,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:122,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:123,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:124,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:125,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:126,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:127,85:93,86:$A,87:Ot,89:zt,90:Gt},{30:128,39:58,40:70,42:71,44:X,46:K,47:$,48:QA,49:hA,50:aA,51:iA,53:32,54:BA,55:rA,56:FA,57:gA,58:fA,59:DA,60:eA,61:GA,62:cA,63:JA,64:_,65:SA,66:jA,67:dA,68:kA,69:vA,70:Fe,71:at,72:fe,73:mt,74:be,75:ie,76:ye,77:Le,78:HA,79:WA,80:XA,81:ce,82:ZA,83:pe,84:zA},{15:[1,130],43:[1,129]},{45:131,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:132,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:133,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:134,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:135,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:136,85:93,86:$A,87:Ot,89:zt,90:Gt},{45:137,85:93,86:$A,87:Ot,89:zt,90:Gt},{24:[1,138]},{24:[1,139]},{24:[1,140]},{24:[1,141]},t(Ke,[2,9]),{14:142,21:U},{21:[2,13]},{1:[2,15]},t(Ft,[2,22]),t(RA,[2,24],{31:31,29:143,32:R,33:T,34:j,36:W,38:AA}),t(Ft,[2,44],{29:29,30:30,31:31,53:32,39:58,40:70,42:71,23:144,32:R,33:T,34:j,36:W,38:AA,44:X,46:K,47:$,48:QA,49:hA,50:aA,51:iA,54:BA,55:rA,56:FA,57:gA,58:fA,59:DA,60:eA,61:GA,62:cA,63:JA,64:_,65:SA,66:jA,67:dA,68:kA,69:vA,70:Fe,71:at,72:fe,73:mt,74:be,75:ie,76:ye,77:Le,78:HA,79:WA,80:XA,81:ce,82:ZA,83:pe,84:zA}),t(Et,[2,28]),t(Et,[2,29]),t(sn,[2,46]),t(lt,[2,78],{85:93,45:145,86:$A,87:Ot,89:zt,90:Gt}),t(gn,[2,80]),{88:[1,146]},t(gn,[2,82]),t(gn,[2,83]),t(sn,[2,47]),t(sn,[2,48]),t(sn,[2,49]),t(sn,[2,50]),t(sn,[2,51]),t(sn,[2,52]),t(sn,[2,53]),t(sn,[2,54]),t(sn,[2,55]),t(sn,[2,56]),t(sn,[2,57]),t(sn,[2,58]),t(sn,[2,59]),t(sn,[2,60]),t(sn,[2,61]),t(sn,[2,62]),t(sn,[2,63]),t(sn,[2,64]),t(sn,[2,65]),t(sn,[2,67]),t(sn,[2,68]),t(sn,[2,69]),t(sn,[2,70]),t(sn,[2,71]),t(sn,[2,72]),t(sn,[2,73]),t(sn,[2,74]),t(sn,[2,75]),t(sn,[2,76]),t(sn,[2,77]),{41:147,52:[1,148]},{15:[1,149]},{43:[1,150]},t(Rt,[2,35]),t(Rt,[2,36]),t(Rt,[2,37]),t(Rt,[2,38]),t(Rt,[2,39]),t(Rt,[2,40]),t(Rt,[2,41]),{1:[2,16]},{1:[2,17]},{1:[2,18]},{1:[2,19]},{15:[1,151]},t(RA,[2,25]),t(Ft,[2,45]),t(lt,[2,79]),t(gn,[2,81]),t(sn,[2,31]),t(sn,[2,42]),t(ln,[2,32]),t(ln,[2,33],{15:[1,152]}),t(Ke,[2,10]),t(ln,[2,34])],defaultActions:{2:[2,1],3:[2,2],5:[2,8],6:[2,4],7:[2,5],8:[2,6],9:[2,7],16:[2,11],17:[2,3],27:[2,14],85:[2,13],86:[2,15],138:[2,16],139:[2,17],140:[2,18],141:[2,19]},parseError:function(wn,Xn){if(Xn.recoverable)this.trace(wn);else{var Wi=new Error(wn);throw Wi.hash=Xn,Wi}},parse:function(wn){var Xn=this,Wi=[0],mn=[],Ec=[null],An=[],Da=this.table,Tn="",ta=0,w0=0,yd=2,gQ=1,Nw=An.slice.call(arguments,1),Ao=Object.create(this.lexer),fc={yy:{}};for(var Ka in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ka)&&(fc.yy[Ka]=this.yy[Ka]);Ao.setInput(wn,fc.yy),fc.yy.lexer=Ao,fc.yy.parser=this,typeof Ao.yylloc>"u"&&(Ao.yylloc={});var uB=Ao.yylloc;An.push(uB);var Us=Ao.options&&Ao.options.ranges;typeof fc.yy.parseError=="function"?this.parseError=fc.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ts(){var Ei;return Ei=mn.pop()||Ao.lex()||gQ,typeof Ei!="number"&&(Ei instanceof Array&&(mn=Ei,Ei=mn.pop()),Ei=Xn.symbols_[Ei]||Ei),Ei}for(var Zr,rg,wB,oo,Ou={},zh,WB,nr,qe;;){if(rg=Wi[Wi.length-1],this.defaultActions[rg]?wB=this.defaultActions[rg]:((Zr===null||typeof Zr>"u")&&(Zr=Ts()),wB=Da[rg]&&Da[rg][Zr]),typeof wB>"u"||!wB.length||!wB[0]){var kn="";qe=[];for(zh in Da[rg])this.terminals_[zh]&&zh>yd&&qe.push("'"+this.terminals_[zh]+"'");Ao.showPosition?kn="Parse error on line "+(ta+1)+`:`+Ao.showPosition()+`Expecting `+qe.join(", ")+", got '"+(this.terminals_[Zr]||Zr)+"'":kn="Parse error on line "+(ta+1)+": Unexpected "+(Zr==gQ?"end of input":"'"+(this.terminals_[Zr]||Zr)+"'"),this.parseError(kn,{text:Ao.match,token:this.terminals_[Zr]||Zr,line:Ao.yylineno,loc:uB,expected:qe})}if(wB[0]instanceof Array&&wB.length>1)throw new Error("Parse Error: multiple actions possible at state: "+rg+", token: "+Zr);switch(wB[0]){case 1:Wi.push(Zr),Ec.push(Ao.yytext),An.push(Ao.yylloc),Wi.push(wB[1]),Zr=null,w0=Ao.yyleng,Tn=Ao.yytext,ta=Ao.yylineno,uB=Ao.yylloc;break;case 2:if(WB=this.productions_[wB[1]][1],Ou.$=Ec[Ec.length-WB],Ou._$={first_line:An[An.length-(WB||1)].first_line,last_line:An[An.length-1].last_line,first_column:An[An.length-(WB||1)].first_column,last_column:An[An.length-1].last_column},Us&&(Ou._$.range=[An[An.length-(WB||1)].range[0],An[An.length-1].range[1]]),oo=this.performAction.apply(Ou,[Tn,w0,ta,fc.yy,wB[1],Ec,An].concat(Nw)),typeof oo<"u")return oo;WB&&(Wi=Wi.slice(0,-1*WB*2),Ec=Ec.slice(0,-1*WB),An=An.slice(0,-1*WB)),Wi.push(this.productions_[wB[1]][0]),Ec.push(Ou.$),An.push(Ou._$),nr=Da[Wi[Wi.length-2]][Wi[Wi.length-1]],Wi.push(nr);break;case 3:return!0}}return!0}},Oi=function(){var mr={EOF:1,parseError:function(Xn,Wi){if(this.yy.parser)this.yy.parser.parseError(Xn,Wi);else throw new Error(Xn)},setInput:function(wn,Xn){return this.yy=Xn||this.yy||{},this._input=wn,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},input:function(){var wn=this._input[0];this.yytext+=wn,this.yyleng++,this.offset++,this.match+=wn,this.matched+=wn;var Xn=wn.match(/(?:\r\n?|\n).*/g);return Xn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),wn},unput:function(wn){var Xn=wn.length,Wi=wn.split(/(?:\r\n?|\n)/g);this._input=wn+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Xn),this.offset-=Xn;var mn=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),Wi.length-1&&(this.yylineno-=Wi.length-1);var Ec=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:Wi?(Wi.length===mn.length?this.yylloc.first_column:0)+mn[mn.length-Wi.length].length-Wi[0].length:this.yylloc.first_column-Xn},this.options.ranges&&(this.yylloc.range=[Ec[0],Ec[0]+this.yyleng-Xn]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(wn){this.unput(this.match.slice(wn))},pastInput:function(){var wn=this.matched.substr(0,this.matched.length-this.match.length);return(wn.length>20?"...":"")+wn.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var wn=this.match;return wn.length<20&&(wn+=this._input.substr(0,20-wn.length)),(wn.substr(0,20)+(wn.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var wn=this.pastInput(),Xn=new Array(wn.length+1).join("-");return wn+this.upcomingInput()+``+Xn+"^"},test_match:function(wn,Xn){var Wi,mn,Ec;if(this.options.backtrack_lexer&&(Ec={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&&(Ec.yylloc.range=this.yylloc.range.slice(0))),mn=wn[0].match(/(?:\r\n?|\n).*/g),mn&&(this.yylineno+=mn.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:mn?mn[mn.length-1].length-mn[mn.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+wn[0].length},this.yytext+=wn[0],this.match+=wn[0],this.matches=wn,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(wn[0].length),this.matched+=wn[0],Wi=this.performAction.call(this,this.yy,this,Xn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Wi)return Wi;if(this._backtrack){for(var An in Ec)this[An]=Ec[An];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var wn,Xn,Wi,mn;this._more||(this.yytext="",this.match="");for(var Ec=this._currentRules(),An=0;AnXn[0].length)){if(Xn=Wi,mn=An,this.options.backtrack_lexer){if(wn=this.test_match(Wi,Ec[An]),wn!==!1)return wn;if(this._backtrack){Xn=!1;continue}else return!1}else if(!this.options.flex)break}return Xn?(wn=this.test_match(Xn,Ec[mn]),wn!==!1?wn:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Xn=this.next();return Xn||this.lex()},begin:function(Xn){this.conditionStack.push(Xn)},popState:function(){var Xn=this.conditionStack.length-1;return Xn>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Xn){return Xn=this.conditionStack.length-1-Math.abs(Xn||0),Xn>=0?this.conditionStack[Xn]:"INITIAL"},pushState:function(Xn){this.begin(Xn)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Xn,Wi,mn,Ec){switch(mn){case 0:return this.begin("open_directive"),18;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 10;case 5:return this.begin("type_directive"),19;case 6:return this.popState(),this.begin("arg_directive"),16;case 7:return this.popState(),this.popState(),21;case 8:return 20;case 9:return 32;case 10:return 33;case 11:return this.begin("acc_title"),34;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),36;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:break;case 19:c;break;case 20:return 15;case 21:break;case 22:return 22;case 23:return 25;case 24:return 26;case 25:return 27;case 26:return 28;case 27:return this.begin("person_ext"),55;case 28:return this.begin("person"),54;case 29:return this.begin("system_ext_queue"),61;case 30:return this.begin("system_ext_db"),60;case 31:return this.begin("system_ext"),59;case 32:return this.begin("system_queue"),58;case 33:return this.begin("system_db"),57;case 34:return this.begin("system"),56;case 35:return this.begin("boundary"),47;case 36:return this.begin("enterprise_boundary"),44;case 37:return this.begin("system_boundary"),46;case 38:return this.begin("container_ext_queue"),67;case 39:return this.begin("container_ext_db"),66;case 40:return this.begin("container_ext"),65;case 41:return this.begin("container_queue"),64;case 42:return this.begin("container_db"),63;case 43:return this.begin("container"),62;case 44:return this.begin("container_boundary"),48;case 45:return this.begin("component_ext_queue"),73;case 46:return this.begin("component_ext_db"),72;case 47:return this.begin("component_ext"),71;case 48:return this.begin("component_queue"),70;case 49:return this.begin("component_db"),69;case 50:return this.begin("component"),68;case 51:return this.begin("node"),49;case 52:return this.begin("node"),49;case 53:return this.begin("node_l"),50;case 54:return this.begin("node_r"),51;case 55:return this.begin("rel"),74;case 56:return this.begin("birel"),75;case 57:return this.begin("rel_u"),76;case 58:return this.begin("rel_u"),76;case 59:return this.begin("rel_d"),77;case 60:return this.begin("rel_d"),77;case 61:return this.begin("rel_l"),78;case 62:return this.begin("rel_l"),78;case 63:return this.begin("rel_r"),79;case 64:return this.begin("rel_r"),79;case 65:return this.begin("rel_b"),80;case 66:return this.begin("rel_index"),81;case 67:return this.begin("update_el_style"),82;case 68:return this.begin("update_rel_style"),83;case 69:return this.begin("update_layout_config"),84;case 70:return"EOF_IN_STRUCT";case 71:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 72:this.begin("attribute");break;case 73:this.popState(),this.popState();break;case 74:return 90;case 75:break;case 76:return 90;case 77:this.begin("string");break;case 78:this.popState();break;case 79:return"STR";case 80:this.begin("string_kv");break;case 81:return this.begin("string_kv_key"),"STR_KEY";case 82:this.popState(),this.begin("string_kv_value");break;case 83:return"STR_VALUE";case 84:this.popState(),this.popState();break;case 85:return"STR";case 86:return"LBRACE";case 87:return"RBRACE";case 88:return"SPACE";case 89:return"EOL";case 90:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\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:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[7,8],inclusive:!1},type_directive:{rules:[6,7],inclusive:!1},open_directive:{rules:[5],inclusive:!1},string_kv_value:{rules:[83,84],inclusive:!1},string_kv_key:{rules:[82],inclusive:!1},string_kv:{rules:[81],inclusive:!1},string:{rules:[78,79],inclusive:!1},attribute:{rules:[73,74,75,76,77,80,85],inclusive:!1},update_layout_config:{rules:[70,71,72,73],inclusive:!1},update_rel_style:{rules:[70,71,72,73],inclusive:!1},update_el_style:{rules:[70,71,72,73],inclusive:!1},rel_b:{rules:[70,71,72,73],inclusive:!1},rel_r:{rules:[70,71,72,73],inclusive:!1},rel_l:{rules:[70,71,72,73],inclusive:!1},rel_d:{rules:[70,71,72,73],inclusive:!1},rel_u:{rules:[70,71,72,73],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[70,71,72,73],inclusive:!1},node_r:{rules:[70,71,72,73],inclusive:!1},node_l:{rules:[70,71,72,73],inclusive:!1},node:{rules:[70,71,72,73],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[70,71,72,73],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[70,71,72,73],inclusive:!1},component_ext:{rules:[70,71,72,73],inclusive:!1},component_queue:{rules:[70,71,72,73],inclusive:!1},component_db:{rules:[70,71,72,73],inclusive:!1},component:{rules:[70,71,72,73],inclusive:!1},container_boundary:{rules:[70,71,72,73],inclusive:!1},container_ext_queue:{rules:[70,71,72,73],inclusive:!1},container_ext_db:{rules:[70,71,72,73],inclusive:!1},container_ext:{rules:[70,71,72,73],inclusive:!1},container_queue:{rules:[70,71,72,73],inclusive:!1},container_db:{rules:[70,71,72,73],inclusive:!1},container:{rules:[70,71,72,73],inclusive:!1},birel:{rules:[70,71,72,73],inclusive:!1},system_boundary:{rules:[70,71,72,73],inclusive:!1},enterprise_boundary:{rules:[70,71,72,73],inclusive:!1},boundary:{rules:[70,71,72,73],inclusive:!1},system_ext_queue:{rules:[70,71,72,73],inclusive:!1},system_ext_db:{rules:[70,71,72,73],inclusive:!1},system_ext:{rules:[70,71,72,73],inclusive:!1},system_queue:{rules:[70,71,72,73],inclusive:!1},system_db:{rules:[70,71,72,73],inclusive:!1},system:{rules:[70,71,72,73],inclusive:!1},person_ext:{rules:[70,71,72,73],inclusive:!1},person:{rules:[70,71,72,73],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,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,65,66,67,68,69,86,87,88,89,90],inclusive:!0}}};return mr}();hi.lexer=Oi;function ki(){this.yy={}}return ki.prototype=hi,hi.Parser=ki,new ki}();VQA.parser=VQA;const QDt=VQA;let RM=[],Ab=[""],n0="global",UM="",r2=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],KX=[],yjA="",pjA=!1,XQA=4,ZQA=2;var mUe;const EDt=function(){return mUe},fDt=function(t){mUe=o0(t,Je())},IDt=function(t,i,s){zu.parseDirective(this,t,i,s)},CDt=function(t,i,s,a,h,Q,w,I,d){if(t==null||i===void 0||i===null||s===void 0||s===null||a===void 0||a===null)return;let D={};const N=KX.find(U=>U.from===i&&U.to===s);if(N?D=N:KX.push(D),D.type=t,D.from=i,D.to=s,D.label={text:a},h==null)D.techn={text:""};else if(typeof h=="object"){let[U,R]=Object.entries(h)[0];D[U]={text:R}}else D.techn={text:h};if(Q==null)D.descr={text:""};else if(typeof Q=="object"){let[U,R]=Object.entries(Q)[0];D[U]={text:R}}else D.descr={text:Q};if(typeof w=="object"){let[U,R]=Object.entries(w)[0];D[U]=R}else D.sprite=w;if(typeof I=="object"){let[U,R]=Object.entries(I)[0];D[U]=R}else D.tags=I;if(typeof d=="object"){let[U,R]=Object.entries(d)[0];D[U]=R}else D.link=d;D.wrap=Qb()},dDt=function(t,i,s,a,h,Q,w){if(i===null||s===null)return;let I={};const d=RM.find(D=>D.alias===i);if(d&&i===d.alias?I=d:(I.alias=i,RM.push(I)),s==null?I.label={text:""}:I.label={text:s},a==null)I.descr={text:""};else if(typeof a=="object"){let[D,N]=Object.entries(a)[0];I[D]={text:N}}else I.descr={text:a};if(typeof h=="object"){let[D,N]=Object.entries(h)[0];I[D]=N}else I.sprite=h;if(typeof Q=="object"){let[D,N]=Object.entries(Q)[0];I[D]=N}else I.tags=Q;if(typeof w=="object"){let[D,N]=Object.entries(w)[0];I[D]=N}else I.link=w;I.typeC4Shape={text:t},I.parentBoundary=n0,I.wrap=Qb()},FDt=function(t,i,s,a,h,Q,w,I){if(i===null||s===null)return;let d={};const D=RM.find(N=>N.alias===i);if(D&&i===D.alias?d=D:(d.alias=i,RM.push(d)),s==null?d.label={text:""}:d.label={text:s},a==null)d.techn={text:""};else if(typeof a=="object"){let[N,U]=Object.entries(a)[0];d[N]={text:U}}else d.techn={text:a};if(h==null)d.descr={text:""};else if(typeof h=="object"){let[N,U]=Object.entries(h)[0];d[N]={text:U}}else d.descr={text:h};if(typeof Q=="object"){let[N,U]=Object.entries(Q)[0];d[N]=U}else d.sprite=Q;if(typeof w=="object"){let[N,U]=Object.entries(w)[0];d[N]=U}else d.tags=w;if(typeof I=="object"){let[N,U]=Object.entries(I)[0];d[N]=U}else d.link=I;d.wrap=Qb(),d.typeC4Shape={text:t},d.parentBoundary=n0},MDt=function(t,i,s,a,h,Q,w,I){if(i===null||s===null)return;let d={};const D=RM.find(N=>N.alias===i);if(D&&i===D.alias?d=D:(d.alias=i,RM.push(d)),s==null?d.label={text:""}:d.label={text:s},a==null)d.techn={text:""};else if(typeof a=="object"){let[N,U]=Object.entries(a)[0];d[N]={text:U}}else d.techn={text:a};if(h==null)d.descr={text:""};else if(typeof h=="object"){let[N,U]=Object.entries(h)[0];d[N]={text:U}}else d.descr={text:h};if(typeof Q=="object"){let[N,U]=Object.entries(Q)[0];d[N]=U}else d.sprite=Q;if(typeof w=="object"){let[N,U]=Object.entries(w)[0];d[N]=U}else d.tags=w;if(typeof I=="object"){let[N,U]=Object.entries(I)[0];d[N]=U}else d.link=I;d.wrap=Qb(),d.typeC4Shape={text:t},d.parentBoundary=n0},YDt=function(t,i,s,a,h){if(t===null||i===null)return;let Q={};const w=r2.find(I=>I.alias===t);if(w&&t===w.alias?Q=w:(Q.alias=t,r2.push(Q)),i==null?Q.label={text:""}:Q.label={text:i},s==null)Q.type={text:"system"};else if(typeof s=="object"){let[I,d]=Object.entries(s)[0];Q[I]={text:d}}else Q.type={text:s};if(typeof a=="object"){let[I,d]=Object.entries(a)[0];Q[I]=d}else Q.tags=a;if(typeof h=="object"){let[I,d]=Object.entries(h)[0];Q[I]=d}else Q.link=h;Q.parentBoundary=n0,Q.wrap=Qb(),UM=n0,n0=t,Ab.push(UM)},DDt=function(t,i,s,a,h){if(t===null||i===null)return;let Q={};const w=r2.find(I=>I.alias===t);if(w&&t===w.alias?Q=w:(Q.alias=t,r2.push(Q)),i==null?Q.label={text:""}:Q.label={text:i},s==null)Q.type={text:"container"};else if(typeof s=="object"){let[I,d]=Object.entries(s)[0];Q[I]={text:d}}else Q.type={text:s};if(typeof a=="object"){let[I,d]=Object.entries(a)[0];Q[I]=d}else Q.tags=a;if(typeof h=="object"){let[I,d]=Object.entries(h)[0];Q[I]=d}else Q.link=h;Q.parentBoundary=n0,Q.wrap=Qb(),UM=n0,n0=t,Ab.push(UM)},yDt=function(t,i,s,a,h,Q,w,I){if(i===null||s===null)return;let d={};const D=r2.find(N=>N.alias===i);if(D&&i===D.alias?d=D:(d.alias=i,r2.push(d)),s==null?d.label={text:""}:d.label={text:s},a==null)d.type={text:"node"};else if(typeof a=="object"){let[N,U]=Object.entries(a)[0];d[N]={text:U}}else d.type={text:a};if(h==null)d.descr={text:""};else if(typeof h=="object"){let[N,U]=Object.entries(h)[0];d[N]={text:U}}else d.descr={text:h};if(typeof w=="object"){let[N,U]=Object.entries(w)[0];d[N]=U}else d.tags=w;if(typeof I=="object"){let[N,U]=Object.entries(I)[0];d[N]=U}else d.link=I;d.nodeType=t,d.parentBoundary=n0,d.wrap=Qb(),UM=n0,n0=i,Ab.push(UM)},pDt=function(){n0=UM,Ab.pop(),UM=Ab.pop(),Ab.push(UM)},NDt=function(t,i,s,a,h,Q,w,I,d,D,N){let U=RM.find(R=>R.alias===i);if(!(U===void 0&&(U=r2.find(R=>R.alias===i),U===void 0))){if(s!=null)if(typeof s=="object"){let[R,T]=Object.entries(s)[0];U[R]=T}else U.bgColor=s;if(a!=null)if(typeof a=="object"){let[R,T]=Object.entries(a)[0];U[R]=T}else U.fontColor=a;if(h!=null)if(typeof h=="object"){let[R,T]=Object.entries(h)[0];U[R]=T}else U.borderColor=h;if(Q!=null)if(typeof Q=="object"){let[R,T]=Object.entries(Q)[0];U[R]=T}else U.shadowing=Q;if(w!=null)if(typeof w=="object"){let[R,T]=Object.entries(w)[0];U[R]=T}else U.shape=w;if(I!=null)if(typeof I=="object"){let[R,T]=Object.entries(I)[0];U[R]=T}else U.sprite=I;if(d!=null)if(typeof d=="object"){let[R,T]=Object.entries(d)[0];U[R]=T}else U.techn=d;if(D!=null)if(typeof D=="object"){let[R,T]=Object.entries(D)[0];U[R]=T}else U.legendText=D;if(N!=null)if(typeof N=="object"){let[R,T]=Object.entries(N)[0];U[R]=T}else U.legendSprite=N}},mDt=function(t,i,s,a,h,Q,w){const I=KX.find(d=>d.from===i&&d.to===s);if(I!==void 0){if(a!=null)if(typeof a=="object"){let[d,D]=Object.entries(a)[0];I[d]=D}else I.textColor=a;if(h!=null)if(typeof h=="object"){let[d,D]=Object.entries(h)[0];I[d]=D}else I.lineColor=h;if(Q!=null)if(typeof Q=="object"){let[d,D]=Object.entries(Q)[0];I[d]=parseInt(D)}else I.offsetX=parseInt(Q);if(w!=null)if(typeof w=="object"){let[d,D]=Object.entries(w)[0];I[d]=parseInt(D)}else I.offsetY=parseInt(w)}},UDt=function(t,i,s){let a=XQA,h=ZQA;if(typeof i=="object"){const Q=Object.values(i)[0];a=parseInt(Q)}else a=parseInt(i);if(typeof s=="object"){const Q=Object.values(s)[0];h=parseInt(Q)}else h=parseInt(s);a>=1&&(XQA=a),h>=1&&(ZQA=h)},bDt=function(){return XQA},HDt=function(){return ZQA},xDt=function(){return n0},GDt=function(){return UM},UUe=function(t){return t==null?RM:RM.filter(i=>i.parentBoundary===t)},JDt=function(t){return RM.find(i=>i.alias===t)},kDt=function(t){return Object.keys(UUe(t))},RDt=function(t){return t==null?r2:r2.filter(i=>i.parentBoundary===t)},TDt=function(){return KX},vDt=function(){return yjA},jDt=function(t){pjA=t},Qb=function(){return pjA},SDt=function(){RM=[],r2=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],UM="",n0="global",Ab=[""],KX=[],Ab=[""],yjA="",pjA=!1,XQA=4,ZQA=2},LDt={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},zDt={FILLED:0,OPEN:1},PDt={LEFTOF:0,RIGHTOF:1,OVER:2},ODt=function(t){yjA=o0(t,Je())},bUe={addPersonOrSystem:dDt,addPersonOrSystemBoundary:YDt,addContainer:FDt,addContainerBoundary:DDt,addComponent:MDt,addDeploymentNode:yDt,popBoundaryParseStack:pDt,addRel:CDt,updateElStyle:NDt,updateRelStyle:mDt,updateLayoutConfig:UDt,autoWrap:Qb,setWrap:jDt,getC4ShapeArray:UUe,getC4Shape:JDt,getC4ShapeKeys:kDt,getBoundarys:RDt,getCurrentBoundaryParse:xDt,getParentBoundaryParse:GDt,getRels:TDt,getTitle:vDt,getC4Type:EDt,getC4ShapeInRow:bDt,getC4BoundaryInRow:HDt,setAccTitle:A1,getAccTitle:h0,getAccDescription:u0,setAccDescription:l0,parseDirective:IDt,getConfig:()=>Je().c4,clear:SDt,LINETYPE:LDt,ARROWTYPE:zDt,PLACEMENT:PDt,setTitle:ODt,setC4Type:fDt},NjA=function(t,i){return s0A(t,i)},HUe=function(t,i,s,a,h,Q){const w=t.append("image");w.attr("width",i),w.attr("height",s),w.attr("x",a),w.attr("y",h);let I=Q.startsWith("data:image/png;base64")?Q:ub.sanitizeUrl(Q);w.attr("xlink:href",I)},WDt=(t,i,s)=>{const a=t.append("g");let h=0;for(let Q of i){let w=Q.textColor?Q.textColor:"#444444",I=Q.lineColor?Q.lineColor:"#444444",d=Q.offsetX?parseInt(Q.offsetX):0,D=Q.offsetY?parseInt(Q.offsetY):0,N="";if(h===0){let R=a.append("line");R.attr("x1",Q.startPoint.x),R.attr("y1",Q.startPoint.y),R.attr("x2",Q.endPoint.x),R.attr("y2",Q.endPoint.y),R.attr("stroke-width","1"),R.attr("stroke",I),R.style("fill","none"),Q.type!=="rel_b"&&R.attr("marker-end","url("+N+"#arrowhead)"),(Q.type==="birel"||Q.type==="rel_b")&&R.attr("marker-start","url("+N+"#arrowend)"),h=-1}else{let R=a.append("path");R.attr("fill","none").attr("stroke-width","1").attr("stroke",I).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",Q.startPoint.x).replaceAll("starty",Q.startPoint.y).replaceAll("controlx",Q.startPoint.x+(Q.endPoint.x-Q.startPoint.x)/2-(Q.endPoint.x-Q.startPoint.x)/4).replaceAll("controly",Q.startPoint.y+(Q.endPoint.y-Q.startPoint.y)/2).replaceAll("stopx",Q.endPoint.x).replaceAll("stopy",Q.endPoint.y)),Q.type!=="rel_b"&&R.attr("marker-end","url("+N+"#arrowhead)"),(Q.type==="birel"||Q.type==="rel_b")&&R.attr("marker-start","url("+N+"#arrowend)")}let U=s.messageFont();jp(s)(Q.label.text,a,Math.min(Q.startPoint.x,Q.endPoint.x)+Math.abs(Q.endPoint.x-Q.startPoint.x)/2+d,Math.min(Q.startPoint.y,Q.endPoint.y)+Math.abs(Q.endPoint.y-Q.startPoint.y)/2+D,Q.label.width,Q.label.height,{fill:w},U),Q.techn&&Q.techn.text!==""&&(U=s.messageFont(),jp(s)("["+Q.techn.text+"]",a,Math.min(Q.startPoint.x,Q.endPoint.x)+Math.abs(Q.endPoint.x-Q.startPoint.x)/2+d,Math.min(Q.startPoint.y,Q.endPoint.y)+Math.abs(Q.endPoint.y-Q.startPoint.y)/2+s.messageFontSize+5+D,Math.max(Q.label.width,Q.techn.width),Q.techn.height,{fill:w,"font-style":"italic"},U))}},KDt=function(t,i,s){const a=t.append("g");let h=i.bgColor?i.bgColor:"none",Q=i.borderColor?i.borderColor:"#444444",w=i.fontColor?i.fontColor:"black",I={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};i.nodeType&&(I={"stroke-width":1});let d={x:i.x,y:i.y,fill:h,stroke:Q,width:i.width,height:i.height,rx:2.5,ry:2.5,attrs:I};NjA(a,d);let D=s.boundaryFont();D.fontWeight="bold",D.fontSize=D.fontSize+2,D.fontColor=w,jp(s)(i.label.text,a,i.x,i.y+i.label.Y,i.width,i.height,{fill:"#444444"},D),i.type&&i.type.text!==""&&(D=s.boundaryFont(),D.fontColor=w,jp(s)(i.type.text,a,i.x,i.y+i.type.Y,i.width,i.height,{fill:"#444444"},D)),i.descr&&i.descr.text!==""&&(D=s.boundaryFont(),D.fontSize=D.fontSize-2,D.fontColor=w,jp(s)(i.descr.text,a,i.x,i.y+i.descr.Y,i.width,i.height,{fill:"#444444"},D))},VDt=function(t,i,s){var a;let h=i.bgColor?i.bgColor:s[i.typeC4Shape.text+"_bg_color"],Q=i.borderColor?i.borderColor:s[i.typeC4Shape.text+"_border_color"],w=i.fontColor?i.fontColor:"#FFFFFF",I="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(i.typeC4Shape.text){case"person":I="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":I="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}const d=t.append("g");d.attr("class","person-man");const D=fk();switch(i.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":D.x=i.x,D.y=i.y,D.fill=h,D.width=i.width,D.height=i.height,D.stroke=Q,D.rx=2.5,D.ry=2.5,D.attrs={"stroke-width":.5},NjA(d,D);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":d.append("path").attr("fill",h).attr("stroke-width","0.5").attr("stroke",Q).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",i.x).replaceAll("starty",i.y).replaceAll("half",i.width/2).replaceAll("height",i.height)),d.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",Q).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",i.x).replaceAll("starty",i.y).replaceAll("half",i.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":d.append("path").attr("fill",h).attr("stroke-width","0.5").attr("stroke",Q).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",i.x).replaceAll("starty",i.y).replaceAll("width",i.width).replaceAll("half",i.height/2)),d.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",Q).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",i.x+i.width).replaceAll("starty",i.y).replaceAll("half",i.height/2));break}let N=n2t(s,i.typeC4Shape.text);switch(d.append("text").attr("fill",w).attr("font-family",N.fontFamily).attr("font-size",N.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",i.typeC4Shape.width).attr("x",i.x+i.width/2-i.typeC4Shape.width/2).attr("y",i.y+i.typeC4Shape.Y).text("<<"+i.typeC4Shape.text+">>"),i.typeC4Shape.text){case"person":case"external_person":HUe(d,48,48,i.x+i.width/2-24,i.y+i.image.Y,I);break}let U=s[i.typeC4Shape.text+"Font"]();return U.fontWeight="bold",U.fontSize=U.fontSize+2,U.fontColor=w,jp(s)(i.label.text,d,i.x,i.y+i.label.Y,i.width,i.height,{fill:w},U),U=s[i.typeC4Shape.text+"Font"](),U.fontColor=w,i.techn&&((a=i.techn)==null?void 0:a.text)!==""?jp(s)(i.techn.text,d,i.x,i.y+i.techn.Y,i.width,i.height,{fill:w,"font-style":"italic"},U):i.type&&i.type.text!==""&&jp(s)(i.type.text,d,i.x,i.y+i.type.Y,i.width,i.height,{fill:w,"font-style":"italic"},U),i.descr&&i.descr.text!==""&&(U=s.personFont(),U.fontColor=w,jp(s)(i.descr.text,d,i.x,i.y+i.descr.Y,i.width,i.height,{fill:w},U)),i.height},XDt=function(t){t.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")},ZDt=function(t){t.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")},qDt=function(t){t.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")},_Dt=function(t){t.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")},$Dt=function(t){t.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")},A2t=function(t){t.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")},e2t=function(t){t.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)},t2t=function(t){const s=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);s.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"),s.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")},n2t=(t,i)=>({fontFamily:t[i+"FontFamily"],fontSize:t[i+"FontSize"],fontWeight:t[i+"FontWeight"]}),jp=function(){function t(h,Q,w,I,d,D,N){const U=Q.append("text").attr("x",w+d/2).attr("y",I+D/2+5).style("text-anchor","middle").text(h);a(U,N)}function i(h,Q,w,I,d,D,N,U){const{fontSize:R,fontFamily:T,fontWeight:j}=U,W=h.split(Yi.lineBreakRegex);for(let AA=0;AA =this.data.widthLimit||a>=this.data.widthLimit||this.nextData.cnt>xUe)&&(s=this.nextData.startx+i.margin+Sr.nextLinePaddingX,h=this.nextData.stopy+i.margin*2,this.nextData.stopx=a=s+i.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=Q=h+i.height,this.nextData.cnt=1),i.x=s,i.y=h,this.updateVal(this.data,"startx",s,Math.min),this.updateVal(this.data,"starty",h,Math.min),this.updateVal(this.data,"stopx",a,Math.max),this.updateVal(this.data,"stopy",Q,Math.max),this.updateVal(this.nextData,"startx",s,Math.min),this.updateVal(this.nextData,"starty",h,Math.min),this.updateVal(this.nextData,"stopx",a,Math.max),this.updateVal(this.nextData,"stopy",Q,Math.max)}init(i){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},A8A(i.db.getConfig())}bumpLastMargin(i){this.data.stopx+=i,this.data.stopy+=i}}const A8A=function(t){Dw(Sr,t),t.fontFamily&&(Sr.personFontFamily=Sr.systemFontFamily=Sr.messageFontFamily=t.fontFamily),t.fontSize&&(Sr.personFontSize=Sr.systemFontSize=Sr.messageFontSize=t.fontSize),t.fontWeight&&(Sr.personFontWeight=Sr.systemFontWeight=Sr.messageFontWeight=t.fontWeight)},zV=(t,i)=>({fontFamily:t[i+"FontFamily"],fontSize:t[i+"FontSize"],fontWeight:t[i+"FontWeight"]}),AQA=t=>({fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight}),i2t=t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight});function yM(t,i,s,a,h){if(!i[t].width)if(s)i[t].text=Zme(i[t].text,h,a),i[t].textLines=i[t].text.split(Yi.lineBreakRegex).length,i[t].width=h,i[t].height=qTA(i[t].text,a);else{let Q=i[t].text.split(Yi.lineBreakRegex);i[t].textLines=Q.length;let w=0;i[t].height=0,i[t].width=0;for(const I of Q)i[t].width=Math.max(A2(I,a),i[t].width),w=qTA(I,a),i[t].height=i[t].height+w}}const JUe=function(t,i,s){i.x=s.data.startx,i.y=s.data.starty,i.width=s.data.stopx-s.data.startx,i.height=s.data.stopy-s.data.starty,i.label.y=Sr.c4ShapeMargin-35;let a=i.wrap&&Sr.wrap,h=AQA(Sr);h.fontSize=h.fontSize+2,h.fontWeight="bold";let Q=A2(i.label.text,h);yM("label",i,a,h,Q),LD.drawBoundary(t,i,Sr)},kUe=function(t,i,s,a){let h=0;for(const Q of a){h=0;const w=s[Q];let I=zV(Sr,w.typeC4Shape.text);switch(I.fontSize=I.fontSize-2,w.typeC4Shape.width=A2("«"+w.typeC4Shape.text+"»",I),w.typeC4Shape.height=I.fontSize+2,w.typeC4Shape.Y=Sr.c4ShapePadding,h=w.typeC4Shape.Y+w.typeC4Shape.height-4,w.image={width:0,height:0,Y:0},w.typeC4Shape.text){case"person":case"external_person":w.image.width=48,w.image.height=48,w.image.Y=h,h=w.image.Y+w.image.height;break}w.sprite&&(w.image.width=48,w.image.height=48,w.image.Y=h,h=w.image.Y+w.image.height);let d=w.wrap&&Sr.wrap,D=Sr.width-Sr.c4ShapePadding*2,N=zV(Sr,w.typeC4Shape.text);if(N.fontSize=N.fontSize+2,N.fontWeight="bold",yM("label",w,d,N,D),w.label.Y=h+8,h=w.label.Y+w.label.height,w.type&&w.type.text!==""){w.type.text="["+w.type.text+"]";let T=zV(Sr,w.typeC4Shape.text);yM("type",w,d,T,D),w.type.Y=h+5,h=w.type.Y+w.type.height}else if(w.techn&&w.techn.text!==""){w.techn.text="["+w.techn.text+"]";let T=zV(Sr,w.techn.text);yM("techn",w,d,T,D),w.techn.Y=h+5,h=w.techn.Y+w.techn.height}let U=h,R=w.label.width;if(w.descr&&w.descr.text!==""){let T=zV(Sr,w.typeC4Shape.text);yM("descr",w,d,T,D),w.descr.Y=h+20,h=w.descr.Y+w.descr.height,R=Math.max(w.label.width,w.descr.width),U=h-w.descr.textLines*5}R=R+Sr.c4ShapePadding,w.width=Math.max(w.width||Sr.width,R,Sr.width),w.height=Math.max(w.height||Sr.height,U,Sr.height),w.margin=w.margin||Sr.c4ShapeMargin,t.insert(w),LD.drawC4Shape(i,w,Sr)}t.bumpLastMargin(Sr.c4ShapeMargin)};let ad=class{constructor(i,s){this.x=i,this.y=s}},jDe=function(t,i){let s=t.x,a=t.y,h=i.x,Q=i.y,w=s+t.width/2,I=a+t.height/2,d=Math.abs(s-h),D=Math.abs(a-Q),N=D/d,U=t.height/t.width,R=null;return a==Q&&s h?R=new ad(s,I):s==h&&a Q&&(R=new ad(w,a)),s>h&&a=N?R=new ad(s,I+N*t.width/2):R=new ad(w-d/D*t.height/2,a+t.height):s=N?R=new ad(s+t.width,I+N*t.width/2):R=new ad(w+d/D*t.height/2,a+t.height):s Q?U>=N?R=new ad(s+t.width,I-N*t.width/2):R=new ad(w+t.height/2*d/D,a):s>h&&a>Q&&(U>=N?R=new ad(s,I-t.width/2*N):R=new ad(w-t.height/2*d/D,a)),R},r2t=function(t,i){let s={x:0,y:0};s.x=i.x+i.width/2,s.y=i.y+i.height/2;let a=jDe(t,s);s.x=t.x+t.width/2,s.y=t.y+t.height/2;let h=jDe(i,s);return{startPoint:a,endPoint:h}};const c2t=function(t,i,s,a){let h=0;for(let Q of i){h=h+1;let w=Q.wrap&&Sr.wrap,I=i2t(Sr);a.db.getC4Type()==="C4Dynamic"&&(Q.label.text=h+": "+Q.label.text);let D=A2(Q.label.text,I);yM("label",Q,w,I,D),Q.techn&&Q.techn.text!==""&&(D=A2(Q.techn.text,I),yM("techn",Q,w,I,D)),Q.descr&&Q.descr.text!==""&&(D=A2(Q.descr.text,I),yM("descr",Q,w,I,D));let N=s(Q.from),U=s(Q.to),R=r2t(N,U);Q.startPoint=R.startPoint,Q.endPoint=R.endPoint}LD.drawRels(t,i,Sr)};function RUe(t,i,s,a,h){let Q=new GUe(h);Q.data.widthLimit=s.data.widthLimit/Math.min($TA,a.length);for(let[w,I]of a.entries()){let d=0;I.image={width:0,height:0,Y:0},I.sprite&&(I.image.width=48,I.image.height=48,I.image.Y=d,d=I.image.Y+I.image.height);let D=I.wrap&&Sr.wrap,N=AQA(Sr);if(N.fontSize=N.fontSize+2,N.fontWeight="bold",yM("label",I,D,N,Q.data.widthLimit),I.label.Y=d+8,d=I.label.Y+I.label.height,I.type&&I.type.text!==""){I.type.text="["+I.type.text+"]";let j=AQA(Sr);yM("type",I,D,j,Q.data.widthLimit),I.type.Y=d+5,d=I.type.Y+I.type.height}if(I.descr&&I.descr.text!==""){let j=AQA(Sr);j.fontSize=j.fontSize-2,yM("descr",I,D,j,Q.data.widthLimit),I.descr.Y=d+20,d=I.descr.Y+I.descr.height}if(w==0||w%$TA===0){let j=s.data.startx+Sr.diagramMarginX,W=s.data.stopy+Sr.diagramMarginY+d;Q.setData(j,j,W,W)}else{let j=Q.data.stopx!==Q.data.startx?Q.data.stopx+Sr.diagramMarginX:Q.data.startx,W=Q.data.starty;Q.setData(j,j,W,W)}Q.name=I.alias;let U=h.db.getC4ShapeArray(I.alias),R=h.db.getC4ShapeKeys(I.alias);R.length>0&&kUe(Q,t,U,R),i=I.alias;let T=h.db.getBoundarys(i);T.length>0&&RUe(t,i,Q,T,h),I.alias!=="global"&&JUe(t,I,Q),s.data.stopy=Math.max(Q.data.stopy+Sr.c4ShapeMargin,s.data.stopy),s.data.stopx=Math.max(Q.data.stopx+Sr.c4ShapeMargin,s.data.stopx),qQA=Math.max(qQA,s.data.stopx),_QA=Math.max(_QA,s.data.stopy)}}const s2t=function(t,i,s,a){Sr=Je().c4;const h=Je().securityLevel;let Q;h==="sandbox"&&(Q=Nn("#i"+i));const w=Nn(h==="sandbox"?Q.nodes()[0].contentDocument.body:"body");let I=a.db;a.db.setWrap(Sr.wrap),xUe=I.getC4ShapeInRow(),$TA=I.getC4BoundaryInRow(),_A.debug(`C:${JSON.stringify(Sr,null,2)}`);const d=h==="sandbox"?w.select(`[id="${i}"]`):Nn(`[id="${i}"]`);LD.insertComputerIcon(d),LD.insertDatabaseIcon(d),LD.insertClockIcon(d);let D=new GUe(a);D.setData(Sr.diagramMarginX,Sr.diagramMarginX,Sr.diagramMarginY,Sr.diagramMarginY),D.data.widthLimit=screen.availWidth,qQA=Sr.diagramMarginX,_QA=Sr.diagramMarginY;const N=a.db.getTitle();let U=a.db.getBoundarys("");RUe(d,"",D,U,a),LD.insertArrowHead(d),LD.insertArrowEnd(d),LD.insertArrowCrossHead(d),LD.insertArrowFilledHead(d),c2t(d,a.db.getRels(),a.db.getC4Shape,a),D.data.stopx=qQA,D.data.stopy=_QA;const R=D.data;let j=R.stopy-R.starty+2*Sr.diagramMarginY;const AA=R.stopx-R.startx+2*Sr.diagramMarginX;N&&d.append("text").text(N).attr("x",(R.stopx-R.startx)/2-4*Sr.diagramMarginX).attr("y",R.starty+Sr.diagramMarginY),B0(d,j,AA,Sr.useMaxWidth);const X=N?60:0;d.attr("viewBox",R.startx-Sr.diagramMarginX+" -"+(Sr.diagramMarginY+X)+" "+AA+" "+(j+X)),_A.debug("models:",R)},SDe={drawPersonOrSystemArray:kUe,drawBoundary:JUe,setConf:A8A,draw:s2t},o2t=t=>`.person { stroke: ${t.personBorder}; fill: ${t.personBkg}; }`,a2t=o2t,B2t={parser:QDt,db:bUe,renderer:SDe,styles:a2t,init:t=>{SDe.setConf(t.c4)}},g2t=Object.freeze(Object.defineProperty({__proto__:null,diagram:B2t},Symbol.toStringTag,{value:"Module"}));var e8A=function(){var t=function(WE,Fr,Pr,vc){for(Pr=Pr||{},vc=WE.length;vc--;Pr[WE[vc]]=Fr);return Pr},i=[1,9],s=[1,7],a=[1,6],h=[1,8],Q=[1,20,21,22,23,38,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],w=[2,10],I=[1,20],d=[1,21],D=[1,22],N=[1,23],U=[1,30],R=[1,32],T=[1,33],j=[1,34],W=[1,56],AA=[1,55],X=[1,36],K=[1,37],$=[1,38],QA=[1,39],hA=[1,40],aA=[1,51],iA=[1,53],BA=[1,49],rA=[1,54],FA=[1,50],gA=[1,57],fA=[1,52],DA=[1,58],eA=[1,59],GA=[1,41],cA=[1,42],JA=[1,43],_=[1,44],SA=[1,62],jA=[1,67],dA=[1,20,21,22,23,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],kA=[1,71],vA=[1,70],Fe=[1,72],at=[20,21,23,84,86],fe=[1,98],mt=[1,103],be=[1,102],ie=[1,99],ye=[1,95],Le=[1,101],HA=[1,97],WA=[1,104],XA=[1,100],ce=[1,105],ZA=[1,96],pe=[20,21,22,23,84,86],zA=[20,21,22,23,55,84,86],Ft=[20,21,22,23,40,53,55,57,59,61,63,65,67,69,72,74,76,77,79,84,86,97,110,113,114,117,119,122,123,124],RA=[20,21,23],Et=[20,21,23,53,69,84,86,97,110,113,114,117,119,122,123,124],$A=[1,12,20,21,22,23,24,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],Ot=[53,69,97,110,113,114,117,119,122,123,124],zt=[1,134],Gt=[1,133],sn=[1,141],Ke=[1,155],lt=[1,156],gn=[1,157],Rt=[1,158],ln=[1,143],hi=[1,145],Oi=[1,149],ki=[1,150],mr=[1,151],wn=[1,152],Xn=[1,153],Wi=[1,154],mn=[1,159],Ec=[1,160],An=[1,139],Da=[1,140],Tn=[1,147],ta=[1,142],w0=[1,146],yd=[1,144],gQ=[20,21,22,23,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],Nw=[1,162],Ao=[20,21,22,23,26,53,69,97,113,114,117,119,122,123,124],fc=[1,182],Ka=[1,178],uB=[1,179],Us=[1,183],Ts=[1,180],Zr=[1,181],rg=[12,21,22,24],wB=[86,124,127],oo=[20,21,22,23,24,26,38,40,43,53,69,84,92,93,94,95,96,97,98,113,117,119,122,123,124],Ou=[22,114],zh=[42,58,60,62,64,66,71,73,75,76,78,80,124,125,126],WB=[1,250],nr=[1,248],qe=[1,252],kn=[1,246],Ei=[1,247],Is=[1,249],na=[1,251],HB=[1,253],Eo=[1,270],Yl=[20,21,23,114],zg=[20,21,22,23,69,92,113,114,117,118,119,120],pd={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,openDirective:6,typeDirective:7,closeDirective:8,separator:9,":":10,argDirective:11,open_directive:12,type_directive:13,arg_directive:14,close_directive:15,graphConfig:16,document:17,line:18,statement:19,SEMI:20,NEWLINE:21,SPACE:22,EOF:23,GRAPH:24,NODIR:25,DIR:26,FirstStmtSeperator:27,ending:28,endToken:29,spaceList:30,spaceListNewline:31,verticeStatement:32,styleStatement:33,linkStyleStatement:34,classDefStatement:35,classStatement:36,clickStatement:37,subgraph:38,textNoTags:39,SQS:40,text:41,SQE:42,end:43,direction:44,acc_title:45,acc_title_value:46,acc_descr:47,acc_descr_value:48,acc_descr_multiline_value:49,link:50,node:51,styledVertex:52,AMP:53,vertex:54,STYLE_SEPARATOR:55,idString:56,DOUBLECIRCLESTART:57,DOUBLECIRCLEEND:58,PS:59,PE:60,"(-":61,"-)":62,STADIUMSTART:63,STADIUMEND:64,SUBROUTINESTART:65,SUBROUTINEEND:66,VERTEX_WITH_PROPS_START:67,"NODE_STRING[field]":68,COLON:69,"NODE_STRING[value]":70,PIPE:71,CYLINDERSTART:72,CYLINDEREND:73,DIAMOND_START:74,DIAMOND_STOP:75,TAGEND:76,TRAPSTART:77,TRAPEND:78,INVTRAPSTART:79,INVTRAPEND:80,linkStatement:81,arrowText:82,TESTSTR:83,START_LINK:84,edgeText:85,LINK:86,edgeTextToken:87,STR:88,MD_STR:89,textToken:90,keywords:91,STYLE:92,LINKSTYLE:93,CLASSDEF:94,CLASS:95,CLICK:96,DOWN:97,UP:98,textNoTagsToken:99,stylesOpt:100,"idString[vertex]":101,"idString[class]":102,CALLBACKNAME:103,CALLBACKARGS:104,HREF:105,LINK_TARGET:106,"STR[link]":107,"STR[tooltip]":108,alphaNum:109,DEFAULT:110,numList:111,INTERPOLATE:112,NUM:113,COMMA:114,style:115,styleComponent:116,NODE_STRING:117,UNIT:118,BRKT:119,PCT:120,idStringToken:121,MINUS:122,MULT:123,UNICODE_TEXT:124,TEXT:125,TAGSTART:126,EDGE_TEXT:127,alphaNumToken:128,direction_tb:129,direction_bt:130,direction_rl:131,direction_lr:132,$accept:0,$end:1},terminals_:{2:"error",10:":",12:"open_directive",13:"type_directive",14:"arg_directive",15:"close_directive",20:"SEMI",21:"NEWLINE",22:"SPACE",23:"EOF",24:"GRAPH",25:"NODIR",26:"DIR",38:"subgraph",40:"SQS",42:"SQE",43:"end",45:"acc_title",46:"acc_title_value",47:"acc_descr",48:"acc_descr_value",49:"acc_descr_multiline_value",53:"AMP",55:"STYLE_SEPARATOR",57:"DOUBLECIRCLESTART",58:"DOUBLECIRCLEEND",59:"PS",60:"PE",61:"(-",62:"-)",63:"STADIUMSTART",64:"STADIUMEND",65:"SUBROUTINESTART",66:"SUBROUTINEEND",67:"VERTEX_WITH_PROPS_START",68:"NODE_STRING[field]",69:"COLON",70:"NODE_STRING[value]",71:"PIPE",72:"CYLINDERSTART",73:"CYLINDEREND",74:"DIAMOND_START",75:"DIAMOND_STOP",76:"TAGEND",77:"TRAPSTART",78:"TRAPEND",79:"INVTRAPSTART",80:"INVTRAPEND",83:"TESTSTR",84:"START_LINK",86:"LINK",88:"STR",89:"MD_STR",92:"STYLE",93:"LINKSTYLE",94:"CLASSDEF",95:"CLASS",96:"CLICK",97:"DOWN",98:"UP",101:"idString[vertex]",102:"idString[class]",103:"CALLBACKNAME",104:"CALLBACKARGS",105:"HREF",106:"LINK_TARGET",107:"STR[link]",108:"STR[tooltip]",110:"DEFAULT",112:"INTERPOLATE",113:"NUM",114:"COMMA",117:"NODE_STRING",118:"UNIT",119:"BRKT",120:"PCT",122:"MINUS",123:"MULT",124:"UNICODE_TEXT",125:"TEXT",126:"TAGSTART",127:"EDGE_TEXT",129:"direction_tb",130:"direction_bt",131:"direction_rl",132:"direction_lr"},productions_:[0,[3,1],[3,2],[5,4],[5,6],[6,1],[7,1],[11,1],[8,1],[4,2],[17,0],[17,2],[18,1],[18,1],[18,1],[18,1],[18,1],[16,2],[16,2],[16,2],[16,3],[28,2],[28,1],[29,1],[29,1],[29,1],[27,1],[27,1],[27,2],[31,2],[31,2],[31,1],[31,1],[30,2],[30,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,9],[19,6],[19,4],[19,1],[19,2],[19,2],[19,1],[9,1],[9,1],[9,1],[32,3],[32,4],[32,2],[32,1],[51,1],[51,5],[52,1],[52,3],[54,4],[54,4],[54,6],[54,4],[54,4],[54,4],[54,8],[54,4],[54,4],[54,4],[54,6],[54,4],[54,4],[54,4],[54,4],[54,4],[54,1],[50,2],[50,3],[50,3],[50,1],[50,3],[85,1],[85,2],[85,1],[85,1],[81,1],[82,3],[41,1],[41,2],[41,1],[41,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[39,1],[39,2],[39,1],[39,1],[35,5],[36,5],[37,2],[37,4],[37,3],[37,5],[37,3],[37,5],[37,5],[37,7],[37,2],[37,4],[37,2],[37,4],[37,4],[37,6],[33,5],[34,5],[34,5],[34,9],[34,9],[34,7],[34,7],[111,1],[111,3],[100,1],[100,3],[115,1],[115,2],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[90,1],[90,1],[90,1],[90,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[87,1],[87,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[56,1],[56,2],[109,1],[109,2],[44,1],[44,1],[44,1],[44,1]],performAction:function(Fr,Pr,vc,Ui,ya,Ue,e1){var Te=Ue.length-1;switch(ya){case 5:Ui.parseDirective("%%{","open_directive");break;case 6:Ui.parseDirective(Ue[Te],"type_directive");break;case 7:Ue[Te]=Ue[Te].trim().replace(/'/g,'"'),Ui.parseDirective(Ue[Te],"arg_directive");break;case 8:Ui.parseDirective("}%%","close_directive","flowchart");break;case 10:this.$=[];break;case 11:(!Array.isArray(Ue[Te])||Ue[Te].length>0)&&Ue[Te-1].push(Ue[Te]),this.$=Ue[Te-1];break;case 12:case 184:this.$=Ue[Te];break;case 19:Ui.setDirection("TB"),this.$="TB";break;case 20:Ui.setDirection(Ue[Te-1]),this.$=Ue[Te-1];break;case 35:this.$=Ue[Te-1].nodes;break;case 36:case 37:case 38:case 39:case 40:this.$=[];break;case 41:this.$=Ui.addSubGraph(Ue[Te-6],Ue[Te-1],Ue[Te-4]);break;case 42:this.$=Ui.addSubGraph(Ue[Te-3],Ue[Te-1],Ue[Te-3]);break;case 43:this.$=Ui.addSubGraph(void 0,Ue[Te-1],void 0);break;case 45:this.$=Ue[Te].trim(),Ui.setAccTitle(this.$);break;case 46:case 47:this.$=Ue[Te].trim(),Ui.setAccDescription(this.$);break;case 51:Ui.addLink(Ue[Te-2].stmt,Ue[Te],Ue[Te-1]),this.$={stmt:Ue[Te],nodes:Ue[Te].concat(Ue[Te-2].nodes)};break;case 52:Ui.addLink(Ue[Te-3].stmt,Ue[Te-1],Ue[Te-2]),this.$={stmt:Ue[Te-1],nodes:Ue[Te-1].concat(Ue[Te-3].nodes)};break;case 53:this.$={stmt:Ue[Te-1],nodes:Ue[Te-1]};break;case 54:this.$={stmt:Ue[Te],nodes:Ue[Te]};break;case 55:this.$=[Ue[Te]];break;case 56:this.$=Ue[Te-4].concat(Ue[Te]);break;case 57:this.$=Ue[Te];break;case 58:this.$=Ue[Te-2],Ui.setClass(Ue[Te-2],Ue[Te]);break;case 59:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"square");break;case 60:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"doublecircle");break;case 61:this.$=Ue[Te-5],Ui.addVertex(Ue[Te-5],Ue[Te-2],"circle");break;case 62:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"ellipse");break;case 63:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"stadium");break;case 64:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"subroutine");break;case 65:this.$=Ue[Te-7],Ui.addVertex(Ue[Te-7],Ue[Te-1],"rect",void 0,void 0,void 0,Object.fromEntries([[Ue[Te-5],Ue[Te-3]]]));break;case 66:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"cylinder");break;case 67:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"round");break;case 68:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"diamond");break;case 69:this.$=Ue[Te-5],Ui.addVertex(Ue[Te-5],Ue[Te-2],"hexagon");break;case 70:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"odd");break;case 71:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"trapezoid");break;case 72:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"inv_trapezoid");break;case 73:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"lean_right");break;case 74:this.$=Ue[Te-3],Ui.addVertex(Ue[Te-3],Ue[Te-1],"lean_left");break;case 75:this.$=Ue[Te],Ui.addVertex(Ue[Te]);break;case 76:Ue[Te-1].text=Ue[Te],this.$=Ue[Te-1];break;case 77:case 78:Ue[Te-2].text=Ue[Te-1],this.$=Ue[Te-2];break;case 79:this.$=Ue[Te];break;case 80:var Ph=Ui.destructLink(Ue[Te],Ue[Te-2]);this.$={type:Ph.type,stroke:Ph.stroke,length:Ph.length,text:Ue[Te-1]};break;case 81:this.$={text:Ue[Te],type:"text"};break;case 82:this.$={text:Ue[Te-1].text+""+Ue[Te],type:Ue[Te-1].type};break;case 83:this.$={text:Ue[Te],type:"string"};break;case 84:this.$={text:Ue[Te],type:"markdown"};break;case 85:var Ph=Ui.destructLink(Ue[Te]);this.$={type:Ph.type,stroke:Ph.stroke,length:Ph.length};break;case 86:this.$=Ue[Te-1];break;case 87:this.$={text:Ue[Te],type:"text"};break;case 88:this.$={text:Ue[Te-1].text+""+Ue[Te],type:Ue[Te-1].type};break;case 89:this.$={text:Ue[Te],type:"string"};break;case 90:case 105:this.$={text:Ue[Te],type:"markdown"};break;case 102:this.$={text:Ue[Te],type:"text"};break;case 103:this.$={text:Ue[Te-1].text+""+Ue[Te],type:Ue[Te-1].type};break;case 104:this.$={text:Ue[Te],type:"text"};break;case 106:this.$=Ue[Te-4],Ui.addClass(Ue[Te-2],Ue[Te]);break;case 107:this.$=Ue[Te-4],Ui.setClass(Ue[Te-2],Ue[Te]);break;case 108:case 116:this.$=Ue[Te-1],Ui.setClickEvent(Ue[Te-1],Ue[Te]);break;case 109:case 117:this.$=Ue[Te-3],Ui.setClickEvent(Ue[Te-3],Ue[Te-2]),Ui.setTooltip(Ue[Te-3],Ue[Te]);break;case 110:this.$=Ue[Te-2],Ui.setClickEvent(Ue[Te-2],Ue[Te-1],Ue[Te]);break;case 111:this.$=Ue[Te-4],Ui.setClickEvent(Ue[Te-4],Ue[Te-3],Ue[Te-2]),Ui.setTooltip(Ue[Te-4],Ue[Te]);break;case 112:this.$=Ue[Te-2],Ui.setLink(Ue[Te-2],Ue[Te]);break;case 113:this.$=Ue[Te-4],Ui.setLink(Ue[Te-4],Ue[Te-2]),Ui.setTooltip(Ue[Te-4],Ue[Te]);break;case 114:this.$=Ue[Te-4],Ui.setLink(Ue[Te-4],Ue[Te-2],Ue[Te]);break;case 115:this.$=Ue[Te-6],Ui.setLink(Ue[Te-6],Ue[Te-4],Ue[Te]),Ui.setTooltip(Ue[Te-6],Ue[Te-2]);break;case 118:this.$=Ue[Te-1],Ui.setLink(Ue[Te-1],Ue[Te]);break;case 119:this.$=Ue[Te-3],Ui.setLink(Ue[Te-3],Ue[Te-2]),Ui.setTooltip(Ue[Te-3],Ue[Te]);break;case 120:this.$=Ue[Te-3],Ui.setLink(Ue[Te-3],Ue[Te-2],Ue[Te]);break;case 121:this.$=Ue[Te-5],Ui.setLink(Ue[Te-5],Ue[Te-4],Ue[Te]),Ui.setTooltip(Ue[Te-5],Ue[Te-2]);break;case 122:this.$=Ue[Te-4],Ui.addVertex(Ue[Te-2],void 0,void 0,Ue[Te]);break;case 123:this.$=Ue[Te-4],Ui.updateLink([Ue[Te-2]],Ue[Te]);break;case 124:this.$=Ue[Te-4],Ui.updateLink(Ue[Te-2],Ue[Te]);break;case 125:this.$=Ue[Te-8],Ui.updateLinkInterpolate([Ue[Te-6]],Ue[Te-2]),Ui.updateLink([Ue[Te-6]],Ue[Te]);break;case 126:this.$=Ue[Te-8],Ui.updateLinkInterpolate(Ue[Te-6],Ue[Te-2]),Ui.updateLink(Ue[Te-6],Ue[Te]);break;case 127:this.$=Ue[Te-6],Ui.updateLinkInterpolate([Ue[Te-4]],Ue[Te]);break;case 128:this.$=Ue[Te-6],Ui.updateLinkInterpolate(Ue[Te-4],Ue[Te]);break;case 129:case 131:this.$=[Ue[Te]];break;case 130:case 132:Ue[Te-2].push(Ue[Te]),this.$=Ue[Te-2];break;case 134:this.$=Ue[Te-1]+Ue[Te];break;case 182:this.$=Ue[Te];break;case 183:this.$=Ue[Te-1]+""+Ue[Te];break;case 185:this.$=Ue[Te-1]+""+Ue[Te];break;case 186:this.$={stmt:"dir",value:"TB"};break;case 187:this.$={stmt:"dir",value:"BT"};break;case 188:this.$={stmt:"dir",value:"RL"};break;case 189:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,5:3,6:5,12:i,16:4,21:s,22:a,24:h},{1:[3]},{1:[2,1]},{3:10,4:2,5:3,6:5,12:i,16:4,21:s,22:a,24:h},t(Q,w,{17:11}),{7:12,13:[1,13]},{16:14,21:s,22:a,24:h},{16:15,21:s,22:a,24:h},{25:[1,16],26:[1,17]},{13:[2,5]},{1:[2,2]},{1:[2,9],18:18,19:19,20:I,21:d,22:D,23:N,32:24,33:25,34:26,35:27,36:28,37:29,38:U,44:31,45:R,47:T,49:j,51:35,52:45,53:W,54:46,56:47,69:AA,92:X,93:K,94:$,95:QA,96:hA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA,129:GA,130:cA,131:JA,132:_},{8:60,10:[1,61],15:SA},t([10,15],[2,6]),t(Q,[2,17]),t(Q,[2,18]),t(Q,[2,19]),{20:[1,64],21:[1,65],22:jA,27:63,30:66},t(dA,[2,11]),t(dA,[2,12]),t(dA,[2,13]),t(dA,[2,14]),t(dA,[2,15]),t(dA,[2,16]),{9:68,20:kA,21:vA,23:Fe,50:69,81:73,84:[1,74],86:[1,75]},{9:76,20:kA,21:vA,23:Fe},{9:77,20:kA,21:vA,23:Fe},{9:78,20:kA,21:vA,23:Fe},{9:79,20:kA,21:vA,23:Fe},{9:80,20:kA,21:vA,23:Fe},{9:82,20:kA,21:vA,22:[1,81],23:Fe},t(dA,[2,44]),{46:[1,83]},{48:[1,84]},t(dA,[2,47]),t(at,[2,54],{30:85,22:jA}),{22:[1,86]},{22:[1,87]},{22:[1,88]},{22:[1,89]},{26:fe,53:mt,69:be,88:[1,93],97:ie,103:[1,90],105:[1,91],109:92,113:ye,114:Le,117:HA,119:WA,122:XA,123:ce,124:ZA,128:94},t(dA,[2,186]),t(dA,[2,187]),t(dA,[2,188]),t(dA,[2,189]),t(pe,[2,55]),t(pe,[2,57],{55:[1,106]}),t(zA,[2,75],{121:119,40:[1,107],53:W,57:[1,108],59:[1,109],61:[1,110],63:[1,111],65:[1,112],67:[1,113],69:AA,72:[1,114],74:[1,115],76:[1,116],77:[1,117],79:[1,118],97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,122:fA,123:DA,124:eA}),t(Ft,[2,182]),t(Ft,[2,143]),t(Ft,[2,144]),t(Ft,[2,145]),t(Ft,[2,146]),t(Ft,[2,147]),t(Ft,[2,148]),t(Ft,[2,149]),t(Ft,[2,150]),t(Ft,[2,151]),t(Ft,[2,152]),t(Ft,[2,153]),{9:120,20:kA,21:vA,23:Fe},{11:121,14:[1,122]},t(RA,[2,8]),t(Q,[2,20]),t(Q,[2,26]),t(Q,[2,27]),{21:[1,123]},t(Et,[2,34],{30:124,22:jA}),t(dA,[2,35]),{51:125,52:45,53:W,54:46,56:47,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA},t($A,[2,48]),t($A,[2,49]),t($A,[2,50]),t(Ot,[2,79],{82:126,71:[1,128],83:[1,127]}),{85:129,87:130,88:[1,131],89:[1,132],124:zt,127:Gt},t([53,69,71,83,97,110,113,114,117,119,122,123,124],[2,85]),t(dA,[2,36]),t(dA,[2,37]),t(dA,[2,38]),t(dA,[2,39]),t(dA,[2,40]),{22:sn,24:Ke,26:lt,38:gn,39:135,43:Rt,53:ln,69:hi,84:Oi,88:[1,137],89:[1,138],91:148,92:ki,93:mr,94:wn,95:Xn,96:Wi,97:mn,98:Ec,99:136,113:An,117:Da,119:Tn,122:ta,123:w0,124:yd},t(gQ,w,{17:161}),t(dA,[2,45]),t(dA,[2,46]),t(at,[2,53],{53:Nw}),{53:W,56:163,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA},{110:[1,164],111:165,113:[1,166]},{53:W,56:167,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA},{53:W,56:168,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA},t(RA,[2,108],{22:[1,169],104:[1,170]}),{88:[1,171]},t(RA,[2,116],{128:173,22:[1,172],26:fe,53:mt,69:be,97:ie,113:ye,114:Le,117:HA,119:WA,122:XA,123:ce,124:ZA}),t(RA,[2,118],{22:[1,174]}),t(Ao,[2,184]),t(Ao,[2,171]),t(Ao,[2,172]),t(Ao,[2,173]),t(Ao,[2,174]),t(Ao,[2,175]),t(Ao,[2,176]),t(Ao,[2,177]),t(Ao,[2,178]),t(Ao,[2,179]),t(Ao,[2,180]),t(Ao,[2,181]),{53:W,56:175,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA},{41:176,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{41:184,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{41:186,59:[1,185],76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{41:187,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{41:188,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{41:189,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{117:[1,190]},{41:191,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{41:192,74:[1,193],76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{41:194,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{41:195,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{41:196,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},t(Ft,[2,183]),t(rg,[2,3]),{8:197,15:SA},{15:[2,7]},t(Q,[2,28]),t(Et,[2,33]),t(at,[2,51],{30:198,22:jA}),t(Ot,[2,76],{22:[1,199]}),{22:[1,200]},{41:201,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{86:[1,202],87:203,124:zt,127:Gt},t(wB,[2,81]),t(wB,[2,83]),t(wB,[2,84]),t(wB,[2,169]),t(wB,[2,170]),{9:205,20:kA,21:vA,22:sn,23:Fe,24:Ke,26:lt,38:gn,40:[1,204],43:Rt,53:ln,69:hi,84:Oi,91:148,92:ki,93:mr,94:wn,95:Xn,96:Wi,97:mn,98:Ec,99:206,113:An,117:Da,119:Tn,122:ta,123:w0,124:yd},t(oo,[2,102]),t(oo,[2,104]),t(oo,[2,105]),t(oo,[2,158]),t(oo,[2,159]),t(oo,[2,160]),t(oo,[2,161]),t(oo,[2,162]),t(oo,[2,163]),t(oo,[2,164]),t(oo,[2,165]),t(oo,[2,166]),t(oo,[2,167]),t(oo,[2,168]),t(oo,[2,91]),t(oo,[2,92]),t(oo,[2,93]),t(oo,[2,94]),t(oo,[2,95]),t(oo,[2,96]),t(oo,[2,97]),t(oo,[2,98]),t(oo,[2,99]),t(oo,[2,100]),t(oo,[2,101]),{18:18,19:19,20:I,21:d,22:D,23:N,32:24,33:25,34:26,35:27,36:28,37:29,38:U,43:[1,207],44:31,45:R,47:T,49:j,51:35,52:45,53:W,54:46,56:47,69:AA,92:X,93:K,94:$,95:QA,96:hA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA,129:GA,130:cA,131:JA,132:_},{22:jA,30:208},{22:[1,209],53:W,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:119,122:fA,123:DA,124:eA},{22:[1,210]},{22:[1,211],114:[1,212]},t(Ou,[2,129]),{22:[1,213],53:W,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:119,122:fA,123:DA,124:eA},{22:[1,214],53:W,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:119,122:fA,123:DA,124:eA},{88:[1,215]},t(RA,[2,110],{22:[1,216]}),t(RA,[2,112],{22:[1,217]}),{88:[1,218]},t(Ao,[2,185]),{88:[1,219],106:[1,220]},t(pe,[2,58],{121:119,53:W,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,122:fA,123:DA,124:eA}),{42:[1,221],76:fc,90:222,124:Us,125:Ts,126:Zr},t(zh,[2,87]),t(zh,[2,89]),t(zh,[2,90]),t(zh,[2,154]),t(zh,[2,155]),t(zh,[2,156]),t(zh,[2,157]),{58:[1,223],76:fc,90:222,124:Us,125:Ts,126:Zr},{41:224,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{60:[1,225],76:fc,90:222,124:Us,125:Ts,126:Zr},{62:[1,226],76:fc,90:222,124:Us,125:Ts,126:Zr},{64:[1,227],76:fc,90:222,124:Us,125:Ts,126:Zr},{66:[1,228],76:fc,90:222,124:Us,125:Ts,126:Zr},{69:[1,229]},{73:[1,230],76:fc,90:222,124:Us,125:Ts,126:Zr},{75:[1,231],76:fc,90:222,124:Us,125:Ts,126:Zr},{41:232,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},{42:[1,233],76:fc,90:222,124:Us,125:Ts,126:Zr},{76:fc,78:[1,234],80:[1,235],90:222,124:Us,125:Ts,126:Zr},{76:fc,78:[1,237],80:[1,236],90:222,124:Us,125:Ts,126:Zr},{9:238,20:kA,21:vA,23:Fe},t(at,[2,52],{53:Nw}),t(Ot,[2,78]),t(Ot,[2,77]),{71:[1,239],76:fc,90:222,124:Us,125:Ts,126:Zr},t(Ot,[2,80]),t(wB,[2,82]),{41:240,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},t(gQ,w,{17:241}),t(oo,[2,103]),t(dA,[2,43]),{52:242,53:W,54:46,56:47,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA},{22:WB,69:nr,92:qe,100:243,113:kn,115:244,116:245,117:Ei,118:Is,119:na,120:HB},{22:WB,69:nr,92:qe,100:254,112:[1,255],113:kn,115:244,116:245,117:Ei,118:Is,119:na,120:HB},{22:WB,69:nr,92:qe,100:256,112:[1,257],113:kn,115:244,116:245,117:Ei,118:Is,119:na,120:HB},{113:[1,258]},{22:WB,69:nr,92:qe,100:259,113:kn,115:244,116:245,117:Ei,118:Is,119:na,120:HB},{53:W,56:260,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA},t(RA,[2,109]),{88:[1,261]},{88:[1,262],106:[1,263]},t(RA,[2,117]),t(RA,[2,119],{22:[1,264]}),t(RA,[2,120]),t(zA,[2,59]),t(zh,[2,88]),t(zA,[2,60]),{60:[1,265],76:fc,90:222,124:Us,125:Ts,126:Zr},t(zA,[2,67]),t(zA,[2,62]),t(zA,[2,63]),t(zA,[2,64]),{117:[1,266]},t(zA,[2,66]),t(zA,[2,68]),{75:[1,267],76:fc,90:222,124:Us,125:Ts,126:Zr},t(zA,[2,70]),t(zA,[2,71]),t(zA,[2,73]),t(zA,[2,72]),t(zA,[2,74]),t(rg,[2,4]),t([22,53,69,97,110,113,114,117,119,122,123,124],[2,86]),{42:[1,268],76:fc,90:222,124:Us,125:Ts,126:Zr},{18:18,19:19,20:I,21:d,22:D,23:N,32:24,33:25,34:26,35:27,36:28,37:29,38:U,43:[1,269],44:31,45:R,47:T,49:j,51:35,52:45,53:W,54:46,56:47,69:AA,92:X,93:K,94:$,95:QA,96:hA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA,129:GA,130:cA,131:JA,132:_},t(pe,[2,56]),t(RA,[2,122],{114:Eo}),t(Yl,[2,131],{116:271,22:WB,69:nr,92:qe,113:kn,117:Ei,118:Is,119:na,120:HB}),t(zg,[2,133]),t(zg,[2,135]),t(zg,[2,136]),t(zg,[2,137]),t(zg,[2,138]),t(zg,[2,139]),t(zg,[2,140]),t(zg,[2,141]),t(zg,[2,142]),t(RA,[2,123],{114:Eo}),{22:[1,272]},t(RA,[2,124],{114:Eo}),{22:[1,273]},t(Ou,[2,130]),t(RA,[2,106],{114:Eo}),t(RA,[2,107],{121:119,53:W,69:AA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,122:fA,123:DA,124:eA}),t(RA,[2,111]),t(RA,[2,113],{22:[1,274]}),t(RA,[2,114]),{106:[1,275]},{60:[1,276]},{71:[1,277]},{75:[1,278]},{9:279,20:kA,21:vA,23:Fe},t(dA,[2,42]),{22:WB,69:nr,92:qe,113:kn,115:280,116:245,117:Ei,118:Is,119:na,120:HB},t(zg,[2,134]),{26:fe,53:mt,69:be,97:ie,109:281,113:ye,114:Le,117:HA,119:WA,122:XA,123:ce,124:ZA,128:94},{26:fe,53:mt,69:be,97:ie,109:282,113:ye,114:Le,117:HA,119:WA,122:XA,123:ce,124:ZA,128:94},{106:[1,283]},t(RA,[2,121]),t(zA,[2,61]),{41:284,76:fc,88:Ka,89:uB,90:177,124:Us,125:Ts,126:Zr},t(zA,[2,69]),t(gQ,w,{17:285}),t(Yl,[2,132],{116:271,22:WB,69:nr,92:qe,113:kn,117:Ei,118:Is,119:na,120:HB}),t(RA,[2,127],{128:173,22:[1,286],26:fe,53:mt,69:be,97:ie,113:ye,114:Le,117:HA,119:WA,122:XA,123:ce,124:ZA}),t(RA,[2,128],{128:173,22:[1,287],26:fe,53:mt,69:be,97:ie,113:ye,114:Le,117:HA,119:WA,122:XA,123:ce,124:ZA}),t(RA,[2,115]),{42:[1,288],76:fc,90:222,124:Us,125:Ts,126:Zr},{18:18,19:19,20:I,21:d,22:D,23:N,32:24,33:25,34:26,35:27,36:28,37:29,38:U,43:[1,289],44:31,45:R,47:T,49:j,51:35,52:45,53:W,54:46,56:47,69:AA,92:X,93:K,94:$,95:QA,96:hA,97:aA,110:iA,113:BA,114:rA,117:FA,119:gA,121:48,122:fA,123:DA,124:eA,129:GA,130:cA,131:JA,132:_},{22:WB,69:nr,92:qe,100:290,113:kn,115:244,116:245,117:Ei,118:Is,119:na,120:HB},{22:WB,69:nr,92:qe,100:291,113:kn,115:244,116:245,117:Ei,118:Is,119:na,120:HB},t(zA,[2,65]),t(dA,[2,41]),t(RA,[2,125],{114:Eo}),t(RA,[2,126],{114:Eo})],defaultActions:{2:[2,1],9:[2,5],10:[2,2],122:[2,7]},parseError:function(Fr,Pr){if(Pr.recoverable)this.trace(Fr);else{var vc=new Error(Fr);throw vc.hash=Pr,vc}},parse:function(Fr){var Pr=this,vc=[0],Ui=[],ya=[null],Ue=[],e1=this.table,Te="",Ph=0,E4=0,OM=2,Nd=1,db=Ue.slice.call(arguments,1),ka=Object.create(this.lexer),t1={yy:{}};for(var f4 in this.yy)Object.prototype.hasOwnProperty.call(this.yy,f4)&&(t1.yy[f4]=this.yy[f4]);ka.setInput(Fr,t1.yy),t1.yy.lexer=ka,t1.yy.parser=this,typeof ka.yylloc>"u"&&(ka.yylloc={});var Q0=ka.yylloc;Ue.push(Q0);var Fb=ka.options&&ka.options.ranges;typeof t1.yy.parseError=="function"?this.parseError=t1.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mb(){var Cs;return Cs=Ui.pop()||ka.lex()||Nd,typeof Cs!="number"&&(Cs instanceof Array&&(Ui=Cs,Cs=Ui.pop()),Cs=Pr.symbols_[Cs]||Cs),Cs}for(var Dl,FI,mw,WM,MI={},YI,n1,Q2,Ra;;){if(FI=vc[vc.length-1],this.defaultActions[FI]?mw=this.defaultActions[FI]:((Dl===null||typeof Dl>"u")&&(Dl=Mb()),mw=e1[FI]&&e1[FI][Dl]),typeof mw>"u"||!mw.length||!mw[0]){var E2="";Ra=[];for(YI in e1[FI])this.terminals_[YI]&&YI>OM&&Ra.push("'"+this.terminals_[YI]+"'");ka.showPosition?E2="Parse error on line "+(Ph+1)+`:`+ka.showPosition()+`Expecting `+Ra.join(", ")+", got '"+(this.terminals_[Dl]||Dl)+"'":E2="Parse error on line "+(Ph+1)+": Unexpected "+(Dl==Nd?"end of input":"'"+(this.terminals_[Dl]||Dl)+"'"),this.parseError(E2,{text:ka.match,token:this.terminals_[Dl]||Dl,line:ka.yylineno,loc:Q0,expected:Ra})}if(mw[0]instanceof Array&&mw.length>1)throw new Error("Parse Error: multiple actions possible at state: "+FI+", token: "+Dl);switch(mw[0]){case 1:vc.push(Dl),ya.push(ka.yytext),Ue.push(ka.yylloc),vc.push(mw[1]),Dl=null,E4=ka.yyleng,Te=ka.yytext,Ph=ka.yylineno,Q0=ka.yylloc;break;case 2:if(n1=this.productions_[mw[1]][1],MI.$=ya[ya.length-n1],MI._$={first_line:Ue[Ue.length-(n1||1)].first_line,last_line:Ue[Ue.length-1].last_line,first_column:Ue[Ue.length-(n1||1)].first_column,last_column:Ue[Ue.length-1].last_column},Fb&&(MI._$.range=[Ue[Ue.length-(n1||1)].range[0],Ue[Ue.length-1].range[1]]),WM=this.performAction.apply(MI,[Te,E4,Ph,t1.yy,mw[1],ya,Ue].concat(db)),typeof WM<"u")return WM;n1&&(vc=vc.slice(0,-1*n1*2),ya=ya.slice(0,-1*n1),Ue=Ue.slice(0,-1*n1)),vc.push(this.productions_[mw[1]][0]),ya.push(MI.$),Ue.push(MI._$),Q2=e1[vc[vc.length-2]][vc[vc.length-1]],vc.push(Q2);break;case 3:return!0}}return!0}},Cb=function(){var WE={EOF:1,parseError:function(Pr,vc){if(this.yy.parser)this.yy.parser.parseError(Pr,vc);else throw new Error(Pr)},setInput:function(Fr,Pr){return this.yy=Pr||this.yy||{},this._input=Fr,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},input:function(){var Fr=this._input[0];this.yytext+=Fr,this.yyleng++,this.offset++,this.match+=Fr,this.matched+=Fr;var Pr=Fr.match(/(?:\r\n?|\n).*/g);return Pr?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Fr},unput:function(Fr){var Pr=Fr.length,vc=Fr.split(/(?:\r\n?|\n)/g);this._input=Fr+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Pr),this.offset-=Pr;var Ui=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),vc.length-1&&(this.yylineno-=vc.length-1);var ya=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:vc?(vc.length===Ui.length?this.yylloc.first_column:0)+Ui[Ui.length-vc.length].length-vc[0].length:this.yylloc.first_column-Pr},this.options.ranges&&(this.yylloc.range=[ya[0],ya[0]+this.yyleng-Pr]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(Fr){this.unput(this.match.slice(Fr))},pastInput:function(){var Fr=this.matched.substr(0,this.matched.length-this.match.length);return(Fr.length>20?"...":"")+Fr.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Fr=this.match;return Fr.length<20&&(Fr+=this._input.substr(0,20-Fr.length)),(Fr.substr(0,20)+(Fr.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Fr=this.pastInput(),Pr=new Array(Fr.length+1).join("-");return Fr+this.upcomingInput()+``+Pr+"^"},test_match:function(Fr,Pr){var vc,Ui,ya;if(this.options.backtrack_lexer&&(ya={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ya.yylloc.range=this.yylloc.range.slice(0))),Ui=Fr[0].match(/(?:\r\n?|\n).*/g),Ui&&(this.yylineno+=Ui.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ui?Ui[Ui.length-1].length-Ui[Ui.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Fr[0].length},this.yytext+=Fr[0],this.match+=Fr[0],this.matches=Fr,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(Fr[0].length),this.matched+=Fr[0],vc=this.performAction.call(this,this.yy,this,Pr,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),vc)return vc;if(this._backtrack){for(var Ue in ya)this[Ue]=ya[Ue];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Fr,Pr,vc,Ui;this._more||(this.yytext="",this.match="");for(var ya=this._currentRules(),Ue=0;Ue Pr[0].length)){if(Pr=vc,Ui=Ue,this.options.backtrack_lexer){if(Fr=this.test_match(vc,ya[Ue]),Fr!==!1)return Fr;if(this._backtrack){Pr=!1;continue}else return!1}else if(!this.options.flex)break}return Pr?(Fr=this.test_match(Pr,ya[Ui]),Fr!==!1?Fr:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Pr=this.next();return Pr||this.lex()},begin:function(Pr){this.conditionStack.push(Pr)},popState:function(){var Pr=this.conditionStack.length-1;return Pr>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Pr){return Pr=this.conditionStack.length-1-Math.abs(Pr||0),Pr>=0?this.conditionStack[Pr]:"INITIAL"},pushState:function(Pr){this.begin(Pr)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Pr,vc,Ui,ya){switch(Ui){case 0:return this.begin("open_directive"),12;case 1:return this.begin("type_directive"),13;case 2:return this.popState(),this.begin("arg_directive"),10;case 3:return this.popState(),this.popState(),15;case 4:return 14;case 5:return this.begin("acc_title"),45;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),47;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:this.begin("callbackname");break;case 13:this.popState();break;case 14:this.popState(),this.begin("callbackargs");break;case 15:return 103;case 16:this.popState();break;case 17:return 104;case 18:return"MD_STR";case 19:this.popState();break;case 20:this.begin("md_string");break;case 21:return"STR";case 22:this.popState();break;case 23:this.pushState("string");break;case 24:return 92;case 25:return 110;case 26:return 93;case 27:return 112;case 28:return 94;case 29:return 95;case 30:return 105;case 31:this.begin("click");break;case 32:this.popState();break;case 33:return 96;case 34:return Pr.lex.firstGraph()&&this.begin("dir"),24;case 35:return Pr.lex.firstGraph()&&this.begin("dir"),24;case 36:return Pr.lex.firstGraph()&&this.begin("dir"),24;case 37:return 38;case 38:return 43;case 39:return 106;case 40:return 106;case 41:return 106;case 42:return 106;case 43:return this.popState(),25;case 44:return this.popState(),26;case 45:return this.popState(),26;case 46:return this.popState(),26;case 47:return this.popState(),26;case 48:return this.popState(),26;case 49:return this.popState(),26;case 50:return this.popState(),26;case 51:return this.popState(),26;case 52:return this.popState(),26;case 53:return this.popState(),26;case 54:return 129;case 55:return 130;case 56:return 131;case 57:return 132;case 58:return 113;case 59:return 119;case 60:return 55;case 61:return 69;case 62:return 53;case 63:return 20;case 64:return 114;case 65:return 123;case 66:return this.popState(),86;case 67:return this.pushState("edgeText"),84;case 68:return 127;case 69:return this.popState(),86;case 70:return this.pushState("thickEdgeText"),84;case 71:return 127;case 72:return this.popState(),86;case 73:return this.pushState("dottedEdgeText"),84;case 74:return 127;case 75:return 86;case 76:return this.popState(),62;case 77:return"TEXT";case 78:return this.pushState("ellipseText"),61;case 79:return this.popState(),64;case 80:return this.pushState("text"),63;case 81:return this.popState(),66;case 82:return this.pushState("text"),65;case 83:return 67;case 84:return this.pushState("text"),76;case 85:return this.popState(),73;case 86:return this.pushState("text"),72;case 87:return this.popState(),58;case 88:return this.pushState("text"),57;case 89:return this.popState(),78;case 90:return this.popState(),80;case 91:return 125;case 92:return this.pushState("trapText"),77;case 93:return this.pushState("trapText"),79;case 94:return 126;case 95:return 76;case 96:return 98;case 97:return"SEP";case 98:return 97;case 99:return 123;case 100:return 119;case 101:return 53;case 102:return 117;case 103:return 122;case 104:return 124;case 105:return this.popState(),71;case 106:return this.pushState("text"),71;case 107:return this.popState(),60;case 108:return this.pushState("text"),59;case 109:return this.popState(),42;case 110:return this.pushState("text"),40;case 111:return this.popState(),75;case 112:return this.pushState("text"),74;case 113:return"TEXT";case 114:return"QUOTE";case 115:return 21;case 116:return 22;case 117:return 23}},rules:[/^(?:%%\{)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?: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:{close_directive:{rules:[20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},arg_directive:{rules:[3,4,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},type_directive:{rules:[2,3,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},open_directive:{rules:[1,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},callbackargs:{rules:[16,17,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},callbackname:{rules:[13,14,15,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},href:{rules:[20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},click:{rules:[20,23,32,33,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},dottedEdgeText:{rules:[20,23,72,74,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},thickEdgeText:{rules:[20,23,69,71,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},edgeText:{rules:[20,23,66,68,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},trapText:{rules:[20,23,75,78,80,82,86,88,89,90,91,92,93,106,108,110,112],inclusive:!1},ellipseText:{rules:[20,23,75,76,77,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},text:{rules:[20,23,75,78,79,80,81,82,85,86,87,88,92,93,105,106,107,108,109,110,111,112,113],inclusive:!1},vertex:{rules:[20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},dir:{rules:[20,23,43,44,45,46,47,48,49,50,51,52,53,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},acc_descr_multiline:{rules:[10,11,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},acc_descr:{rules:[8,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},acc_title:{rules:[6,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},md_string:{rules:[18,19,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},string:{rules:[20,21,22,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,20,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39,40,41,42,54,55,56,57,58,59,60,61,62,63,64,65,66,67,69,70,72,73,75,78,80,82,83,84,86,88,92,93,94,95,96,97,98,99,100,101,102,103,104,106,108,110,112,114,115,116,117],inclusive:!0}}};return WE}();pd.lexer=Cb;function PM(){this.yy={}}return PM.prototype=pd,pd.Parser=PM,new PM}();e8A.parser=e8A;const mjA=e8A,h2t="flowchart-";let LDe=0,UjA=Je(),Ig={},XJ=[],Xj={},$p=[],$QA={},A1A={},eQA=0,t8A=!0,hd,o0A,a0A=[];const B0A=t=>Yi.sanitizeText(t,UjA),TUe=function(t,i,s){zu.parseDirective(this,t,i,s)},bZ=function(t){const i=Object.keys(Ig);for(const s of i)if(Ig[s].id===t)return Ig[s].domId;return t},vUe=function(t,i,s,a,h,Q,w={}){let I,d=t;d!==void 0&&d.trim().length!==0&&(Ig[d]===void 0&&(Ig[d]={id:d,labelType:"text",domId:h2t+d+"-"+LDe,styles:[],classes:[]}),LDe++,i!==void 0?(UjA=Je(),I=B0A(i.text.trim()),Ig[d].labelType=i.type,I[0]==='"'&&I[I.length-1]==='"'&&(I=I.substring(1,I.length-1)),Ig[d].text=I):Ig[d].text===void 0&&(Ig[d].text=t),s!==void 0&&(Ig[d].type=s),a!=null&&a.forEach(function(D){Ig[d].styles.push(D)}),h!=null&&h.forEach(function(D){Ig[d].classes.push(D)}),Q!==void 0&&(Ig[d].dir=Q),Ig[d].props===void 0?Ig[d].props=w:w!==void 0&&Object.assign(Ig[d].props,w))},jUe=function(t,i,s){const Q={start:t,end:i,type:void 0,text:"",labelType:"text"};_A.info("abc78 Got edge...",Q);const w=s.text;w!==void 0&&(Q.text=B0A(w.text.trim()),Q.text[0]==='"'&&Q.text[Q.text.length-1]==='"'&&(Q.text=Q.text.substring(1,Q.text.length-1)),Q.labelType=w.type),s!==void 0&&(Q.type=s.type,Q.stroke=s.stroke,Q.length=s.length),XJ.push(Q)},SUe=function(t,i,s){_A.info("addLink (abc78)",t,i,s);let a,h;for(a=0;a /)&&(hd="LR"),hd.match(/.*v/)&&(hd="TB"),hd==="TD"&&(hd="TB")},g0A=function(t,i){t.split(",").forEach(function(s){let a=s;Ig[a]!==void 0&&Ig[a].classes.push(i),$QA[a]!==void 0&&$QA[a].classes.push(i)})},l2t=function(t,i){t.split(",").forEach(function(s){i!==void 0&&(A1A[o0A==="gen-1"?bZ(s):s]=B0A(i))})},u2t=function(t,i,s){let a=bZ(t);if(Je().securityLevel!=="loose"||i===void 0)return;let h=[];if(typeof s=="string"){h=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let Q=0;Q ")),h.classed("hover",!0)}).on("mouseout",function(){i.transition().duration(500).style("opacity",0),Nn(this).classed("hover",!1)})};a0A.push(Abe);const ebe=function(t="gen-1"){Ig={},Xj={},XJ=[],a0A=[Abe],$p=[],$QA={},eQA=0,A1A={},t8A=!0,o0A=t,g0()},tbe=t=>{o0A=t||"gen-2"},nbe=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},ibe=function(t,i,s){let a=t.text.trim(),h=s.text;t===s&&s.text.match(/\s/)&&(a=void 0);function Q(N){const U={boolean:{},number:{},string:{}},R=[];let T;return{nodeList:N.filter(function(W){const AA=typeof W;return W.stmt&&W.stmt==="dir"?(T=W.value,!1):W.trim()===""?!1:AA in U?U[AA].hasOwnProperty(W)?!1:U[AA][W]=!0:R.includes(W)?!1:R.push(W)}),dir:T}}let w=[];const{nodeList:I,dir:d}=Q(w.concat.apply(w,i));if(w=I,o0A==="gen-1")for(let N=0;N 2e3)return;if(rbe[sX]=i,$p[i].id===t)return{result:!0,count:0};let a=0,h=1;for(;a =0){const w=cbe(t,Q);if(w.result)return{result:!0,count:h+w.count};h=h+w.count}a=a+1}return{result:!1,count:h}},sbe=function(t){return rbe[t]},obe=function(){sX=-1,$p.length>0&&cbe("none",$p.length-1)},abe=function(){return $p},Bbe=()=>t8A?(t8A=!1,!0):!1,Q2t=t=>{let i=t.trim(),s="arrow_open";switch(i[0]){case"<":s="arrow_point",i=i.slice(1);break;case"x":s="arrow_cross",i=i.slice(1);break;case"o":s="arrow_circle",i=i.slice(1);break}let a="normal";return i.includes("=")&&(a="thick"),i.includes(".")&&(a="dotted"),{type:s,stroke:a}},E2t=(t,i)=>{const s=i.length;let a=0;for(let h=0;h {const i=t.trim();let s=i.slice(0,-1),a="arrow_open";switch(i.slice(-1)){case"x":a="arrow_cross",i[0]==="x"&&(a="double_"+a,s=s.slice(1));break;case">":a="arrow_point",i[0]==="<"&&(a="double_"+a,s=s.slice(1));break;case"o":a="arrow_circle",i[0]==="o"&&(a="double_"+a,s=s.slice(1));break}let h="normal",Q=s.length-1;s[0]==="="&&(h="thick"),s[0]==="~"&&(h="invisible");let w=E2t(".",s);return w&&(h="dotted",Q=w),{type:a,stroke:h,length:Q}},gbe=(t,i)=>{const s=f2t(t);let a;if(i){if(a=Q2t(i),a.stroke!==s.stroke)return{type:"INVALID",stroke:"INVALID"};if(a.type==="arrow_open")a.type=s.type;else{if(a.type!==s.type)return{type:"INVALID",stroke:"INVALID"};a.type="double_"+a.type}return a.type==="double_arrow"&&(a.type="double_arrow_point"),a.length=s.length,a}return s},hbe=(t,i)=>{let s=!1;return t.forEach(a=>{a.nodes.indexOf(i)>=0&&(s=!0)}),s},lbe=(t,i)=>{const s=[];return t.nodes.forEach((a,h)=>{hbe(i,a)||s.push(t.nodes[h])}),{nodes:s}},ube={firstGraph:Bbe},xJ={parseDirective:TUe,defaultConfig:()=>VJ.flowchart,setAccTitle:A1,getAccTitle:h0,getAccDescription:u0,setAccDescription:l0,addVertex:vUe,lookUpDomId:bZ,addLink:SUe,updateLinkInterpolate:LUe,updateLink:zUe,addClass:PUe,setDirection:OUe,setClass:g0A,setTooltip:l2t,getTooltip:KUe,setClickEvent:VUe,setLink:WUe,bindFunctions:XUe,getDirection:ZUe,getVertices:qUe,getEdges:_Ue,getClasses:$Ue,clear:ebe,setGen:tbe,defaultStyle:nbe,addSubGraph:ibe,getDepthFirstPos:sbe,indexNodes:obe,getSubGraphs:abe,destructLink:gbe,lex:ube,exists:hbe,makeUniq:lbe,setDiagramTitle:EI,getDiagramTitle:zE},I2t=Object.freeze(Object.defineProperty({__proto__:null,addClass:PUe,addLink:SUe,addSingleLink:jUe,addSubGraph:ibe,addVertex:vUe,bindFunctions:XUe,clear:ebe,default:xJ,defaultStyle:nbe,destructLink:gbe,firstGraph:Bbe,getClasses:$Ue,getDepthFirstPos:sbe,getDirection:ZUe,getEdges:_Ue,getSubGraphs:abe,getTooltip:KUe,getVertices:qUe,indexNodes:obe,lex:ube,lookUpDomId:bZ,parseDirective:TUe,setClass:g0A,setClickEvent:VUe,setDirection:OUe,setGen:tbe,setLink:WUe,updateLink:zUe,updateLinkInterpolate:LUe},Symbol.toStringTag,{value:"Module"}));var C2t="[object Symbol]";function ZJ(t){return typeof t=="symbol"||i2(t)&&uk(t)==C2t}function nS(t,i){for(var s=-1,a=t==null?0:t.length,h=Array(a);++s0){if(++i>=R2t)return arguments[0]}else i=0;return t.apply(void 0,arguments)}}function Zj(t){return function(){return t}}var S2t=function(){try{var t=Qk(Object,"defineProperty");return t({},"",{}),t}catch{}}();const e1A=S2t;var L2t=e1A?function(t,i){return e1A(t,"toString",{configurable:!0,enumerable:!1,value:Zj(i),writable:!0})}:Ik;const z2t=L2t;var P2t=j2t(z2t);const Ebe=P2t;function fbe(t,i){for(var s=-1,a=t==null?0:t.length;++s-1}var X2t=9007199254740991,Z2t=/^(?:0|[1-9]\d*)$/;function h0A(t,i){var s=typeof t;return i=i??X2t,!!i&&(s=="number"||s!="symbol"&&Z2t.test(t))&&t>-1&&t%1==0&&t1?s[h-1]:void 0,w=h>2?s[2]:void 0;for(Q=t.length>3&&typeof Q=="function"?(h--,Q):void 0,w&&VX(s[0],s[1],w)&&(Q=h<3?void 0:Q,h=1),i=Object(i);++a0&&s(I)?i>1?f0A(I,i-1,s,a,h):HjA(h,I):a||(h[h.length]=I)}return h}function e5(t){var i=t==null?0:t.length;return i?f0A(t,1):[]}function fyt(t){return Ebe(Cbe(t,void 0,e5),t+"")}var Iyt=gme(Object.getPrototypeOf,Object);const xjA=Iyt;var Cyt="[object Object]",dyt=Function.prototype,Fyt=Object.prototype,Mbe=dyt.toString,Myt=Fyt.hasOwnProperty,Yyt=Mbe.call(Object);function Ybe(t){if(!i2(t)||uk(t)!=Cyt)return!1;var i=xjA(t);if(i===null)return!0;var s=Myt.call(i,"constructor")&&i.constructor;return typeof s=="function"&&s instanceof s&&Mbe.call(s)==Yyt}function Dyt(t,i,s,a){var h=-1,Q=t==null?0:t.length;for(a&&Q&&(s=t[++h]);++h I))return!1;var D=Q.get(t),N=Q.get(i);if(D&&N)return D==i&&N==t;var U=-1,R=!0,T=s&s4t?new XX:void 0;for(Q.set(t,i),Q.set(i,t);++U2?i[2]:void 0;for(h&&VX(i[0],i[1],h)&&(a=1);++s-1?h[Q?i[w]:w]:void 0}}var ANt=Math.max;function eNt(t,i,s){var a=t==null?0:t.length;if(!a)return-1;var h=s==null?0:H2t(s);return h<0&&(h=ANt(a+h,0)),Ibe(t,Eb(i),h)}var tNt=$4t(eNt);const SjA=tNt;function Obe(t,i){var s=-1,a=wb(t)?Array(t.length):[];return I0A(t,function(h,Q,w){a[++s]=i(h,Q,w)}),a}function _l(t,i){var s=$l(t)?nS:Obe;return s(t,Eb(i))}function nNt(t,i){return t==null?t:TjA(t,jjA(i),Ck)}function iNt(t,i){return t&&vjA(t,jjA(i))}function rNt(t,i){return t>i}var cNt=Object.prototype,sNt=cNt.hasOwnProperty;function oNt(t,i){return t!=null&&sNt.call(t,i)}function Es(t,i){return t!=null&&jbe(t,i,oNt)}function aNt(t,i){return nS(i,function(s){return t[s]})}function Wp(t){return t==null?[]:aNt(t,cI(t))}function Cl(t){return t===void 0}function Wbe(t,i){return ti||Q&&w&&d&&!I&&!D||a&&w&&d||!s&&d||!h)return 1;if(!a&&!Q&&!D&&t=I)return d;var D=s[a];return d*(D=="desc"?-1:1)}}return t.index-i.index}function QNt(t,i,s){i.length?i=nS(i,function(Q){return $l(Q)?function(w){return E0A(w,Q.length===1?Q[0]:Q)}:Q}):i=[Ik];var a=-1;i=nS(i,_1A(Eb));var h=Obe(t,function(Q,w,I){var d=nS(i,function(D){return D(Q)});return{criteria:d,index:++a,value:Q}});return lNt(h,function(Q,w){return wNt(Q,w,s)})}function ENt(t,i){return hNt(t,i,function(s,a){return Sbe(t,a)})}var fNt=fyt(function(t,i){return t==null?{}:ENt(t,i)});const qX=fNt;var INt=Math.ceil,CNt=Math.max;function dNt(t,i,s,a){for(var h=-1,Q=CNt(INt((i-t)/(s||1)),0),w=Array(Q);Q--;)w[a?Q:++h]=t,t+=s;return w}function FNt(t){return function(i,s,a){return a&&typeof a!="number"&&VX(i,s,a)&&(s=a=void 0),i=tQA(i),s===void 0?(s=i,i=0):s=tQA(s),a=a===void 0?i1&&VX(t,i[0],i[1])?i=[]:s>2&&VX(i[0],i[1],i[2])&&(i=[i[0]]),QNt(t,f0A(i,1),[])});const JZ=DNt;var yNt=1/0,pNt=tS&&1/kjA(new tS([,-0]))[1]==yNt?function(t){return new tS(t)}:k2t;const NNt=pNt;var mNt=200;function UNt(t,i,s){var a=-1,h=V2t,Q=t.length,w=!0,I=[],d=I;if(s)w=!1,h=q4t;else if(Q>=mNt){var D=i?null:NNt(t);if(D)return kjA(D);w=!1,h=kbe,d=new XX}else d=i?[]:I;A:for(;++a1?h.setNode(Q,s):h.setNode(Q)}),this}setNode(i,s){return Es(this._nodes,i)?(arguments.length>1&&(this._nodes[i]=s),this):(this._nodes[i]=arguments.length>1?s:this._defaultNodeLabelFn(i),this._isCompound&&(this._parent[i]=lJ,this._children[i]={},this._children[lJ][i]=!0),this._in[i]={},this._preds[i]={},this._out[i]={},this._sucs[i]={},++this._nodeCount,this)}node(i){return this._nodes[i]}hasNode(i){return Es(this._nodes,i)}removeNode(i){var s=this;if(Es(this._nodes,i)){var a=function(h){s.removeEdge(s._edgeObjs[h])};delete this._nodes[i],this._isCompound&&(this._removeFromParentsChildList(i),delete this._parent[i],Dn(this.children(i),function(h){s.setParent(h)}),delete this._children[i]),Dn(cI(this._in[i]),a),delete this._in[i],delete this._preds[i],Dn(cI(this._out[i]),a),delete this._out[i],delete this._sucs[i],--this._nodeCount}return this}setParent(i,s){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(Cl(s))s=lJ;else{s+="";for(var a=s;!Cl(a);a=this.parent(a))if(a===i)throw new Error("Setting "+s+" as parent of "+i+" would create a cycle");this.setNode(s)}return this.setNode(i),this._removeFromParentsChildList(i),this._parent[i]=s,this._children[s][i]=!0,this}_removeFromParentsChildList(i){delete this._children[this._parent[i]][i]}parent(i){if(this._isCompound){var s=this._parent[i];if(s!==lJ)return s}}children(i){if(Cl(i)&&(i=lJ),this._isCompound){var s=this._children[i];if(s)return cI(s)}else{if(i===lJ)return this.nodes();if(this.hasNode(i))return[]}}predecessors(i){var s=this._preds[i];if(s)return cI(s)}successors(i){var s=this._sucs[i];if(s)return cI(s)}neighbors(i){var s=this.predecessors(i);if(s)return HNt(s,this.successors(i))}isLeaf(i){var s;return this.isDirected()?s=this.successors(i):s=this.neighbors(i),s.length===0}filterNodes(i){var s=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});s.setGraph(this.graph());var a=this;Dn(this._nodes,function(w,I){i(I)&&s.setNode(I,w)}),Dn(this._edgeObjs,function(w){s.hasNode(w.v)&&s.hasNode(w.w)&&s.setEdge(w,a.edge(w))});var h={};function Q(w){var I=a.parent(w);return I===void 0||s.hasNode(I)?(h[w]=I,I):I in h?h[I]:Q(I)}return this._isCompound&&Dn(s.nodes(),function(w){s.setParent(w,Q(w))}),s}setDefaultEdgeLabel(i){return YS(i)||(i=Zj(i)),this._defaultEdgeLabelFn=i,this}edgeCount(){return this._edgeCount}edges(){return Wp(this._edgeObjs)}setPath(i,s){var a=this,h=arguments;return GZ(i,function(Q,w){return h.length>1?a.setEdge(Q,w,s):a.setEdge(Q,w),w}),this}setEdge(){var i,s,a,h,Q=!1,w=arguments[0];typeof w=="object"&&w!==null&&"v"in w?(i=w.v,s=w.w,a=w.name,arguments.length===2&&(h=arguments[1],Q=!0)):(i=w,s=arguments[1],a=arguments[3],arguments.length>2&&(h=arguments[2],Q=!0)),i=""+i,s=""+s,Cl(a)||(a=""+a);var I=oX(this._isDirected,i,s,a);if(Es(this._edgeLabels,I))return Q&&(this._edgeLabels[I]=h),this;if(!Cl(a)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(i),this.setNode(s),this._edgeLabels[I]=Q?h:this._defaultEdgeLabelFn(i,s,a);var d=RNt(this._isDirected,i,s,a);return i=d.v,s=d.w,Object.freeze(d),this._edgeObjs[I]=d,B2e(this._preds[s],i),B2e(this._sucs[i],s),this._in[s][I]=d,this._out[i][I]=d,this._edgeCount++,this}edge(i,s,a){var h=arguments.length===1?xRA(this._isDirected,arguments[0]):oX(this._isDirected,i,s,a);return this._edgeLabels[h]}hasEdge(i,s,a){var h=arguments.length===1?xRA(this._isDirected,arguments[0]):oX(this._isDirected,i,s,a);return Es(this._edgeLabels,h)}removeEdge(i,s,a){var h=arguments.length===1?xRA(this._isDirected,arguments[0]):oX(this._isDirected,i,s,a),Q=this._edgeObjs[h];return Q&&(i=Q.v,s=Q.w,delete this._edgeLabels[h],delete this._edgeObjs[h],g2e(this._preds[s],i),g2e(this._sucs[i],s),delete this._in[s][h],delete this._out[i][h],this._edgeCount--),this}inEdges(i,s){var a=this._in[i];if(a){var h=Wp(a);return s?Sp(h,function(Q){return Q.v===s}):h}}outEdges(i,s){var a=this._out[i];if(a){var h=Wp(a);return s?Sp(h,function(Q){return Q.w===s}):h}}nodeEdges(i,s){var a=this.inEdges(i,s);if(a)return a.concat(this.outEdges(i,s))}}Pu.prototype._nodeCount=0;Pu.prototype._edgeCount=0;function B2e(t,i){t[i]?t[i]++:t[i]=1}function g2e(t,i){--t[i]||delete t[i]}function oX(t,i,s,a){var h=""+i,Q=""+s;if(!t&&h>Q){var w=h;h=Q,Q=w}return h+a2e+Q+a2e+(Cl(a)?kNt:a)}function RNt(t,i,s,a){var h=""+i,Q=""+s;if(!t&&h>Q){var w=h;h=Q,Q=w}var I={v:h,w:Q};return a&&(I.name=a),I}function xRA(t,i){return oX(t,i.v,i.w,i.name)}class TNt{constructor(){var i={};i._next=i._prev=i,this._sentinel=i}dequeue(){var i=this._sentinel,s=i._prev;if(s!==i)return h2e(s),s}enqueue(i){var s=this._sentinel;i._prev&&i._next&&h2e(i),i._next=s._next,s._next._prev=i,s._next=i,i._prev=s}toString(){for(var i=[],s=this._sentinel,a=s._prev;a!==s;)i.push(JSON.stringify(a,vNt)),a=a._prev;return"["+i.join(", ")+"]"}}function h2e(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function vNt(t,i){if(t!=="_next"&&t!=="_prev")return i}var jNt=Zj(1);function SNt(t,i){if(t.nodeCount()<=1)return[];var s=zNt(t,i||jNt),a=LNt(s.graph,s.buckets,s.zeroIdx);return e5(_l(a,function(h){return t.outEdges(h.v,h.w)}))}function LNt(t,i,s){for(var a=[],h=i[i.length-1],Q=i[0],w;t.nodeCount();){for(;w=Q.dequeue();)GRA(t,i,s,w);for(;w=h.dequeue();)GRA(t,i,s,w);if(t.nodeCount()){for(var I=i.length-2;I>0;--I)if(w=i[I].dequeue(),w){a=a.concat(GRA(t,i,s,w,!0));break}}}return a}function GRA(t,i,s,a,h){var Q=h?[]:void 0;return Dn(t.inEdges(a.v),function(w){var I=t.edge(w),d=t.node(w.v);h&&Q.push({v:w.v,w:w.w}),d.out-=I,s8A(i,s,d)}),Dn(t.outEdges(a.v),function(w){var I=t.edge(w),d=w.w,D=t.node(d);D.in-=I,s8A(i,s,D)}),t.removeNode(a.v),Q}function zNt(t,i){var s=new Pu,a=0,h=0;Dn(t.nodes(),function(I){s.setNode(I,{v:I,in:0,out:0})}),Dn(t.edges(),function(I){var d=s.edge(I.v,I.w)||0,D=i(I),N=d+D;s.setEdge(I.v,I.w,N),h=Math.max(h,s.node(I.v).out+=D),a=Math.max(a,s.node(I.w).in+=D)});var Q=_J(h+a+3).map(function(){return new TNt}),w=a+1;return Dn(s.nodes(),function(I){s8A(Q,w,s.node(I))}),{graph:s,buckets:Q,zeroIdx:w}}function s8A(t,i,s){s.out?s.in?t[s.out-s.in+i].enqueue(s):t[t.length-1].enqueue(s):t[0].enqueue(s)}function PNt(t){var i=t.graph().acyclicer==="greedy"?SNt(t,s(t)):ONt(t);Dn(i,function(a){var h=t.edge(a);t.removeEdge(a),h.forwardName=a.name,h.reversed=!0,t.setEdge(a.w,a.v,h,d0A("rev"))});function s(a){return function(h){return a.edge(h).weight}}}function ONt(t){var i=[],s={},a={};function h(Q){Es(a,Q)||(a[Q]=!0,s[Q]=!0,Dn(t.outEdges(Q),function(w){Es(s,w.w)?i.push(w):h(w.w)}),delete s[Q])}return Dn(t.nodes(),h),i}function WNt(t){Dn(t.edges(),function(i){var s=t.edge(i);if(s.reversed){t.removeEdge(i);var a=s.forwardName;delete s.reversed,delete s.forwardName,t.setEdge(i.w,i.v,s,a)}})}function t5(t,i,s,a){var h;do h=d0A(a);while(t.hasNode(h));return s.dummy=i,t.setNode(h,s),h}function KNt(t){var i=new Pu().setGraph(t.graph());return Dn(t.nodes(),function(s){i.setNode(s,t.node(s))}),Dn(t.edges(),function(s){var a=i.edge(s.v,s.w)||{weight:0,minlen:1},h=t.edge(s);i.setEdge(s.v,s.w,{weight:a.weight+h.weight,minlen:Math.max(a.minlen,h.minlen)})}),i}function Kbe(t){var i=new Pu({multigraph:t.isMultigraph()}).setGraph(t.graph());return Dn(t.nodes(),function(s){t.children(s).length||i.setNode(s,t.node(s))}),Dn(t.edges(),function(s){i.setEdge(s,t.edge(s))}),i}function l2e(t,i){var s=t.x,a=t.y,h=i.x-s,Q=i.y-a,w=t.width/2,I=t.height/2;if(!h&&!Q)throw new Error("Not possible to find intersection inside of the rectangle");var d,D;return Math.abs(Q)*w>Math.abs(h)*I?(Q<0&&(I=-I),d=I*h/Q,D=I):(h<0&&(w=-w),d=w,D=w*Q/h),{x:s+d,y:a+D}}function F0A(t){var i=_l(_J(Vbe(t)+1),function(){return[]});return Dn(t.nodes(),function(s){var a=t.node(s),h=a.rank;Cl(h)||(i[h][a.order]=s)}),i}function VNt(t){var i=ZX(_l(t.nodes(),function(s){return t.node(s).rank}));Dn(t.nodes(),function(s){var a=t.node(s);Es(a,"rank")&&(a.rank-=i)})}function XNt(t){var i=ZX(_l(t.nodes(),function(Q){return t.node(Q).rank})),s=[];Dn(t.nodes(),function(Q){var w=t.node(Q).rank-i;s[w]||(s[w]=[]),s[w].push(Q)});var a=0,h=t.graph().nodeRankFactor;Dn(s,function(Q,w){Cl(Q)&&w%h!==0?--a:a&&Dn(Q,function(I){t.node(I).rank+=a})})}function u2e(t,i,s,a){var h={width:0,height:0};return arguments.length>=4&&(h.rank=s,h.order=a),t5(t,"border",h,i)}function Vbe(t){return qJ(_l(t.nodes(),function(i){var s=t.node(i).rank;if(!Cl(s))return s}))}function ZNt(t,i){var s={lhs:[],rhs:[]};return Dn(t,function(a){i(a)?s.lhs.push(a):s.rhs.push(a)}),s}function qNt(t,i){var s=o2e();try{return i()}finally{console.log(t+" time: "+(o2e()-s)+"ms")}}function _Nt(t,i){return i()}function $Nt(t){function i(s){var a=t.children(s),h=t.node(s);if(a.length&&Dn(a,i),Es(h,"minRank")){h.borderLeft=[],h.borderRight=[];for(var Q=h.minRank,w=h.maxRank+1;Qw.lim&&(I=w,d=!0);var D=Sp(i.edges(),function(N){return d===E2e(t,t.node(N.v),I)&&d!==E2e(t,t.node(N.w),I)});return zjA(D,function(N){return _X(i,N)})}function nHe(t,i,s,a){var h=s.v,Q=s.w;t.removeEdge(h,Q),t.setEdge(a.v,a.w,{}),WjA(t),OjA(t,i),umt(t,i)}function umt(t,i){var s=SjA(t.nodes(),function(h){return!i.node(h).parent}),a=hmt(t,s);a=a.slice(1),Dn(a,function(h){var Q=t.node(h).parent,w=i.edge(h,Q),I=!1;w||(w=i.edge(Q,h),I=!0),i.node(h).rank=i.node(Q).rank+(I?w.minlen:-w.minlen)})}function wmt(t,i,s){return t.hasEdge(i,s)}function E2e(t,i,s){return s.low<=i.lim&&i.lim<=s.lim}function Qmt(t){switch(t.graph().ranker){case"network-simplex":f2e(t);break;case"tight-tree":fmt(t);break;case"longest-path":Emt(t);break;default:f2e(t)}}var Emt=PjA;function fmt(t){PjA(t),Zbe(t)}function f2e(t){dk(t)}function Imt(t){var i=t5(t,"root",{},"_root"),s=Cmt(t),a=qJ(Wp(s))-1,h=2*a+1;t.graph().nestingRoot=i,Dn(t.edges(),function(w){t.edge(w).minlen*=h});var Q=dmt(t)+1;Dn(t.children(),function(w){iHe(t,i,h,Q,a,s,w)}),t.graph().nodeRankFactor=h}function iHe(t,i,s,a,h,Q,w){var I=t.children(w);if(!I.length){w!==i&&t.setEdge(i,w,{weight:0,minlen:s});return}var d=u2e(t,"_bt"),D=u2e(t,"_bb"),N=t.node(w);t.setParent(d,w),N.borderTop=d,t.setParent(D,w),N.borderBottom=D,Dn(I,function(U){iHe(t,i,s,a,h,Q,U);var R=t.node(U),T=R.borderTop?R.borderTop:U,j=R.borderBottom?R.borderBottom:U,W=R.borderTop?a:2*a,AA=T!==j?1:h-Q[w]+1;t.setEdge(d,T,{weight:W,minlen:AA,nestingEdge:!0}),t.setEdge(j,D,{weight:W,minlen:AA,nestingEdge:!0})}),t.parent(w)||t.setEdge(i,d,{weight:0,minlen:h+Q[w]})}function Cmt(t){var i={};function s(a,h){var Q=t.children(a);Q&&Q.length&&Dn(Q,function(w){s(w,h+1)}),i[a]=h}return Dn(t.children(),function(a){s(a,1)}),i}function dmt(t){return GZ(t.edges(),function(i,s){return i+t.edge(s).weight},0)}function Fmt(t){var i=t.graph();t.removeNode(i.nestingRoot),delete i.nestingRoot,Dn(t.edges(),function(s){var a=t.edge(s);a.nestingEdge&&t.removeEdge(s)})}function Mmt(t,i,s){var a={},h;Dn(s,function(Q){for(var w=t.parent(Q),I,d;w;){if(I=t.parent(w),I?(d=a[I],a[I]=w):(d=h,h=w),d&&d!==w){i.setEdge(d,w);return}w=I}})}function Ymt(t,i,s){var a=Dmt(t),h=new Pu({compound:!0}).setGraph({root:a}).setDefaultNodeLabel(function(Q){return t.node(Q)});return Dn(t.nodes(),function(Q){var w=t.node(Q),I=t.parent(Q);(w.rank===i||w.minRank<=i&&i<=w.maxRank)&&(h.setNode(Q),h.setParent(Q,I||a),Dn(t[s](Q),function(d){var D=d.v===Q?d.w:d.v,N=h.edge(D,Q),U=Cl(N)?0:N.weight;h.setEdge(D,Q,{weight:t.edge(d).weight+U})}),Es(w,"minRank")&&h.setNode(Q,{borderLeft:w.borderLeft[i],borderRight:w.borderRight[i]}))}),h}function Dmt(t){for(var i;t.hasNode(i=d0A("_root")););return i}function ymt(t,i){for(var s=0,a=1;a 0;)N%2&&(U+=I[N+1]),N=N-1>>1,I[N]+=D.weight;d+=D.weight*U})),d}function Nmt(t){var i={},s=Sp(t.nodes(),function(I){return!t.children(I).length}),a=qJ(_l(s,function(I){return t.node(I).rank})),h=_l(_J(a+1),function(){return[]});function Q(I){if(!Es(i,I)){i[I]=!0;var d=t.node(I);h[d.rank].push(I),Dn(t.successors(I),Q)}}var w=JZ(s,function(I){return t.node(I).rank});return Dn(w,Q),h}function mmt(t,i){return _l(i,function(s){var a=t.inEdges(s);if(a.length){var h=GZ(a,function(Q,w){var I=t.edge(w),d=t.node(w.v);return{sum:Q.sum+I.weight*d.order,weight:Q.weight+I.weight}},{sum:0,weight:0});return{v:s,barycenter:h.sum/h.weight,weight:h.weight}}else return{v:s}})}function Umt(t,i){var s={};Dn(t,function(h,Q){var w=s[h.v]={indegree:0,in:[],out:[],vs:[h.v],i:Q};Cl(h.barycenter)||(w.barycenter=h.barycenter,w.weight=h.weight)}),Dn(i.edges(),function(h){var Q=s[h.v],w=s[h.w];!Cl(Q)&&!Cl(w)&&(w.indegree++,Q.out.push(s[h.w]))});var a=Sp(s,function(h){return!h.indegree});return bmt(a)}function bmt(t){var i=[];function s(Q){return function(w){w.merged||(Cl(w.barycenter)||Cl(Q.barycenter)||w.barycenter>=Q.barycenter)&&Hmt(Q,w)}}function a(Q){return function(w){w.in.push(Q),--w.indegree===0&&t.push(w)}}for(;t.length;){var h=t.pop();i.push(h),Dn(h.in.reverse(),s(h)),Dn(h.out,a(h))}return _l(Sp(i,function(Q){return!Q.merged}),function(Q){return qX(Q,["vs","i","barycenter","weight"])})}function Hmt(t,i){var s=0,a=0;t.weight&&(s+=t.barycenter*t.weight,a+=t.weight),i.weight&&(s+=i.barycenter*i.weight,a+=i.weight),t.vs=i.vs.concat(t.vs),t.barycenter=s/a,t.weight=a,t.i=Math.min(i.i,t.i),i.merged=!0}function xmt(t,i){var s=ZNt(t,function(N){return Es(N,"barycenter")}),a=s.lhs,h=JZ(s.rhs,function(N){return-N.i}),Q=[],w=0,I=0,d=0;a.sort(Gmt(!!i)),d=I2e(Q,h,d),Dn(a,function(N){d+=N.vs.length,Q.push(N.vs),w+=N.barycenter*N.weight,I+=N.weight,d=I2e(Q,h,d)});var D={vs:e5(Q)};return I&&(D.barycenter=w/I,D.weight=I),D}function I2e(t,i,s){for(var a;i.length&&(a=n1A(i)).i<=s;)i.pop(),t.push(a.vs),s++;return s}function Gmt(t){return function(i,s){return i.barycenter s.barycenter?1:t?s.i-i.i:i.i-s.i}}function rHe(t,i,s,a){var h=t.children(i),Q=t.node(i),w=Q?Q.borderLeft:void 0,I=Q?Q.borderRight:void 0,d={};w&&(h=Sp(h,function(j){return j!==w&&j!==I}));var D=mmt(t,h);Dn(D,function(j){if(t.children(j.v).length){var W=rHe(t,j.v,s,a);d[j.v]=W,Es(W,"barycenter")&&kmt(j,W)}});var N=Umt(D,s);Jmt(N,d);var U=xmt(N,a);if(w&&(U.vs=e5([w,U.vs,I]),t.predecessors(w).length)){var R=t.node(t.predecessors(w)[0]),T=t.node(t.predecessors(I)[0]);Es(U,"barycenter")||(U.barycenter=0,U.weight=0),U.barycenter=(U.barycenter*U.weight+R.order+T.order)/(U.weight+2),U.weight+=2}return U}function Jmt(t,i){Dn(t,function(s){s.vs=e5(s.vs.map(function(a){return i[a]?i[a].vs:a}))})}function kmt(t,i){Cl(t.barycenter)?(t.barycenter=i.barycenter,t.weight=i.weight):(t.barycenter=(t.barycenter*t.weight+i.barycenter*i.weight)/(t.weight+i.weight),t.weight+=i.weight)}function Rmt(t){var i=Vbe(t),s=C2e(t,_J(1,i+1),"inEdges"),a=C2e(t,_J(i-1,-1,-1),"outEdges"),h=Nmt(t);d2e(t,h);for(var Q=Number.POSITIVE_INFINITY,w,I=0,d=0;d<4;++I,++d){Tmt(I%2?s:a,I%4>=2),h=F0A(t);var D=ymt(t,h);D w||I>i[d].lim));for(D=d,d=a;(d=t.parent(d))!==D;)Q.push(d);return{path:h.concat(Q.reverse()),lca:D}}function Smt(t){var i={},s=0;function a(h){var Q=s;Dn(t.children(h),a),i[h]={low:Q,lim:s++}}return Dn(t.children(),a),i}function Lmt(t,i){var s={};function a(h,Q){var w=0,I=0,d=h.length,D=n1A(Q);return Dn(Q,function(N,U){var R=Pmt(t,N),T=R?t.node(R).order:d;(R||N===D)&&(Dn(Q.slice(I,U+1),function(j){Dn(t.predecessors(j),function(W){var AA=t.node(W),X=AA.order;(XD)&&cHe(s,R,N)})})}function h(Q,w){var I=-1,d,D=0;return Dn(w,function(N,U){if(t.node(N).dummy==="border"){var R=t.predecessors(N);R.length&&(d=t.node(R[0]).order,a(w,D,U,I,d),D=U,I=d)}a(w,D,w.length,d,Q.length)}),w}return GZ(i,h),s}function Pmt(t,i){if(t.node(i).dummy)return SjA(t.predecessors(i),function(s){return t.node(s).dummy})}function cHe(t,i,s){if(i>s){var a=i;i=s,s=a}var h=t[i];h||(t[i]=h={}),h[s]=!0}function Omt(t,i,s){if(i>s){var a=i;i=s,s=a}return Es(t[i],s)}function Wmt(t,i,s,a){var h={},Q={},w={};return Dn(i,function(I){Dn(I,function(d,D){h[d]=d,Q[d]=d,w[d]=D})}),Dn(i,function(I){var d=-1;Dn(I,function(D){var N=a(D);if(N.length){N=JZ(N,function(W){return w[W]});for(var U=(N.length-1)/2,R=Math.floor(U),T=Math.ceil(U);R<=T;++R){var j=N[R];Q[D]===D&&d 0}function l2(t,i,s){var a=t.x,h=t.y,Q=[],w=Number.POSITIVE_INFINITY,I=Number.POSITIVE_INFINITY;i.forEach(function(j){w=Math.min(w,j.x),I=Math.min(I,j.y)});for(var d=a-t.width/2-w,D=h-t.height/2-I,N=0;N 1&&Q.sort(function(j,W){var AA=j.x-s.x,X=j.y-s.y,K=Math.sqrt(AA*AA+X*X),$=W.x-s.x,QA=W.y-s.y,hA=Math.sqrt($*$+QA*QA);return K Math.abs(h)*I?(Q<0&&(I=-I),d=Q===0?0:I*h/Q,D=I):(h<0&&(w=-w),d=w,D=h===0?0:w*Q/h),{x:s+d,y:a+D}}var l8A={rect:XUt,ellipse:ZUt,circle:qUt,diamond:_Ut};function VUt(t){l8A=t}function XUt(t,i,s){var a=t.insert("rect",":first-child").attr("rx",s.rx).attr("ry",s.ry).attr("x",-i.width/2).attr("y",-i.height/2).attr("width",i.width).attr("height",i.height);return s.intersect=function(h){return XjA(s,h)},a}function ZUt(t,i,s){var a=i.width/2,h=i.height/2,Q=t.insert("ellipse",":first-child").attr("x",-i.width/2).attr("y",-i.height/2).attr("rx",a).attr("ry",h);return s.intersect=function(w){return gHe(s,a,h,w)},Q}function qUt(t,i,s){var a=Math.max(i.width,i.height)/2,h=t.insert("circle",":first-child").attr("x",-i.width/2).attr("y",-i.height/2).attr("r",a);return s.intersect=function(Q){return WUt(s,a,Q)},h}function _Ut(t,i,s){var a=i.width*Math.SQRT2/2,h=i.height*Math.SQRT2/2,Q=[{x:0,y:-h},{x:-a,y:0},{x:0,y:h},{x:a,y:0}],w=t.insert("polygon",":first-child").attr("points",Q.map(function(I){return I.x+","+I.y}).join(" "));return s.intersect=function(I){return l2(s,Q,I)},w}function $Ut(){var t=function(i,s){tbt(s);var a=PV(i,"output"),h=PV(a,"clusters"),Q=PV(a,"edgePaths"),w=B8A(PV(a,"edgeLabels"),s),I=h8A(PV(a,"nodes"),s,l8A);n5(s),OUt(I,s),PUt(w,s),g8A(Q,s,o8A);var d=a8A(h,s);zUt(d,s),nbt(s)};return t.createNodes=function(i){return arguments.length?(LUt(i),t):h8A},t.createClusters=function(i){return arguments.length?(GUt(i),t):a8A},t.createEdgeLabels=function(i){return arguments.length?(JUt(i),t):B8A},t.createEdgePaths=function(i){return arguments.length?(kUt(i),t):g8A},t.shapes=function(i){return arguments.length?(VUt(i),t):l8A},t.arrows=function(i){return arguments.length?(pUt(i),t):o8A},t}var Abt={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},ebt={arrowhead:"normal",curve:t0};function tbt(t){t.nodes().forEach(function(i){var s=t.node(i);!Es(s,"label")&&!t.children(i).length&&(s.label=i),Es(s,"paddingX")&&Lj(s,{paddingLeft:s.paddingX,paddingRight:s.paddingX}),Es(s,"paddingY")&&Lj(s,{paddingTop:s.paddingY,paddingBottom:s.paddingY}),Es(s,"padding")&&Lj(s,{paddingLeft:s.padding,paddingRight:s.padding,paddingTop:s.padding,paddingBottom:s.padding}),Lj(s,Abt),Dn(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(a){s[a]=Number(s[a])}),Es(s,"width")&&(s._prevWidth=s.width),Es(s,"height")&&(s._prevHeight=s.height)}),t.edges().forEach(function(i){var s=t.edge(i);Es(s,"label")||(s.label=""),Lj(s,ebt)})}function nbt(t){Dn(t.nodes(),function(i){var s=t.node(i);Es(s,"_prevWidth")?s.width=s._prevWidth:delete s.width,Es(s,"_prevHeight")?s.height=s._prevHeight:delete s.height,delete s._prevWidth,delete s._prevHeight})}function PV(t,i){var s=t.select("g."+i);return s.empty()&&(s=t.append("g").attr("class",i)),s}function Lp(t){var i={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:ibt(t),edges:rbt(t)};return Cl(t.graph())||(i.value=_pt(t.graph())),i}function ibt(t){return _l(t.nodes(),function(i){var s=t.node(i),a=t.parent(i),h={v:i};return Cl(s)||(h.value=s),Cl(a)||(h.parent=a),h})}function rbt(t){return _l(t.edges(),function(i){var s=t.edge(i),a={v:i.v,w:i.w};return Cl(i.name)||(a.name=i.name),Cl(s)||(a.value=s),a})}const cbt={};function sbt(t,i){const s=i||cbt,a=typeof s.includeImageAlt=="boolean"?s.includeImageAlt:!0,h=typeof s.includeHtml=="boolean"?s.includeHtml:!0;return hHe(t,a,h)}function hHe(t,i,s){if(obt(t)){if("value"in t)return t.type==="html"&&!s?"":t.value;if(i&&"alt"in t&&t.alt)return t.alt;if("children"in t)return Y2e(t.children,i,s)}return Array.isArray(t)?Y2e(t,i,s):""}function Y2e(t,i,s){const a=[];let h=-1;for(;++h h?0:h+i:i=i>h?h:i,s=s>0?s:0,a.length<1e4)w=Array.from(a),w.unshift(i,s),[].splice.apply(t,w);else for(s&&[].splice.apply(t,[i,s]);Q 0?(c2(t,t.length,0,i),t):i}const D2e={}.hasOwnProperty;function abt(t){const i={};let s=-1;for(;++s w))return;const iA=i.events.length;let BA=iA,rA,FA;for(;BA--;)if(i.events[BA][0]==="exit"&&i.events[BA][1].type==="chunkFlow"){if(rA){FA=i.events[BA][1].end;break}rA=!0}for(X(a),aA=iA;aA $;){const hA=s[QA];i.containerState=hA[1],hA[0].exit.call(i,t)}s.length=$}function K(){h.write([null]),Q=void 0,h=void 0,i.containerState._closeFlow=void 0}}function dbt(t,i,s){return PB(t,t.attempt(this.parser.constructs.document,i,s),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function N2e(t){if(t===null||Id(t)||wbt(t))return 1;if(Qbt(t))return 2}function ZjA(t,i,s){const a=[];let h=-1;for(;++h 1&&t[s][1].end.offset-t[s][1].start.offset>1?2:1;const U=Object.assign({},t[a][1].end),R=Object.assign({},t[s][1].start);m2e(U,-d),m2e(R,d),w={type:d>1?"strongSequence":"emphasisSequence",start:U,end:Object.assign({},t[a][1].end)},I={type:d>1?"strongSequence":"emphasisSequence",start:Object.assign({},t[s][1].start),end:R},Q={type:d>1?"strongText":"emphasisText",start:Object.assign({},t[a][1].end),end:Object.assign({},t[s][1].start)},h={type:d>1?"strong":"emphasis",start:Object.assign({},w.start),end:Object.assign({},I.end)},t[a][1].end=Object.assign({},w.start),t[s][1].start=Object.assign({},I.end),D=[],t[a][1].end.offset-t[a][1].start.offset&&(D=Qd(D,[["enter",t[a][1],i],["exit",t[a][1],i]])),D=Qd(D,[["enter",h,i],["enter",w,i],["exit",w,i],["enter",Q,i]]),D=Qd(D,ZjA(i.parser.constructs.insideSpan.null,t.slice(a+1,s),i)),D=Qd(D,[["exit",Q,i],["enter",I,i],["exit",I,i],["exit",h,i]]),t[s][1].end.offset-t[s][1].start.offset?(N=2,D=Qd(D,[["enter",t[s][1],i],["exit",t[s][1],i]])):N=0,c2(t,a-1,s-a+3,D),s=a+D.length-N-2;break}}for(s=-1;++s =4?w(D):s(D)}function w(D){return D===null?d(D):os(D)?t.attempt(xbt,w,d)(D):(t.enter("codeFlowValue"),I(D))}function I(D){return D===null||os(D)?(t.exit("codeFlowValue"),w(D)):(t.consume(D),I)}function d(D){return t.exit("codeIndented"),i(D)}}function Jbt(t,i,s){const a=this;return h;function h(w){return a.parser.lazy[a.now().line]?s(w):os(w)?(t.enter("lineEnding"),t.consume(w),t.exit("lineEnding"),h):PB(t,Q,"linePrefix",4+1)(w)}function Q(w){const I=a.events[a.events.length-1];return I&&I[1].type==="linePrefix"&&I[2].sliceSerialize(I[1],!0).length>=4?i(w):os(w)?h(w):s(w)}}const kbt={name:"codeText",tokenize:vbt,resolve:Rbt,previous:Tbt};function Rbt(t){let i=t.length-4,s=3,a,h;if((t[s][1].type==="lineEnding"||t[s][1].type==="space")&&(t[i][1].type==="lineEnding"||t[i][1].type==="space")){for(a=s;++a=4?i(w):t.interrupt(a.parser.constructs.flow,s,i)(w)}}function EHe(t,i,s,a,h,Q,w,I,d){const D=d||Number.POSITIVE_INFINITY;let N=0;return U;function U(X){return X===60?(t.enter(a),t.enter(h),t.enter(Q),t.consume(X),t.exit(Q),R):X===null||X===41||w8A(X)?s(X):(t.enter(a),t.enter(w),t.enter(I),t.enter("chunkString",{contentType:"string"}),W(X))}function R(X){return X===62?(t.enter(Q),t.consume(X),t.exit(Q),t.exit(h),t.exit(a),i):(t.enter(I),t.enter("chunkString",{contentType:"string"}),T(X))}function T(X){return X===62?(t.exit("chunkString"),t.exit(I),R(X)):X===null||X===60||os(X)?s(X):(t.consume(X),X===92?j:T)}function j(X){return X===60||X===62||X===92?(t.consume(X),T):T(X)}function W(X){return X===40?++N>D?s(X):(t.consume(X),W):X===41?N--?(t.consume(X),W):(t.exit("chunkString"),t.exit(I),t.exit(w),t.exit(a),i(X)):X===null||Id(X)?N?s(X):(t.exit("chunkString"),t.exit(I),t.exit(w),t.exit(a),i(X)):w8A(X)?s(X):(t.consume(X),X===92?AA:W)}function AA(X){return X===40||X===41||X===92?(t.consume(X),W):W(X)}}function fHe(t,i,s,a,h,Q){const w=this;let I=0,d;return D;function D(T){return t.enter(a),t.enter(h),t.consume(T),t.exit(h),t.enter(Q),N}function N(T){return T===null||T===91||T===93&&!d||T===94&&!I&&"_hiddenFootnoteSupport"in w.parser.constructs||I>999?s(T):T===93?(t.exit(Q),t.enter(h),t.consume(T),t.exit(h),t.exit(a),i):os(T)?(t.enter("lineEnding"),t.consume(T),t.exit("lineEnding"),N):(t.enter("chunkString",{contentType:"string"}),U(T))}function U(T){return T===null||T===91||T===93||os(T)||I++>999?(t.exit("chunkString"),N(T)):(t.consume(T),d=d||!Xl(T),T===92?R:U)}function R(T){return T===91||T===92||T===93?(t.consume(T),I++,U):U(T)}}function IHe(t,i,s,a,h,Q){let w;return I;function I(R){return t.enter(a),t.enter(h),t.consume(R),t.exit(h),w=R===40?41:R,d}function d(R){return R===w?(t.enter(h),t.consume(R),t.exit(h),t.exit(a),i):(t.enter(Q),D(R))}function D(R){return R===w?(t.exit(Q),d(w)):R===null?s(R):os(R)?(t.enter("lineEnding"),t.consume(R),t.exit("lineEnding"),PB(t,D,"linePrefix")):(t.enter("chunkString",{contentType:"string"}),N(R))}function N(R){return R===w||R===null||os(R)?(t.exit("chunkString"),D(R)):(t.consume(R),R===92?U:N)}function U(R){return R===w||R===92?(t.consume(R),N):N(R)}}function dX(t,i){let s;return a;function a(h){return os(h)?(t.enter("lineEnding"),t.consume(h),t.exit("lineEnding"),s=!0,a):Xl(h)?PB(t,a,s?"linePrefix":"lineSuffix")(h):i(h)}}function iS(t){return t.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Wbt={name:"definition",tokenize:Vbt},Kbt={tokenize:Xbt,partial:!0};function Vbt(t,i,s){const a=this;let h;return Q;function Q(d){return t.enter("definition"),fHe.call(a,t,w,s,"definitionLabel","definitionLabelMarker","definitionLabelString")(d)}function w(d){return h=iS(a.sliceSerialize(a.events[a.events.length-1][1]).slice(1,-1)),d===58?(t.enter("definitionMarker"),t.consume(d),t.exit("definitionMarker"),dX(t,EHe(t,t.attempt(Kbt,PB(t,I,"whitespace"),PB(t,I,"whitespace")),s,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString"))):s(d)}function I(d){return d===null||os(d)?(t.exit("definition"),a.parser.defined.includes(h)||a.parser.defined.push(h),i(d)):s(d)}}function Xbt(t,i,s){return a;function a(w){return Id(w)?dX(t,h)(w):s(w)}function h(w){return w===34||w===39||w===40?IHe(t,PB(t,Q,"whitespace"),s,"definitionTitle","definitionTitleMarker","definitionTitleString")(w):s(w)}function Q(w){return w===null||os(w)?i(w):s(w)}}const Zbt={name:"hardBreakEscape",tokenize:qbt};function qbt(t,i,s){return a;function a(Q){return t.enter("hardBreakEscape"),t.enter("escapeMarker"),t.consume(Q),h}function h(Q){return os(Q)?(t.exit("escapeMarker"),t.exit("hardBreakEscape"),i(Q)):s(Q)}}const _bt={name:"headingAtx",tokenize:AHt,resolve:$bt};function $bt(t,i){let s=t.length-2,a=3,h,Q;return t[a][1].type==="whitespace"&&(a+=2),s-2>a&&t[s][1].type==="whitespace"&&(s-=2),t[s][1].type==="atxHeadingSequence"&&(a===s-1||s-4>a&&t[s-2][1].type==="whitespace")&&(s-=a+1===s?2:4),s>a&&(h={type:"atxHeadingText",start:t[a][1].start,end:t[s][1].end},Q={type:"chunkText",start:t[a][1].start,end:t[s][1].end,contentType:"text"},c2(t,a,s-a+1,[["enter",h,i],["enter",Q,i],["exit",Q,i],["exit",h,i]])),t}function AHt(t,i,s){const a=this;let h=0;return Q;function Q(N){return t.enter("atxHeading"),t.enter("atxHeadingSequence"),w(N)}function w(N){return N===35&&h++<6?(t.consume(N),w):N===null||Id(N)?(t.exit("atxHeadingSequence"),a.interrupt?i(N):I(N)):s(N)}function I(N){return N===35?(t.enter("atxHeadingSequence"),d(N)):N===null||os(N)?(t.exit("atxHeading"),i(N)):Xl(N)?PB(t,I,"whitespace")(N):(t.enter("atxHeadingText"),D(N))}function d(N){return N===35?(t.consume(N),d):(t.exit("atxHeadingSequence"),I(N))}function D(N){return N===null||N===35||Id(N)?(t.exit("atxHeadingText"),I(N)):(t.consume(N),D)}}const eHt=["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","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],H2e=["pre","script","style","textarea"],tHt={name:"htmlFlow",tokenize:rHt,resolveTo:iHt,concrete:!0},nHt={tokenize:cHt,partial:!0};function iHt(t){let i=t.length;for(;i--&&!(t[i][0]==="enter"&&t[i][1].type==="htmlFlow"););return i>1&&t[i-2][1].type==="linePrefix"&&(t[i][1].start=t[i-2][1].start,t[i+1][1].start=t[i-2][1].start,t.splice(i-2,2)),t}function rHt(t,i,s){const a=this;let h,Q,w,I,d;return D;function D(kA){return t.enter("htmlFlow"),t.enter("htmlFlowData"),t.consume(kA),N}function N(kA){return kA===33?(t.consume(kA),U):kA===47?(t.consume(kA),j):kA===63?(t.consume(kA),h=3,a.interrupt?i:SA):PD(kA)?(t.consume(kA),w=String.fromCharCode(kA),Q=!0,W):s(kA)}function U(kA){return kA===45?(t.consume(kA),h=2,R):kA===91?(t.consume(kA),h=5,w="CDATA[",I=0,T):PD(kA)?(t.consume(kA),h=4,a.interrupt?i:SA):s(kA)}function R(kA){return kA===45?(t.consume(kA),a.interrupt?i:SA):s(kA)}function T(kA){return kA===w.charCodeAt(I++)?(t.consume(kA),I===w.length?a.interrupt?i:gA:T):s(kA)}function j(kA){return PD(kA)?(t.consume(kA),w=String.fromCharCode(kA),W):s(kA)}function W(kA){return kA===null||kA===47||kA===62||Id(kA)?kA!==47&&Q&&H2e.includes(w.toLowerCase())?(h=1,a.interrupt?i(kA):gA(kA)):eHt.includes(w.toLowerCase())?(h=6,kA===47?(t.consume(kA),AA):a.interrupt?i(kA):gA(kA)):(h=7,a.interrupt&&!a.parser.lazy[a.now().line]?s(kA):Q?K(kA):X(kA)):kA===45||pM(kA)?(t.consume(kA),w+=String.fromCharCode(kA),W):s(kA)}function AA(kA){return kA===62?(t.consume(kA),a.interrupt?i:gA):s(kA)}function X(kA){return Xl(kA)?(t.consume(kA),X):rA(kA)}function K(kA){return kA===47?(t.consume(kA),rA):kA===58||kA===95||PD(kA)?(t.consume(kA),$):Xl(kA)?(t.consume(kA),K):rA(kA)}function $(kA){return kA===45||kA===46||kA===58||kA===95||pM(kA)?(t.consume(kA),$):QA(kA)}function QA(kA){return kA===61?(t.consume(kA),hA):Xl(kA)?(t.consume(kA),QA):K(kA)}function hA(kA){return kA===null||kA===60||kA===61||kA===62||kA===96?s(kA):kA===34||kA===39?(t.consume(kA),d=kA,aA):Xl(kA)?(t.consume(kA),hA):(d=null,iA(kA))}function aA(kA){return kA===null||os(kA)?s(kA):kA===d?(t.consume(kA),BA):(t.consume(kA),aA)}function iA(kA){return kA===null||kA===34||kA===39||kA===60||kA===61||kA===62||kA===96||Id(kA)?QA(kA):(t.consume(kA),iA)}function BA(kA){return kA===47||kA===62||Xl(kA)?K(kA):s(kA)}function rA(kA){return kA===62?(t.consume(kA),FA):s(kA)}function FA(kA){return Xl(kA)?(t.consume(kA),FA):kA===null||os(kA)?gA(kA):s(kA)}function gA(kA){return kA===45&&h===2?(t.consume(kA),GA):kA===60&&h===1?(t.consume(kA),cA):kA===62&&h===4?(t.consume(kA),jA):kA===63&&h===3?(t.consume(kA),SA):kA===93&&h===5?(t.consume(kA),_):os(kA)&&(h===6||h===7)?t.check(nHt,jA,fA)(kA):kA===null||os(kA)?fA(kA):(t.consume(kA),gA)}function fA(kA){return t.exit("htmlFlowData"),DA(kA)}function DA(kA){return kA===null?dA(kA):os(kA)?t.attempt({tokenize:eA,partial:!0},DA,dA)(kA):(t.enter("htmlFlowData"),gA(kA))}function eA(kA,vA,Fe){return at;function at(mt){return kA.enter("lineEnding"),kA.consume(mt),kA.exit("lineEnding"),fe}function fe(mt){return a.parser.lazy[a.now().line]?Fe(mt):vA(mt)}}function GA(kA){return kA===45?(t.consume(kA),SA):gA(kA)}function cA(kA){return kA===47?(t.consume(kA),w="",JA):gA(kA)}function JA(kA){return kA===62&&H2e.includes(w.toLowerCase())?(t.consume(kA),jA):PD(kA)&&w.length<8?(t.consume(kA),w+=String.fromCharCode(kA),JA):gA(kA)}function _(kA){return kA===93?(t.consume(kA),SA):gA(kA)}function SA(kA){return kA===62?(t.consume(kA),jA):kA===45&&h===2?(t.consume(kA),SA):gA(kA)}function jA(kA){return kA===null||os(kA)?(t.exit("htmlFlowData"),dA(kA)):(t.consume(kA),jA)}function dA(kA){return t.exit("htmlFlow"),i(kA)}}function cHt(t,i,s){return a;function a(h){return t.exit("htmlFlowData"),t.enter("lineEndingBlank"),t.consume(h),t.exit("lineEndingBlank"),t.attempt(M0A,i,s)}}const sHt={name:"htmlText",tokenize:oHt};function oHt(t,i,s){const a=this;let h,Q,w,I;return d;function d(dA){return t.enter("htmlText"),t.enter("htmlTextData"),t.consume(dA),D}function D(dA){return dA===33?(t.consume(dA),N):dA===47?(t.consume(dA),iA):dA===63?(t.consume(dA),hA):PD(dA)?(t.consume(dA),FA):s(dA)}function N(dA){return dA===45?(t.consume(dA),U):dA===91?(t.consume(dA),Q="CDATA[",w=0,AA):PD(dA)?(t.consume(dA),QA):s(dA)}function U(dA){return dA===45?(t.consume(dA),R):s(dA)}function R(dA){return dA===null||dA===62?s(dA):dA===45?(t.consume(dA),T):j(dA)}function T(dA){return dA===null||dA===62?s(dA):j(dA)}function j(dA){return dA===null?s(dA):dA===45?(t.consume(dA),W):os(dA)?(I=j,_(dA)):(t.consume(dA),j)}function W(dA){return dA===45?(t.consume(dA),jA):j(dA)}function AA(dA){return dA===Q.charCodeAt(w++)?(t.consume(dA),w===Q.length?X:AA):s(dA)}function X(dA){return dA===null?s(dA):dA===93?(t.consume(dA),K):os(dA)?(I=X,_(dA)):(t.consume(dA),X)}function K(dA){return dA===93?(t.consume(dA),$):X(dA)}function $(dA){return dA===62?jA(dA):dA===93?(t.consume(dA),$):X(dA)}function QA(dA){return dA===null||dA===62?jA(dA):os(dA)?(I=QA,_(dA)):(t.consume(dA),QA)}function hA(dA){return dA===null?s(dA):dA===63?(t.consume(dA),aA):os(dA)?(I=hA,_(dA)):(t.consume(dA),hA)}function aA(dA){return dA===62?jA(dA):hA(dA)}function iA(dA){return PD(dA)?(t.consume(dA),BA):s(dA)}function BA(dA){return dA===45||pM(dA)?(t.consume(dA),BA):rA(dA)}function rA(dA){return os(dA)?(I=rA,_(dA)):Xl(dA)?(t.consume(dA),rA):jA(dA)}function FA(dA){return dA===45||pM(dA)?(t.consume(dA),FA):dA===47||dA===62||Id(dA)?gA(dA):s(dA)}function gA(dA){return dA===47?(t.consume(dA),jA):dA===58||dA===95||PD(dA)?(t.consume(dA),fA):os(dA)?(I=gA,_(dA)):Xl(dA)?(t.consume(dA),gA):jA(dA)}function fA(dA){return dA===45||dA===46||dA===58||dA===95||pM(dA)?(t.consume(dA),fA):DA(dA)}function DA(dA){return dA===61?(t.consume(dA),eA):os(dA)?(I=DA,_(dA)):Xl(dA)?(t.consume(dA),DA):gA(dA)}function eA(dA){return dA===null||dA===60||dA===61||dA===62||dA===96?s(dA):dA===34||dA===39?(t.consume(dA),h=dA,GA):os(dA)?(I=eA,_(dA)):Xl(dA)?(t.consume(dA),eA):(t.consume(dA),h=void 0,JA)}function GA(dA){return dA===h?(t.consume(dA),cA):dA===null?s(dA):os(dA)?(I=GA,_(dA)):(t.consume(dA),GA)}function cA(dA){return dA===62||dA===47||Id(dA)?gA(dA):s(dA)}function JA(dA){return dA===null||dA===34||dA===39||dA===60||dA===61||dA===96?s(dA):dA===62||Id(dA)?gA(dA):(t.consume(dA),JA)}function _(dA){return t.exit("htmlTextData"),t.enter("lineEnding"),t.consume(dA),t.exit("lineEnding"),PB(t,SA,"linePrefix",a.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function SA(dA){return t.enter("htmlTextData"),I(dA)}function jA(dA){return dA===62?(t.consume(dA),t.exit("htmlTextData"),t.exit("htmlText"),i):s(dA)}}const _jA={name:"labelEnd",tokenize:uHt,resolveTo:lHt,resolveAll:hHt},aHt={tokenize:wHt},BHt={tokenize:QHt},gHt={tokenize:EHt};function hHt(t){let i=-1,s;for(;++i -1&&(w[0]=w[0].slice(a)),Q>0&&w.push(t[h].slice(0,Q))),w}function SHt(t,i){let s=-1;const a=[];let h;for(;++s 13&&s<32||s>126&&s<160||s>55295&&s<57344||s>64975&&s<65008||(s&65535)===65535||(s&65535)===65534||s>1114111?"�":String.fromCharCode(s)}const ext=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function txt(t){return t.replace(ext,nxt)}function nxt(t,i,s){if(i)return i;if(s.charCodeAt(0)===35){const h=s.charCodeAt(1),Q=h===120||h===88;return FHe(s.slice(Q?2:1),Q?16:10)}return qjA(s)||t}function iQA(t){return!t||typeof t!="object"?"":"position"in t||"type"in t?J2e(t.position):"start"in t||"end"in t?J2e(t):"line"in t||"column"in t?E8A(t):""}function E8A(t){return k2e(t&&t.line)+":"+k2e(t&&t.column)}function J2e(t){return E8A(t&&t.start)+"-"+E8A(t&&t.end)}function k2e(t){return t&&typeof t=="number"?t:1}const MHe={}.hasOwnProperty,YHe=function(t,i,s){return typeof i!="string"&&(s=i,i=void 0),ixt(s)(Axt(_Ht(s).document().write($Ht()(t,i,!0))))};function ixt(t){const i={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:I(RA),autolinkProtocol:gA,autolinkEmail:gA,atxHeading:I(ZA),blockQuote:I(Le),characterEscape:gA,characterReference:gA,codeFenced:I(HA),codeFencedFenceInfo:d,codeFencedFenceMeta:d,codeIndented:I(HA,d),codeText:I(WA,d),codeTextData:gA,data:gA,codeFlowValue:gA,definition:I(XA),definitionDestinationString:d,definitionLabelString:d,definitionTitleString:d,emphasis:I(ce),hardBreakEscape:I(pe),hardBreakTrailing:I(pe),htmlFlow:I(zA,d),htmlFlowData:gA,htmlText:I(zA,d),htmlTextData:gA,image:I(Ft),label:d,link:I(RA),listItem:I($A),listItemValue:j,listOrdered:I(Et,T),listUnordered:I(Et),paragraph:I(Ot),reference:at,referenceString:d,resourceDestinationString:d,resourceTitleString:d,setextHeading:I(ZA),strong:I(zt),thematicBreak:I(sn)},exit:{atxHeading:N(),atxHeadingSequence:iA,autolink:N(),autolinkEmail:ye,autolinkProtocol:ie,blockQuote:N(),characterEscapeValue:fA,characterReferenceMarkerHexadecimal:mt,characterReferenceMarkerNumeric:mt,characterReferenceValue:be,codeFenced:N(K),codeFencedFence:X,codeFencedFenceInfo:W,codeFencedFenceMeta:AA,codeFlowValue:fA,codeIndented:N($),codeText:N(JA),codeTextData:fA,data:fA,definition:N(),definitionDestinationString:aA,definitionLabelString:QA,definitionTitleString:hA,emphasis:N(),hardBreakEscape:N(eA),hardBreakTrailing:N(eA),htmlFlow:N(GA),htmlFlowData:fA,htmlText:N(cA),htmlTextData:fA,image:N(SA),label:dA,labelText:jA,lineEnding:DA,link:N(_),listItem:N(),listOrdered:N(),listUnordered:N(),paragraph:N(),referenceString:fe,resourceDestinationString:kA,resourceTitleString:vA,resource:Fe,setextHeading:N(FA),setextHeadingLineSequence:rA,setextHeadingText:BA,strong:N(),thematicBreak:N()}};DHe(i,(t||{}).mdastExtensions||[]);const s={};return a;function a(Ke){let lt={type:"root",children:[]};const gn={stack:[lt],tokenStack:[],config:i,enter:D,exit:U,buffer:d,resume:R,setData:Q,getData:w},Rt=[];let ln=-1;for(;++ln 0){const hi=gn.tokenStack[gn.tokenStack.length-1];(hi[1]||R2e).call(gn,void 0,hi[0])}for(lt.position={start:SU(Ke.length>0?Ke[0][1].start:{line:1,column:1,offset:0}),end:SU(Ke.length>0?Ke[Ke.length-2][1].end:{line:1,column:1,offset:0})},ln=-1;++ln {N!==0&&(h++,a.push([])),D.split(" ").forEach(U=>{U&&a[h].push({content:U,type:I})})}):(w.type==="strong"||w.type==="emphasis")&&w.children.forEach(d=>{Q(d,w.type)})}return s.forEach(w=>{w.type==="paragraph"&&w.children.forEach(I=>{Q(I)})}),a}function oxt(t){const{children:i}=YHe(t);function s(a){return a.type==="text"?a.value.replace(/\n/g,"
"):a.type==="strong"?`${a.children.map(s).join("")}`:a.type==="emphasis"?`${a.children.map(s).join("")}`:a.type==="paragraph"?`${a.children.map(s).join("")}
`:`Unsupported markdown: ${a.type}`}return i.map(s).join("")}function axt(t){return Intl.Segmenter?[...new Intl.Segmenter().segment(t)].map(i=>i.segment):[...t]}function Bxt(t,i){const s=axt(i.content);return yHe(t,[],s,i.type)}function yHe(t,i,s,a){if(s.length===0)return[{content:i.join(""),type:a},{content:"",type:a}];const[h,...Q]=s,w=[...i,h];return t([{content:w.join(""),type:a}])?yHe(t,w,Q,a):(i.length===0&&h&&(i.push(h),s.shift()),[{content:i.join(""),type:a},{content:s.join(""),type:a}])}function gxt(t,i){if(t.some(({content:s})=>s.includes(``)))throw new Error("splitLineToFitWidth does not support newlines in the line");return f8A(t,i)}function f8A(t,i,s=[],a=[]){if(t.length===0)return a.length>0&&s.push(a),s.length>0?s:[];let h="";t[0].content===" "&&(h=" ",t.shift());const Q=t.shift()??{content:" ",type:"normal"},w=[...a];if(h!==""&&w.push({content:h,type:"normal"}),w.push(Q),i(w))return f8A(t,i,s,w);if(a.length>0)s.push(a),t.unshift(Q);else if(Q.content){const[I,d]=Bxt(i,Q);s.push([I]),d.content&&t.unshift(d)}return f8A(t,i,s)}function hxt(t,i){i&&t.attr("style",i)}function lxt(t,i,s,a,h=!1){const Q=t.append("foreignObject"),w=Q.append("xhtml:div"),I=i.label,d=i.isNode?"nodeLabel":"edgeLabel";w.html(` "+I+""),hxt(w,i.labelStyle),w.style("display","table-cell"),w.style("white-space","nowrap"),w.style("max-width",s+"px"),w.attr("xmlns","http://www.w3.org/1999/xhtml"),h&&w.attr("class","labelBkg");let D=w.node().getBoundingClientRect();return D.width===s&&(w.style("display","table"),w.style("white-space","break-spaces"),w.style("width",s+"px"),D=w.node().getBoundingClientRect()),Q.style("width",D.width),Q.style("height",D.height),Q.node()}function pHe(t,i,s){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",i*s-.1+"em").attr("dy",s+"em")}function uxt(t,i,s){const a=t.append("text"),h=pHe(a,1,i);NHe(h,s);const Q=h.node().getComputedTextLength();return a.remove(),Q}function wxt(t,i,s,a=!1){const Q=i.append("g"),w=Q.insert("rect").attr("class","background"),I=Q.append("text").attr("y","-10.1");let d=0;for(const D of s){const N=R=>uxt(Q,1.1,R)<=t,U=N(D)?[D]:gxt(D,N);for(const R of U){const T=pHe(I,d,1.1);NHe(T,R),d++}}if(a){const D=I.node().getBBox(),N=2;return w.attr("x",-N).attr("y",-N).attr("width",D.width+2*N).attr("height",D.height+2*N),Q.node()}else return I.node()}function NHe(t,i){t.text(""),i.forEach((s,a)=>{const h=t.append("tspan").attr("font-style",s.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",s.type==="strong"?"bold":"normal");a===0?h.text(s.content):h.text(" "+s.content)})}const Y0A=(t,i="",{style:s="",isTitle:a=!1,classes:h="",useHtmlLabels:Q=!0,isNode:w=!0,width:I=200,addSvgBackground:d=!1}={})=>{if(_A.info("createText",i,s,a,h,Q,w,d),Q){const D=oxt(i),N={isNode:w,label:WX(D).replace(/fa[blrs]?:fa-[\w-]+/g,R=>``),labelStyle:s.replace("fill:","color:")};return lxt(t,N,I,h,d)}else{const D=sxt(i);return wxt(I,t,D,d)}};let T2e=0;const Qxt=function(t,i,s,a,h){const Q=function(K){switch(K){case h.db.relationType.AGGREGATION:return"aggregation";case h.db.relationType.EXTENSION:return"extension";case h.db.relationType.COMPOSITION:return"composition";case h.db.relationType.DEPENDENCY:return"dependency";case h.db.relationType.LOLLIPOP:return"lollipop"}};i.points=i.points.filter(K=>!Number.isNaN(K.y));const w=i.points,I=hk().x(function(K){return K.x}).y(function(K){return K.y}).curve(MS),d=t.append("path").attr("d",I(w)).attr("id","edge"+T2e).attr("class","relation");let D="";a.arrowMarkerAbsolute&&(D=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,D=D.replace(/\(/g,"\\("),D=D.replace(/\)/g,"\\)")),s.relation.lineType==1&&d.attr("class","relation dashed-line"),s.relation.lineType==10&&d.attr("class","relation dotted-line"),s.relation.type1!=="none"&&d.attr("marker-start","url("+D+"#"+Q(s.relation.type1)+"Start)"),s.relation.type2!=="none"&&d.attr("marker-end","url("+D+"#"+Q(s.relation.type2)+"End)");let N,U;const R=i.points.length;let T=ms.calcLabelPosition(i.points);N=T.x,U=T.y;let j,W,AA,X;if(R%2!==0&&R>1){let K=ms.calcCardinalityPosition(s.relation.type1!=="none",i.points,i.points[0]),$=ms.calcCardinalityPosition(s.relation.type2!=="none",i.points,i.points[R-1]);_A.debug("cardinality_1_point "+JSON.stringify(K)),_A.debug("cardinality_2_point "+JSON.stringify($)),j=K.x,W=K.y,AA=$.x,X=$.y}if(s.title!==void 0){const K=t.append("g").attr("class","classLabel"),$=K.append("text").attr("class","label").attr("x",N).attr("y",U).attr("fill","red").attr("text-anchor","middle").text(s.title);window.label=$;const QA=$.node().getBBox();K.insert("rect",":first-child").attr("class","box").attr("x",QA.x-a.padding/2).attr("y",QA.y-a.padding/2).attr("width",QA.width+a.padding).attr("height",QA.height+a.padding)}_A.info("Rendering relation "+JSON.stringify(s)),s.relationTitle1!==void 0&&s.relationTitle1!=="none"&&t.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",j).attr("y",W).attr("fill","black").attr("font-size","6").text(s.relationTitle1),s.relationTitle2!==void 0&&s.relationTitle2!=="none"&&t.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",AA).attr("y",X).attr("fill","black").attr("font-size","6").text(s.relationTitle2),T2e++},Ext=function(t,i,s,a){_A.debug("Rendering class ",i,s);const h=i.id,Q={id:h,label:i.id,width:0,height:0},w=t.append("g").attr("id",a.db.lookUpDomId(h)).attr("class","classGroup");let I;i.link?I=w.append("svg:a").attr("xlink:href",i.link).attr("target",i.linkTarget).append("text").attr("y",s.textHeight+s.padding).attr("x",0):I=w.append("text").attr("y",s.textHeight+s.padding).attr("x",0);let d=!0;i.annotations.forEach(function(hA){const aA=I.append("tspan").text("«"+hA+"»");d||aA.attr("dy",s.textHeight),d=!1});let D=mHe(i);const N=I.append("tspan").text(D).attr("class","title");d||N.attr("dy",s.textHeight);const U=I.node().getBBox().height,R=w.append("line").attr("x1",0).attr("y1",s.padding+U+s.dividerMargin/2).attr("y2",s.padding+U+s.dividerMargin/2),T=w.append("text").attr("x",s.padding).attr("y",U+s.dividerMargin+s.textHeight).attr("fill","white").attr("class","classText");d=!0,i.members.forEach(function(hA){v2e(T,hA,d,s),d=!1});const j=T.node().getBBox(),W=w.append("line").attr("x1",0).attr("y1",s.padding+U+s.dividerMargin+j.height).attr("y2",s.padding+U+s.dividerMargin+j.height),AA=w.append("text").attr("x",s.padding).attr("y",U+2*s.dividerMargin+j.height+s.textHeight).attr("fill","white").attr("class","classText");d=!0,i.methods.forEach(function(hA){v2e(AA,hA,d,s),d=!1});const X=w.node().getBBox();var K=" ";i.cssClasses.length>0&&(K=K+i.cssClasses.join(" "));const QA=w.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",X.width+2*s.padding).attr("height",X.height+s.padding+.5*s.dividerMargin).attr("class",K).node().getBBox().width;return I.node().childNodes.forEach(function(hA){hA.setAttribute("x",(QA-hA.getBBox().width)/2)}),i.tooltip&&I.insert("title").text(i.tooltip),R.attr("x2",QA),W.attr("x2",QA),Q.width=QA,Q.height=X.height+s.padding+.5*s.dividerMargin,Q},mHe=function(t){let i=t.id;return t.type&&(i+="<"+t.type+">"),i},fxt=function(t,i,s,a){_A.debug("Rendering note ",i,s);const h=i.id,Q={id:h,text:i.text,width:0,height:0},w=t.append("g").attr("id",h).attr("class","classGroup");let I=w.append("text").attr("y",s.textHeight+s.padding).attr("x",0);const d=JSON.parse(`"${i.text}"`).split(``);d.forEach(function(R){_A.debug(`Adding line: ${R}`),I.append("tspan").text(R).attr("class","title").attr("dy",s.textHeight)});const D=w.node().getBBox(),U=w.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",D.width+2*s.padding).attr("height",D.height+d.length*s.textHeight+s.padding+.5*s.dividerMargin).node().getBBox().width;return I.node().childNodes.forEach(function(R){R.setAttribute("x",(U-R.getBBox().width)/2)}),Q.width=U,Q.height=D.height+d.length*s.textHeight+s.padding+.5*s.dividerMargin,Q},i1A=function(t){let i="",s="",a="",h="",Q=t.substring(0,1),w=t.substring(t.length-1,t.length);Q.match(/[#+~-]/)&&(h=Q);let I=/[\s\w)~]/;w.match(I)||(s=j2e(w));const d=h===""?0:1;let D=s===""?t.length:t.length-1;t=t.substring(d,D);const N=t.indexOf("("),U=t.indexOf(")");if(N>1&&U>N&&U<=t.length){let T=t.substring(0,N).trim();const j=t.substring(N+1,U);if(i=h+T+"("+fX(j.trim())+")",U{i.forEach(h=>{mxt[h](t,s,a)})},Cxt=(t,i,s)=>{_A.trace("Making markers for ",s),t.append("defs").append("marker").attr("id",i+"-extensionStart").attr("class","marker extension "+i).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"),t.append("defs").append("marker").attr("id",i+"-extensionEnd").attr("class","marker extension "+i).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")},dxt=(t,i)=>{t.append("defs").append("marker").attr("id",i+"-compositionStart").attr("class","marker composition "+i).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"),t.append("defs").append("marker").attr("id",i+"-compositionEnd").attr("class","marker composition "+i).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")},Fxt=(t,i)=>{t.append("defs").append("marker").attr("id",i+"-aggregationStart").attr("class","marker aggregation "+i).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"),t.append("defs").append("marker").attr("id",i+"-aggregationEnd").attr("class","marker aggregation "+i).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")},Mxt=(t,i)=>{t.append("defs").append("marker").attr("id",i+"-dependencyStart").attr("class","marker dependency "+i).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"),t.append("defs").append("marker").attr("id",i+"-dependencyEnd").attr("class","marker dependency "+i).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")},Yxt=(t,i)=>{t.append("defs").append("marker").attr("id",i+"-lollipopStart").attr("class","marker lollipop "+i).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","white").attr("cx",6).attr("cy",7).attr("r",6)},Dxt=(t,i)=>{t.append("marker").attr("id",i+"-pointEnd").attr("class","marker "+i).attr("viewBox","0 0 10 10").attr("refX",10).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"),t.append("marker").attr("id",i+"-pointStart").attr("class","marker "+i).attr("viewBox","0 0 10 10").attr("refX",0).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")},yxt=(t,i)=>{t.append("marker").attr("id",i+"-circleEnd").attr("class","marker "+i).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"),t.append("marker").attr("id",i+"-circleStart").attr("class","marker "+i).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")},pxt=(t,i)=>{t.append("marker").attr("id",i+"-crossEnd").attr("class","marker cross "+i).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"),t.append("marker").attr("id",i+"-crossStart").attr("class","marker cross "+i).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")},Nxt=(t,i)=>{t.append("defs").append("marker").attr("id",i+"-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")},mxt={extension:Cxt,composition:dxt,aggregation:Fxt,dependency:Mxt,lollipop:Yxt,point:Dxt,circle:yxt,cross:pxt,barb:Nxt},UHe=Ixt;function Uxt(t,i){i&&t.attr("style",i)}function bxt(t){const i=Nn(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),s=i.append("xhtml:div"),a=t.label,h=t.isNode?"nodeLabel":"edgeLabel";return s.html('"+a+""),Uxt(s,t.labelStyle),s.style("display","inline-block"),s.style("white-space","nowrap"),s.attr("xmlns","http://www.w3.org/1999/xhtml"),i.node()}const Hxt=(t,i,s,a)=>{let h=t||"";if(typeof h=="object"&&(h=h[0]),Lu(Je().flowchart.htmlLabels)){h=h.replace(/\\n|\n/g,"
"),_A.info("vertexText"+h);const Q={isNode:a,label:WX(h).replace(/fa[blrs]?:fa-[\w-]+/g,I=>``),labelStyle:i.replace("fill:","color:")};return bxt(Q)}else{const Q=document.createElementNS("http://www.w3.org/2000/svg","text");Q.setAttribute("style",i.replace("color:","fill:"));let w=[];typeof h=="string"?w=h.split(/\\n|\n|
/gi):Array.isArray(h)?w=h:w=[];for(const I of w){const d=document.createElementNS("http://www.w3.org/2000/svg","tspan");d.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),d.setAttribute("dy","1em"),d.setAttribute("x","0"),s?d.setAttribute("class","title-row"):d.setAttribute("class","row"),d.textContent=I.trim(),Q.appendChild(d)}return Q}},kE=Hxt,BQ=async(t,i,s,a)=>{let h;const Q=i.useHtmlLabels||Lu(Je().flowchart.htmlLabels);s?h=s:h="node default";const w=t.insert("g").attr("class",h).attr("id",i.domId||i.id),I=w.insert("g").attr("class","label").attr("style",i.labelStyle);let d;i.labelText===void 0?d="":d=typeof i.labelText=="string"?i.labelText:i.labelText[0];const D=I.node();let N;i.labelType==="markdown"?N=Y0A(I,o0(WX(d),Je()),{useHtmlLabels:Q,width:i.width||Je().flowchart.wrappingWidth,classes:"markdown-node-label"}):N=D.appendChild(kE(o0(WX(d),Je()),i.labelStyle,!1,a));let U=N.getBBox();const R=i.padding/2;if(Lu(Je().flowchart.htmlLabels)){const T=N.children[0],j=Nn(N),W=T.getElementsByTagName("img");if(W){const AA=d.replace(/]*>/g,"").trim()==="";await Promise.all([...W].map(X=>new Promise(K=>{function $(){if(X.style.display="flex",X.style.flexDirection="column",AA){const QA=Je().fontSize?Je().fontSize:window.getComputedStyle(document.body).fontSize,hA=5;X.style.width=parseInt(QA,10)*hA+"px"}else X.style.width="100%";K(X)}setTimeout(()=>{X.complete&&$()}),X.addEventListener("error",$),X.addEventListener("load",$)})))}U=T.getBoundingClientRect(),j.attr("width",U.width),j.attr("height",U.height)}return Q?I.attr("transform","translate("+-U.width/2+", "+-U.height/2+")"):I.attr("transform","translate(0, "+-U.height/2+")"),i.centerLabel&&I.attr("transform","translate("+-U.width/2+", "+-U.height/2+")"),I.insert("rect",":first-child"),{shapeSvg:w,bbox:U,halfPadding:R,label:I}},Ml=(t,i)=>{const s=i.node().getBBox();t.width=s.width,t.height=s.height};function g4(t,i,s,a){return t.insert("polygon",":first-child").attr("points",a.map(function(h){return h.x+","+h.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-i/2+","+s/2+")")}function xxt(t,i){return t.intersect(i)}function bHe(t,i,s,a){var h=t.x,Q=t.y,w=h-a.x,I=Q-a.y,d=Math.sqrt(i*i*I*I+s*s*w*w),D=Math.abs(i*s*w/d);a.x
0}function kxt(t,i,s){var a=t.x,h=t.y,Q=[],w=Number.POSITIVE_INFINITY,I=Number.POSITIVE_INFINITY;typeof i.forEach=="function"?i.forEach(function(j){w=Math.min(w,j.x),I=Math.min(I,j.y)}):(w=Math.min(w,i.x),I=Math.min(I,i.y));for(var d=a-t.width/2-w,D=h-t.height/2-I,N=0;N 1&&Q.sort(function(j,W){var AA=j.x-s.x,X=j.y-s.y,K=Math.sqrt(AA*AA+X*X),$=W.x-s.x,QA=W.y-s.y,hA=Math.sqrt($*$+QA*QA);return K {var s=t.x,a=t.y,h=i.x-s,Q=i.y-a,w=t.width/2,I=t.height/2,d,D;return Math.abs(Q)*w>Math.abs(h)*I?(Q<0&&(I=-I),d=Q===0?0:I*h/Q,D=I):(h<0&&(w=-w),d=w,D=h===0?0:w*Q/h),{x:s+d,y:a+D}},kZ=Rxt,Lh={node:xxt,circle:Gxt,ellipse:bHe,polygon:kxt,rect:kZ},Txt=async(t,i)=>{i.useHtmlLabels||Je().flowchart.htmlLabels||(i.centerLabel=!0);const{shapeSvg:a,bbox:h,halfPadding:Q}=await BQ(t,i,"node "+i.classes,!0);_A.info("Classes = ",i.classes);const w=a.insert("rect",":first-child");return w.attr("rx",i.rx).attr("ry",i.ry).attr("x",-h.width/2-Q).attr("y",-h.height/2-Q).attr("width",h.width+i.padding).attr("height",h.height+i.padding),Ml(i,w),i.intersect=function(I){return Lh.rect(i,I)},a},vxt=Txt,L2e=t=>t?" "+t:"",fI=(t,i)=>`${i||"node default"}${L2e(t.classes)} ${L2e(t.class)}`,z2e=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=a.width+i.padding,Q=a.height+i.padding,w=h+Q,I=[{x:w/2,y:0},{x:w,y:-w/2},{x:w/2,y:-w},{x:0,y:-w/2}];_A.info("Question main (Circle)");const d=g4(s,w,w,I);return d.attr("style",i.style),Ml(i,d),i.intersect=function(D){return _A.warn("Intersect called"),Lh.polygon(i,I,D)},s},jxt=(t,i)=>{const s=t.insert("g").attr("class","node default").attr("id",i.domId||i.id),a=28,h=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}];return s.insert("polygon",":first-child").attr("points",h.map(function(w){return w.x+","+w.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),i.width=28,i.height=28,i.intersect=function(w){return Lh.circle(i,14,w)},s},Sxt=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=4,Q=a.height+i.padding,w=Q/h,I=a.width+2*w+i.padding,d=[{x:w,y:0},{x:I-w,y:0},{x:I,y:-Q/2},{x:I-w,y:-Q},{x:w,y:-Q},{x:0,y:-Q/2}],D=g4(s,I,Q,d);return D.attr("style",i.style),Ml(i,D),i.intersect=function(N){return Lh.polygon(i,d,N)},s},Lxt=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=a.width+i.padding,Q=a.height+i.padding,w=[{x:-Q/2,y:0},{x:h,y:0},{x:h,y:-Q},{x:-Q/2,y:-Q},{x:0,y:-Q/2}];return g4(s,h,Q,w).attr("style",i.style),i.width=h+Q,i.height=Q,i.intersect=function(d){return Lh.polygon(i,w,d)},s},zxt=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i),!0),h=a.width+i.padding,Q=a.height+i.padding,w=[{x:-2*Q/6,y:0},{x:h-Q/6,y:0},{x:h+2*Q/6,y:-Q},{x:Q/6,y:-Q}],I=g4(s,h,Q,w);return I.attr("style",i.style),Ml(i,I),i.intersect=function(d){return Lh.polygon(i,w,d)},s},Pxt=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=a.width+i.padding,Q=a.height+i.padding,w=[{x:2*Q/6,y:0},{x:h+Q/6,y:0},{x:h-2*Q/6,y:-Q},{x:-Q/6,y:-Q}],I=g4(s,h,Q,w);return I.attr("style",i.style),Ml(i,I),i.intersect=function(d){return Lh.polygon(i,w,d)},s},Oxt=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=a.width+i.padding,Q=a.height+i.padding,w=[{x:-2*Q/6,y:0},{x:h+2*Q/6,y:0},{x:h-Q/6,y:-Q},{x:Q/6,y:-Q}],I=g4(s,h,Q,w);return I.attr("style",i.style),Ml(i,I),i.intersect=function(d){return Lh.polygon(i,w,d)},s},Wxt=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=a.width+i.padding,Q=a.height+i.padding,w=[{x:Q/6,y:0},{x:h-Q/6,y:0},{x:h+2*Q/6,y:-Q},{x:-2*Q/6,y:-Q}],I=g4(s,h,Q,w);return I.attr("style",i.style),Ml(i,I),i.intersect=function(d){return Lh.polygon(i,w,d)},s},Kxt=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=a.width+i.padding,Q=a.height+i.padding,w=[{x:0,y:0},{x:h+Q/2,y:0},{x:h,y:-Q/2},{x:h+Q/2,y:-Q},{x:0,y:-Q}],I=g4(s,h,Q,w);return I.attr("style",i.style),Ml(i,I),i.intersect=function(d){return Lh.polygon(i,w,d)},s},Vxt=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=a.width+i.padding,Q=h/2,w=Q/(2.5+h/50),I=a.height+w+i.padding,d="M 0,"+w+" a "+Q+","+w+" 0,0,0 "+h+" 0 a "+Q+","+w+" 0,0,0 "+-h+" 0 l 0,"+I+" a "+Q+","+w+" 0,0,0 "+h+" 0 l 0,"+-I,D=s.attr("label-offset-y",w).insert("path",":first-child").attr("style",i.style).attr("d",d).attr("transform","translate("+-h/2+","+-(I/2+w)+")");return Ml(i,D),i.intersect=function(N){const U=Lh.rect(i,N),R=U.x-i.x;if(Q!=0&&(Math.abs(R) i.height/2-w)){let T=w*w*(1-R*R/(Q*Q));T!=0&&(T=Math.sqrt(T)),T=w-T,N.y-i.y>0&&(T=-T),U.y+=T}return U},s},Xxt=async(t,i)=>{const{shapeSvg:s,bbox:a,halfPadding:h}=await BQ(t,i,"node "+i.classes+" "+i.class,!0),Q=s.insert("rect",":first-child"),w=a.width+i.padding,I=a.height+i.padding;if(Q.attr("class","basic label-container").attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("x",-a.width/2-h).attr("y",-a.height/2-h).attr("width",w).attr("height",I),i.props){const d=new Set(Object.keys(i.props));i.props.borders&&(HHe(Q,i.props.borders,w,I),d.delete("borders")),d.forEach(D=>{_A.warn(`Unknown node property ${D}`)})}return Ml(i,Q),i.intersect=function(d){return Lh.rect(i,d)},s},Zxt=async(t,i)=>{const{shapeSvg:s}=await BQ(t,i,"label",!0);_A.trace("Classes = ",i.class);const a=s.insert("rect",":first-child"),h=0,Q=0;if(a.attr("width",h).attr("height",Q),s.attr("class","label edgeLabel"),i.props){const w=new Set(Object.keys(i.props));i.props.borders&&(HHe(a,i.props.borders,h,Q),w.delete("borders")),w.forEach(I=>{_A.warn(`Unknown node property ${I}`)})}return Ml(i,a),i.intersect=function(w){return Lh.rect(i,w)},s};function HHe(t,i,s,a){const h=[],Q=I=>{h.push(I,0)},w=I=>{h.push(0,I)};i.includes("t")?(_A.debug("add top border"),Q(s)):w(s),i.includes("r")?(_A.debug("add right border"),Q(a)):w(a),i.includes("b")?(_A.debug("add bottom border"),Q(s)):w(s),i.includes("l")?(_A.debug("add left border"),Q(a)):w(a),t.attr("stroke-dasharray",h.join(" "))}const qxt=(t,i)=>{let s;i.classes?s="node "+i.classes:s="node default";const a=t.insert("g").attr("class",s).attr("id",i.domId||i.id),h=a.insert("rect",":first-child"),Q=a.insert("line"),w=a.insert("g").attr("class","label"),I=i.labelText.flat?i.labelText.flat():i.labelText;let d="";typeof I=="object"?d=I[0]:d=I,_A.info("Label text abc79",d,I,typeof I=="object");const D=w.node().appendChild(kE(d,i.labelStyle,!0,!0));let N={width:0,height:0};if(Lu(Je().flowchart.htmlLabels)){const W=D.children[0],AA=Nn(D);N=W.getBoundingClientRect(),AA.attr("width",N.width),AA.attr("height",N.height)}_A.info("Text 2",I);const U=I.slice(1,I.length);let R=D.getBBox();const T=w.node().appendChild(kE(U.join?U.join("
"):U,i.labelStyle,!0,!0));if(Lu(Je().flowchart.htmlLabels)){const W=T.children[0],AA=Nn(T);N=W.getBoundingClientRect(),AA.attr("width",N.width),AA.attr("height",N.height)}const j=i.padding/2;return Nn(T).attr("transform","translate( "+(N.width>R.width?0:(R.width-N.width)/2)+", "+(R.height+j+5)+")"),Nn(D).attr("transform","translate( "+(N.width{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=a.height+i.padding,Q=a.width+h/4+i.padding,w=s.insert("rect",":first-child").attr("style",i.style).attr("rx",h/2).attr("ry",h/2).attr("x",-Q/2).attr("y",-h/2).attr("width",Q).attr("height",h);return Ml(i,w),i.intersect=function(I){return Lh.rect(i,I)},s},$xt=async(t,i)=>{const{shapeSvg:s,bbox:a,halfPadding:h}=await BQ(t,i,fI(i,void 0),!0),Q=s.insert("circle",":first-child");return Q.attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("r",a.width/2+h).attr("width",a.width+i.padding).attr("height",a.height+i.padding),_A.info("Circle main"),Ml(i,Q),i.intersect=function(w){return _A.info("Circle intersect",i,a.width/2+h,w),Lh.circle(i,a.width/2+h,w)},s},A3t=async(t,i)=>{const{shapeSvg:s,bbox:a,halfPadding:h}=await BQ(t,i,fI(i,void 0),!0),Q=5,w=s.insert("g",":first-child"),I=w.insert("circle"),d=w.insert("circle");return w.attr("class",i.class),I.attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("r",a.width/2+h+Q).attr("width",a.width+i.padding+Q*2).attr("height",a.height+i.padding+Q*2),d.attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("r",a.width/2+h).attr("width",a.width+i.padding).attr("height",a.height+i.padding),_A.info("DoubleCircle main"),Ml(i,I),i.intersect=function(D){return _A.info("DoubleCircle intersect",i,a.width/2+h+Q,D),Lh.circle(i,a.width/2+h+Q,D)},s},e3t=async(t,i)=>{const{shapeSvg:s,bbox:a}=await BQ(t,i,fI(i,void 0),!0),h=a.width+i.padding,Q=a.height+i.padding,w=[{x:0,y:0},{x:h,y:0},{x:h,y:-Q},{x:0,y:-Q},{x:0,y:0},{x:-8,y:0},{x:h+8,y:0},{x:h+8,y:-Q},{x:-8,y:-Q},{x:-8,y:0}],I=g4(s,h,Q,w);return I.attr("style",i.style),Ml(i,I),i.intersect=function(d){return Lh.polygon(i,w,d)},s},t3t=(t,i)=>{const s=t.insert("g").attr("class","node default").attr("id",i.domId||i.id),a=s.insert("circle",":first-child");return a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Ml(i,a),i.intersect=function(h){return Lh.circle(i,7,h)},s},P2e=(t,i,s)=>{const a=t.insert("g").attr("class","node default").attr("id",i.domId||i.id);let h=70,Q=10;s==="LR"&&(h=10,Q=70);const w=a.append("rect").attr("x",-1*h/2).attr("y",-1*Q/2).attr("width",h).attr("height",Q).attr("class","fork-join");return Ml(i,w),i.height=i.height+i.padding/2,i.width=i.width+i.padding/2,i.intersect=function(I){return Lh.rect(i,I)},a},n3t=(t,i)=>{const s=t.insert("g").attr("class","node default").attr("id",i.domId||i.id),a=s.insert("circle",":first-child"),h=s.insert("circle",":first-child");return h.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),a.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),Ml(i,h),i.intersect=function(Q){return Lh.circle(i,7,Q)},s},i3t=(t,i)=>{const s=i.padding/2,a=4,h=8;let Q;i.classes?Q="node "+i.classes:Q="node default";const w=t.insert("g").attr("class",Q).attr("id",i.domId||i.id),I=w.insert("rect",":first-child"),d=w.insert("line"),D=w.insert("line");let N=0,U=a;const R=w.insert("g").attr("class","label");let T=0;const j=i.classData.annotations&&i.classData.annotations[0],W=i.classData.annotations[0]?"«"+i.classData.annotations[0]+"»":"",AA=R.node().appendChild(kE(W,i.labelStyle,!0,!0));let X=AA.getBBox();if(Lu(Je().flowchart.htmlLabels)){const BA=AA.children[0],rA=Nn(AA);X=BA.getBoundingClientRect(),rA.attr("width",X.width),rA.attr("height",X.height)}i.classData.annotations[0]&&(U+=X.height+a,N+=X.width);let K=i.classData.label;i.classData.type!==void 0&&i.classData.type!==""&&(Je().flowchart.htmlLabels?K+="<"+i.classData.type+">":K+="<"+i.classData.type+">");const $=R.node().appendChild(kE(K,i.labelStyle,!0,!0));Nn($).attr("class","classTitle");let QA=$.getBBox();if(Lu(Je().flowchart.htmlLabels)){const BA=$.children[0],rA=Nn($);QA=BA.getBoundingClientRect(),rA.attr("width",QA.width),rA.attr("height",QA.height)}U+=QA.height+a,QA.width>N&&(N=QA.width);const hA=[];i.classData.members.forEach(BA=>{const rA=i1A(BA);let FA=rA.displayText;Je().flowchart.htmlLabels&&(FA=FA.replace(//g,">"));const gA=R.node().appendChild(kE(FA,rA.cssStyle?rA.cssStyle:i.labelStyle,!0,!0));let fA=gA.getBBox();if(Lu(Je().flowchart.htmlLabels)){const DA=gA.children[0],eA=Nn(gA);fA=DA.getBoundingClientRect(),eA.attr("width",fA.width),eA.attr("height",fA.height)}fA.width>N&&(N=fA.width),U+=fA.height+a,hA.push(gA)}),U+=h;const aA=[];if(i.classData.methods.forEach(BA=>{const rA=i1A(BA);let FA=rA.displayText;Je().flowchart.htmlLabels&&(FA=FA.replace(//g,">"));const gA=R.node().appendChild(kE(FA,rA.cssStyle?rA.cssStyle:i.labelStyle,!0,!0));let fA=gA.getBBox();if(Lu(Je().flowchart.htmlLabels)){const DA=gA.children[0],eA=Nn(gA);fA=DA.getBoundingClientRect(),eA.attr("width",fA.width),eA.attr("height",fA.height)}fA.width>N&&(N=fA.width),U+=fA.height+a,aA.push(gA)}),U+=h,j){let BA=(N-X.width)/2;Nn(AA).attr("transform","translate( "+(-1*N/2+BA)+", "+-1*U/2+")"),T=X.height+a}let iA=(N-QA.width)/2;return Nn($).attr("transform","translate( "+(-1*N/2+iA)+", "+(-1*U/2+T)+")"),T+=QA.height+a,d.attr("class","divider").attr("x1",-N/2-s).attr("x2",N/2+s).attr("y1",-U/2-s+h+T).attr("y2",-U/2-s+h+T),T+=h,hA.forEach(BA=>{Nn(BA).attr("transform","translate( "+-N/2+", "+(-1*U/2+T+h/2)+")");const rA=BA==null?void 0:BA.getBBox();T+=((rA==null?void 0:rA.height)??0)+a}),T+=h,D.attr("class","divider").attr("x1",-N/2-s).attr("x2",N/2+s).attr("y1",-U/2-s+h+T).attr("y2",-U/2-s+h+T),T+=h,aA.forEach(BA=>{Nn(BA).attr("transform","translate( "+-N/2+", "+(-1*U/2+T)+")");const rA=BA==null?void 0:BA.getBBox();T+=((rA==null?void 0:rA.height)??0)+a}),I.attr("class","outer title-state").attr("x",-N/2-s).attr("y",-(U/2)-s).attr("width",N+i.padding).attr("height",U+i.padding),Ml(i,I),i.intersect=function(BA){return Lh.rect(i,BA)},w},O2e={rhombus:z2e,question:z2e,rect:Xxt,labelRect:Zxt,rectWithTitle:qxt,choice:jxt,circle:$xt,doublecircle:A3t,stadium:_xt,hexagon:Sxt,rect_left_inv_arrow:Lxt,lean_right:zxt,lean_left:Pxt,trapezoid:Oxt,inv_trapezoid:Wxt,rect_right_inv_arrow:Kxt,cylinder:Vxt,start:t3t,end:n3t,note:vxt,subroutine:e3t,fork:P2e,join:P2e,class_box:i3t};let rS={};const xHe=async(t,i,s)=>{let a,h;if(i.link){let Q;Je().securityLevel==="sandbox"?Q="_top":i.linkTarget&&(Q=i.linkTarget||"_blank"),a=t.insert("svg:a").attr("xlink:href",i.link).attr("target",Q),h=await O2e[i.shape](a,i,s)}else h=await O2e[i.shape](t,i,s),a=h;return i.tooltip&&h.attr("title",i.tooltip),i.class&&h.attr("class","node default "+i.class),rS[i.id]=a,i.haveCallback&&rS[i.id].attr("class",rS[i.id].attr("class")+" clickable"),a},r3t=(t,i)=>{rS[i.id]=t},c3t=()=>{rS={}},W2e=t=>{const i=rS[t.id];_A.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");const s=8,a=t.diff||0;return t.clusterNode?i.attr("transform","translate("+(t.x+a-t.width/2)+", "+(t.y-t.height/2-s)+")"):i.attr("transform","translate("+t.x+", "+t.y+")"),a};let r1A={},sQ={};const s3t=()=>{r1A={},sQ={}},GHe=(t,i)=>{const s=Lu(Je().flowchart.htmlLabels),a=i.labelType==="markdown"?Y0A(t,i.label,{style:i.labelStyle,useHtmlLabels:s,addSvgBackground:!0}):kE(i.label,i.labelStyle);_A.info("abc82",i,i.labelType);const h=t.insert("g").attr("class","edgeLabel"),Q=h.insert("g").attr("class","label");Q.node().appendChild(a);let w=a.getBBox();if(s){const d=a.children[0],D=Nn(a);w=d.getBoundingClientRect(),D.attr("width",w.width),D.attr("height",w.height)}Q.attr("transform","translate("+-w.width/2+", "+-w.height/2+")"),r1A[i.id]=h,i.width=w.width,i.height=w.height;let I;if(i.startLabelLeft){const d=kE(i.startLabelLeft,i.labelStyle),D=t.insert("g").attr("class","edgeTerminals"),N=D.insert("g").attr("class","inner");I=N.node().appendChild(d);const U=d.getBBox();N.attr("transform","translate("+-U.width/2+", "+-U.height/2+")"),sQ[i.id]||(sQ[i.id]={}),sQ[i.id].startLeft=D,lwA(I,i.startLabelLeft)}if(i.startLabelRight){const d=kE(i.startLabelRight,i.labelStyle),D=t.insert("g").attr("class","edgeTerminals"),N=D.insert("g").attr("class","inner");I=D.node().appendChild(d),N.node().appendChild(d);const U=d.getBBox();N.attr("transform","translate("+-U.width/2+", "+-U.height/2+")"),sQ[i.id]||(sQ[i.id]={}),sQ[i.id].startRight=D,lwA(I,i.startLabelRight)}if(i.endLabelLeft){const d=kE(i.endLabelLeft,i.labelStyle),D=t.insert("g").attr("class","edgeTerminals"),N=D.insert("g").attr("class","inner");I=N.node().appendChild(d);const U=d.getBBox();N.attr("transform","translate("+-U.width/2+", "+-U.height/2+")"),D.node().appendChild(d),sQ[i.id]||(sQ[i.id]={}),sQ[i.id].endLeft=D,lwA(I,i.endLabelLeft)}if(i.endLabelRight){const d=kE(i.endLabelRight,i.labelStyle),D=t.insert("g").attr("class","edgeTerminals"),N=D.insert("g").attr("class","inner");I=N.node().appendChild(d);const U=d.getBBox();N.attr("transform","translate("+-U.width/2+", "+-U.height/2+")"),D.node().appendChild(d),sQ[i.id]||(sQ[i.id]={}),sQ[i.id].endRight=D,lwA(I,i.endLabelRight)}return a};function lwA(t,i){Je().flowchart.htmlLabels&&t&&(t.style.width=i.length*9+"px",t.style.height="12px")}const o3t=(t,i)=>{_A.info("Moving label abc78 ",t.id,t.label,r1A[t.id]);let s=i.updatedPath?i.updatedPath:i.originalPath;if(t.label){const a=r1A[t.id];let h=t.x,Q=t.y;if(s){const w=ms.calcLabelPosition(s);_A.info("Moving label "+t.label+" from (",h,",",Q,") to (",w.x,",",w.y,") abc78"),i.updatedPath&&(h=w.x,Q=w.y)}a.attr("transform","translate("+h+", "+Q+")")}if(t.startLabelLeft){const a=sQ[t.id].startLeft;let h=t.x,Q=t.y;if(s){const w=ms.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",s);h=w.x,Q=w.y}a.attr("transform","translate("+h+", "+Q+")")}if(t.startLabelRight){const a=sQ[t.id].startRight;let h=t.x,Q=t.y;if(s){const w=ms.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",s);h=w.x,Q=w.y}a.attr("transform","translate("+h+", "+Q+")")}if(t.endLabelLeft){const a=sQ[t.id].endLeft;let h=t.x,Q=t.y;if(s){const w=ms.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",s);h=w.x,Q=w.y}a.attr("transform","translate("+h+", "+Q+")")}if(t.endLabelRight){const a=sQ[t.id].endRight;let h=t.x,Q=t.y;if(s){const w=ms.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",s);h=w.x,Q=w.y}a.attr("transform","translate("+h+", "+Q+")")}},a3t=(t,i)=>{const s=t.x,a=t.y,h=Math.abs(i.x-s),Q=Math.abs(i.y-a),w=t.width/2,I=t.height/2;return h>=w||Q>=I},B3t=(t,i,s)=>{_A.warn(`intersection calc abc89: outsidePoint: ${JSON.stringify(i)} insidePoint : ${JSON.stringify(s)} node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);const a=t.x,h=t.y,Q=Math.abs(a-s.x),w=t.width/2;let I=s.x Math.abs(a-i.x)*d){let U=s.y {_A.warn("abc88 cutPathAtIntersect",t,i);let s=[],a=t[0],h=!1;return t.forEach(Q=>{if(_A.info("abc88 checking point",Q,i),!a3t(i,Q)&&!h){const w=B3t(i,a,Q);_A.warn("abc88 inside",Q,a,w),_A.warn("abc88 intersection",w);let I=!1;s.forEach(d=>{I=I||d.x===w.x&&d.y===w.y}),s.some(d=>d.x===w.x&&d.y===w.y)?_A.warn("abc88 no intersect",w,s):s.push(w),h=!0}else _A.warn("abc88 outside",Q,a),a=Q,h||s.push(Q)}),_A.warn("abc88 returning points",s),s},g3t=function(t,i,s,a,h,Q){let w=s.points,I=!1;const d=Q.node(i.v);var D=Q.node(i.w);_A.info("abc88 InsertEdge: ",s),D.intersect&&d.intersect&&(w=w.slice(1,s.points.length-1),w.unshift(d.intersect(w[0])),_A.info("Last point",w[w.length-1],D,D.intersect(w[w.length-1])),w.push(D.intersect(w[w.length-1]))),s.toCluster&&(_A.info("to cluster abc88",a[s.toCluster]),w=K2e(s.points,a[s.toCluster].node),I=!0),s.fromCluster&&(_A.info("from cluster abc88",a[s.fromCluster]),w=K2e(w.reverse(),a[s.fromCluster].node).reverse(),I=!0);const N=w.filter(X=>!Number.isNaN(X.y));let U;h==="graph"||h==="flowchart"?U=s.curve||MS:U=MS;const R=hk().x(function(X){return X.x}).y(function(X){return X.y}).curve(U);let T;switch(s.thickness){case"normal":T="edge-thickness-normal";break;case"thick":T="edge-thickness-thick";break;case"invisible":T="edge-thickness-thick";break;default:T=""}switch(s.pattern){case"solid":T+=" edge-pattern-solid";break;case"dotted":T+=" edge-pattern-dotted";break;case"dashed":T+=" edge-pattern-dashed";break}const j=t.append("path").attr("d",R(N)).attr("id",s.id).attr("class"," "+T+(s.classes?" "+s.classes:"")).attr("style",s.style);let W="";switch((Je().flowchart.arrowMarkerAbsolute||Je().state.arrowMarkerAbsolute)&&(W=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,W=W.replace(/\(/g,"\\("),W=W.replace(/\)/g,"\\)")),_A.info("arrowTypeStart",s.arrowTypeStart),_A.info("arrowTypeEnd",s.arrowTypeEnd),s.arrowTypeStart){case"arrow_cross":j.attr("marker-start","url("+W+"#"+h+"-crossStart)");break;case"arrow_point":j.attr("marker-start","url("+W+"#"+h+"-pointStart)");break;case"arrow_barb":j.attr("marker-start","url("+W+"#"+h+"-barbStart)");break;case"arrow_circle":j.attr("marker-start","url("+W+"#"+h+"-circleStart)");break;case"aggregation":j.attr("marker-start","url("+W+"#"+h+"-aggregationStart)");break;case"extension":j.attr("marker-start","url("+W+"#"+h+"-extensionStart)");break;case"composition":j.attr("marker-start","url("+W+"#"+h+"-compositionStart)");break;case"dependency":j.attr("marker-start","url("+W+"#"+h+"-dependencyStart)");break;case"lollipop":j.attr("marker-start","url("+W+"#"+h+"-lollipopStart)");break}switch(s.arrowTypeEnd){case"arrow_cross":j.attr("marker-end","url("+W+"#"+h+"-crossEnd)");break;case"arrow_point":j.attr("marker-end","url("+W+"#"+h+"-pointEnd)");break;case"arrow_barb":j.attr("marker-end","url("+W+"#"+h+"-barbEnd)");break;case"arrow_circle":j.attr("marker-end","url("+W+"#"+h+"-circleEnd)");break;case"aggregation":j.attr("marker-end","url("+W+"#"+h+"-aggregationEnd)");break;case"extension":j.attr("marker-end","url("+W+"#"+h+"-extensionEnd)");break;case"composition":j.attr("marker-end","url("+W+"#"+h+"-compositionEnd)");break;case"dependency":j.attr("marker-end","url("+W+"#"+h+"-dependencyEnd)");break;case"lollipop":j.attr("marker-end","url("+W+"#"+h+"-lollipopEnd)");break}let AA={};return I&&(AA.updatedPath=w),AA.originalPath=s.points,AA};let No={},NM={},JHe={};const h3t=()=>{NM={},JHe={},No={}},c1A=(t,i)=>(_A.trace("In isDecendant",i," ",t," = ",NM[i].includes(t)),!!NM[i].includes(t)),l3t=(t,i)=>(_A.info("Decendants of ",i," is ",NM[i]),_A.info("Edge is ",t),t.v===i||t.w===i?!1:NM[i]?NM[i].includes(t.v)||c1A(t.v,i)||c1A(t.w,i)||NM[i].includes(t.w):(_A.debug("Tilt, ",i,",not in decendants"),!1)),kHe=(t,i,s,a)=>{_A.warn("Copying children of ",t,"root",a,"data",i.node(t),a);const h=i.children(t)||[];t!==a&&h.push(t),_A.warn("Copying (nodes) clusterId",t,"nodes",h),h.forEach(Q=>{if(i.children(Q).length>0)kHe(Q,i,s,a);else{const w=i.node(Q);_A.info("cp ",Q," to ",a," with parent ",t),s.setNode(Q,w),a!==i.parent(Q)&&(_A.warn("Setting parent",Q,i.parent(Q)),s.setParent(Q,i.parent(Q))),t!==a&&Q!==t?(_A.debug("Setting parent",Q,t),s.setParent(Q,t)):(_A.info("In copy ",t,"root",a,"data",i.node(t),a),_A.debug("Not Setting parent for node=",Q,"cluster!==rootId",t!==a,"node!==clusterId",Q!==t));const I=i.edges(Q);_A.debug("Copying Edges",I),I.forEach(d=>{_A.info("Edge",d);const D=i.edge(d.v,d.w,d.name);_A.info("Edge data",D,a);try{l3t(d,a)?(_A.info("Copying as ",d.v,d.w,D,d.name),s.setEdge(d.v,d.w,D,d.name),_A.info("newGraph edges ",s.edges(),s.edge(s.edges()[0]))):_A.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",a," clusterId:",t)}catch(N){_A.error(N)}})}_A.debug("Removing node",Q),i.removeNode(Q)})},RHe=(t,i)=>{const s=i.children(t);let a=[...s];for(const h of s)JHe[h]=t,a=[...a,...RHe(h,i)];return a},$X=(t,i)=>{_A.trace("Searching",t);const s=i.children(t);if(_A.trace("Searching children of id ",t,s),s.length<1)return _A.trace("This is a valid node",t),t;for(const a of s){const h=$X(a,i);if(h)return _A.trace("Found replacement for",t," => ",h),h}},uwA=t=>!No[t]||!No[t].externalConnections?t:No[t]?No[t].id:t,u3t=(t,i)=>{if(!t||i>10){_A.debug("Opting out, no graph ");return}else _A.debug("Opting in, graph ");t.nodes().forEach(function(s){t.children(s).length>0&&(_A.warn("Cluster identified",s," Replacement id in edges: ",$X(s,t)),NM[s]=RHe(s,t),No[s]={id:$X(s,t),clusterData:t.node(s)})}),t.nodes().forEach(function(s){const a=t.children(s),h=t.edges();a.length>0?(_A.debug("Cluster identified",s,NM),h.forEach(Q=>{if(Q.v!==s&&Q.w!==s){const w=c1A(Q.v,s),I=c1A(Q.w,s);w^I&&(_A.warn("Edge: ",Q," leaves cluster ",s),_A.warn("Decendants of XXX ",s,": ",NM[s]),No[s].externalConnections=!0)}})):_A.debug("Not a cluster ",s,NM)}),t.edges().forEach(function(s){const a=t.edge(s);_A.warn("Edge "+s.v+" -> "+s.w+": "+JSON.stringify(s)),_A.warn("Edge "+s.v+" -> "+s.w+": "+JSON.stringify(t.edge(s)));let h=s.v,Q=s.w;if(_A.warn("Fix XXX",No,"ids:",s.v,s.w,"Translating: ",No[s.v]," --- ",No[s.w]),No[s.v]&&No[s.w]&&No[s.v]===No[s.w]){_A.warn("Fixing and trixing link to self - removing XXX",s.v,s.w,s.name),_A.warn("Fixing and trixing - removing XXX",s.v,s.w,s.name),h=uwA(s.v),Q=uwA(s.w),t.removeEdge(s.v,s.w,s.name);const w=s.w+"---"+s.v;t.setNode(w,{domId:w,id:w,labelStyle:"",labelText:a.label,padding:0,shape:"labelRect",style:""});const I=JSON.parse(JSON.stringify(a)),d=JSON.parse(JSON.stringify(a));I.label="",I.arrowTypeEnd="none",d.label="",I.fromCluster=s.v,d.toCluster=s.v,t.setEdge(h,w,I,s.name+"-cyclic-special"),t.setEdge(w,Q,d,s.name+"-cyclic-special")}else(No[s.v]||No[s.w])&&(_A.warn("Fixing and trixing - removing XXX",s.v,s.w,s.name),h=uwA(s.v),Q=uwA(s.w),t.removeEdge(s.v,s.w,s.name),h!==s.v&&(a.fromCluster=s.v),Q!==s.w&&(a.toCluster=s.w),_A.warn("Fix Replacing with XXX",h,Q,s.name),t.setEdge(h,Q,a,s.name))}),_A.warn("Adjusted Graph",Lp(t)),THe(t,0),_A.trace(No)},THe=(t,i)=>{if(_A.warn("extractor - ",i,Lp(t),t.children("D")),i>10){_A.error("Bailing out");return}let s=t.nodes(),a=!1;for(const h of s){const Q=t.children(h);a=a||Q.length>0}if(!a){_A.debug("Done, no node has children",t.nodes());return}_A.debug("Nodes = ",s,i);for(const h of s)if(_A.debug("Extracting node",h,No,No[h]&&!No[h].externalConnections,!t.parent(h),t.node(h),t.children("D")," Depth ",i),!No[h])_A.debug("Not a cluster",h,i);else if(!No[h].externalConnections&&t.children(h)&&t.children(h).length>0){_A.warn("Cluster without external connections, without a parent and with children",h,i);let w=t.graph().rankdir==="TB"?"LR":"TB";No[h]&&No[h].clusterData&&No[h].clusterData.dir&&(w=No[h].clusterData.dir,_A.warn("Fixing dir",No[h].clusterData.dir,w));const I=new Pu({multigraph:!0,compound:!0}).setGraph({rankdir:w,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});_A.warn("Old graph before copy",Lp(t)),kHe(h,t,I,h),t.setNode(h,{clusterNode:!0,id:h,clusterData:No[h].clusterData,labelText:No[h].labelText,graph:I}),_A.warn("New graph after copy node: (",h,")",Lp(I)),_A.debug("Old graph after copy",Lp(t))}else _A.warn("Cluster ** ",h," **not meeting the criteria !externalConnections:",!No[h].externalConnections," no parent: ",!t.parent(h)," children ",t.children(h)&&t.children(h).length>0,t.children("D"),i),_A.debug(No);s=t.nodes(),_A.warn("New list of nodes",s);for(const h of s){const Q=t.node(h);_A.warn(" Now next level",h,Q),Q.clusterNode&&THe(Q.graph,i+1)}},vHe=(t,i)=>{if(i.length===0)return[];let s=Object.assign(i);return i.forEach(a=>{const h=t.children(a),Q=vHe(t,h);s=[...s,...Q]}),s},w3t=t=>vHe(t,t.children()),Q3t=(t,i)=>{_A.info("Creating subgraph rect for ",i.id,i);const s=t.insert("g").attr("class","cluster"+(i.class?" "+i.class:"")).attr("id",i.id),a=s.insert("rect",":first-child"),h=Lu(Je().flowchart.htmlLabels),Q=s.insert("g").attr("class","cluster-label"),w=i.labelType==="markdown"?Y0A(Q,i.labelText,{style:i.labelStyle,useHtmlLabels:h}):Q.node().appendChild(kE(i.labelText,i.labelStyle,void 0,!0));let I=w.getBBox();if(Lu(Je().flowchart.htmlLabels)){const R=w.children[0],T=Nn(w);I=R.getBoundingClientRect(),T.attr("width",I.width),T.attr("height",I.height)}const d=0*i.padding,D=d/2,N=i.width<=I.width+d?I.width+d:i.width;i.width<=I.width+d?i.diff=(I.width-i.width)/2-i.padding/2:i.diff=-i.padding/2,_A.trace("Data ",i,JSON.stringify(i)),a.attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("x",i.x-N/2).attr("y",i.y-i.height/2-D).attr("width",N).attr("height",i.height+d),h?Q.attr("transform","translate("+(i.x-I.width/2)+", "+(i.y-i.height/2)+")"):Q.attr("transform","translate("+i.x+", "+(i.y-i.height/2)+")");const U=a.node().getBBox();return i.width=U.width,i.height=U.height,i.intersect=function(R){return kZ(i,R)},s},E3t=(t,i)=>{const s=t.insert("g").attr("class","note-cluster").attr("id",i.id),a=s.insert("rect",":first-child"),h=0*i.padding,Q=h/2;a.attr("rx",i.rx).attr("ry",i.ry).attr("x",i.x-i.width/2-Q).attr("y",i.y-i.height/2-Q).attr("width",i.width+h).attr("height",i.height+h).attr("fill","none");const w=a.node().getBBox();return i.width=w.width,i.height=w.height,i.intersect=function(I){return kZ(i,I)},s},f3t=(t,i)=>{const s=t.insert("g").attr("class",i.classes).attr("id",i.id),a=s.insert("rect",":first-child"),h=s.insert("g").attr("class","cluster-label"),Q=s.append("rect"),w=h.node().appendChild(kE(i.labelText,i.labelStyle,void 0,!0));let I=w.getBBox();if(Lu(Je().flowchart.htmlLabels)){const R=w.children[0],T=Nn(w);I=R.getBoundingClientRect(),T.attr("width",I.width),T.attr("height",I.height)}I=w.getBBox();const d=0*i.padding,D=d/2,N=i.width<=I.width+i.padding?I.width+i.padding:i.width;i.width<=I.width+i.padding?i.diff=(I.width+i.padding*0-i.width)/2:i.diff=-i.padding/2,a.attr("class","outer").attr("x",i.x-N/2-D).attr("y",i.y-i.height/2-D).attr("width",N+d).attr("height",i.height+d),Q.attr("class","inner").attr("x",i.x-N/2-D).attr("y",i.y-i.height/2-D+I.height-1).attr("width",N+d).attr("height",i.height+d-I.height-3),h.attr("transform","translate("+(i.x-I.width/2)+", "+(i.y-i.height/2-i.padding/3+(Lu(Je().flowchart.htmlLabels)?5:3))+")");const U=a.node().getBBox();return i.height=U.height,i.intersect=function(R){return kZ(i,R)},s},I3t=(t,i)=>{const s=t.insert("g").attr("class",i.classes).attr("id",i.id),a=s.insert("rect",":first-child"),h=0*i.padding,Q=h/2;a.attr("class","divider").attr("x",i.x-i.width/2-Q).attr("y",i.y-i.height/2).attr("width",i.width+h).attr("height",i.height+h);const w=a.node().getBBox();return i.width=w.width,i.height=w.height,i.diff=-i.padding/2,i.intersect=function(I){return kZ(i,I)},s},C3t={rect:Q3t,roundedWithTitle:f3t,noteGroup:E3t,divider:I3t};let jHe={};const d3t=(t,i)=>{_A.trace("Inserting cluster");const s=i.shape||"rect";jHe[i.id]=C3t[s](t,i)},F3t=()=>{jHe={}},SHe=async(t,i,s,a)=>{_A.info("Graph in recursive render: XXX",Lp(i),a);const h=i.graph().rankdir;_A.trace("Dir in recursive render - dir:",h);const Q=t.insert("g").attr("class","root");i.nodes()?_A.info("Recursive render XXX",i.nodes()):_A.info("No nodes found for",i),i.edges().length>0&&_A.trace("Recursive edges",i.edge(i.edges()[0]));const w=Q.insert("g").attr("class","clusters"),I=Q.insert("g").attr("class","edgePaths"),d=Q.insert("g").attr("class","edgeLabels"),D=Q.insert("g").attr("class","nodes");await Promise.all(i.nodes().map(async function(U){const R=i.node(U);if(a!==void 0){const T=JSON.parse(JSON.stringify(a.clusterData));_A.info("Setting data for cluster XXX (",U,") ",T,a),i.setNode(a.id,T),i.parent(U)||(_A.trace("Setting parent",U,a.id),i.setParent(U,a.id,T))}if(_A.info("(Insert) Node XXX"+U+": "+JSON.stringify(i.node(U))),R&&R.clusterNode){_A.info("Cluster identified",U,R.width,i.node(U));const T=await SHe(D,R.graph,s,i.node(U)),j=T.elem;Ml(R,j),R.diff=T.diff||0,_A.info("Node bounds (abc123)",U,R,R.width,R.x,R.y),r3t(j,R),_A.warn("Recursive render complete ",j,R)}else i.children(U).length>0?(_A.info("Cluster - the non recursive path XXX",U,R.id,R,i),_A.info($X(R.id,i)),No[R.id]={id:$X(R.id,i),node:R}):(_A.info("Node - the non recursive path",U,R.id,R),await xHe(D,i.node(U),h))})),i.edges().forEach(function(U){const R=i.edge(U.v,U.w,U.name);_A.info("Edge "+U.v+" -> "+U.w+": "+JSON.stringify(U)),_A.info("Edge "+U.v+" -> "+U.w+": ",U," ",JSON.stringify(i.edge(U))),_A.info("Fix",No,"ids:",U.v,U.w,"Translateing: ",No[U.v],No[U.w]),GHe(d,R)}),i.edges().forEach(function(U){_A.info("Edge "+U.v+" -> "+U.w+": "+JSON.stringify(U))}),_A.info("#############################################"),_A.info("### Layout ###"),_A.info("#############################################"),_A.info(i),n5(i),_A.info("Graph after layout:",Lp(i));let N=0;return w3t(i).forEach(function(U){const R=i.node(U);_A.info("Position "+U+": "+JSON.stringify(i.node(U))),_A.info("Position "+U+": ("+R.x,","+R.y,") width: ",R.width," height: ",R.height),R&&R.clusterNode?W2e(R):i.children(U).length>0?(d3t(w,R),No[R.id].node=R):W2e(R)}),i.edges().forEach(function(U){const R=i.edge(U);_A.info("Edge "+U.v+" -> "+U.w+": "+JSON.stringify(R),R);const T=g3t(I,U,R,No,s,i);o3t(R,T)}),i.nodes().forEach(function(U){const R=i.node(U);_A.info(U,R.type,R.diff),R.type==="group"&&(N=R.diff)}),{elem:Q,diff:N}},$jA=async(t,i,s,a,h)=>{UHe(t,s,a,h),c3t(),s3t(),F3t(),h3t(),_A.warn("Graph at first:",Lp(i)),u3t(i),_A.warn("Graph after:",Lp(i)),await SHe(t,i,a)},LHe={},M3t=function(t){const i=Object.keys(t);for(const s of i)LHe[s]=t[s]},zHe=function(t,i,s,a,h,Q){const w=a.select(`[id="${s}"]`);Object.keys(t).forEach(function(d){const D=t[d];let N="default";D.classes.length>0&&(N=D.classes.join(" ")),N=N+" flowchart-label";const U=JM(D.styles);let R=D.text!==void 0?D.text:D.id,T;if(_A.info("vertex",D,D.labelType),D.labelType==="markdown")_A.info("vertex",D,D.labelType);else if(Lu(Je().flowchart.htmlLabels)){const AA={label:R.replace(/fa[blrs]?:fa-[\w-]+/g,X=>``)};T=KjA(w,AA).node(),T.parentNode.removeChild(T)}else{const AA=h.createElementNS("http://www.w3.org/2000/svg","text");AA.setAttribute("style",U.labelStyle.replace("color:","fill:"));const X=R.split(Yi.lineBreakRegex);for(const K of X){const $=h.createElementNS("http://www.w3.org/2000/svg","tspan");$.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),$.setAttribute("dy","1em"),$.setAttribute("x","1"),$.textContent=K,AA.appendChild($)}T=AA}let j=0,W="";switch(D.type){case"round":j=5,W="rect";break;case"square":W="rect";break;case"diamond":W="question";break;case"hexagon":W="hexagon";break;case"odd":W="rect_left_inv_arrow";break;case"lean_right":W="lean_right";break;case"lean_left":W="lean_left";break;case"trapezoid":W="trapezoid";break;case"inv_trapezoid":W="inv_trapezoid";break;case"odd_right":W="rect_left_inv_arrow";break;case"circle":W="circle";break;case"ellipse":W="ellipse";break;case"stadium":W="stadium";break;case"subroutine":W="subroutine";break;case"cylinder":W="cylinder";break;case"group":W="rect";break;case"doublecircle":W="doublecircle";break;default:W="rect"}i.setNode(D.id,{labelStyle:U.labelStyle,shape:W,labelText:R,labelType:D.labelType,rx:j,ry:j,class:N,style:U.style,id:D.id,link:D.link,linkTarget:D.linkTarget,tooltip:Q.db.getTooltip(D.id)||"",domId:Q.db.lookUpDomId(D.id),haveCallback:D.haveCallback,width:D.type==="group"?500:void 0,dir:D.dir,type:D.type,props:D.props,padding:Je().flowchart.padding}),_A.info("setNode",{labelStyle:U.labelStyle,labelType:D.labelType,shape:W,labelText:R,rx:j,ry:j,class:N,style:U.style,id:D.id,domId:Q.db.lookUpDomId(D.id),width:D.type==="group"?500:void 0,type:D.type,dir:D.dir,props:D.props,padding:Je().flowchart.padding})})},PHe=function(t,i,s){_A.info("abc78 edges = ",t);let a=0,h={},Q,w;if(t.defaultStyle!==void 0){const I=JM(t.defaultStyle);Q=I.style,w=I.labelStyle}t.forEach(function(I){a++;const d="L-"+I.start+"-"+I.end;h[d]===void 0?(h[d]=0,_A.info("abc78 new entry",d,h[d])):(h[d]++,_A.info("abc78 new entry",d,h[d]));let D=d+"-"+h[d];_A.info("abc78 new link id to be used is",d,D,h[d]);const N="LS-"+I.start,U="LE-"+I.end,R={style:"",labelStyle:""};switch(R.minlen=I.length||1,I.type==="arrow_open"?R.arrowhead="none":R.arrowhead="normal",R.arrowTypeStart="arrow_open",R.arrowTypeEnd="arrow_open",I.type){case"double_arrow_cross":R.arrowTypeStart="arrow_cross";case"arrow_cross":R.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":R.arrowTypeStart="arrow_point";case"arrow_point":R.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":R.arrowTypeStart="arrow_circle";case"arrow_circle":R.arrowTypeEnd="arrow_circle";break}let T="",j="";switch(I.stroke){case"normal":T="fill:none;",Q!==void 0&&(T=Q),w!==void 0&&(j=w),R.thickness="normal",R.pattern="solid";break;case"dotted":R.thickness="normal",R.pattern="dotted",R.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":R.thickness="thick",R.pattern="solid",R.style="stroke-width: 3.5px;fill:none;";break;case"invisible":R.thickness="invisible",R.pattern="solid",R.style="stroke-width: 0;fill:none;";break}if(I.style!==void 0){const W=JM(I.style);T=W.style,j=W.labelStyle}R.style=R.style+=T,R.labelStyle=R.labelStyle+=j,I.interpolate!==void 0?R.curve=fd(I.interpolate,t0):t.defaultInterpolate!==void 0?R.curve=fd(t.defaultInterpolate,t0):R.curve=fd(LHe.curve,t0),I.text===void 0?I.style!==void 0&&(R.arrowheadStyle="fill: #333"):(R.arrowheadStyle="fill: #333",R.labelpos="c"),R.labelType=I.labelType,R.label=I.text.replace(Yi.lineBreakRegex,``),I.style===void 0&&(R.style=R.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),R.labelStyle=R.labelStyle.replace("color:","fill:"),R.id=D,R.classes="flowchart-link "+N+" "+U,i.setEdge(I.start,I.end,R,a)})},Y3t=function(t,i){return i.db.getClasses()},D3t=async function(t,i,s,a){_A.info("Drawing flowchart");let h=a.db.getDirection();h===void 0&&(h="TD");const{securityLevel:Q,flowchart:w}=Je(),I=w.nodeSpacing||50,d=w.rankSpacing||50;let D;Q==="sandbox"&&(D=Nn("#i"+i));const N=Nn(Q==="sandbox"?D.nodes()[0].contentDocument.body:"body"),U=Q==="sandbox"?D.nodes()[0].contentDocument:document,R=new Pu({multigraph:!0,compound:!0}).setGraph({rankdir:h,nodesep:I,ranksep:d,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let T;const j=a.db.getSubGraphs();_A.info("Subgraphs - ",j);for(let hA=j.length-1;hA>=0;hA--)T=j[hA],_A.info("Subgraph - ",T),a.db.addVertex(T.id,{text:T.title,type:T.labelType},"group",void 0,T.classes,T.dir);const W=a.db.getVertices(),AA=a.db.getEdges();_A.info("Edges",AA);let X=0;for(X=j.length-1;X>=0;X--){T=j[X],K4e("cluster").append("text");for(let hA=0;hA {const s=DEt,a=s(t,"r"),h=s(t,"g"),Q=s(t,"b");return eS(a,h,Q,i)},p3t=t=>`.label { font-family: ${t.fontFamily}; color: ${t.nodeTextColor||t.textColor}; } .cluster-label text { fill: ${t.titleColor}; } .cluster-label span,p { color: ${t.titleColor}; } .label text,span,p { fill: ${t.nodeTextColor||t.textColor}; color: ${t.nodeTextColor||t.textColor}; } .node rect, .node circle, .node ellipse, .node polygon, .node path { fill: ${t.mainBkg}; stroke: ${t.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: ${t.arrowheadColor}; } .edgePath .path { stroke: ${t.lineColor}; stroke-width: 2.0px; } .flowchart-link { stroke: ${t.lineColor}; fill: none; } .edgeLabel { background-color: ${t.edgeLabelBackground}; rect { opacity: 0.5; background-color: ${t.edgeLabelBackground}; fill: ${t.edgeLabelBackground}; } text-align: center; } /* For html labels only */ .labelBkg { background-color: ${y3t(t.edgeLabelBackground,.5)}; // background-color: } .cluster rect { fill: ${t.clusterBkg}; stroke: ${t.clusterBorder}; stroke-width: 1px; } .cluster text { fill: ${t.titleColor}; } .cluster span,p { color: ${t.titleColor}; } /* .cluster div { color: ${t.titleColor}; } */ div.mermaidTooltip { position: absolute; text-align: center; max-width: 200px; padding: 2px; font-family: ${t.fontFamily}; font-size: 12px; background: ${t.tertiaryColor}; border: 1px solid ${t.border2}; border-radius: 2px; pointer-events: none; z-index: 100; } .flowchartTitleText { text-anchor: middle; font-size: 18px; fill: ${t.textColor}; }`,OHe=p3t;function WHe(t,i,s){const a=i.width,h=i.height,Q=(a+h)*.9,w=[{x:Q/2,y:0},{x:Q,y:-Q/2},{x:Q/2,y:-Q},{x:0,y:-Q/2}],I=h4(t,Q,Q,w);return s.intersect=function(d){return l2(s,w,d)},I}function KHe(t,i,s){const h=i.height,Q=h/4,w=i.width+2*Q,I=[{x:Q,y:0},{x:w-Q,y:0},{x:w,y:-h/2},{x:w-Q,y:-h},{x:Q,y:-h},{x:0,y:-h/2}],d=h4(t,w,h,I);return s.intersect=function(D){return l2(s,I,D)},d}function VHe(t,i,s){const a=i.width,h=i.height,Q=[{x:-h/2,y:0},{x:a,y:0},{x:a,y:-h},{x:-h/2,y:-h},{x:0,y:-h/2}],w=h4(t,a,h,Q);return s.intersect=function(I){return l2(s,Q,I)},w}function XHe(t,i,s){const a=i.width,h=i.height,Q=[{x:-2*h/6,y:0},{x:a-h/6,y:0},{x:a+2*h/6,y:-h},{x:h/6,y:-h}],w=h4(t,a,h,Q);return s.intersect=function(I){return l2(s,Q,I)},w}function ZHe(t,i,s){const a=i.width,h=i.height,Q=[{x:2*h/6,y:0},{x:a+h/6,y:0},{x:a-2*h/6,y:-h},{x:-h/6,y:-h}],w=h4(t,a,h,Q);return s.intersect=function(I){return l2(s,Q,I)},w}function qHe(t,i,s){const a=i.width,h=i.height,Q=[{x:-2*h/6,y:0},{x:a+2*h/6,y:0},{x:a-h/6,y:-h},{x:h/6,y:-h}],w=h4(t,a,h,Q);return s.intersect=function(I){return l2(s,Q,I)},w}function _He(t,i,s){const a=i.width,h=i.height,Q=[{x:h/6,y:0},{x:a-h/6,y:0},{x:a+2*h/6,y:-h},{x:-2*h/6,y:-h}],w=h4(t,a,h,Q);return s.intersect=function(I){return l2(s,Q,I)},w}function $He(t,i,s){const a=i.width,h=i.height,Q=[{x:0,y:0},{x:a+h/2,y:0},{x:a,y:-h/2},{x:a+h/2,y:-h},{x:0,y:-h}],w=h4(t,a,h,Q);return s.intersect=function(I){return l2(s,Q,I)},w}function Axe(t,i,s){const a=i.height,h=i.width+a/4,Q=t.insert("rect",":first-child").attr("rx",a/2).attr("ry",a/2).attr("x",-h/2).attr("y",-a/2).attr("width",h).attr("height",a);return s.intersect=function(w){return XjA(s,w)},Q}function exe(t,i,s){const a=i.width,h=i.height,Q=[{x:0,y:0},{x:a,y:0},{x:a,y:-h},{x:0,y:-h},{x:0,y:0},{x:-8,y:0},{x:a+8,y:0},{x:a+8,y:-h},{x:-8,y:-h},{x:-8,y:0}],w=h4(t,a,h,Q);return s.intersect=function(I){return l2(s,Q,I)},w}function txe(t,i,s){const a=i.width,h=a/2,Q=h/(2.5+a/50),w=i.height+Q,I="M 0,"+Q+" a "+h+","+Q+" 0,0,0 "+a+" 0 a "+h+","+Q+" 0,0,0 "+-a+" 0 l 0,"+w+" a "+h+","+Q+" 0,0,0 "+a+" 0 l 0,"+-w,d=t.attr("label-offset-y",Q).insert("path",":first-child").attr("d",I).attr("transform","translate("+-a/2+","+-(w/2+Q)+")");return s.intersect=function(D){const N=XjA(s,D),U=N.x-s.x;if(h!=0&&(Math.abs(U) s.height/2-Q)){let R=Q*Q*(1-U*U/(h*h));R!=0&&(R=Math.sqrt(R)),R=Q-R,D.y-s.y>0&&(R=-R),N.y+=R}return N},d}function N3t(t){t.shapes().question=WHe,t.shapes().hexagon=KHe,t.shapes().stadium=Axe,t.shapes().subroutine=exe,t.shapes().cylinder=txe,t.shapes().rect_left_inv_arrow=VHe,t.shapes().lean_right=XHe,t.shapes().lean_left=ZHe,t.shapes().trapezoid=qHe,t.shapes().inv_trapezoid=_He,t.shapes().rect_right_inv_arrow=$He}function m3t(t){t({question:WHe}),t({hexagon:KHe}),t({stadium:Axe}),t({subroutine:exe}),t({cylinder:txe}),t({rect_left_inv_arrow:VHe}),t({lean_right:XHe}),t({lean_left:ZHe}),t({trapezoid:qHe}),t({inv_trapezoid:_He}),t({rect_right_inv_arrow:$He})}function h4(t,i,s,a){return t.insert("polygon",":first-child").attr("points",a.map(function(h){return h.x+","+h.y}).join(" ")).attr("transform","translate("+-i/2+","+s/2+")")}const U3t={addToRender:N3t,addToRenderV2:m3t},nxe={},b3t=function(t){const i=Object.keys(t);for(const s of i)nxe[s]=t[s]},ixe=function(t,i,s,a,h,Q){const w=a?a.select(`[id="${s}"]`):Nn(`[id="${s}"]`),I=h||document;Object.keys(t).forEach(function(D){const N=t[D];let U="default";N.classes.length>0&&(U=N.classes.join(" "));const R=JM(N.styles);let T=N.text!==void 0?N.text:N.id,j;if(Lu(Je().flowchart.htmlLabels)){const X={label:T.replace(/fa[blrs]?:fa-[\w-]+/g,K=>``)};j=KjA(w,X).node(),j.parentNode.removeChild(j)}else{const X=I.createElementNS("http://www.w3.org/2000/svg","text");X.setAttribute("style",R.labelStyle.replace("color:","fill:"));const K=T.split(Yi.lineBreakRegex);for(const $ of K){const QA=I.createElementNS("http://www.w3.org/2000/svg","tspan");QA.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),QA.setAttribute("dy","1em"),QA.setAttribute("x","1"),QA.textContent=$,X.appendChild(QA)}j=X}let W=0,AA="";switch(N.type){case"round":W=5,AA="rect";break;case"square":AA="rect";break;case"diamond":AA="question";break;case"hexagon":AA="hexagon";break;case"odd":AA="rect_left_inv_arrow";break;case"lean_right":AA="lean_right";break;case"lean_left":AA="lean_left";break;case"trapezoid":AA="trapezoid";break;case"inv_trapezoid":AA="inv_trapezoid";break;case"odd_right":AA="rect_left_inv_arrow";break;case"circle":AA="circle";break;case"ellipse":AA="ellipse";break;case"stadium":AA="stadium";break;case"subroutine":AA="subroutine";break;case"cylinder":AA="cylinder";break;case"group":AA="rect";break;default:AA="rect"}_A.warn("Adding node",N.id,N.domId),i.setNode(Q.db.lookUpDomId(N.id),{labelType:"svg",labelStyle:R.labelStyle,shape:AA,label:j,rx:W,ry:W,class:U,style:R.style,id:Q.db.lookUpDomId(N.id)})})},rxe=function(t,i,s){let a=0,h,Q;if(t.defaultStyle!==void 0){const w=JM(t.defaultStyle);h=w.style,Q=w.labelStyle}t.forEach(function(w){a++;const I="L-"+w.start+"-"+w.end,d="LS-"+w.start,D="LE-"+w.end,N={};w.type==="arrow_open"?N.arrowhead="none":N.arrowhead="normal";let U="",R="";if(w.style!==void 0){const T=JM(w.style);U=T.style,R=T.labelStyle}else switch(w.stroke){case"normal":U="fill:none",h!==void 0&&(U=h),Q!==void 0&&(R=Q);break;case"dotted":U="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":U=" stroke-width: 3.5px;fill:none";break}N.style=U,N.labelStyle=R,w.interpolate!==void 0?N.curve=fd(w.interpolate,t0):t.defaultInterpolate!==void 0?N.curve=fd(t.defaultInterpolate,t0):N.curve=fd(nxe.curve,t0),w.text===void 0?w.style!==void 0&&(N.arrowheadStyle="fill: #333"):(N.arrowheadStyle="fill: #333",N.labelpos="c",Lu(Je().flowchart.htmlLabels)?(N.labelType="html",N.label=`${w.text.replace(/fa[blrs]?:fa-[\w-]+/g,T=>``)}`):(N.labelType="text",N.label=w.text.replace(Yi.lineBreakRegex,``),w.style===void 0&&(N.style=N.style||"stroke: #333; stroke-width: 1.5px;fill:none"),N.labelStyle=N.labelStyle.replace("color:","fill:"))),N.id=I,N.class=d+" "+D,N.minlen=w.length||1,i.setEdge(s.db.lookUpDomId(w.start),s.db.lookUpDomId(w.end),N,a)})},H3t=function(t,i){return _A.info("Extracting classes"),i.db.getClasses()},x3t=function(t,i,s,a){_A.info("Drawing flowchart");const{securityLevel:h,flowchart:Q}=Je();let w;h==="sandbox"&&(w=Nn("#i"+i));const I=Nn(h==="sandbox"?w.nodes()[0].contentDocument.body:"body"),d=h==="sandbox"?w.nodes()[0].contentDocument:document;let D=a.db.getDirection();D===void 0&&(D="TD");const N=Q.nodeSpacing||50,U=Q.rankSpacing||50,R=new Pu({multigraph:!0,compound:!0}).setGraph({rankdir:D,nodesep:N,ranksep:U,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let T;const j=a.db.getSubGraphs();for(let aA=j.length-1;aA>=0;aA--)T=j[aA],a.db.addVertex(T.id,T.title,"group",void 0,T.classes);const W=a.db.getVertices();_A.warn("Get vertices",W);const AA=a.db.getEdges();let X=0;for(X=j.length-1;X>=0;X--){T=j[X],K4e("cluster").append("text");for(let aA=0;aA {t.flowchart||(t.flowchart={}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,G3t.setConf(t.flowchart),xJ.clear(),xJ.setGen("gen-1")}},k3t=Object.freeze(Object.defineProperty({__proto__:null,diagram:J3t},Symbol.toStringTag,{value:"Module"})),R3t={parser:mjA,db:xJ,renderer:I8A,styles:OHe,init:t=>{t.flowchart||(t.flowchart={}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,Rme({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}}),I8A.setConf(t.flowchart),xJ.clear(),xJ.setGen("gen-2")}},T3t=Object.freeze(Object.defineProperty({__proto__:null,diagram:R3t},Symbol.toStringTag,{value:"Module"})),v3t=/^(?:[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 j3t(t){return typeof t=="string"&&v3t.test(t)}const cQ=[];for(let t=0;t<256;++t)cQ.push((t+256).toString(16).slice(1));function S3t(t,i=0){return(cQ[t[i+0]]+cQ[t[i+1]]+cQ[t[i+2]]+cQ[t[i+3]]+"-"+cQ[t[i+4]]+cQ[t[i+5]]+"-"+cQ[t[i+6]]+cQ[t[i+7]]+"-"+cQ[t[i+8]]+cQ[t[i+9]]+"-"+cQ[t[i+10]]+cQ[t[i+11]]+cQ[t[i+12]]+cQ[t[i+13]]+cQ[t[i+14]]+cQ[t[i+15]]).toLowerCase()}function L3t(t){if(!j3t(t))throw TypeError("Invalid UUID");let i;const s=new Uint8Array(16);return s[0]=(i=parseInt(t.slice(0,8),16))>>>24,s[1]=i>>>16&255,s[2]=i>>>8&255,s[3]=i&255,s[4]=(i=parseInt(t.slice(9,13),16))>>>8,s[5]=i&255,s[6]=(i=parseInt(t.slice(14,18),16))>>>8,s[7]=i&255,s[8]=(i=parseInt(t.slice(19,23),16))>>>8,s[9]=i&255,s[10]=(i=parseInt(t.slice(24,36),16))/1099511627776&255,s[11]=i/4294967296&255,s[12]=i>>>24&255,s[13]=i>>>16&255,s[14]=i>>>8&255,s[15]=i&255,s}function z3t(t){t=unescape(encodeURIComponent(t));const i=[];for(let s=0;s >>32-i}function V3t(t){const i=[1518500249,1859775393,2400959708,3395469782],s=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t=="string"){const w=unescape(encodeURIComponent(t));t=[];for(let I=0;I >>0;R=U,U=N,N=zRA(D,30)>>>0,D=d,d=W}s[0]=s[0]+d>>>0,s[1]=s[1]+D>>>0,s[2]=s[2]+N>>>0,s[3]=s[3]+U>>>0,s[4]=s[4]+R>>>0}return[s[0]>>24&255,s[0]>>16&255,s[0]>>8&255,s[0]&255,s[1]>>24&255,s[1]>>16&255,s[1]>>8&255,s[1]&255,s[2]>>24&255,s[2]>>16&255,s[2]>>8&255,s[2]&255,s[3]>>24&255,s[3]>>16&255,s[3]>>8&255,s[3]&255,s[4]>>24&255,s[4]>>16&255,s[4]>>8&255,s[4]&255]}const X3t=W3t("v5",80,V3t),Z3t=X3t;var C8A=function(){var t=function(fA,DA,eA,GA){for(eA=eA||{},GA=fA.length;GA--;eA[fA[GA]]=DA);return eA},i=[1,2],s=[1,5],a=[6,9,11,23,25,27,29,30,31,52],h=[1,17],Q=[1,18],w=[1,19],I=[1,20],d=[1,21],D=[1,22],N=[1,25],U=[1,30],R=[1,31],T=[1,32],j=[1,33],W=[1,34],AA=[6,9,11,15,20,23,25,27,29,30,31,44,45,46,47,48,52],X=[1,46],K=[30,31,49,50],$=[4,6,9,11,23,25,27,29,30,31,52],QA=[44,45,46,47,48],hA=[22,37],aA=[1,66],iA=[1,65],BA=[22,37,39,41],rA={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,ENTITY_NAME:31,attribute:32,attributeType:33,attributeName:34,attributeKeyTypeList:35,attributeComment:36,ATTRIBUTE_WORD:37,attributeKeyType:38,COMMA:39,ATTRIBUTE_KEY:40,COMMENT:41,cardinality:42,relType:43,ZERO_OR_ONE:44,ZERO_OR_MORE:45,ONE_OR_MORE:46,ONLY_ONE:47,MD_PARENT:48,NON_IDENTIFYING:49,IDENTIFYING:50,WORD:51,open_directive:52,type_directive:53,arg_directive:54,close_directive:55,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:"ENTITY_NAME",37:"ATTRIBUTE_WORD",39:"COMMA",40:"ATTRIBUTE_KEY",41:"COMMENT",44:"ZERO_OR_ONE",45:"ZERO_OR_MORE",46:"ONE_OR_MORE",47:"ONLY_ONE",48:"MD_PARENT",49:"NON_IDENTIFYING",50:"IDENTIFYING",51:"WORD",52:"open_directive",53:"type_directive",54:"arg_directive",55:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,1],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[35,3],[38,1],[36,1],[18,3],[42,1],[42,1],[42,1],[42,1],[42,1],[43,1],[43,1],[19,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(DA,eA,GA,cA,JA,_,SA){var jA=_.length-1;switch(JA){case 1:break;case 3:this.$=[];break;case 4:_[jA-1].push(_[jA]),this.$=_[jA-1];break;case 5:case 6:this.$=_[jA];break;case 7:case 8:this.$=[];break;case 12:cA.addEntity(_[jA-4]),cA.addEntity(_[jA-2]),cA.addRelationship(_[jA-4],_[jA],_[jA-2],_[jA-3]);break;case 13:cA.addEntity(_[jA-3]),cA.addAttributes(_[jA-3],_[jA-1]);break;case 14:cA.addEntity(_[jA-2]);break;case 15:cA.addEntity(_[jA]);break;case 16:case 17:this.$=_[jA].trim(),cA.setAccTitle(this.$);break;case 18:case 19:this.$=_[jA].trim(),cA.setAccDescription(this.$);break;case 20:case 44:this.$=_[jA];break;case 21:case 42:case 43:this.$=_[jA].replace(/"/g,"");break;case 22:case 30:this.$=[_[jA]];break;case 23:_[jA].push(_[jA-1]),this.$=_[jA];break;case 24:this.$={attributeType:_[jA-1],attributeName:_[jA]};break;case 25:this.$={attributeType:_[jA-2],attributeName:_[jA-1],attributeKeyTypeList:_[jA]};break;case 26:this.$={attributeType:_[jA-2],attributeName:_[jA-1],attributeComment:_[jA]};break;case 27:this.$={attributeType:_[jA-3],attributeName:_[jA-2],attributeKeyTypeList:_[jA-1],attributeComment:_[jA]};break;case 28:case 29:case 32:this.$=_[jA];break;case 31:_[jA-2].push(_[jA]),this.$=_[jA-2];break;case 33:this.$=_[jA].replace(/"/g,"");break;case 34:this.$={cardA:_[jA],relType:_[jA-1],cardB:_[jA-2]};break;case 35:this.$=cA.Cardinality.ZERO_OR_ONE;break;case 36:this.$=cA.Cardinality.ZERO_OR_MORE;break;case 37:this.$=cA.Cardinality.ONE_OR_MORE;break;case 38:this.$=cA.Cardinality.ONLY_ONE;break;case 39:this.$=cA.Cardinality.MD_PARENT;break;case 40:this.$=cA.Identification.NON_IDENTIFYING;break;case 41:this.$=cA.Identification.IDENTIFYING;break;case 45:cA.parseDirective("%%{","open_directive");break;case 46:cA.parseDirective(_[jA],"type_directive");break;case 47:_[jA]=_[jA].trim().replace(/'/g,'"'),cA.parseDirective(_[jA],"arg_directive");break;case 48:cA.parseDirective("}%%","close_directive","er");break}},table:[{3:1,4:i,7:3,12:4,52:s},{1:[3]},t(a,[2,3],{5:6}),{3:7,4:i,7:3,12:4,52:s},{13:8,53:[1,9]},{53:[2,45]},{6:[1,10],7:15,8:11,9:[1,12],10:13,11:[1,14],12:4,17:16,23:h,25:Q,27:w,29:I,30:d,31:D,52:s},{1:[2,2]},{14:23,15:[1,24],55:N},t([15,55],[2,46]),t(a,[2,8],{1:[2,1]}),t(a,[2,4]),{7:15,10:26,12:4,17:16,23:h,25:Q,27:w,29:I,30:d,31:D,52:s},t(a,[2,6]),t(a,[2,7]),t(a,[2,11]),t(a,[2,15],{18:27,42:29,20:[1,28],44:U,45:R,46:T,47:j,48:W}),{24:[1,35]},{26:[1,36]},{28:[1,37]},t(a,[2,19]),t(AA,[2,20]),t(AA,[2,21]),{11:[1,38]},{16:39,54:[1,40]},{11:[2,48]},t(a,[2,5]),{17:41,30:d,31:D},{21:42,22:[1,43],32:44,33:45,37:X},{43:47,49:[1,48],50:[1,49]},t(K,[2,35]),t(K,[2,36]),t(K,[2,37]),t(K,[2,38]),t(K,[2,39]),t(a,[2,16]),t(a,[2,17]),t(a,[2,18]),t($,[2,9]),{14:50,55:N},{55:[2,47]},{15:[1,51]},{22:[1,52]},t(a,[2,14]),{21:53,22:[2,22],32:44,33:45,37:X},{34:54,37:[1,55]},{37:[2,28]},{42:56,44:U,45:R,46:T,47:j,48:W},t(QA,[2,40]),t(QA,[2,41]),{11:[1,57]},{19:58,30:[1,61],31:[1,60],51:[1,59]},t(a,[2,13]),{22:[2,23]},t(hA,[2,24],{35:62,36:63,38:64,40:aA,41:iA}),t([22,37,40,41],[2,29]),t([30,31],[2,34]),t($,[2,10]),t(a,[2,12]),t(a,[2,42]),t(a,[2,43]),t(a,[2,44]),t(hA,[2,25],{36:67,39:[1,68],41:iA}),t(hA,[2,26]),t(BA,[2,30]),t(hA,[2,33]),t(BA,[2,32]),t(hA,[2,27]),{38:69,40:aA},t(BA,[2,31])],defaultActions:{5:[2,45],7:[2,2],25:[2,48],40:[2,47],46:[2,28],53:[2,23]},parseError:function(DA,eA){if(eA.recoverable)this.trace(DA);else{var GA=new Error(DA);throw GA.hash=eA,GA}},parse:function(DA){var eA=this,GA=[0],cA=[],JA=[null],_=[],SA=this.table,jA="",dA=0,kA=0,vA=2,Fe=1,at=_.slice.call(arguments,1),fe=Object.create(this.lexer),mt={yy:{}};for(var be in this.yy)Object.prototype.hasOwnProperty.call(this.yy,be)&&(mt.yy[be]=this.yy[be]);fe.setInput(DA,mt.yy),mt.yy.lexer=fe,mt.yy.parser=this,typeof fe.yylloc>"u"&&(fe.yylloc={});var ie=fe.yylloc;_.push(ie);var ye=fe.options&&fe.options.ranges;typeof mt.yy.parseError=="function"?this.parseError=mt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Le(){var $A;return $A=cA.pop()||fe.lex()||Fe,typeof $A!="number"&&($A instanceof Array&&(cA=$A,$A=cA.pop()),$A=eA.symbols_[$A]||$A),$A}for(var HA,WA,XA,ce,ZA={},pe,zA,Ft,RA;;){if(WA=GA[GA.length-1],this.defaultActions[WA]?XA=this.defaultActions[WA]:((HA===null||typeof HA>"u")&&(HA=Le()),XA=SA[WA]&&SA[WA][HA]),typeof XA>"u"||!XA.length||!XA[0]){var Et="";RA=[];for(pe in SA[WA])this.terminals_[pe]&&pe>vA&&RA.push("'"+this.terminals_[pe]+"'");fe.showPosition?Et="Parse error on line "+(dA+1)+`:`+fe.showPosition()+`Expecting `+RA.join(", ")+", got '"+(this.terminals_[HA]||HA)+"'":Et="Parse error on line "+(dA+1)+": Unexpected "+(HA==Fe?"end of input":"'"+(this.terminals_[HA]||HA)+"'"),this.parseError(Et,{text:fe.match,token:this.terminals_[HA]||HA,line:fe.yylineno,loc:ie,expected:RA})}if(XA[0]instanceof Array&&XA.length>1)throw new Error("Parse Error: multiple actions possible at state: "+WA+", token: "+HA);switch(XA[0]){case 1:GA.push(HA),JA.push(fe.yytext),_.push(fe.yylloc),GA.push(XA[1]),HA=null,kA=fe.yyleng,jA=fe.yytext,dA=fe.yylineno,ie=fe.yylloc;break;case 2:if(zA=this.productions_[XA[1]][1],ZA.$=JA[JA.length-zA],ZA._$={first_line:_[_.length-(zA||1)].first_line,last_line:_[_.length-1].last_line,first_column:_[_.length-(zA||1)].first_column,last_column:_[_.length-1].last_column},ye&&(ZA._$.range=[_[_.length-(zA||1)].range[0],_[_.length-1].range[1]]),ce=this.performAction.apply(ZA,[jA,kA,dA,mt.yy,XA[1],JA,_].concat(at)),typeof ce<"u")return ce;zA&&(GA=GA.slice(0,-1*zA*2),JA=JA.slice(0,-1*zA),_=_.slice(0,-1*zA)),GA.push(this.productions_[XA[1]][0]),JA.push(ZA.$),_.push(ZA._$),Ft=SA[GA[GA.length-2]][GA[GA.length-1]],GA.push(Ft);break;case 3:return!0}}return!0}},FA=function(){var fA={EOF:1,parseError:function(eA,GA){if(this.yy.parser)this.yy.parser.parseError(eA,GA);else throw new Error(eA)},setInput:function(DA,eA){return this.yy=eA||this.yy||{},this._input=DA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var DA=this._input[0];this.yytext+=DA,this.yyleng++,this.offset++,this.match+=DA,this.matched+=DA;var eA=DA.match(/(?:\r\n?|\n).*/g);return eA?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),DA},unput:function(DA){var eA=DA.length,GA=DA.split(/(?:\r\n?|\n)/g);this._input=DA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-eA),this.offset-=eA;var cA=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),GA.length-1&&(this.yylineno-=GA.length-1);var JA=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:GA?(GA.length===cA.length?this.yylloc.first_column:0)+cA[cA.length-GA.length].length-GA[0].length:this.yylloc.first_column-eA},this.options.ranges&&(this.yylloc.range=[JA[0],JA[0]+this.yyleng-eA]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(DA){this.unput(this.match.slice(DA))},pastInput:function(){var DA=this.matched.substr(0,this.matched.length-this.match.length);return(DA.length>20?"...":"")+DA.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var DA=this.match;return DA.length<20&&(DA+=this._input.substr(0,20-DA.length)),(DA.substr(0,20)+(DA.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var DA=this.pastInput(),eA=new Array(DA.length+1).join("-");return DA+this.upcomingInput()+``+eA+"^"},test_match:function(DA,eA){var GA,cA,JA;if(this.options.backtrack_lexer&&(JA={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&&(JA.yylloc.range=this.yylloc.range.slice(0))),cA=DA[0].match(/(?:\r\n?|\n).*/g),cA&&(this.yylineno+=cA.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:cA?cA[cA.length-1].length-cA[cA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+DA[0].length},this.yytext+=DA[0],this.match+=DA[0],this.matches=DA,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(DA[0].length),this.matched+=DA[0],GA=this.performAction.call(this,this.yy,this,eA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),GA)return GA;if(this._backtrack){for(var _ in JA)this[_]=JA[_];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var DA,eA,GA,cA;this._more||(this.yytext="",this.match="");for(var JA=this._currentRules(),_=0;_ eA[0].length)){if(eA=GA,cA=_,this.options.backtrack_lexer){if(DA=this.test_match(GA,JA[_]),DA!==!1)return DA;if(this._backtrack){eA=!1;continue}else return!1}else if(!this.options.flex)break}return eA?(DA=this.test_match(eA,JA[cA]),DA!==!1?DA:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var eA=this.next();return eA||this.lex()},begin:function(eA){this.conditionStack.push(eA)},popState:function(){var eA=this.conditionStack.length-1;return eA>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(eA){return eA=this.conditionStack.length-1-Math.abs(eA||0),eA>=0?this.conditionStack[eA]:"INITIAL"},pushState:function(eA){this.begin(eA)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(eA,GA,cA,JA){switch(cA){case 0:return this.begin("acc_title"),25;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),27;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.begin("open_directive"),52;case 8:return this.begin("type_directive"),53;case 9:return this.popState(),this.begin("arg_directive"),15;case 10:return this.popState(),this.popState(),55;case 11:return 54;case 12:return 11;case 13:break;case 14:return 9;case 15:return 31;case 16:return 51;case 17:return 4;case 18:return this.begin("block"),20;case 19:return 39;case 20:break;case 21:return 40;case 22:return 37;case 23:return 37;case 24:return 41;case 25:break;case 26:return this.popState(),22;case 27:return GA.yytext[0];case 28:return 44;case 29:return 46;case 30:return 46;case 31:return 46;case 32:return 44;case 33:return 44;case 34:return 45;case 35:return 45;case 36:return 45;case 37:return 45;case 38:return 45;case 39:return 46;case 40:return 45;case 41:return 46;case 42:return 47;case 43:return 47;case 44:return 47;case 45:return 47;case 46:return 44;case 47:return 45;case 48:return 46;case 49:return 48;case 50:return 49;case 51:return 50;case 52:return 50;case 53:return 49;case 54:return 49;case 55:return 49;case 56:return 30;case 57:return GA.yytext[0];case 58:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/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,/^(?: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},open_directive:{rules:[8],inclusive:!1},type_directive:{rules:[9,10],inclusive:!1},arg_directive:{rules:[10,11],inclusive:!1},block:{rules:[19,20,21,22,23,24,25,26,27],inclusive:!1},INITIAL:{rules:[0,2,4,7,12,13,14,15,16,17,18,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],inclusive:!0}}};return fA}();rA.lexer=FA;function gA(){this.yy={}}return gA.prototype=rA,rA.Parser=gA,new gA}();C8A.parser=C8A;const q3t=C8A;let FX={},ASA=[];const _3t={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"},$3t={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},AGt=function(t,i,s){zu.parseDirective(this,t,i,s)},cxe=function(t){return FX[t]===void 0&&(FX[t]={attributes:[]},_A.info("Added new entity :",t)),FX[t]},eGt=()=>FX,tGt=function(t,i){let s=cxe(t),a;for(a=i.length-1;a>=0;a--)s.attributes.push(i[a]),_A.debug("Added attribute ",i[a].attributeName)},nGt=function(t,i,s,a){let h={entityA:t,roleA:i,entityB:s,relSpec:a};ASA.push(h),_A.debug("Added new relationship :",h)},iGt=()=>ASA,rGt=function(){FX={},ASA=[],g0()},cGt={Cardinality:_3t,Identification:$3t,parseDirective:AGt,getConfig:()=>Je().er,addEntity:cxe,addAttributes:tGt,getEntities:eGt,addRelationship:nGt,getRelationships:iGt,clear:rGt,setAccTitle:A1,getAccTitle:h0,setAccDescription:l0,getAccDescription:u0,setDiagramTitle:EI,getDiagramTitle:zE},CM={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"},sGt=function(t,i){let s;t.append("defs").append("marker").attr("id",CM.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"),t.append("defs").append("marker").attr("id",CM.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"),t.append("defs").append("marker").attr("id",CM.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),t.append("defs").append("marker").attr("id",CM.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),s=t.append("defs").append("marker").attr("id",CM.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),s.append("circle").attr("stroke",i.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),s.append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M9,0 L9,18"),s=t.append("defs").append("marker").attr("id",CM.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),s.append("circle").attr("stroke",i.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),s.append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M21,0 L21,18"),t.append("defs").append("marker").attr("id",CM.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),t.append("defs").append("marker").attr("id",CM.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),s=t.append("defs").append("marker").attr("id",CM.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),s.append("circle").attr("stroke",i.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),s.append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),s=t.append("defs").append("marker").attr("id",CM.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),s.append("circle").attr("stroke",i.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),s.append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},dM={ERMarkers:CM,insertMarkers:sGt},oGt=/[^\dA-Za-z](\W)*/g;let vu={},AZ=new Map;const aGt=function(t){const i=Object.keys(t);for(const s of i)vu[s]=t[s]},BGt=(t,i,s)=>{const a=vu.entityPadding/3,h=vu.entityPadding/3,Q=vu.fontSize*.85,w=i.node().getBBox(),I=[];let d=!1,D=!1,N=0,U=0,R=0,T=0,j=w.height+a*2,W=1;s.forEach($=>{$.attributeKeyTypeList!==void 0&&$.attributeKeyTypeList.length>0&&(d=!0),$.attributeComment!==void 0&&(D=!0)}),s.forEach($=>{const QA=`${i.node().id}-attr-${W}`;let hA=0;const aA=fX($.attributeType),iA=t.append("text").classed("er entityLabel",!0).attr("id",`${QA}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",Je().fontFamily).style("font-size",Q+"px").text(aA),BA=t.append("text").classed("er entityLabel",!0).attr("id",`${QA}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",Je().fontFamily).style("font-size",Q+"px").text($.attributeName),rA={};rA.tn=iA,rA.nn=BA;const FA=iA.node().getBBox(),gA=BA.node().getBBox();if(N=Math.max(N,FA.width),U=Math.max(U,gA.width),hA=Math.max(FA.height,gA.height),d){const fA=$.attributeKeyTypeList!==void 0?$.attributeKeyTypeList.join(","):"",DA=t.append("text").classed("er entityLabel",!0).attr("id",`${QA}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",Je().fontFamily).style("font-size",Q+"px").text(fA);rA.kn=DA;const eA=DA.node().getBBox();R=Math.max(R,eA.width),hA=Math.max(hA,eA.height)}if(D){const fA=t.append("text").classed("er entityLabel",!0).attr("id",`${QA}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",Je().fontFamily).style("font-size",Q+"px").text($.attributeComment||"");rA.cn=fA;const DA=fA.node().getBBox();T=Math.max(T,DA.width),hA=Math.max(hA,DA.height)}rA.height=hA,I.push(rA),j+=hA+a*2,W+=1});let AA=4;d&&(AA+=2),D&&(AA+=2);const X=N+U+R+T,K={width:Math.max(vu.minEntityWidth,Math.max(w.width+vu.entityPadding*2,X+h*AA)),height:s.length>0?j:Math.max(vu.minEntityHeight,w.height+vu.entityPadding*2)};if(s.length>0){const $=Math.max(0,(K.width-X-h*AA)/(AA/2));i.attr("transform","translate("+K.width/2+","+(a+w.height/2)+")");let QA=w.height+a*2,hA="attributeBoxOdd";I.forEach(aA=>{const iA=QA+a+aA.height/2;aA.tn.attr("transform","translate("+h+","+iA+")");const BA=t.insert("rect","#"+aA.tn.node().id).classed(`er ${hA}`,!0).attr("x",0).attr("y",QA).attr("width",N+h*2+$).attr("height",aA.height+a*2),rA=parseFloat(BA.attr("x"))+parseFloat(BA.attr("width"));aA.nn.attr("transform","translate("+(rA+h)+","+iA+")");const FA=t.insert("rect","#"+aA.nn.node().id).classed(`er ${hA}`,!0).attr("x",rA).attr("y",QA).attr("width",U+h*2+$).attr("height",aA.height+a*2);let gA=parseFloat(FA.attr("x"))+parseFloat(FA.attr("width"));if(d){aA.kn.attr("transform","translate("+(gA+h)+","+iA+")");const fA=t.insert("rect","#"+aA.kn.node().id).classed(`er ${hA}`,!0).attr("x",gA).attr("y",QA).attr("width",R+h*2+$).attr("height",aA.height+a*2);gA=parseFloat(fA.attr("x"))+parseFloat(fA.attr("width"))}D&&(aA.cn.attr("transform","translate("+(gA+h)+","+iA+")"),t.insert("rect","#"+aA.cn.node().id).classed(`er ${hA}`,"true").attr("x",gA).attr("y",QA).attr("width",T+h*2+$).attr("height",aA.height+a*2)),QA+=aA.height+a*2,hA=hA==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else K.height=Math.max(vu.minEntityHeight,j),i.attr("transform","translate("+K.width/2+","+K.height/2+")");return K},gGt=function(t,i,s){const a=Object.keys(i);let h;return a.forEach(function(Q){const w=EGt(Q,"entity");AZ.set(Q,w);const I=t.append("g").attr("id",w);h=h===void 0?w:h;const d="text-"+w,D=I.append("text").classed("er entityLabel",!0).attr("id",d).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",Je().fontFamily).style("font-size",vu.fontSize+"px").text(Q),{width:N,height:U}=BGt(I,D,i[Q].attributes),T=I.insert("rect","#"+d).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",N).attr("height",U).node().getBBox();s.setNode(w,{width:T.width,height:T.height,shape:"rect",id:w})}),h},hGt=function(t,i){i.nodes().forEach(function(s){s!==void 0&&i.node(s)!==void 0&&t.select("#"+s).attr("transform","translate("+(i.node(s).x-i.node(s).width/2)+","+(i.node(s).y-i.node(s).height/2)+" )")})},sxe=function(t){return(t.entityA+t.roleA+t.entityB).replace(/\s/g,"")},lGt=function(t,i){return t.forEach(function(s){i.setEdge(AZ.get(s.entityA),AZ.get(s.entityB),{relationship:s},sxe(s))}),t};let V2e=0;const uGt=function(t,i,s,a,h){V2e++;const Q=s.edge(AZ.get(i.entityA),AZ.get(i.entityB),sxe(i)),w=hk().x(function(j){return j.x}).y(function(j){return j.y}).curve(MS),I=t.insert("path","#"+a).classed("er relationshipLine",!0).attr("d",w(Q.points)).style("stroke",vu.stroke).style("fill","none");i.relSpec.relType===h.db.Identification.NON_IDENTIFYING&&I.attr("stroke-dasharray","8,8");let d="";switch(vu.arrowMarkerAbsolute&&(d=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,d=d.replace(/\(/g,"\\("),d=d.replace(/\)/g,"\\)")),i.relSpec.cardA){case h.db.Cardinality.ZERO_OR_ONE:I.attr("marker-end","url("+d+"#"+dM.ERMarkers.ZERO_OR_ONE_END+")");break;case h.db.Cardinality.ZERO_OR_MORE:I.attr("marker-end","url("+d+"#"+dM.ERMarkers.ZERO_OR_MORE_END+")");break;case h.db.Cardinality.ONE_OR_MORE:I.attr("marker-end","url("+d+"#"+dM.ERMarkers.ONE_OR_MORE_END+")");break;case h.db.Cardinality.ONLY_ONE:I.attr("marker-end","url("+d+"#"+dM.ERMarkers.ONLY_ONE_END+")");break;case h.db.Cardinality.MD_PARENT:I.attr("marker-end","url("+d+"#"+dM.ERMarkers.MD_PARENT_END+")");break}switch(i.relSpec.cardB){case h.db.Cardinality.ZERO_OR_ONE:I.attr("marker-start","url("+d+"#"+dM.ERMarkers.ZERO_OR_ONE_START+")");break;case h.db.Cardinality.ZERO_OR_MORE:I.attr("marker-start","url("+d+"#"+dM.ERMarkers.ZERO_OR_MORE_START+")");break;case h.db.Cardinality.ONE_OR_MORE:I.attr("marker-start","url("+d+"#"+dM.ERMarkers.ONE_OR_MORE_START+")");break;case h.db.Cardinality.ONLY_ONE:I.attr("marker-start","url("+d+"#"+dM.ERMarkers.ONLY_ONE_START+")");break;case h.db.Cardinality.MD_PARENT:I.attr("marker-start","url("+d+"#"+dM.ERMarkers.MD_PARENT_START+")");break}const D=I.node().getTotalLength(),N=I.node().getPointAtLength(D*.5),U="rel"+V2e,T=t.append("text").classed("er relationshipLabel",!0).attr("id",U).attr("x",N.x).attr("y",N.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",Je().fontFamily).style("font-size",vu.fontSize+"px").text(i.roleA).node().getBBox();t.insert("rect","#"+U).classed("er relationshipLabelBox",!0).attr("x",N.x-T.width/2).attr("y",N.y-T.height/2).attr("width",T.width).attr("height",T.height)},wGt=function(t,i,s,a){vu=Je().er,_A.info("Drawing ER diagram");const h=Je().securityLevel;let Q;h==="sandbox"&&(Q=Nn("#i"+i));const I=Nn(h==="sandbox"?Q.nodes()[0].contentDocument.body:"body").select(`[id='${i}']`);dM.insertMarkers(I,vu);let d;d=new Pu({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:vu.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});const D=gGt(I,a.db.getEntities(),d),N=lGt(a.db.getRelationships(),d);n5(d),hGt(I,d),N.forEach(function(W){uGt(I,W,d,D,a)});const U=vu.diagramPadding;ms.insertTitle(I,"entityTitleText",vu.titleTopMargin,a.db.getDiagramTitle());const R=I.node().getBBox(),T=R.width+U*2,j=R.height+U*2;B0(I,j,T,vu.useMaxWidth),I.attr("viewBox",`${R.x-U} ${R.y-U} ${T} ${j}`)},QGt="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function EGt(t="",i=""){const s=t.replace(oGt,"");return`${X2e(i)}${X2e(s)}${Z3t(t,QGt)}`}function X2e(t=""){return t.length>0?`${t}-`:""}const fGt={setConf:aGt,draw:wGt},IGt=t=>` .entityBox { fill: ${t.mainBkg}; stroke: ${t.nodeBorder}; } .attributeBoxOdd { fill: ${t.attributeBackgroundColorOdd}; stroke: ${t.nodeBorder}; } .attributeBoxEven { fill: ${t.attributeBackgroundColorEven}; stroke: ${t.nodeBorder}; } .relationshipLabelBox { fill: ${t.tertiaryColor}; opacity: 0.7; background-color: ${t.tertiaryColor}; rect { opacity: 0.5; } } .relationshipLine { stroke: ${t.lineColor}; } .entityTitleText { text-anchor: middle; font-size: 18px; fill: ${t.textColor}; } #MD_PARENT_START { fill: #f5f5f5 !important; stroke: ${t.lineColor} !important; stroke-width: 1; } #MD_PARENT_END { fill: #f5f5f5 !important; stroke: ${t.lineColor} !important; stroke-width: 1; } `,CGt=IGt,dGt={parser:q3t,db:cGt,renderer:fGt,styles:CGt},FGt=Object.freeze(Object.defineProperty({__proto__:null,diagram:dGt},Symbol.toStringTag,{value:"Module"}));var d8A=function(){var t=function(BA,rA,FA,gA){for(FA=FA||{},gA=BA.length;gA--;FA[BA[gA]]=rA);return FA},i=[1,4],s=[1,7],a=[1,5],h=[1,9],Q=[1,6],w=[2,6],I=[1,16],d=[6,8,14,20,22,24,25,27,29,32,37,40,50,55],D=[8,14,20,22,24,25,27,29,32,37,40],N=[8,13,14,20,22,24,25,27,29,32,37,40],U=[1,26],R=[6,8,14,50,55],T=[8,14,55],j=[1,53],W=[1,52],AA=[8,14,30,33,35,38,55],X=[1,67],K=[1,68],$=[1,69],QA=[8,14,33,35,42,55],hA={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ref:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR:34,COMMIT_TAG:35,EMPTYSTR:36,MERGE:37,COMMIT_TYPE:38,commitType:39,COMMIT:40,commit_arg:41,COMMIT_MSG:42,NORMAL:43,REVERSE:44,HIGHLIGHT:45,openDirective:46,typeDirective:47,closeDirective:48,argDirective:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,ID:54,";":55,$accept:0,$end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive",54:"ID",55:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[19,5],[19,5],[19,5],[19,5],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[41,0],[41,1],[39,1],[39,1],[39,1],[5,3],[5,5],[46,1],[47,1],[49,1],[48,1],[28,1],[28,1],[4,1],[4,1],[4,1]],performAction:function(rA,FA,gA,fA,DA,eA,GA){var cA=eA.length-1;switch(DA){case 3:return eA[cA];case 4:return eA[cA-1];case 5:return fA.setDirection(eA[cA-3]),eA[cA-1];case 7:fA.setOptions(eA[cA-1]),this.$=eA[cA];break;case 8:eA[cA-1]+=eA[cA],this.$=eA[cA-1];break;case 10:this.$=[];break;case 11:eA[cA-1].push(eA[cA]),this.$=eA[cA-1];break;case 12:this.$=eA[cA-1];break;case 17:this.$=eA[cA].trim(),fA.setAccTitle(this.$);break;case 18:case 19:this.$=eA[cA].trim(),fA.setAccDescription(this.$);break;case 20:fA.addSection(eA[cA].substr(8)),this.$=eA[cA].substr(8);break;case 22:fA.checkout(eA[cA]);break;case 23:fA.branch(eA[cA]);break;case 24:fA.branch(eA[cA-2],eA[cA]);break;case 25:fA.cherryPick(eA[cA],"",void 0);break;case 26:fA.cherryPick(eA[cA-2],"",eA[cA]);break;case 27:case 29:fA.cherryPick(eA[cA-2],"","");break;case 28:fA.cherryPick(eA[cA],"",eA[cA-2]);break;case 30:fA.merge(eA[cA],"","","");break;case 31:fA.merge(eA[cA-2],eA[cA],"","");break;case 32:fA.merge(eA[cA-2],"",eA[cA],"");break;case 33:fA.merge(eA[cA-2],"","",eA[cA]);break;case 34:fA.merge(eA[cA-4],eA[cA],"",eA[cA-2]);break;case 35:fA.merge(eA[cA-4],"",eA[cA],eA[cA-2]);break;case 36:fA.merge(eA[cA-4],"",eA[cA-2],eA[cA]);break;case 37:fA.merge(eA[cA-4],eA[cA-2],eA[cA],"");break;case 38:fA.merge(eA[cA-4],eA[cA-2],"",eA[cA]);break;case 39:fA.merge(eA[cA-4],eA[cA],eA[cA-2],"");break;case 40:fA.merge(eA[cA-6],eA[cA-4],eA[cA-2],eA[cA]);break;case 41:fA.merge(eA[cA-6],eA[cA],eA[cA-4],eA[cA-2]);break;case 42:fA.merge(eA[cA-6],eA[cA-4],eA[cA],eA[cA-2]);break;case 43:fA.merge(eA[cA-6],eA[cA-2],eA[cA-4],eA[cA]);break;case 44:fA.merge(eA[cA-6],eA[cA],eA[cA-2],eA[cA-4]);break;case 45:fA.merge(eA[cA-6],eA[cA-2],eA[cA],eA[cA-4]);break;case 46:fA.commit(eA[cA]);break;case 47:fA.commit("","",fA.commitType.NORMAL,eA[cA]);break;case 48:fA.commit("","",eA[cA],"");break;case 49:fA.commit("","",eA[cA],eA[cA-2]);break;case 50:fA.commit("","",eA[cA-2],eA[cA]);break;case 51:fA.commit("",eA[cA],fA.commitType.NORMAL,"");break;case 52:fA.commit("",eA[cA-2],fA.commitType.NORMAL,eA[cA]);break;case 53:fA.commit("",eA[cA],fA.commitType.NORMAL,eA[cA-2]);break;case 54:fA.commit("",eA[cA-2],eA[cA],"");break;case 55:fA.commit("",eA[cA],eA[cA-2],"");break;case 56:fA.commit("",eA[cA-4],eA[cA-2],eA[cA]);break;case 57:fA.commit("",eA[cA-4],eA[cA],eA[cA-2]);break;case 58:fA.commit("",eA[cA-2],eA[cA-4],eA[cA]);break;case 59:fA.commit("",eA[cA],eA[cA-4],eA[cA-2]);break;case 60:fA.commit("",eA[cA],eA[cA-2],eA[cA-4]);break;case 61:fA.commit("",eA[cA-2],eA[cA],eA[cA-4]);break;case 62:fA.commit(eA[cA],"",fA.commitType.NORMAL,"");break;case 63:fA.commit(eA[cA],"",fA.commitType.NORMAL,eA[cA-2]);break;case 64:fA.commit(eA[cA-2],"",fA.commitType.NORMAL,eA[cA]);break;case 65:fA.commit(eA[cA-2],"",eA[cA],"");break;case 66:fA.commit(eA[cA],"",eA[cA-2],"");break;case 67:fA.commit(eA[cA],eA[cA-2],fA.commitType.NORMAL,"");break;case 68:fA.commit(eA[cA-2],eA[cA],fA.commitType.NORMAL,"");break;case 69:fA.commit(eA[cA-4],"",eA[cA-2],eA[cA]);break;case 70:fA.commit(eA[cA-4],"",eA[cA],eA[cA-2]);break;case 71:fA.commit(eA[cA-2],"",eA[cA-4],eA[cA]);break;case 72:fA.commit(eA[cA],"",eA[cA-4],eA[cA-2]);break;case 73:fA.commit(eA[cA],"",eA[cA-2],eA[cA-4]);break;case 74:fA.commit(eA[cA-2],"",eA[cA],eA[cA-4]);break;case 75:fA.commit(eA[cA-4],eA[cA],eA[cA-2],"");break;case 76:fA.commit(eA[cA-4],eA[cA-2],eA[cA],"");break;case 77:fA.commit(eA[cA-2],eA[cA],eA[cA-4],"");break;case 78:fA.commit(eA[cA],eA[cA-2],eA[cA-4],"");break;case 79:fA.commit(eA[cA],eA[cA-4],eA[cA-2],"");break;case 80:fA.commit(eA[cA-2],eA[cA-4],eA[cA],"");break;case 81:fA.commit(eA[cA-4],eA[cA],fA.commitType.NORMAL,eA[cA-2]);break;case 82:fA.commit(eA[cA-4],eA[cA-2],fA.commitType.NORMAL,eA[cA]);break;case 83:fA.commit(eA[cA-2],eA[cA],fA.commitType.NORMAL,eA[cA-4]);break;case 84:fA.commit(eA[cA],eA[cA-2],fA.commitType.NORMAL,eA[cA-4]);break;case 85:fA.commit(eA[cA],eA[cA-4],fA.commitType.NORMAL,eA[cA-2]);break;case 86:fA.commit(eA[cA-2],eA[cA-4],fA.commitType.NORMAL,eA[cA]);break;case 87:fA.commit(eA[cA-6],eA[cA-4],eA[cA-2],eA[cA]);break;case 88:fA.commit(eA[cA-6],eA[cA-4],eA[cA],eA[cA-2]);break;case 89:fA.commit(eA[cA-6],eA[cA-2],eA[cA-4],eA[cA]);break;case 90:fA.commit(eA[cA-6],eA[cA],eA[cA-4],eA[cA-2]);break;case 91:fA.commit(eA[cA-6],eA[cA-2],eA[cA],eA[cA-4]);break;case 92:fA.commit(eA[cA-6],eA[cA],eA[cA-2],eA[cA-4]);break;case 93:fA.commit(eA[cA-4],eA[cA-6],eA[cA-2],eA[cA]);break;case 94:fA.commit(eA[cA-4],eA[cA-6],eA[cA],eA[cA-2]);break;case 95:fA.commit(eA[cA-2],eA[cA-6],eA[cA-4],eA[cA]);break;case 96:fA.commit(eA[cA],eA[cA-6],eA[cA-4],eA[cA-2]);break;case 97:fA.commit(eA[cA-2],eA[cA-6],eA[cA],eA[cA-4]);break;case 98:fA.commit(eA[cA],eA[cA-6],eA[cA-2],eA[cA-4]);break;case 99:fA.commit(eA[cA],eA[cA-4],eA[cA-2],eA[cA-6]);break;case 100:fA.commit(eA[cA-2],eA[cA-4],eA[cA],eA[cA-6]);break;case 101:fA.commit(eA[cA],eA[cA-2],eA[cA-4],eA[cA-6]);break;case 102:fA.commit(eA[cA-2],eA[cA],eA[cA-4],eA[cA-6]);break;case 103:fA.commit(eA[cA-4],eA[cA-2],eA[cA],eA[cA-6]);break;case 104:fA.commit(eA[cA-4],eA[cA],eA[cA-2],eA[cA-6]);break;case 105:fA.commit(eA[cA-2],eA[cA-4],eA[cA-6],eA[cA]);break;case 106:fA.commit(eA[cA],eA[cA-4],eA[cA-6],eA[cA-2]);break;case 107:fA.commit(eA[cA-2],eA[cA],eA[cA-6],eA[cA-4]);break;case 108:fA.commit(eA[cA],eA[cA-2],eA[cA-6],eA[cA-4]);break;case 109:fA.commit(eA[cA-4],eA[cA-2],eA[cA-6],eA[cA]);break;case 110:fA.commit(eA[cA-4],eA[cA],eA[cA-6],eA[cA-2]);break;case 111:this.$="";break;case 112:this.$=eA[cA];break;case 113:this.$=fA.commitType.NORMAL;break;case 114:this.$=fA.commitType.REVERSE;break;case 115:this.$=fA.commitType.HIGHLIGHT;break;case 118:fA.parseDirective("%%{","open_directive");break;case 119:fA.parseDirective(eA[cA],"type_directive");break;case 120:eA[cA]=eA[cA].trim().replace(/'/g,'"'),fA.parseDirective(eA[cA],"arg_directive");break;case 121:fA.parseDirective("}%%","close_directive","gitGraph");break}},table:[{3:1,4:2,5:3,6:i,8:s,14:a,46:8,50:h,55:Q},{1:[3]},{3:10,4:2,5:3,6:i,8:s,14:a,46:8,50:h,55:Q},{3:11,4:2,5:3,6:i,8:s,14:a,46:8,50:h,55:Q},{7:12,8:w,9:[1,13],10:[1,14],11:15,14:I},t(d,[2,124]),t(d,[2,125]),t(d,[2,126]),{47:17,51:[1,18]},{51:[2,118]},{1:[2,1]},{1:[2,2]},{8:[1,19]},{7:20,8:w,11:15,14:I},{9:[1,21]},t(D,[2,10],{12:22,13:[1,23]}),t(N,[2,9]),{9:[1,25],48:24,53:U},t([9,53],[2,119]),{1:[2,3]},{8:[1,27]},{7:28,8:w,11:15,14:I},{8:[2,7],14:[1,31],15:29,16:30,17:32,18:33,19:34,20:[1,35],22:[1,36],24:[1,37],25:[1,38],26:39,27:[1,40],29:[1,44],32:[1,43],37:[1,42],40:[1,41]},t(N,[2,8]),t(R,[2,116]),{49:45,52:[1,46]},t(R,[2,121]),{1:[2,4]},{8:[1,47]},t(D,[2,11]),{4:48,8:s,14:a,55:Q},t(D,[2,13]),t(T,[2,14]),t(T,[2,15]),t(T,[2,16]),{21:[1,49]},{23:[1,50]},t(T,[2,19]),t(T,[2,20]),t(T,[2,21]),{28:51,34:j,54:W},t(T,[2,111],{41:54,33:[1,57],34:[1,59],35:[1,55],38:[1,56],42:[1,58]}),{28:60,34:j,54:W},{33:[1,61],35:[1,62]},{28:63,34:j,54:W},{48:64,53:U},{53:[2,120]},{1:[2,5]},t(D,[2,12]),t(T,[2,17]),t(T,[2,18]),t(T,[2,22]),t(AA,[2,122]),t(AA,[2,123]),t(T,[2,46]),{34:[1,65]},{39:66,43:X,44:K,45:$},{34:[1,70]},{34:[1,71]},t(T,[2,112]),t(T,[2,30],{33:[1,72],35:[1,74],38:[1,73]}),{34:[1,75]},{34:[1,76],36:[1,77]},t(T,[2,23],{30:[1,78]}),t(R,[2,117]),t(T,[2,47],{33:[1,80],38:[1,79],42:[1,81]}),t(T,[2,48],{33:[1,83],35:[1,82],42:[1,84]}),t(QA,[2,113]),t(QA,[2,114]),t(QA,[2,115]),t(T,[2,51],{35:[1,85],38:[1,86],42:[1,87]}),t(T,[2,62],{33:[1,90],35:[1,88],38:[1,89]}),{34:[1,91]},{39:92,43:X,44:K,45:$},{34:[1,93]},t(T,[2,25],{35:[1,94]}),{33:[1,95]},{33:[1,96]},{31:[1,97]},{39:98,43:X,44:K,45:$},{34:[1,99]},{34:[1,100]},{34:[1,101]},{34:[1,102]},{34:[1,103]},{34:[1,104]},{39:105,43:X,44:K,45:$},{34:[1,106]},{34:[1,107]},{39:108,43:X,44:K,45:$},{34:[1,109]},t(T,[2,31],{35:[1,111],38:[1,110]}),t(T,[2,32],{33:[1,113],35:[1,112]}),t(T,[2,33],{33:[1,114],38:[1,115]}),{34:[1,116],36:[1,117]},{34:[1,118]},{34:[1,119]},t(T,[2,24]),t(T,[2,49],{33:[1,120],42:[1,121]}),t(T,[2,53],{38:[1,122],42:[1,123]}),t(T,[2,63],{33:[1,125],38:[1,124]}),t(T,[2,50],{33:[1,126],42:[1,127]}),t(T,[2,55],{35:[1,128],42:[1,129]}),t(T,[2,66],{33:[1,131],35:[1,130]}),t(T,[2,52],{38:[1,132],42:[1,133]}),t(T,[2,54],{35:[1,134],42:[1,135]}),t(T,[2,67],{35:[1,137],38:[1,136]}),t(T,[2,64],{33:[1,139],38:[1,138]}),t(T,[2,65],{33:[1,141],35:[1,140]}),t(T,[2,68],{35:[1,143],38:[1,142]}),{39:144,43:X,44:K,45:$},{34:[1,145]},{34:[1,146]},{34:[1,147]},{34:[1,148]},{39:149,43:X,44:K,45:$},t(T,[2,26]),t(T,[2,27]),t(T,[2,28]),t(T,[2,29]),{34:[1,150]},{34:[1,151]},{39:152,43:X,44:K,45:$},{34:[1,153]},{39:154,43:X,44:K,45:$},{34:[1,155]},{34:[1,156]},{34:[1,157]},{34:[1,158]},{34:[1,159]},{34:[1,160]},{34:[1,161]},{39:162,43:X,44:K,45:$},{34:[1,163]},{34:[1,164]},{34:[1,165]},{39:166,43:X,44:K,45:$},{34:[1,167]},{39:168,43:X,44:K,45:$},{34:[1,169]},{34:[1,170]},{34:[1,171]},{39:172,43:X,44:K,45:$},{34:[1,173]},t(T,[2,37],{35:[1,174]}),t(T,[2,38],{38:[1,175]}),t(T,[2,36],{33:[1,176]}),t(T,[2,39],{35:[1,177]}),t(T,[2,34],{38:[1,178]}),t(T,[2,35],{33:[1,179]}),t(T,[2,60],{42:[1,180]}),t(T,[2,73],{33:[1,181]}),t(T,[2,61],{42:[1,182]}),t(T,[2,84],{38:[1,183]}),t(T,[2,74],{33:[1,184]}),t(T,[2,83],{38:[1,185]}),t(T,[2,59],{42:[1,186]}),t(T,[2,72],{33:[1,187]}),t(T,[2,58],{42:[1,188]}),t(T,[2,78],{35:[1,189]}),t(T,[2,71],{33:[1,190]}),t(T,[2,77],{35:[1,191]}),t(T,[2,57],{42:[1,192]}),t(T,[2,85],{38:[1,193]}),t(T,[2,56],{42:[1,194]}),t(T,[2,79],{35:[1,195]}),t(T,[2,80],{35:[1,196]}),t(T,[2,86],{38:[1,197]}),t(T,[2,70],{33:[1,198]}),t(T,[2,81],{38:[1,199]}),t(T,[2,69],{33:[1,200]}),t(T,[2,75],{35:[1,201]}),t(T,[2,76],{35:[1,202]}),t(T,[2,82],{38:[1,203]}),{34:[1,204]},{39:205,43:X,44:K,45:$},{34:[1,206]},{34:[1,207]},{39:208,43:X,44:K,45:$},{34:[1,209]},{34:[1,210]},{34:[1,211]},{34:[1,212]},{39:213,43:X,44:K,45:$},{34:[1,214]},{39:215,43:X,44:K,45:$},{34:[1,216]},{34:[1,217]},{34:[1,218]},{34:[1,219]},{34:[1,220]},{34:[1,221]},{34:[1,222]},{39:223,43:X,44:K,45:$},{34:[1,224]},{34:[1,225]},{34:[1,226]},{39:227,43:X,44:K,45:$},{34:[1,228]},{39:229,43:X,44:K,45:$},{34:[1,230]},{34:[1,231]},{34:[1,232]},{39:233,43:X,44:K,45:$},t(T,[2,40]),t(T,[2,42]),t(T,[2,41]),t(T,[2,43]),t(T,[2,45]),t(T,[2,44]),t(T,[2,101]),t(T,[2,102]),t(T,[2,99]),t(T,[2,100]),t(T,[2,104]),t(T,[2,103]),t(T,[2,108]),t(T,[2,107]),t(T,[2,106]),t(T,[2,105]),t(T,[2,110]),t(T,[2,109]),t(T,[2,98]),t(T,[2,97]),t(T,[2,96]),t(T,[2,95]),t(T,[2,93]),t(T,[2,94]),t(T,[2,92]),t(T,[2,91]),t(T,[2,90]),t(T,[2,89]),t(T,[2,87]),t(T,[2,88])],defaultActions:{9:[2,118],10:[2,1],11:[2,2],19:[2,3],27:[2,4],46:[2,120],47:[2,5]},parseError:function(rA,FA){if(FA.recoverable)this.trace(rA);else{var gA=new Error(rA);throw gA.hash=FA,gA}},parse:function(rA){var FA=this,gA=[0],fA=[],DA=[null],eA=[],GA=this.table,cA="",JA=0,_=0,SA=2,jA=1,dA=eA.slice.call(arguments,1),kA=Object.create(this.lexer),vA={yy:{}};for(var Fe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Fe)&&(vA.yy[Fe]=this.yy[Fe]);kA.setInput(rA,vA.yy),vA.yy.lexer=kA,vA.yy.parser=this,typeof kA.yylloc>"u"&&(kA.yylloc={});var at=kA.yylloc;eA.push(at);var fe=kA.options&&kA.options.ranges;typeof vA.yy.parseError=="function"?this.parseError=vA.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function mt(){var zA;return zA=fA.pop()||kA.lex()||jA,typeof zA!="number"&&(zA instanceof Array&&(fA=zA,zA=fA.pop()),zA=FA.symbols_[zA]||zA),zA}for(var be,ie,ye,Le,HA={},WA,XA,ce,ZA;;){if(ie=gA[gA.length-1],this.defaultActions[ie]?ye=this.defaultActions[ie]:((be===null||typeof be>"u")&&(be=mt()),ye=GA[ie]&&GA[ie][be]),typeof ye>"u"||!ye.length||!ye[0]){var pe="";ZA=[];for(WA in GA[ie])this.terminals_[WA]&&WA>SA&&ZA.push("'"+this.terminals_[WA]+"'");kA.showPosition?pe="Parse error on line "+(JA+1)+`:`+kA.showPosition()+`Expecting `+ZA.join(", ")+", got '"+(this.terminals_[be]||be)+"'":pe="Parse error on line "+(JA+1)+": Unexpected "+(be==jA?"end of input":"'"+(this.terminals_[be]||be)+"'"),this.parseError(pe,{text:kA.match,token:this.terminals_[be]||be,line:kA.yylineno,loc:at,expected:ZA})}if(ye[0]instanceof Array&&ye.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ie+", token: "+be);switch(ye[0]){case 1:gA.push(be),DA.push(kA.yytext),eA.push(kA.yylloc),gA.push(ye[1]),be=null,_=kA.yyleng,cA=kA.yytext,JA=kA.yylineno,at=kA.yylloc;break;case 2:if(XA=this.productions_[ye[1]][1],HA.$=DA[DA.length-XA],HA._$={first_line:eA[eA.length-(XA||1)].first_line,last_line:eA[eA.length-1].last_line,first_column:eA[eA.length-(XA||1)].first_column,last_column:eA[eA.length-1].last_column},fe&&(HA._$.range=[eA[eA.length-(XA||1)].range[0],eA[eA.length-1].range[1]]),Le=this.performAction.apply(HA,[cA,_,JA,vA.yy,ye[1],DA,eA].concat(dA)),typeof Le<"u")return Le;XA&&(gA=gA.slice(0,-1*XA*2),DA=DA.slice(0,-1*XA),eA=eA.slice(0,-1*XA)),gA.push(this.productions_[ye[1]][0]),DA.push(HA.$),eA.push(HA._$),ce=GA[gA[gA.length-2]][gA[gA.length-1]],gA.push(ce);break;case 3:return!0}}return!0}},aA=function(){var BA={EOF:1,parseError:function(FA,gA){if(this.yy.parser)this.yy.parser.parseError(FA,gA);else throw new Error(FA)},setInput:function(rA,FA){return this.yy=FA||this.yy||{},this._input=rA,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},input:function(){var rA=this._input[0];this.yytext+=rA,this.yyleng++,this.offset++,this.match+=rA,this.matched+=rA;var FA=rA.match(/(?:\r\n?|\n).*/g);return FA?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),rA},unput:function(rA){var FA=rA.length,gA=rA.split(/(?:\r\n?|\n)/g);this._input=rA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-FA),this.offset-=FA;var fA=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),gA.length-1&&(this.yylineno-=gA.length-1);var DA=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:gA?(gA.length===fA.length?this.yylloc.first_column:0)+fA[fA.length-gA.length].length-gA[0].length:this.yylloc.first_column-FA},this.options.ranges&&(this.yylloc.range=[DA[0],DA[0]+this.yyleng-FA]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(rA){this.unput(this.match.slice(rA))},pastInput:function(){var rA=this.matched.substr(0,this.matched.length-this.match.length);return(rA.length>20?"...":"")+rA.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var rA=this.match;return rA.length<20&&(rA+=this._input.substr(0,20-rA.length)),(rA.substr(0,20)+(rA.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var rA=this.pastInput(),FA=new Array(rA.length+1).join("-");return rA+this.upcomingInput()+``+FA+"^"},test_match:function(rA,FA){var gA,fA,DA;if(this.options.backtrack_lexer&&(DA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(DA.yylloc.range=this.yylloc.range.slice(0))),fA=rA[0].match(/(?:\r\n?|\n).*/g),fA&&(this.yylineno+=fA.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:fA?fA[fA.length-1].length-fA[fA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+rA[0].length},this.yytext+=rA[0],this.match+=rA[0],this.matches=rA,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(rA[0].length),this.matched+=rA[0],gA=this.performAction.call(this,this.yy,this,FA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),gA)return gA;if(this._backtrack){for(var eA in DA)this[eA]=DA[eA];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var rA,FA,gA,fA;this._more||(this.yytext="",this.match="");for(var DA=this._currentRules(),eA=0;eA FA[0].length)){if(FA=gA,fA=eA,this.options.backtrack_lexer){if(rA=this.test_match(gA,DA[eA]),rA!==!1)return rA;if(this._backtrack){FA=!1;continue}else return!1}else if(!this.options.flex)break}return FA?(rA=this.test_match(FA,DA[fA]),rA!==!1?rA:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var FA=this.next();return FA||this.lex()},begin:function(FA){this.conditionStack.push(FA)},popState:function(){var FA=this.conditionStack.length-1;return FA>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(FA){return FA=this.conditionStack.length-1-Math.abs(FA||0),FA>=0?this.conditionStack[FA]:"INITIAL"},pushState:function(FA){this.begin(FA)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(FA,gA,fA,DA){switch(fA){case 0:return this.begin("open_directive"),50;case 1:return this.begin("type_directive"),51;case 2:return this.popState(),this.begin("arg_directive"),9;case 3:return this.popState(),this.popState(),53;case 4:return 52;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:return 14;case 13:break;case 14:break;case 15:return 6;case 16:return 40;case 17:return 33;case 18:return 38;case 19:return 42;case 20:return 43;case 21:return 44;case 22:return 45;case 23:return 35;case 24:return 29;case 25:return 30;case 26:return 37;case 27:return 32;case 28:return 27;case 29:return 10;case 30:return 10;case 31:return 9;case 32:return"CARET";case 33:this.begin("options");break;case 34:this.popState();break;case 35:return 13;case 36:return 36;case 37:this.begin("string");break;case 38:this.popState();break;case 39:return 34;case 40:return 31;case 41:return 54;case 42:return 8}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\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,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit(?=\s|$))/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch(?=\s|$))/i,/^(?:order:)/i,/^(?:merge(?=\s|$))/i,/^(?:cherry-pick(?=\s|$))/i,/^(?:checkout(?=\s|$))/i,/^(?:LR\b)/i,/^(?:TB\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+(?=\s|$))/i,/^(?:\w([-\./\w]*[-\w])?)/i,/^(?:$)/i,/^(?:\s+)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},options:{rules:[34,35],inclusive:!1},string:{rules:[38,39],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,36,37,40,41,42,43],inclusive:!0}}};return BA}();hA.lexer=aA;function iA(){this.yy={}}return iA.prototype=hA,hA.Parser=iA,new iA}();d8A.parser=d8A;const MGt=d8A;let s1A=Je().gitGraph.mainBranchName,YGt=Je().gitGraph.mainBranchOrder,ju={},i0=null,eZ={};eZ[s1A]={name:s1A,order:YGt};let Zl={};Zl[s1A]=i0;let Yw=s1A,oxe="LR",$J=0;function eSA(){return Xme({length:7})}const DGt=function(t,i,s){zu.parseDirective(this,t,i,s)};function yGt(t,i){const s=Object.create(null);return t.reduce((a,h)=>{const Q=i(h);return s[Q]||(s[Q]=!0,a.push(h)),a},[])}const pGt=function(t){oxe=t};let axe={};const NGt=function(t){_A.debug("options str",t),t=t&&t.trim(),t=t||"{}";try{axe=JSON.parse(t)}catch(i){_A.error("error while parsing gitGraph options",i.message)}},mGt=function(){return axe},UGt=function(t,i,s,a){_A.debug("Entering commit:",t,i,s,a),i=Yi.sanitizeText(i,Je()),t=Yi.sanitizeText(t,Je()),a=Yi.sanitizeText(a,Je());const h={id:i||$J+"-"+eSA(),message:t,seq:$J++,type:s||tZ.NORMAL,tag:a||"",parents:i0==null?[]:[i0.id],branch:Yw};i0=h,ju[h.id]=h,Zl[Yw]=h.id,_A.debug("in pushCommit "+h.id)},bGt=function(t,i){if(t=Yi.sanitizeText(t,Je()),Zl[t]===void 0)Zl[t]=i0!=null?i0.id:null,eZ[t]={name:t,order:i?parseInt(i,10):null},Bxe(t),_A.debug("in createBranch");else{let s=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+'")');throw s.hash={text:"branch "+t,token:"branch "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+t+'"']},s}},HGt=function(t,i,s,a){t=Yi.sanitizeText(t,Je()),i=Yi.sanitizeText(i,Je());const h=ju[Zl[Yw]],Q=ju[Zl[t]];if(Yw===t){let I=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw I.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},I}else if(h===void 0||!h){let I=new Error('Incorrect usage of "merge". Current branch ('+Yw+")has no commits");throw I.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["commit"]},I}else if(Zl[t]===void 0){let I=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") does not exist");throw I.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch "+t]},I}else if(Q===void 0||!Q){let I=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") has no commits");throw I.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"commit"']},I}else if(h===Q){let I=new Error('Incorrect usage of "merge". Both branches have same head');throw I.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},I}else if(i&&ju[i]!==void 0){let I=new Error('Incorrect usage of "merge". Commit with id:'+i+" already exists, use different custom Id");throw I.hash={text:"merge "+t+i+s+a,token:"merge "+t+i+s+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["merge "+t+" "+i+"_UNIQUE "+s+" "+a]},I}const w={id:i||$J+"-"+eSA(),message:"merged branch "+t+" into "+Yw,seq:$J++,parents:[i0==null?null:i0.id,Zl[t]],branch:Yw,type:tZ.MERGE,customType:s,customId:!!i,tag:a||""};i0=w,ju[w.id]=w,Zl[Yw]=w.id,_A.debug(Zl),_A.debug("in mergeBranch")},xGt=function(t,i,s){if(_A.debug("Entering cherryPick:",t,i,s),t=Yi.sanitizeText(t,Je()),i=Yi.sanitizeText(i,Je()),s=Yi.sanitizeText(s,Je()),!t||ju[t]===void 0){let Q=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw Q.hash={text:"cherryPick "+t+" "+i,token:"cherryPick "+t+" "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},Q}let a=ju[t],h=a.branch;if(a.type===tZ.MERGE){let Q=new Error('Incorrect usage of "cherryPick". Source commit should not be a merge commit');throw Q.hash={text:"cherryPick "+t+" "+i,token:"cherryPick "+t+" "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},Q}if(!i||ju[i]===void 0){if(h===Yw){let I=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw I.hash={text:"cherryPick "+t+" "+i,token:"cherryPick "+t+" "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},I}const Q=ju[Zl[Yw]];if(Q===void 0||!Q){let I=new Error('Incorrect usage of "cherry-pick". Current branch ('+Yw+")has no commits");throw I.hash={text:"cherryPick "+t+" "+i,token:"cherryPick "+t+" "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},I}const w={id:$J+"-"+eSA(),message:"cherry-picked "+a+" into "+Yw,seq:$J++,parents:[i0==null?null:i0.id,a.id],branch:Yw,type:tZ.CHERRY_PICK,tag:s??"cherry-pick:"+a.id};i0=w,ju[w.id]=w,Zl[Yw]=w.id,_A.debug(Zl),_A.debug("in cherryPick")}},Bxe=function(t){if(t=Yi.sanitizeText(t,Je()),Zl[t]===void 0){let i=new Error('Trying to checkout branch which is not yet created. (Help try using "branch '+t+'")');throw i.hash={text:"checkout "+t,token:"checkout "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"branch '+t+'"']},i}else{Yw=t;const i=Zl[Yw];i0=ju[i]}};function Z2e(t,i,s){const a=t.indexOf(i);a===-1?t.push(s):t.splice(a,1,s)}function gxe(t){const i=t.reduce((h,Q)=>h.seq>Q.seq?h:Q,t[0]);let s="";t.forEach(function(h){h===i?s+=" *":s+=" |"});const a=[s,i.id,i.seq];for(let h in Zl)Zl[h]===i.id&&a.push(h);if(_A.debug(a.join(" ")),i.parents&&i.parents.length==2){const h=ju[i.parents[0]];Z2e(t,i,h),t.push(ju[i.parents[1]])}else{if(i.parents.length==0)return;{const h=ju[i.parents];Z2e(t,i,h)}}t=yGt(t,h=>h.id),gxe(t)}const GGt=function(){_A.debug(ju);const t=hxe()[0];gxe([t])},JGt=function(){ju={},i0=null;let t=Je().gitGraph.mainBranchName,i=Je().gitGraph.mainBranchOrder;Zl={},Zl[t]=null,eZ={},eZ[t]={name:t,order:i},Yw=t,$J=0,g0()},kGt=function(){return Object.values(eZ).map((i,s)=>i.order!==null?i:{...i,order:parseFloat(`0.${s}`,10)}).sort((i,s)=>i.order-s.order).map(({name:i})=>({name:i}))},RGt=function(){return Zl},TGt=function(){return ju},hxe=function(){const t=Object.keys(ju).map(function(i){return ju[i]});return t.forEach(function(i){_A.debug(i.id)}),t.sort((i,s)=>i.seq-s.seq),t},vGt=function(){return Yw},jGt=function(){return oxe},SGt=function(){return i0},tZ={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},LGt={parseDirective:DGt,getConfig:()=>Je().gitGraph,setDirection:pGt,setOptions:NGt,getOptions:mGt,commit:UGt,branch:bGt,merge:HGt,cherryPick:xGt,checkout:Bxe,prettyPrint:GGt,clear:JGt,getBranchesAsObjArray:kGt,getBranches:RGt,getCommits:TGt,getCommitsArray:hxe,getCurrentBranch:vGt,getDirection:jGt,getHead:SGt,setAccTitle:A1,getAccTitle:h0,getAccDescription:u0,setAccDescription:l0,setDiagramTitle:EI,getDiagramTitle:zE,commitType:tZ};let aX={};const tI={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},CJ=8;let Mw={},nZ={},o1A=[],iZ=0,KQ="LR";const zGt=()=>{Mw={},nZ={},aX={},iZ=0,o1A=[],KQ="LR"},lxe=t=>{const i=document.createElementNS("http://www.w3.org/2000/svg","text");let s=[];typeof t=="string"?s=t.split(/\\n|\n|
/gi):Array.isArray(t)?s=t:s=[];for(const a of s){const h=document.createElementNS("http://www.w3.org/2000/svg","tspan");h.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),h.setAttribute("dy","1em"),h.setAttribute("x","0"),h.setAttribute("class","row"),h.textContent=a.trim(),i.appendChild(h)}return i},q2e=(t,i,s)=>{const a=UZ().gitGraph,h=t.append("g").attr("class","commit-bullets"),Q=t.append("g").attr("class","commit-labels");let w=0;KQ==="TB"&&(w=30),Object.keys(i).sort((D,N)=>i[D].seq-i[N].seq).forEach(D=>{const N=i[D],U=KQ==="TB"?w+10:Mw[N.branch].pos,R=KQ==="TB"?Mw[N.branch].pos:w+10;if(s){let T,j=N.customType!==void 0&&N.customType!==""?N.customType:N.type;switch(j){case tI.NORMAL:T="commit-normal";break;case tI.REVERSE:T="commit-reverse";break;case tI.HIGHLIGHT:T="commit-highlight";break;case tI.MERGE:T="commit-merge";break;case tI.CHERRY_PICK:T="commit-cherry-pick";break;default:T="commit-normal"}if(j===tI.HIGHLIGHT){const W=h.append("rect");W.attr("x",R-10),W.attr("y",U-10),W.attr("height",20),W.attr("width",20),W.attr("class",`commit ${N.id} commit-highlight${Mw[N.branch].index%CJ} ${T}-outer`),h.append("rect").attr("x",R-6).attr("y",U-6).attr("height",12).attr("width",12).attr("class",`commit ${N.id} commit${Mw[N.branch].index%CJ} ${T}-inner`)}else if(j===tI.CHERRY_PICK)h.append("circle").attr("cx",R).attr("cy",U).attr("r",10).attr("class",`commit ${N.id} ${T}`),h.append("circle").attr("cx",R-3).attr("cy",U+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${N.id} ${T}`),h.append("circle").attr("cx",R+3).attr("cy",U+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${N.id} ${T}`),h.append("line").attr("x1",R+3).attr("y1",U+1).attr("x2",R).attr("y2",U-5).attr("stroke","#fff").attr("class",`commit ${N.id} ${T}`),h.append("line").attr("x1",R-3).attr("y1",U+1).attr("x2",R).attr("y2",U-5).attr("stroke","#fff").attr("class",`commit ${N.id} ${T}`);else{const W=h.append("circle");if(W.attr("cx",R),W.attr("cy",U),W.attr("r",N.type===tI.MERGE?9:10),W.attr("class",`commit ${N.id} commit${Mw[N.branch].index%CJ}`),j===tI.MERGE){const AA=h.append("circle");AA.attr("cx",R),AA.attr("cy",U),AA.attr("r",6),AA.attr("class",`commit ${T} ${N.id} commit${Mw[N.branch].index%CJ}`)}j===tI.REVERSE&&h.append("path").attr("d",`M ${R-5},${U-5}L${R+5},${U+5}M${R-5},${U+5}L${R+5},${U-5}`).attr("class",`commit ${T} ${N.id} commit${Mw[N.branch].index%CJ}`)}}if(KQ==="TB"?nZ[N.id]={x:R,y:w+10}:nZ[N.id]={x:w+10,y:U},s){if(N.type!==tI.CHERRY_PICK&&(N.customId&&N.type===tI.MERGE||N.type!==tI.MERGE)&&a.showCommitLabel){const W=Q.append("g"),AA=W.insert("rect").attr("class","commit-label-bkg"),X=W.append("text").attr("x",w).attr("y",U+25).attr("class","commit-label").text(N.id);let K=X.node().getBBox();if(AA.attr("x",w+10-K.width/2-2).attr("y",U+13.5).attr("width",K.width+2*2).attr("height",K.height+2*2),KQ==="TB"&&(AA.attr("x",R-(K.width+4*4+5)).attr("y",U-12),X.attr("x",R-(K.width+4*4)).attr("y",U+K.height-12)),KQ!=="TB"&&X.attr("x",w+10-K.width/2),a.rotateCommitLabel)if(KQ==="TB")X.attr("transform","rotate(-45, "+R+", "+U+")"),AA.attr("transform","rotate(-45, "+R+", "+U+")");else{let $=-7.5-(K.width+10)/25*9.5,QA=10+K.width/25*8.5;W.attr("transform","translate("+$+", "+QA+") rotate(-45, "+w+", "+U+")")}}if(N.tag){const W=Q.insert("polygon"),AA=Q.append("circle"),X=Q.append("text").attr("y",U-16).attr("class","tag-label").text(N.tag);let K=X.node().getBBox();X.attr("x",w+10-K.width/2);const $=K.height/2,QA=U-19.2;W.attr("class","tag-label-bkg").attr("points",` ${w-K.width/2-4/2},${QA+2} ${w-K.width/2-4/2},${QA-2} ${w+10-K.width/2-4},${QA-$-2} ${w+10+K.width/2+4},${QA-$-2} ${w+10+K.width/2+4},${QA+$+2} ${w+10-K.width/2-4},${QA+$+2}`),AA.attr("cx",w-K.width/2+4/2).attr("cy",QA).attr("r",1.5).attr("class","tag-hole"),KQ==="TB"&&(W.attr("class","tag-label-bkg").attr("points",` ${R},${w+2} ${R},${w-2} ${R+10},${w-$-2} ${R+10+K.width+4},${w-$-2} ${R+10+K.width+4},${w+$+2} ${R+10},${w+$+2}`).attr("transform","translate(12,12) rotate(45, "+R+","+w+")"),AA.attr("cx",R+4/2).attr("cy",w).attr("transform","translate(12,12) rotate(45, "+R+","+w+")"),X.attr("x",R+5).attr("y",w+3).attr("transform","translate(14,14) rotate(45, "+R+","+w+")"))}}w+=50,w>iZ&&(iZ=w)})},PGt=(t,i,s)=>Object.keys(s).filter(Q=>s[Q].branch===i.branch&&s[Q].seq>t.seq&&s[Q].seq0,BX=(t,i,s=0)=>{const a=t+Math.abs(t-i)/2;if(s>5)return a;if(o1A.every(w=>Math.abs(w-a)>=10))return o1A.push(a),a;const Q=Math.abs(t-i);return BX(t,i-Q/5,s+1)},OGt=(t,i,s,a)=>{const h=nZ[i.id],Q=nZ[s.id],w=PGt(i,s,a);let I="",d="",D=0,N=0,U=Mw[s.branch].index,R;if(w){I="A 10 10, 0, 0, 0,",d="A 10 10, 0, 0, 1,",D=10,N=10,U=Mw[s.branch].index;const T=h.y Q.x&&(I="A 20 20, 0, 0, 0,",d="A 20 20, 0, 0, 1,",D=20,N=20,U=Mw[i.branch].index,R=`M ${h.x} ${h.y} L ${h.x} ${Q.y-D} ${d} ${h.x-N} ${Q.y} L ${Q.x} ${Q.y}`),h.x===Q.x&&(U=Mw[i.branch].index,R=`M ${h.x} ${h.y} L ${h.x+D} ${h.y} ${I} ${h.x+N} ${Q.y+D} L ${Q.x} ${Q.y}`)):(h.y Q.y&&(I="A 20 20, 0, 0, 0,",D=20,N=20,U=Mw[i.branch].index,R=`M ${h.x} ${h.y} L ${Q.x-D} ${h.y} ${I} ${Q.x} ${h.y-N} L ${Q.x} ${Q.y}`),h.y===Q.y&&(U=Mw[i.branch].index,R=`M ${h.x} ${h.y} L ${h.x} ${Q.y-D} ${I} ${h.x+N} ${Q.y} L ${Q.x} ${Q.y}`));t.append("path").attr("d",R).attr("class","arrow arrow"+U%CJ)},WGt=(t,i)=>{const s=t.append("g").attr("class","commit-arrows");Object.keys(i).forEach(a=>{const h=i[a];h.parents&&h.parents.length>0&&h.parents.forEach(Q=>{OGt(s,i[Q],h,i)})})},KGt=(t,i)=>{const s=UZ().gitGraph,a=t.append("g");i.forEach((h,Q)=>{const w=Q%CJ,I=Mw[h.name].pos,d=a.append("line");d.attr("x1",0),d.attr("y1",I),d.attr("x2",iZ),d.attr("y2",I),d.attr("class","branch branch"+w),KQ==="TB"&&(d.attr("y1",30),d.attr("x1",I),d.attr("y2",iZ),d.attr("x2",I)),o1A.push(I);let D=h.name;const N=lxe(D),U=a.insert("rect"),T=a.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+w);T.node().appendChild(N);let j=N.getBBox();U.attr("class","branchLabelBkg label"+w).attr("rx",4).attr("ry",4).attr("x",-j.width-4-(s.rotateCommitLabel===!0?30:0)).attr("y",-j.height/2+8).attr("width",j.width+18).attr("height",j.height+4),T.attr("transform","translate("+(-j.width-14-(s.rotateCommitLabel===!0?30:0))+", "+(I-j.height/2-1)+")"),KQ==="TB"&&(U.attr("x",I-j.width/2-10).attr("y",0),T.attr("transform","translate("+(I-j.width/2-5)+", 0)")),KQ!=="TB"&&U.attr("transform","translate(-19, "+(I-j.height/2)+")")})},VGt=function(t,i,s,a){zGt();const h=UZ(),Q=h.gitGraph;_A.debug("in gitgraph renderer",t+``,"id:",i,s),aX=a.db.getCommits();const w=a.db.getBranchesAsObjArray();KQ=a.db.getDirection();const I=Nn(`[id="${i}"]`);let d=0;w.forEach((D,N)=>{const U=lxe(D.name),R=I.append("g"),T=R.insert("g").attr("class","branchLabel"),j=T.insert("g").attr("class","label branch-label");j.node().appendChild(U);let W=U.getBBox();Mw[D.name]={pos:d,index:N},d+=50+(Q.rotateCommitLabel?40:0)+(KQ==="TB"?W.width/2:0),j.remove(),T.remove(),R.remove()}),q2e(I,aX,!1),Q.showBranches&&KGt(I,w),WGt(I,aX),q2e(I,aX,!0),ms.insertTitle(I,"gitTitleText",Q.titleTopMargin,a.db.getDiagramTitle()),Lme(void 0,I,Q.diagramPadding,Q.useMaxWidth??h.useMaxWidth)},XGt={draw:VGt},ZGt=t=>` .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(i=>` .branch-label${i} { fill: ${t["gitBranchLabel"+i]}; } .commit${i} { stroke: ${t["git"+i]}; fill: ${t["git"+i]}; } .commit-highlight${i} { stroke: ${t["gitInv"+i]}; fill: ${t["gitInv"+i]}; } .label${i} { fill: ${t["git"+i]}; } .arrow${i} { stroke: ${t["git"+i]}; } `).join(``)} .branch { stroke-width: 1; stroke: ${t.lineColor}; stroke-dasharray: 2; } .commit-label { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelColor};} .commit-label-bkg { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelBackground}; opacity: 0.5; } .tag-label { font-size: ${t.tagLabelFontSize}; fill: ${t.tagLabelColor};} .tag-label-bkg { fill: ${t.tagLabelBackground}; stroke: ${t.tagLabelBorder}; } .tag-hole { fill: ${t.textColor}; } .commit-merge { stroke: ${t.primaryColor}; fill: ${t.primaryColor}; } .commit-reverse { stroke: ${t.primaryColor}; fill: ${t.primaryColor}; stroke-width: 3; } .commit-highlight-outer { } .commit-highlight-inner { stroke: ${t.primaryColor}; fill: ${t.primaryColor}; } .arrow { stroke-width: 8; stroke-linecap: round; fill: none} .gitTitleText { text-anchor: middle; font-size: 18px; fill: ${t.textColor}; }`,qGt=ZGt,_Gt={parser:MGt,db:LGt,renderer:XGt,styles:qGt},$Gt=Object.freeze(Object.defineProperty({__proto__:null,diagram:_Gt},Symbol.toStringTag,{value:"Module"}));var uxe={exports:{}};(function(t,i){(function(s,a){t.exports=a()})(Ed,function(){var s="day";return function(a,h,Q){var w=function(D){return D.add(4-D.isoWeekday(),s)},I=h.prototype;I.isoWeekYear=function(){return w(this).year()},I.isoWeek=function(D){if(!this.$utils().u(D))return this.add(7*(D-this.isoWeek()),s);var N,U,R,T,j=w(this),W=(N=this.isoWeekYear(),U=this.$u,R=(U?Q.utc:Q)().year(N).startOf("year"),T=4-R.isoWeekday(),R.isoWeekday()>4&&(T+=7),R.add(T,s));return j.diff(W,"week")+1},I.isoWeekday=function(D){return this.$utils().u(D)?this.day()||7:this.day(this.day()%7?D:D-7)};var d=I.startOf;I.startOf=function(D,N){var U=this.$utils(),R=!!U.u(N)||N;return U.p(D)==="isoweek"?R?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):d.bind(this)(D,N)}}})})(uxe);var AJt=uxe.exports;const eJt=ok(AJt);var wxe={exports:{}};(function(t,i){(function(s,a){t.exports=a()})(Ed,function(){var s={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"},a=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,h=/\d\d/,Q=/\d\d?/,w=/\d*[^-_:/,()\s\d]+/,I={},d=function(W){return(W=+W)+(W>68?1900:2e3)},D=function(W){return function(AA){this[W]=+AA}},N=[/[+-]\d\d:?(\d\d)?|Z/,function(W){(this.zone||(this.zone={})).offset=function(AA){if(!AA||AA==="Z")return 0;var X=AA.match(/([+-]|\d\d)/g),K=60*X[1]+(+X[2]||0);return K===0?0:X[0]==="+"?-K:K}(W)}],U=function(W){var AA=I[W];return AA&&(AA.indexOf?AA:AA.s.concat(AA.f))},R=function(W,AA){var X,K=I.meridiem;if(K){for(var $=1;$<=24;$+=1)if(W.indexOf(K($,0,AA))>-1){X=$>12;break}}else X=W===(AA?"pm":"PM");return X},T={A:[w,function(W){this.afternoon=R(W,!1)}],a:[w,function(W){this.afternoon=R(W,!0)}],S:[/\d/,function(W){this.milliseconds=100*+W}],SS:[h,function(W){this.milliseconds=10*+W}],SSS:[/\d{3}/,function(W){this.milliseconds=+W}],s:[Q,D("seconds")],ss:[Q,D("seconds")],m:[Q,D("minutes")],mm:[Q,D("minutes")],H:[Q,D("hours")],h:[Q,D("hours")],HH:[Q,D("hours")],hh:[Q,D("hours")],D:[Q,D("day")],DD:[h,D("day")],Do:[w,function(W){var AA=I.ordinal,X=W.match(/\d+/);if(this.day=X[0],AA)for(var K=1;K<=31;K+=1)AA(K).replace(/\[|\]/g,"")===W&&(this.day=K)}],M:[Q,D("month")],MM:[h,D("month")],MMM:[w,function(W){var AA=U("months"),X=(U("monthsShort")||AA.map(function(K){return K.slice(0,3)})).indexOf(W)+1;if(X<1)throw new Error;this.month=X%12||X}],MMMM:[w,function(W){var AA=U("months").indexOf(W)+1;if(AA<1)throw new Error;this.month=AA%12||AA}],Y:[/[+-]?\d+/,D("year")],YY:[h,function(W){this.year=d(W)}],YYYY:[/\d{4}/,D("year")],Z:N,ZZ:N};function j(W){var AA,X;AA=W,X=I&&I.formats;for(var K=(W=AA.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(rA,FA,gA){var fA=gA&&gA.toUpperCase();return FA||X[gA]||s[gA]||X[fA].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(DA,eA,GA){return eA||GA.slice(1)})})).match(a),$=K.length,QA=0;QA<$;QA+=1){var hA=K[QA],aA=T[hA],iA=aA&&aA[0],BA=aA&&aA[1];K[QA]=BA?{regex:iA,parser:BA}:hA.replace(/^\[|\]$/g,"")}return function(rA){for(var FA={},gA=0,fA=0;gA<$;gA+=1){var DA=K[gA];if(typeof DA=="string")fA+=DA.length;else{var eA=DA.regex,GA=DA.parser,cA=rA.slice(fA),JA=eA.exec(cA)[0];GA.call(FA,JA),rA=rA.replace(JA,"")}}return function(_){var SA=_.afternoon;if(SA!==void 0){var jA=_.hours;SA?jA<12&&(_.hours+=12):jA===12&&(_.hours=0),delete _.afternoon}}(FA),FA}}return function(W,AA,X){X.p.customParseFormat=!0,W&&W.parseTwoDigitYear&&(d=W.parseTwoDigitYear);var K=AA.prototype,$=K.parse;K.parse=function(QA){var hA=QA.date,aA=QA.utc,iA=QA.args;this.$u=aA;var BA=iA[1];if(typeof BA=="string"){var rA=iA[2]===!0,FA=iA[3]===!0,gA=rA||FA,fA=iA[2];FA&&(fA=iA[2]),I=this.$locale(),!rA&&fA&&(I=X.Ls[fA]),this.$d=function(cA,JA,_){try{if(["x","X"].indexOf(JA)>-1)return new Date((JA==="X"?1e3:1)*cA);var SA=j(JA)(cA),jA=SA.year,dA=SA.month,kA=SA.day,vA=SA.hours,Fe=SA.minutes,at=SA.seconds,fe=SA.milliseconds,mt=SA.zone,be=new Date,ie=kA||(jA||dA?1:be.getDate()),ye=jA||be.getFullYear(),Le=0;jA&&!dA||(Le=dA>0?dA-1:be.getMonth());var HA=vA||0,WA=Fe||0,XA=at||0,ce=fe||0;return mt?new Date(Date.UTC(ye,Le,ie,HA,WA,XA,ce+60*mt.offset*1e3)):_?new Date(Date.UTC(ye,Le,ie,HA,WA,XA,ce)):new Date(ye,Le,ie,HA,WA,XA,ce)}catch{return new Date("")}}(hA,BA,aA),this.init(),fA&&fA!==!0&&(this.$L=this.locale(fA).$L),gA&&hA!=this.format(BA)&&(this.$d=new Date("")),I={}}else if(BA instanceof Array)for(var DA=BA.length,eA=1;eA<=DA;eA+=1){iA[1]=BA[eA-1];var GA=X.apply(this,iA);if(GA.isValid()){this.$d=GA.$d,this.$L=GA.$L,this.init();break}eA===DA&&(this.$d=new Date(""))}else $.call(this,QA)}}})})(wxe);var tJt=wxe.exports;const nJt=ok(tJt);var Qxe={exports:{}};(function(t,i){(function(s,a){t.exports=a()})(Ed,function(){return function(s,a){var h=a.prototype,Q=h.format;h.format=function(w){var I=this,d=this.$locale();if(!this.isValid())return Q.bind(this)(w);var D=this.$utils(),N=(w||"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(U){switch(U){case"Q":return Math.ceil((I.$M+1)/3);case"Do":return d.ordinal(I.$D);case"gggg":return I.weekYear();case"GGGG":return I.isoWeekYear();case"wo":return d.ordinal(I.week(),"W");case"w":case"ww":return D.s(I.week(),U==="w"?1:2,"0");case"W":case"WW":return D.s(I.isoWeek(),U==="W"?1:2,"0");case"k":case"kk":return D.s(String(I.$H===0?24:I.$H),U==="k"?1:2,"0");case"X":return Math.floor(I.$d.getTime()/1e3);case"x":return I.$d.getTime();case"z":return"["+I.offsetName()+"]";case"zzz":return"["+I.offsetName("long")+"]";default:return U}});return Q.bind(this)(N)}}})})(Qxe);var iJt=Qxe.exports;const rJt=ok(iJt);var F8A=function(){var t=function(GA,cA,JA,_){for(JA=JA||{},_=GA.length;_--;JA[GA[_]]=cA);return JA},i=[1,3],s=[1,5],a=[7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],h=[1,32],Q=[1,33],w=[1,34],I=[1,35],d=[1,36],D=[1,37],N=[1,38],U=[1,15],R=[1,16],T=[1,17],j=[1,18],W=[1,19],AA=[1,20],X=[1,21],K=[1,22],$=[1,24],QA=[1,25],hA=[1,26],aA=[1,27],iA=[1,28],BA=[1,30],rA=[1,39],FA=[1,42],gA=[5,7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],fA={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,gantt:5,document:6,EOF:7,line:8,SPACE:9,statement:10,NL:11,weekday:12,weekday_monday:13,weekday_tuesday:14,weekday_wednesday:15,weekday_thursday:16,weekday_friday:17,weekday_saturday:18,weekday_sunday:19,dateFormat:20,inclusiveEndDates:21,topAxis:22,axisFormat:23,tickInterval:24,excludes:25,includes:26,todayMarker:27,title:28,acc_title:29,acc_title_value:30,acc_descr:31,acc_descr_value:32,acc_descr_multiline_value:33,section:34,clickStatement:35,taskTxt:36,taskData:37,openDirective:38,typeDirective:39,closeDirective:40,":":41,argDirective:42,click:43,callbackname:44,callbackargs:45,href:46,clickStatementDebug:47,open_directive:48,type_directive:49,arg_directive:50,close_directive:51,$accept:0,$end:1},terminals_:{2:"error",5:"gantt",7:"EOF",9:"SPACE",11:"NL",13:"weekday_monday",14:"weekday_tuesday",15:"weekday_wednesday",16:"weekday_thursday",17:"weekday_friday",18:"weekday_saturday",19:"weekday_sunday",20:"dateFormat",21:"inclusiveEndDates",22:"topAxis",23:"axisFormat",24:"tickInterval",25:"excludes",26:"includes",27:"todayMarker",28:"title",29:"acc_title",30:"acc_title_value",31:"acc_descr",32:"acc_descr_value",33:"acc_descr_multiline_value",34:"section",36:"taskTxt",37:"taskData",41:":",43:"click",44:"callbackname",45:"callbackargs",46:"href",48:"open_directive",49:"type_directive",50:"arg_directive",51:"close_directive"},productions_:[0,[3,2],[3,3],[6,0],[6,2],[8,2],[8,1],[8,1],[8,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,2],[10,1],[4,4],[4,6],[35,2],[35,3],[35,3],[35,4],[35,3],[35,4],[35,2],[47,2],[47,3],[47,3],[47,4],[47,3],[47,4],[47,2],[38,1],[39,1],[42,1],[40,1]],performAction:function(cA,JA,_,SA,jA,dA,kA){var vA=dA.length-1;switch(jA){case 2:return dA[vA-1];case 3:this.$=[];break;case 4:dA[vA-1].push(dA[vA]),this.$=dA[vA-1];break;case 5:case 6:this.$=dA[vA];break;case 7:case 8:this.$=[];break;case 9:SA.setWeekday("monday");break;case 10:SA.setWeekday("tuesday");break;case 11:SA.setWeekday("wednesday");break;case 12:SA.setWeekday("thursday");break;case 13:SA.setWeekday("friday");break;case 14:SA.setWeekday("saturday");break;case 15:SA.setWeekday("sunday");break;case 16:SA.setDateFormat(dA[vA].substr(11)),this.$=dA[vA].substr(11);break;case 17:SA.enableInclusiveEndDates(),this.$=dA[vA].substr(18);break;case 18:SA.TopAxis(),this.$=dA[vA].substr(8);break;case 19:SA.setAxisFormat(dA[vA].substr(11)),this.$=dA[vA].substr(11);break;case 20:SA.setTickInterval(dA[vA].substr(13)),this.$=dA[vA].substr(13);break;case 21:SA.setExcludes(dA[vA].substr(9)),this.$=dA[vA].substr(9);break;case 22:SA.setIncludes(dA[vA].substr(9)),this.$=dA[vA].substr(9);break;case 23:SA.setTodayMarker(dA[vA].substr(12)),this.$=dA[vA].substr(12);break;case 25:SA.setDiagramTitle(dA[vA].substr(6)),this.$=dA[vA].substr(6);break;case 26:this.$=dA[vA].trim(),SA.setAccTitle(this.$);break;case 27:case 28:this.$=dA[vA].trim(),SA.setAccDescription(this.$);break;case 29:SA.addSection(dA[vA].substr(8)),this.$=dA[vA].substr(8);break;case 31:SA.addTask(dA[vA-1],dA[vA]),this.$="task";break;case 35:this.$=dA[vA-1],SA.setClickEvent(dA[vA-1],dA[vA],null);break;case 36:this.$=dA[vA-2],SA.setClickEvent(dA[vA-2],dA[vA-1],dA[vA]);break;case 37:this.$=dA[vA-2],SA.setClickEvent(dA[vA-2],dA[vA-1],null),SA.setLink(dA[vA-2],dA[vA]);break;case 38:this.$=dA[vA-3],SA.setClickEvent(dA[vA-3],dA[vA-2],dA[vA-1]),SA.setLink(dA[vA-3],dA[vA]);break;case 39:this.$=dA[vA-2],SA.setClickEvent(dA[vA-2],dA[vA],null),SA.setLink(dA[vA-2],dA[vA-1]);break;case 40:this.$=dA[vA-3],SA.setClickEvent(dA[vA-3],dA[vA-1],dA[vA]),SA.setLink(dA[vA-3],dA[vA-2]);break;case 41:this.$=dA[vA-1],SA.setLink(dA[vA-1],dA[vA]);break;case 42:case 48:this.$=dA[vA-1]+" "+dA[vA];break;case 43:case 44:case 46:this.$=dA[vA-2]+" "+dA[vA-1]+" "+dA[vA];break;case 45:case 47:this.$=dA[vA-3]+" "+dA[vA-2]+" "+dA[vA-1]+" "+dA[vA];break;case 49:SA.parseDirective("%%{","open_directive");break;case 50:SA.parseDirective(dA[vA],"type_directive");break;case 51:dA[vA]=dA[vA].trim().replace(/'/g,'"'),SA.parseDirective(dA[vA],"arg_directive");break;case 52:SA.parseDirective("}%%","close_directive","gantt");break}},table:[{3:1,4:2,5:i,38:4,48:s},{1:[3]},{3:6,4:2,5:i,38:4,48:s},t(a,[2,3],{6:7}),{39:8,49:[1,9]},{49:[2,49]},{1:[2,1]},{4:31,7:[1,10],8:11,9:[1,12],10:13,11:[1,14],12:23,13:h,14:Q,15:w,16:I,17:d,18:D,19:N,20:U,21:R,22:T,23:j,24:W,25:AA,26:X,27:K,28:$,29:QA,31:hA,33:aA,34:iA,35:29,36:BA,38:4,43:rA,48:s},{40:40,41:[1,41],51:FA},t([41,51],[2,50]),t(a,[2,8],{1:[2,2]}),t(a,[2,4]),{4:31,10:43,12:23,13:h,14:Q,15:w,16:I,17:d,18:D,19:N,20:U,21:R,22:T,23:j,24:W,25:AA,26:X,27:K,28:$,29:QA,31:hA,33:aA,34:iA,35:29,36:BA,38:4,43:rA,48:s},t(a,[2,6]),t(a,[2,7]),t(a,[2,16]),t(a,[2,17]),t(a,[2,18]),t(a,[2,19]),t(a,[2,20]),t(a,[2,21]),t(a,[2,22]),t(a,[2,23]),t(a,[2,24]),t(a,[2,25]),{30:[1,44]},{32:[1,45]},t(a,[2,28]),t(a,[2,29]),t(a,[2,30]),{37:[1,46]},t(a,[2,32]),t(a,[2,9]),t(a,[2,10]),t(a,[2,11]),t(a,[2,12]),t(a,[2,13]),t(a,[2,14]),t(a,[2,15]),{44:[1,47],46:[1,48]},{11:[1,49]},{42:50,50:[1,51]},{11:[2,52]},t(a,[2,5]),t(a,[2,26]),t(a,[2,27]),t(a,[2,31]),t(a,[2,35],{45:[1,52],46:[1,53]}),t(a,[2,41],{44:[1,54]}),t(gA,[2,33]),{40:55,51:FA},{51:[2,51]},t(a,[2,36],{46:[1,56]}),t(a,[2,37]),t(a,[2,39],{45:[1,57]}),{11:[1,58]},t(a,[2,38]),t(a,[2,40]),t(gA,[2,34])],defaultActions:{5:[2,49],6:[2,1],42:[2,52],51:[2,51]},parseError:function(cA,JA){if(JA.recoverable)this.trace(cA);else{var _=new Error(cA);throw _.hash=JA,_}},parse:function(cA){var JA=this,_=[0],SA=[],jA=[null],dA=[],kA=this.table,vA="",Fe=0,at=0,fe=2,mt=1,be=dA.slice.call(arguments,1),ie=Object.create(this.lexer),ye={yy:{}};for(var Le in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Le)&&(ye.yy[Le]=this.yy[Le]);ie.setInput(cA,ye.yy),ye.yy.lexer=ie,ye.yy.parser=this,typeof ie.yylloc>"u"&&(ie.yylloc={});var HA=ie.yylloc;dA.push(HA);var WA=ie.options&&ie.options.ranges;typeof ye.yy.parseError=="function"?this.parseError=ye.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function XA(){var Gt;return Gt=SA.pop()||ie.lex()||mt,typeof Gt!="number"&&(Gt instanceof Array&&(SA=Gt,Gt=SA.pop()),Gt=JA.symbols_[Gt]||Gt),Gt}for(var ce,ZA,pe,zA,Ft={},RA,Et,$A,Ot;;){if(ZA=_[_.length-1],this.defaultActions[ZA]?pe=this.defaultActions[ZA]:((ce===null||typeof ce>"u")&&(ce=XA()),pe=kA[ZA]&&kA[ZA][ce]),typeof pe>"u"||!pe.length||!pe[0]){var zt="";Ot=[];for(RA in kA[ZA])this.terminals_[RA]&&RA>fe&&Ot.push("'"+this.terminals_[RA]+"'");ie.showPosition?zt="Parse error on line "+(Fe+1)+`:`+ie.showPosition()+`Expecting `+Ot.join(", ")+", got '"+(this.terminals_[ce]||ce)+"'":zt="Parse error on line "+(Fe+1)+": Unexpected "+(ce==mt?"end of input":"'"+(this.terminals_[ce]||ce)+"'"),this.parseError(zt,{text:ie.match,token:this.terminals_[ce]||ce,line:ie.yylineno,loc:HA,expected:Ot})}if(pe[0]instanceof Array&&pe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ZA+", token: "+ce);switch(pe[0]){case 1:_.push(ce),jA.push(ie.yytext),dA.push(ie.yylloc),_.push(pe[1]),ce=null,at=ie.yyleng,vA=ie.yytext,Fe=ie.yylineno,HA=ie.yylloc;break;case 2:if(Et=this.productions_[pe[1]][1],Ft.$=jA[jA.length-Et],Ft._$={first_line:dA[dA.length-(Et||1)].first_line,last_line:dA[dA.length-1].last_line,first_column:dA[dA.length-(Et||1)].first_column,last_column:dA[dA.length-1].last_column},WA&&(Ft._$.range=[dA[dA.length-(Et||1)].range[0],dA[dA.length-1].range[1]]),zA=this.performAction.apply(Ft,[vA,at,Fe,ye.yy,pe[1],jA,dA].concat(be)),typeof zA<"u")return zA;Et&&(_=_.slice(0,-1*Et*2),jA=jA.slice(0,-1*Et),dA=dA.slice(0,-1*Et)),_.push(this.productions_[pe[1]][0]),jA.push(Ft.$),dA.push(Ft._$),$A=kA[_[_.length-2]][_[_.length-1]],_.push($A);break;case 3:return!0}}return!0}},DA=function(){var GA={EOF:1,parseError:function(JA,_){if(this.yy.parser)this.yy.parser.parseError(JA,_);else throw new Error(JA)},setInput:function(cA,JA){return this.yy=JA||this.yy||{},this._input=cA,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},input:function(){var cA=this._input[0];this.yytext+=cA,this.yyleng++,this.offset++,this.match+=cA,this.matched+=cA;var JA=cA.match(/(?:\r\n?|\n).*/g);return JA?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),cA},unput:function(cA){var JA=cA.length,_=cA.split(/(?:\r\n?|\n)/g);this._input=cA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-JA),this.offset-=JA;var SA=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 jA=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===SA.length?this.yylloc.first_column:0)+SA[SA.length-_.length].length-_[0].length:this.yylloc.first_column-JA},this.options.ranges&&(this.yylloc.range=[jA[0],jA[0]+this.yyleng-JA]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(cA){this.unput(this.match.slice(cA))},pastInput:function(){var cA=this.matched.substr(0,this.matched.length-this.match.length);return(cA.length>20?"...":"")+cA.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var cA=this.match;return cA.length<20&&(cA+=this._input.substr(0,20-cA.length)),(cA.substr(0,20)+(cA.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var cA=this.pastInput(),JA=new Array(cA.length+1).join("-");return cA+this.upcomingInput()+``+JA+"^"},test_match:function(cA,JA){var _,SA,jA;if(this.options.backtrack_lexer&&(jA={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&&(jA.yylloc.range=this.yylloc.range.slice(0))),SA=cA[0].match(/(?:\r\n?|\n).*/g),SA&&(this.yylineno+=SA.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:SA?SA[SA.length-1].length-SA[SA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+cA[0].length},this.yytext+=cA[0],this.match+=cA[0],this.matches=cA,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(cA[0].length),this.matched+=cA[0],_=this.performAction.call(this,this.yy,this,JA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),_)return _;if(this._backtrack){for(var dA in jA)this[dA]=jA[dA];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var cA,JA,_,SA;this._more||(this.yytext="",this.match="");for(var jA=this._currentRules(),dA=0;dA JA[0].length)){if(JA=_,SA=dA,this.options.backtrack_lexer){if(cA=this.test_match(_,jA[dA]),cA!==!1)return cA;if(this._backtrack){JA=!1;continue}else return!1}else if(!this.options.flex)break}return JA?(cA=this.test_match(JA,jA[SA]),cA!==!1?cA:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var JA=this.next();return JA||this.lex()},begin:function(JA){this.conditionStack.push(JA)},popState:function(){var JA=this.conditionStack.length-1;return JA>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(JA){return JA=this.conditionStack.length-1-Math.abs(JA||0),JA>=0?this.conditionStack[JA]:"INITIAL"},pushState:function(JA){this.begin(JA)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(JA,_,SA,jA){switch(SA){case 0:return this.begin("open_directive"),48;case 1:return this.begin("type_directive"),49;case 2:return this.popState(),this.begin("arg_directive"),41;case 3:return this.popState(),this.popState(),51;case 4:return 50;case 5:return this.begin("acc_title"),29;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),31;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:break;case 13:break;case 14:break;case 15:return 11;case 16:break;case 17:break;case 18:break;case 19:this.begin("href");break;case 20:this.popState();break;case 21:return 46;case 22:this.begin("callbackname");break;case 23:this.popState();break;case 24:this.popState(),this.begin("callbackargs");break;case 25:return 44;case 26:this.popState();break;case 27:return 45;case 28:this.begin("click");break;case 29:this.popState();break;case 30:return 43;case 31:return 5;case 32:return 20;case 33:return 21;case 34:return 22;case 35:return 23;case 36:return 24;case 37:return 26;case 38:return 25;case 39:return 27;case 40:return 13;case 41:return 14;case 42:return 15;case 43:return 16;case 44:return 17;case 45:return 18;case 46:return 19;case 47:return"date";case 48:return 28;case 49:return"accDescription";case 50:return 34;case 51:return 36;case 52:return 37;case 53:return 41;case 54:return 7;case 55:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/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,/^(?:%[^\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,/^(?:\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:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[26,27],inclusive:!1},callbackname:{rules:[23,24,25],inclusive:!1},href:{rules:[20,21],inclusive:!1},click:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,22,28,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 GA}();fA.lexer=DA;function eA(){this.yy={}}return eA.prototype=fA,fA.Parser=eA,new eA}();F8A.parser=F8A;const cJt=F8A;TE.extend(eJt);TE.extend(nJt);TE.extend(rJt);let XD="",tSA="",nSA,iSA="",RZ=[],TZ=[],rSA={},cSA=[],a1A=[],GS="",sSA="";const Exe=["active","done","crit","milestone"];let oSA=[],vZ=!1,aSA=!1,BSA="sunday",M8A=0;const sJt=function(t,i,s){zu.parseDirective(this,t,i,s)},oJt=function(){cSA=[],a1A=[],GS="",oSA=[],rQA=0,D8A=void 0,cQA=void 0,Tu=[],XD="",tSA="",sSA="",nSA=void 0,iSA="",RZ=[],TZ=[],vZ=!1,aSA=!1,M8A=0,rSA={},g0(),BSA="sunday"},aJt=function(t){tSA=t},BJt=function(){return tSA},gJt=function(t){nSA=t},hJt=function(){return nSA},lJt=function(t){iSA=t},uJt=function(){return iSA},wJt=function(t){XD=t},QJt=function(){vZ=!0},EJt=function(){return vZ},fJt=function(){aSA=!0},IJt=function(){return aSA},CJt=function(t){sSA=t},dJt=function(){return sSA},FJt=function(){return XD},MJt=function(t){RZ=t.toLowerCase().split(/[\s,]+/)},YJt=function(){return RZ},DJt=function(t){TZ=t.toLowerCase().split(/[\s,]+/)},yJt=function(){return TZ},pJt=function(){return rSA},NJt=function(t){GS=t,cSA.push(t)},mJt=function(){return cSA},UJt=function(){let t=_2e();const i=10;let s=0;for(;!t&&s=6&&s.includes("weekends")||s.includes(t.format("dddd").toLowerCase())?!0:s.includes(t.format(i.trim()))},bJt=function(t){BSA=t},HJt=function(){return BSA},Ixe=function(t,i,s,a){if(!s.length||t.manualEndTime)return;let h;t.startTime instanceof Date?h=TE(t.startTime):h=TE(t.startTime,i,!0),h=h.add(1,"d");let Q;t.endTime instanceof Date?Q=TE(t.endTime):Q=TE(t.endTime,i,!0);const[w,I]=xJt(h,Q,i,s,a);t.endTime=w.toDate(),t.renderEndTime=I},xJt=function(t,i,s,a,h){let Q=!1,w=null;for(;t<=i;)Q||(w=i.toDate()),Q=fxe(t,s,a,h),Q&&(i=i.add(1,"d")),t=t.add(1,"d");return[i,w]},Y8A=function(t,i,s){s=s.trim();const h=/^after\s+([\d\w- ]+)/.exec(s.trim());if(h!==null){let w=null;if(h[1].split(" ").forEach(function(I){let d=i5(I);d!==void 0&&(w?d.endTime>w.endTime&&(w=d):w=d)}),w)return w.endTime;{const I=new Date;return I.setHours(0,0,0,0),I}}let Q=TE(s,i.trim(),!0);if(Q.isValid())return Q.toDate();{_A.debug("Invalid date:"+s),_A.debug("With date format:"+i.trim());const w=new Date(s);if(w===void 0||isNaN(w.getTime())||w.getFullYear()<-1e4||w.getFullYear()>1e4)throw new Error("Invalid date:"+s);return w}},Cxe=function(t){const i=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return i!==null?[Number.parseFloat(i[1]),i[2]]:[NaN,"ms"]},dxe=function(t,i,s,a=!1){s=s.trim();let h=TE(s,i.trim(),!0);if(h.isValid())return a&&(h=h.add(1,"d")),h.toDate();let Q=TE(t);const[w,I]=Cxe(s);if(!Number.isNaN(w)){const d=Q.add(w,I);d.isValid()&&(Q=d)}return Q.toDate()};let rQA=0;const cS=function(t){return t===void 0?(rQA=rQA+1,"task"+rQA):t},GJt=function(t,i){let s;i.substr(0,1)===":"?s=i.substr(1,i.length):s=i;const a=s.split(","),h={};Dxe(a,h,Exe);for(let w=0;w {window.open(s,"_self")}),rSA[a]=s)}),Mxe(t,"clickable")},Mxe=function(t,i){t.split(",").forEach(function(s){let a=i5(s);a!==void 0&&a.classes.push(i)})},vJt=function(t,i,s){if(Je().securityLevel!=="loose"||i===void 0)return;let a=[];if(typeof s=="string"){a=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let Q=0;Q {ms.runFunc(i,...a)})},Yxe=function(t,i){oSA.push(function(){const s=document.querySelector(`[id="${t}"]`);s!==null&&s.addEventListener("click",function(){i()})},function(){const s=document.querySelector(`[id="${t}-text"]`);s!==null&&s.addEventListener("click",function(){i()})})},jJt=function(t,i,s){t.split(",").forEach(function(a){vJt(a,i,s)}),Mxe(t,"clickable")},SJt=function(t){oSA.forEach(function(i){i(t)})},LJt={parseDirective:sJt,getConfig:()=>Je().gantt,clear:oJt,setDateFormat:wJt,getDateFormat:FJt,enableInclusiveEndDates:QJt,endDatesAreInclusive:EJt,enableTopAxis:fJt,topAxisEnabled:IJt,setAxisFormat:aJt,getAxisFormat:BJt,setTickInterval:gJt,getTickInterval:hJt,setTodayMarker:lJt,getTodayMarker:uJt,setAccTitle:A1,getAccTitle:h0,setDiagramTitle:EI,getDiagramTitle:zE,setDisplayMode:CJt,getDisplayMode:dJt,setAccDescription:l0,getAccDescription:u0,addSection:NJt,getSections:mJt,getTasks:UJt,addTask:kJt,findTaskById:i5,addTaskOrg:RJt,setIncludes:MJt,getIncludes:YJt,setExcludes:DJt,getExcludes:yJt,setClickEvent:jJt,setLink:TJt,getLinks:pJt,bindFunctions:SJt,parseDuration:Cxe,isInvalidDate:fxe,setWeekday:bJt,getWeekday:HJt};function Dxe(t,i,s){let a=!0;for(;a;)a=!1,s.forEach(function(h){const Q="^\\s*"+h+"\\s*$",w=new RegExp(Q);t[0].match(w)&&(i[h]=!0,t.shift(1),a=!0)})}const zJt=function(){_A.debug("Something is calling, setConf, remove the call")},$2e={monday:TX,tuesday:MNe,wednesday:YNe,thursday:OJ,friday:DNe,saturday:yNe,sunday:mZ},PJt=(t,i)=>{let s=[...t].map(()=>-1/0),a=[...t].sort((Q,w)=>Q.startTime-w.startTime||Q.order-w.order),h=0;for(const Q of a)for(let w=0;w =s[w]){s[w]=Q.endTime,Q.order=w+i,w>h&&(h=w);break}return h};let Up;const OJt=function(t,i,s,a){const h=Je().gantt,Q=Je().securityLevel;let w;Q==="sandbox"&&(w=Nn("#i"+i));const I=Nn(Q==="sandbox"?w.nodes()[0].contentDocument.body:"body"),d=Q==="sandbox"?w.nodes()[0].contentDocument:document,D=d.getElementById(i);Up=D.parentElement.offsetWidth,Up===void 0&&(Up=1200),h.useWidth!==void 0&&(Up=h.useWidth);const N=a.db.getTasks();let U=[];for(const BA of N)U.push(BA.type);U=iA(U);const R={};let T=2*h.topPadding;if(a.db.getDisplayMode()==="compact"||h.displayMode==="compact"){const BA={};for(const FA of N)BA[FA.section]===void 0?BA[FA.section]=[FA]:BA[FA.section].push(FA);let rA=0;for(const FA of Object.keys(BA)){const gA=PJt(BA[FA],rA)+1;rA+=gA,T+=gA*(h.barHeight+h.barGap),R[FA]=gA}}else{T+=N.length*(h.barHeight+h.barGap);for(const BA of U)R[BA]=N.filter(rA=>rA.type===BA).length}D.setAttribute("viewBox","0 0 "+Up+" "+T);const j=I.select(`[id="${i}"]`),W=B0t().domain([Vht(N,function(BA){return BA.startTime}),Kht(N,function(BA){return BA.endTime})]).rangeRound([0,Up-h.leftPadding-h.rightPadding]);function AA(BA,rA){const FA=BA.startTime,gA=rA.startTime;let fA=0;return FA>gA?fA=1:FA jA.order))].map(jA=>BA.find(dA=>dA.order===jA));j.append("g").selectAll("rect").data(cA).enter().append("rect").attr("x",0).attr("y",function(jA,dA){return dA=jA.order,dA*rA+FA-2}).attr("width",function(){return eA-h.rightPadding/2}).attr("height",rA).attr("class",function(jA){for(const[dA,kA]of U.entries())if(jA.type===kA)return"section section"+dA%h.numberSectionStyles;return"section section0"});const JA=j.append("g").selectAll("rect").data(BA).enter(),_=a.db.getLinks();if(JA.append("rect").attr("id",function(jA){return jA.id}).attr("rx",3).attr("ry",3).attr("x",function(jA){return jA.milestone?W(jA.startTime)+gA+.5*(W(jA.endTime)-W(jA.startTime))-.5*fA:W(jA.startTime)+gA}).attr("y",function(jA,dA){return dA=jA.order,dA*rA+FA}).attr("width",function(jA){return jA.milestone?fA:W(jA.renderEndTime||jA.endTime)-W(jA.startTime)}).attr("height",fA).attr("transform-origin",function(jA,dA){return dA=jA.order,(W(jA.startTime)+gA+.5*(W(jA.endTime)-W(jA.startTime))).toString()+"px "+(dA*rA+FA+.5*fA).toString()+"px"}).attr("class",function(jA){const dA="task";let kA="";jA.classes.length>0&&(kA=jA.classes.join(" "));let vA=0;for(const[at,fe]of U.entries())jA.type===fe&&(vA=at%h.numberSectionStyles);let Fe="";return jA.active?jA.crit?Fe+=" activeCrit":Fe=" active":jA.done?jA.crit?Fe=" doneCrit":Fe=" done":jA.crit&&(Fe+=" crit"),Fe.length===0&&(Fe=" task"),jA.milestone&&(Fe=" milestone "+Fe),Fe+=vA,Fe+=" "+kA,dA+Fe}),JA.append("text").attr("id",function(jA){return jA.id+"-text"}).text(function(jA){return jA.task}).attr("font-size",h.fontSize).attr("x",function(jA){let dA=W(jA.startTime),kA=W(jA.renderEndTime||jA.endTime);jA.milestone&&(dA+=.5*(W(jA.endTime)-W(jA.startTime))-.5*fA),jA.milestone&&(kA=dA+fA);const vA=this.getBBox().width;return vA>kA-dA?kA+vA+1.5*h.leftPadding>eA?dA+gA-5:kA+gA+5:(kA-dA)/2+dA+gA}).attr("y",function(jA,dA){return dA=jA.order,dA*rA+h.barHeight/2+(h.fontSize/2-2)+FA}).attr("text-height",fA).attr("class",function(jA){const dA=W(jA.startTime);let kA=W(jA.endTime);jA.milestone&&(kA=dA+fA);const vA=this.getBBox().width;let Fe="";jA.classes.length>0&&(Fe=jA.classes.join(" "));let at=0;for(const[mt,be]of U.entries())jA.type===be&&(at=mt%h.numberSectionStyles);let fe="";return jA.active&&(jA.crit?fe="activeCritText"+at:fe="activeText"+at),jA.done?jA.crit?fe=fe+" doneCritText"+at:fe=fe+" doneText"+at:jA.crit&&(fe=fe+" critText"+at),jA.milestone&&(fe+=" milestoneText"),vA>kA-dA?kA+vA+1.5*h.leftPadding>eA?Fe+" taskTextOutsideLeft taskTextOutside"+at+" "+fe:Fe+" taskTextOutsideRight taskTextOutside"+at+" "+fe+" width-"+vA:Fe+" taskText taskText"+at+" "+fe+" width-"+vA}),Je().securityLevel==="sandbox"){let jA;jA=Nn("#i"+i);const dA=jA.nodes()[0].contentDocument;JA.filter(function(kA){return _[kA.id]!==void 0}).each(function(kA){var vA=dA.querySelector("#"+kA.id),Fe=dA.querySelector("#"+kA.id+"-text");const at=vA.parentNode;var fe=dA.createElement("a");fe.setAttribute("xlink:href",_[kA.id]),fe.setAttribute("target","_top"),at.appendChild(fe),fe.appendChild(vA),fe.appendChild(Fe)})}}function $(BA,rA,FA,gA,fA,DA,eA,GA){const cA=DA.reduce((vA,{startTime:Fe})=>vA?Math.min(vA,Fe):Fe,0),JA=DA.reduce((vA,{endTime:Fe})=>vA?Math.max(vA,Fe):Fe,0),_=a.db.getDateFormat();if(!cA||!JA)return;const SA=[];let jA=null,dA=TE(cA);for(;dA.valueOf()<=JA;)a.db.isInvalidDate(dA,_,eA,GA)?jA?jA.end=dA:jA={start:dA,end:dA}:jA&&(SA.push(jA),jA=null),dA=dA.add(1,"d");j.append("g").selectAll("rect").data(SA).enter().append("rect").attr("id",function(vA){return"exclude-"+vA.start.format("YYYY-MM-DD")}).attr("x",function(vA){return W(vA.start)+FA}).attr("y",h.gridLineStartPadding).attr("width",function(vA){const Fe=vA.end.add(1,"day");return W(Fe)-W(vA.start)}).attr("height",fA-rA-h.gridLineStartPadding).attr("transform-origin",function(vA,Fe){return(W(vA.start)+FA+.5*(W(vA.end)-W(vA.start))).toString()+"px "+(Fe*BA+.5*fA).toString()+"px"}).attr("class","exclude-range")}function QA(BA,rA,FA,gA){let fA=tlt(W).tickSize(-gA+rA+h.gridLineStartPadding).tickFormat(GQA(a.db.getAxisFormat()||h.axisFormat||"%Y-%m-%d"));const eA=/^([1-9]\d*)(minute|hour|day|week|month)$/.exec(a.db.getTickInterval()||h.tickInterval);if(eA!==null){const GA=eA[1],cA=eA[2],JA=a.db.getWeekday()||h.weekday;switch(cA){case"minute":fA.ticks(UQA.every(GA));break;case"hour":fA.ticks(bQA.every(GA));break;case"day":fA.ticks(CS.every(GA));break;case"week":fA.ticks($2e[JA].every(GA));break;case"month":fA.ticks(HQA.every(GA));break}}if(j.append("g").attr("class","grid").attr("transform","translate("+BA+", "+(gA-50)+")").call(fA).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),a.db.topAxisEnabled()||h.topAxis){let GA=elt(W).tickSize(-gA+rA+h.gridLineStartPadding).tickFormat(GQA(a.db.getAxisFormat()||h.axisFormat||"%Y-%m-%d"));if(eA!==null){const cA=eA[1],JA=eA[2],_=a.db.getWeekday()||h.weekday;switch(JA){case"minute":GA.ticks(UQA.every(cA));break;case"hour":GA.ticks(bQA.every(cA));break;case"day":GA.ticks(CS.every(cA));break;case"week":GA.ticks($2e[_].every(cA));break;case"month":GA.ticks(HQA.every(cA));break}}j.append("g").attr("class","grid").attr("transform","translate("+BA+", "+rA+")").call(GA).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function hA(BA,rA){let FA=0;const gA=Object.keys(R).map(fA=>[fA,R[fA]]);j.append("g").selectAll("text").data(gA).enter().append(function(fA){const DA=fA[0].split(Yi.lineBreakRegex),eA=-(DA.length-1)/2,GA=d.createElementNS("http://www.w3.org/2000/svg","text");GA.setAttribute("dy",eA+"em");for(const[cA,JA]of DA.entries()){const _=d.createElementNS("http://www.w3.org/2000/svg","tspan");_.setAttribute("alignment-baseline","central"),_.setAttribute("x","10"),cA>0&&_.setAttribute("dy","1em"),_.textContent=JA,GA.appendChild(_)}return GA}).attr("x",10).attr("y",function(fA,DA){if(DA>0)for(let eA=0;eA ` .mermaid-main-font { font-family: "trebuchet ms", verdana, arial, sans-serif; font-family: var(--mermaid-font-family); } .exclude-range { fill: ${t.excludeBkgColor}; } .section { stroke: none; opacity: 0.2; } .section0 { fill: ${t.sectionBkgColor}; } .section2 { fill: ${t.sectionBkgColor2}; } .section1, .section3 { fill: ${t.altSectionBkgColor}; opacity: 0.2; } .sectionTitle0 { fill: ${t.titleColor}; } .sectionTitle1 { fill: ${t.titleColor}; } .sectionTitle2 { fill: ${t.titleColor}; } .sectionTitle3 { fill: ${t.titleColor}; } .sectionTitle { text-anchor: start; // font-size: ${t.ganttFontSize}; // text-height: 14px; font-family: 'trebuchet ms', verdana, arial, sans-serif; font-family: var(--mermaid-font-family); } /* Grid and axis */ .grid .tick { stroke: ${t.gridColor}; opacity: 0.8; shape-rendering: crispEdges; text { font-family: ${t.fontFamily}; fill: ${t.textColor}; } } .grid path { stroke-width: 0; } /* Today line */ .today { fill: none; stroke: ${t.todayLineColor}; stroke-width: 2px; } /* Task styling */ /* Default task */ .task { stroke-width: 2; } .taskText { text-anchor: middle; font-family: 'trebuchet ms', verdana, arial, sans-serif; font-family: var(--mermaid-font-family); } // .taskText:not([font-size]) { // font-size: ${t.ganttFontSize}; // } .taskTextOutsideRight { fill: ${t.taskTextDarkColor}; text-anchor: start; // font-size: ${t.ganttFontSize}; font-family: 'trebuchet ms', verdana, arial, sans-serif; font-family: var(--mermaid-font-family); } .taskTextOutsideLeft { fill: ${t.taskTextDarkColor}; text-anchor: end; // font-size: ${t.ganttFontSize}; } /* Special case clickable */ .task.clickable { cursor: pointer; } .taskText.clickable { cursor: pointer; fill: ${t.taskTextClickableColor} !important; font-weight: bold; } .taskTextOutsideLeft.clickable { cursor: pointer; fill: ${t.taskTextClickableColor} !important; font-weight: bold; } .taskTextOutsideRight.clickable { cursor: pointer; fill: ${t.taskTextClickableColor} !important; font-weight: bold; } /* Specific task settings for the sections*/ .taskText0, .taskText1, .taskText2, .taskText3 { fill: ${t.taskTextColor}; } .task0, .task1, .task2, .task3 { fill: ${t.taskBkgColor}; stroke: ${t.taskBorderColor}; } .taskTextOutside0, .taskTextOutside2 { fill: ${t.taskTextOutsideColor}; } .taskTextOutside1, .taskTextOutside3 { fill: ${t.taskTextOutsideColor}; } /* Active task */ .active0, .active1, .active2, .active3 { fill: ${t.activeTaskBkgColor}; stroke: ${t.activeTaskBorderColor}; } .activeText0, .activeText1, .activeText2, .activeText3 { fill: ${t.taskTextDarkColor} !important; } /* Completed task */ .done0, .done1, .done2, .done3 { stroke: ${t.doneTaskBorderColor}; fill: ${t.doneTaskBkgColor}; stroke-width: 2; } .doneText0, .doneText1, .doneText2, .doneText3 { fill: ${t.taskTextDarkColor} !important; } /* Tasks on the critical line */ .crit0, .crit1, .crit2, .crit3 { stroke: ${t.critBorderColor}; fill: ${t.critBkgColor}; stroke-width: 2; } .activeCrit0, .activeCrit1, .activeCrit2, .activeCrit3 { stroke: ${t.critBorderColor}; fill: ${t.activeTaskBkgColor}; stroke-width: 2; } .doneCrit0, .doneCrit1, .doneCrit2, .doneCrit3 { stroke: ${t.critBorderColor}; fill: ${t.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: ${t.taskTextDarkColor} !important; } .activeCritText0, .activeCritText1, .activeCritText2, .activeCritText3 { fill: ${t.taskTextDarkColor} !important; } .titleText { text-anchor: middle; font-size: 18px; fill: ${t.textColor} ; font-family: 'trebuchet ms', verdana, arial, sans-serif; font-family: var(--mermaid-font-family); }`,VJt=KJt,XJt={parser:cJt,db:LJt,renderer:WJt,styles:VJt},ZJt=Object.freeze(Object.defineProperty({__proto__:null,diagram:XJt},Symbol.toStringTag,{value:"Module"}));var y8A=function(){var t=function(Q,w,I,d){for(I=I||{},d=Q.length;d--;I[Q[d]]=w);return I},i=[6,9,10],s={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(w,I,d,D,N,U,R){switch(U.length-1,N){case 1:return D;case 4:break;case 6:D.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},t(i,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},t(i,[2,3]),t(i,[2,4]),t(i,[2,5]),t(i,[2,6])],defaultActions:{4:[2,1]},parseError:function(w,I){if(I.recoverable)this.trace(w);else{var d=new Error(w);throw d.hash=I,d}},parse:function(w){var I=this,d=[0],D=[],N=[null],U=[],R=this.table,T="",j=0,W=0,AA=2,X=1,K=U.slice.call(arguments,1),$=Object.create(this.lexer),QA={yy:{}};for(var hA in this.yy)Object.prototype.hasOwnProperty.call(this.yy,hA)&&(QA.yy[hA]=this.yy[hA]);$.setInput(w,QA.yy),QA.yy.lexer=$,QA.yy.parser=this,typeof $.yylloc>"u"&&($.yylloc={});var aA=$.yylloc;U.push(aA);var iA=$.options&&$.options.ranges;typeof QA.yy.parseError=="function"?this.parseError=QA.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function BA(){var SA;return SA=D.pop()||$.lex()||X,typeof SA!="number"&&(SA instanceof Array&&(D=SA,SA=D.pop()),SA=I.symbols_[SA]||SA),SA}for(var rA,FA,gA,fA,DA={},eA,GA,cA,JA;;){if(FA=d[d.length-1],this.defaultActions[FA]?gA=this.defaultActions[FA]:((rA===null||typeof rA>"u")&&(rA=BA()),gA=R[FA]&&R[FA][rA]),typeof gA>"u"||!gA.length||!gA[0]){var _="";JA=[];for(eA in R[FA])this.terminals_[eA]&&eA>AA&&JA.push("'"+this.terminals_[eA]+"'");$.showPosition?_="Parse error on line "+(j+1)+`:`+$.showPosition()+`Expecting `+JA.join(", ")+", got '"+(this.terminals_[rA]||rA)+"'":_="Parse error on line "+(j+1)+": Unexpected "+(rA==X?"end of input":"'"+(this.terminals_[rA]||rA)+"'"),this.parseError(_,{text:$.match,token:this.terminals_[rA]||rA,line:$.yylineno,loc:aA,expected:JA})}if(gA[0]instanceof Array&&gA.length>1)throw new Error("Parse Error: multiple actions possible at state: "+FA+", token: "+rA);switch(gA[0]){case 1:d.push(rA),N.push($.yytext),U.push($.yylloc),d.push(gA[1]),rA=null,W=$.yyleng,T=$.yytext,j=$.yylineno,aA=$.yylloc;break;case 2:if(GA=this.productions_[gA[1]][1],DA.$=N[N.length-GA],DA._$={first_line:U[U.length-(GA||1)].first_line,last_line:U[U.length-1].last_line,first_column:U[U.length-(GA||1)].first_column,last_column:U[U.length-1].last_column},iA&&(DA._$.range=[U[U.length-(GA||1)].range[0],U[U.length-1].range[1]]),fA=this.performAction.apply(DA,[T,W,j,QA.yy,gA[1],N,U].concat(K)),typeof fA<"u")return fA;GA&&(d=d.slice(0,-1*GA*2),N=N.slice(0,-1*GA),U=U.slice(0,-1*GA)),d.push(this.productions_[gA[1]][0]),N.push(DA.$),U.push(DA._$),cA=R[d[d.length-2]][d[d.length-1]],d.push(cA);break;case 3:return!0}}return!0}},a=function(){var Q={EOF:1,parseError:function(I,d){if(this.yy.parser)this.yy.parser.parseError(I,d);else throw new Error(I)},setInput:function(w,I){return this.yy=I||this.yy||{},this._input=w,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var w=this._input[0];this.yytext+=w,this.yyleng++,this.offset++,this.match+=w,this.matched+=w;var I=w.match(/(?:\r\n?|\n).*/g);return I?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),w},unput:function(w){var I=w.length,d=w.split(/(?:\r\n?|\n)/g);this._input=w+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-I),this.offset-=I;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),d.length-1&&(this.yylineno-=d.length-1);var N=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===D.length?this.yylloc.first_column:0)+D[D.length-d.length].length-d[0].length:this.yylloc.first_column-I},this.options.ranges&&(this.yylloc.range=[N[0],N[0]+this.yyleng-I]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(w){this.unput(this.match.slice(w))},pastInput:function(){var w=this.matched.substr(0,this.matched.length-this.match.length);return(w.length>20?"...":"")+w.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var w=this.match;return w.length<20&&(w+=this._input.substr(0,20-w.length)),(w.substr(0,20)+(w.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var w=this.pastInput(),I=new Array(w.length+1).join("-");return w+this.upcomingInput()+``+I+"^"},test_match:function(w,I){var d,D,N;if(this.options.backtrack_lexer&&(N={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(N.yylloc.range=this.yylloc.range.slice(0))),D=w[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+w[0].length},this.yytext+=w[0],this.match+=w[0],this.matches=w,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(w[0].length),this.matched+=w[0],d=this.performAction.call(this,this.yy,this,I,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),d)return d;if(this._backtrack){for(var U in N)this[U]=N[U];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var w,I,d,D;this._more||(this.yytext="",this.match="");for(var N=this._currentRules(),U=0;U I[0].length)){if(I=d,D=U,this.options.backtrack_lexer){if(w=this.test_match(d,N[U]),w!==!1)return w;if(this._backtrack){I=!1;continue}else return!1}else if(!this.options.flex)break}return I?(w=this.test_match(I,N[D]),w!==!1?w:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var I=this.next();return I||this.lex()},begin:function(I){this.conditionStack.push(I)},popState:function(){var I=this.conditionStack.length-1;return I>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(I){return I=this.conditionStack.length-1-Math.abs(I||0),I>=0?this.conditionStack[I]:"INITIAL"},pushState:function(I){this.begin(I)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(I,d,D,N){switch(D){case 0:return 4;case 1:return 9;case 2:return"space";case 3:return 10;case 4:return 6;case 5:return"TXT"}},rules:[/^(?:info\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:showInfo\b)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5],inclusive:!0}}};return Q}();s.lexer=a;function h(){this.yy={}}return h.prototype=s,s.Parser=h,new h}();y8A.parser=y8A;const qJt=y8A,yxe={info:!1};let gSA=yxe.info;const _Jt=t=>{gSA=t},$Jt=()=>gSA,Akt=()=>{gSA=yxe.info},ekt={clear:Akt,setInfo:_Jt,getInfo:$Jt},tkt=(t,i,s)=>{_A.debug(`rendering info diagram`+t);const a=uUe(i);B0(a,100,400,!0),a.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${s}`)},nkt={draw:tkt},ikt={parser:qJt,db:ekt,renderer:nkt},rkt=Object.freeze(Object.defineProperty({__proto__:null,diagram:ikt},Symbol.toStringTag,{value:"Module"}));var p8A=function(){var t=function(aA,iA,BA,rA){for(BA=BA||{},rA=aA.length;rA--;BA[aA[rA]]=iA);return BA},i=[1,4],s=[1,5],a=[1,6],h=[1,7],Q=[1,9],w=[1,11,13,15,17,19,20,26,27,28,29],I=[2,5],d=[1,6,11,13,15,17,19,20,26,27,28,29],D=[26,27,28],N=[2,8],U=[1,18],R=[1,19],T=[1,20],j=[1,21],W=[1,22],AA=[1,23],X=[1,28],K=[6,26,27,28,29],$={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement:10,txt:11,value:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32,$accept:0,$end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(iA,BA,rA,FA,gA,fA,DA){var eA=fA.length-1;switch(gA){case 4:FA.setShowData(!0);break;case 7:this.$=fA[eA-1];break;case 9:FA.addSection(fA[eA-1],FA.cleanupValue(fA[eA]));break;case 10:this.$=fA[eA].trim(),FA.setDiagramTitle(this.$);break;case 11:this.$=fA[eA].trim(),FA.setAccTitle(this.$);break;case 12:case 13:this.$=fA[eA].trim(),FA.setAccDescription(this.$);break;case 14:FA.addSection(fA[eA].substr(8)),this.$=fA[eA].substr(8);break;case 21:FA.parseDirective("%%{","open_directive");break;case 22:FA.parseDirective(fA[eA],"type_directive");break;case 23:fA[eA]=fA[eA].trim().replace(/'/g,'"'),FA.parseDirective(fA[eA],"arg_directive");break;case 24:FA.parseDirective("}%%","close_directive","pie");break}},table:[{3:1,4:2,5:3,6:i,21:8,26:s,27:a,28:h,29:Q},{1:[3]},{3:10,4:2,5:3,6:i,21:8,26:s,27:a,28:h,29:Q},{3:11,4:2,5:3,6:i,21:8,26:s,27:a,28:h,29:Q},t(w,I,{7:12,8:[1,13]}),t(d,[2,18]),t(d,[2,19]),t(d,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},t(D,N,{21:8,9:16,10:17,5:24,1:[2,3],11:U,13:R,15:T,17:j,19:W,20:AA,29:Q}),t(w,I,{7:25}),{23:26,24:[1,27],32:X},t([24,32],[2,22]),t(w,[2,6]),{4:29,26:s,27:a,28:h},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},t(D,[2,13]),t(D,[2,14]),t(D,[2,15]),t(D,N,{21:8,9:16,10:17,5:24,1:[2,4],11:U,13:R,15:T,17:j,19:W,20:AA,29:Q}),t(K,[2,16]),{25:34,31:[1,35]},t(K,[2,24]),t(w,[2,7]),t(D,[2,9]),t(D,[2,10]),t(D,[2,11]),t(D,[2,12]),{23:36,32:X},{32:[2,23]},t(K,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(iA,BA){if(BA.recoverable)this.trace(iA);else{var rA=new Error(iA);throw rA.hash=BA,rA}},parse:function(iA){var BA=this,rA=[0],FA=[],gA=[null],fA=[],DA=this.table,eA="",GA=0,cA=0,JA=2,_=1,SA=fA.slice.call(arguments,1),jA=Object.create(this.lexer),dA={yy:{}};for(var kA in this.yy)Object.prototype.hasOwnProperty.call(this.yy,kA)&&(dA.yy[kA]=this.yy[kA]);jA.setInput(iA,dA.yy),dA.yy.lexer=jA,dA.yy.parser=this,typeof jA.yylloc>"u"&&(jA.yylloc={});var vA=jA.yylloc;fA.push(vA);var Fe=jA.options&&jA.options.ranges;typeof dA.yy.parseError=="function"?this.parseError=dA.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function at(){var ZA;return ZA=FA.pop()||jA.lex()||_,typeof ZA!="number"&&(ZA instanceof Array&&(FA=ZA,ZA=FA.pop()),ZA=BA.symbols_[ZA]||ZA),ZA}for(var fe,mt,be,ie,ye={},Le,HA,WA,XA;;){if(mt=rA[rA.length-1],this.defaultActions[mt]?be=this.defaultActions[mt]:((fe===null||typeof fe>"u")&&(fe=at()),be=DA[mt]&&DA[mt][fe]),typeof be>"u"||!be.length||!be[0]){var ce="";XA=[];for(Le in DA[mt])this.terminals_[Le]&&Le>JA&&XA.push("'"+this.terminals_[Le]+"'");jA.showPosition?ce="Parse error on line "+(GA+1)+`:`+jA.showPosition()+`Expecting `+XA.join(", ")+", got '"+(this.terminals_[fe]||fe)+"'":ce="Parse error on line "+(GA+1)+": Unexpected "+(fe==_?"end of input":"'"+(this.terminals_[fe]||fe)+"'"),this.parseError(ce,{text:jA.match,token:this.terminals_[fe]||fe,line:jA.yylineno,loc:vA,expected:XA})}if(be[0]instanceof Array&&be.length>1)throw new Error("Parse Error: multiple actions possible at state: "+mt+", token: "+fe);switch(be[0]){case 1:rA.push(fe),gA.push(jA.yytext),fA.push(jA.yylloc),rA.push(be[1]),fe=null,cA=jA.yyleng,eA=jA.yytext,GA=jA.yylineno,vA=jA.yylloc;break;case 2:if(HA=this.productions_[be[1]][1],ye.$=gA[gA.length-HA],ye._$={first_line:fA[fA.length-(HA||1)].first_line,last_line:fA[fA.length-1].last_line,first_column:fA[fA.length-(HA||1)].first_column,last_column:fA[fA.length-1].last_column},Fe&&(ye._$.range=[fA[fA.length-(HA||1)].range[0],fA[fA.length-1].range[1]]),ie=this.performAction.apply(ye,[eA,cA,GA,dA.yy,be[1],gA,fA].concat(SA)),typeof ie<"u")return ie;HA&&(rA=rA.slice(0,-1*HA*2),gA=gA.slice(0,-1*HA),fA=fA.slice(0,-1*HA)),rA.push(this.productions_[be[1]][0]),gA.push(ye.$),fA.push(ye._$),WA=DA[rA[rA.length-2]][rA[rA.length-1]],rA.push(WA);break;case 3:return!0}}return!0}},QA=function(){var aA={EOF:1,parseError:function(BA,rA){if(this.yy.parser)this.yy.parser.parseError(BA,rA);else throw new Error(BA)},setInput:function(iA,BA){return this.yy=BA||this.yy||{},this._input=iA,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},input:function(){var iA=this._input[0];this.yytext+=iA,this.yyleng++,this.offset++,this.match+=iA,this.matched+=iA;var BA=iA.match(/(?:\r\n?|\n).*/g);return BA?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),iA},unput:function(iA){var BA=iA.length,rA=iA.split(/(?:\r\n?|\n)/g);this._input=iA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-BA),this.offset-=BA;var FA=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),rA.length-1&&(this.yylineno-=rA.length-1);var gA=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:rA?(rA.length===FA.length?this.yylloc.first_column:0)+FA[FA.length-rA.length].length-rA[0].length:this.yylloc.first_column-BA},this.options.ranges&&(this.yylloc.range=[gA[0],gA[0]+this.yyleng-BA]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(iA){this.unput(this.match.slice(iA))},pastInput:function(){var iA=this.matched.substr(0,this.matched.length-this.match.length);return(iA.length>20?"...":"")+iA.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var iA=this.match;return iA.length<20&&(iA+=this._input.substr(0,20-iA.length)),(iA.substr(0,20)+(iA.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var iA=this.pastInput(),BA=new Array(iA.length+1).join("-");return iA+this.upcomingInput()+``+BA+"^"},test_match:function(iA,BA){var rA,FA,gA;if(this.options.backtrack_lexer&&(gA={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&&(gA.yylloc.range=this.yylloc.range.slice(0))),FA=iA[0].match(/(?:\r\n?|\n).*/g),FA&&(this.yylineno+=FA.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:FA?FA[FA.length-1].length-FA[FA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+iA[0].length},this.yytext+=iA[0],this.match+=iA[0],this.matches=iA,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(iA[0].length),this.matched+=iA[0],rA=this.performAction.call(this,this.yy,this,BA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),rA)return rA;if(this._backtrack){for(var fA in gA)this[fA]=gA[fA];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var iA,BA,rA,FA;this._more||(this.yytext="",this.match="");for(var gA=this._currentRules(),fA=0;fA BA[0].length)){if(BA=rA,FA=fA,this.options.backtrack_lexer){if(iA=this.test_match(rA,gA[fA]),iA!==!1)return iA;if(this._backtrack){BA=!1;continue}else return!1}else if(!this.options.flex)break}return BA?(iA=this.test_match(BA,gA[FA]),iA!==!1?iA:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var BA=this.next();return BA||this.lex()},begin:function(BA){this.conditionStack.push(BA)},popState:function(){var BA=this.conditionStack.length-1;return BA>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(BA){return BA=this.conditionStack.length-1-Math.abs(BA||0),BA>=0?this.conditionStack[BA]:"INITIAL"},pushState:function(BA){this.begin(BA)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(BA,rA,FA,gA){switch(FA){case 0:return this.begin("open_directive"),29;case 1:return this.begin("type_directive"),30;case 2:return this.popState(),this.begin("arg_directive"),24;case 3:return this.popState(),this.popState(),32;case 4:return 31;case 5:break;case 6:break;case 7:return 26;case 8:break;case 9:break;case 10:return this.begin("title"),13;case 11:return this.popState(),"title_value";case 12:return this.begin("acc_title"),15;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),17;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:this.begin("string");break;case 20:this.popState();break;case 21:return"txt";case 22:return 6;case 23:return 8;case 24:return"value";case 25:return 28}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[\s]+)/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,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:pie\b)/i,/^(?:showData\b)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[11],inclusive:!1},string:{rules:[20,21],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,12,14,16,19,22,23,24,25],inclusive:!0}}};return aA}();$.lexer=QA;function hA(){this.yy={}}return hA.prototype=$,$.Parser=hA,new hA}();p8A.parser=p8A;const ckt=p8A;let B1A={},hSA=!1;const skt=function(t,i,s){zu.parseDirective(this,t,i,s)},okt=function(t,i){t=Yi.sanitizeText(t,Je()),B1A[t]===void 0&&(B1A[t]=i,_A.debug("Added new section :",t))},akt=()=>B1A,Bkt=function(t){hSA=t},gkt=function(){return hSA},hkt=function(t){return t.substring(0,1)===":"&&(t=t.substring(1).trim()),Number(t.trim())},lkt=function(){B1A={},hSA=!1,g0()},ukt={parseDirective:skt,getConfig:()=>Je().pie,addSection:okt,getSections:akt,cleanupValue:hkt,clear:lkt,setAccTitle:A1,getAccTitle:h0,setDiagramTitle:EI,getDiagramTitle:zE,setShowData:Bkt,getShowData:gkt,getAccDescription:u0,setAccDescription:l0},wkt=t=>` .pieCircle{ stroke: ${t.pieStrokeColor}; stroke-width : ${t.pieStrokeWidth}; opacity : ${t.pieOpacity}; } .pieOuterCircle{ stroke: ${t.pieOuterStrokeColor}; stroke-width: ${t.pieOuterStrokeWidth}; fill: none; } .pieTitleText { text-anchor: middle; font-size: ${t.pieTitleTextSize}; fill: ${t.pieTitleTextColor}; font-family: ${t.fontFamily}; } .slice { font-family: ${t.fontFamily}; fill: ${t.pieSectionTextColor}; font-size:${t.pieSectionTextSize}; // fill: white; } .legend text { fill: ${t.pieLegendTextColor}; font-family: ${t.fontFamily}; font-size: ${t.pieLegendTextSize}; }`,Qkt=wkt;let TD=Je(),bp;const OV=450,Ekt=(t,i,s,a)=>{var h;try{TD=Je(),_A.debug(`Rendering info diagram`+t);const QA=Je().securityLevel;let hA;QA==="sandbox"&&(hA=Nn("#i"+i));const aA=Nn(QA==="sandbox"?hA.nodes()[0].contentDocument.body:"body"),BA=(QA==="sandbox"?hA.nodes()[0].contentDocument:document).getElementById(i);bp=BA.parentElement.offsetWidth,bp===void 0&&(bp=1200),TD.useWidth!==void 0&&(bp=TD.useWidth),TD.pie.useWidth!==void 0&&(bp=TD.pie.useWidth);const rA=aA.select("#"+i);B0(rA,OV,bp,TD.pie.useMaxWidth),BA.setAttribute("viewBox","0 0 "+bp+" "+OV);var Q=40,w=18,I=4,d=Math.min(bp,OV)/2-Q,D=rA.append("g").attr("transform","translate("+bp/2+","+OV/2+")"),N=a.db.getSections(),U=0;Object.keys(N).forEach(function(DA){U+=N[DA]});const FA=TD.themeVariables;var R=[FA.pie1,FA.pie2,FA.pie3,FA.pie4,FA.pie5,FA.pie6,FA.pie7,FA.pie8,FA.pie9,FA.pie10,FA.pie11,FA.pie12];const gA=((h=TD.pie)==null?void 0:h.textPosition)??.75;let[fA]=A5(FA.pieOuterStrokeWidth);fA??(fA=2);var T=tjA().range(R),j=Object.entries(N).map(function(DA,eA){return{order:eA,name:DA[0],value:DA[1]}}),W=D0t().value(function(DA){return DA.value}).sort(function(DA,eA){return DA.order-eA.order}),AA=W(j),X=FS().innerRadius(0).outerRadius(d),K=FS().innerRadius(d*gA).outerRadius(d*gA);D.append("circle").attr("cx",0).attr("cy",0).attr("r",d+fA/2).attr("class","pieOuterCircle"),D.selectAll("mySlices").data(AA).enter().append("path").attr("d",X).attr("fill",function(DA){return T(DA.data.name)}).attr("class","pieCircle"),D.selectAll("mySlices").data(AA).enter().append("text").text(function(DA){return(DA.data.value/U*100).toFixed(0)+"%"}).attr("transform",function(DA){return"translate("+K.centroid(DA)+")"}).style("text-anchor","middle").attr("class","slice"),D.append("text").text(a.db.getDiagramTitle()).attr("x",0).attr("y",-(OV-50)/2).attr("class","pieTitleText");var $=D.selectAll(".legend").data(T.domain()).enter().append("g").attr("class","legend").attr("transform",function(DA,eA){const GA=w+I,cA=GA*T.domain().length/2,JA=12*w,_=eA*GA-cA;return"translate("+JA+","+_+")"});$.append("rect").attr("width",w).attr("height",w).style("fill",T).style("stroke",T),$.data(AA).append("text").attr("x",w+I).attr("y",w-I).text(function(DA){return a.db.getShowData()||TD.showData||TD.pie.showData?DA.data.name+" ["+DA.data.value+"]":DA.data.name})}catch(QA){_A.error("Error while rendering info diagram"),_A.error(QA)}},fkt={draw:Ekt},Ikt={parser:ckt,db:ukt,renderer:fkt,styles:Qkt},Ckt=Object.freeze(Object.defineProperty({__proto__:null,diagram:Ikt},Symbol.toStringTag,{value:"Module"}));var N8A=function(){var t=function(be,ie,ye,Le){for(ye=ye||{},Le=be.length;Le--;ye[be[Le]]=ie);return ye},i=[1,3],s=[1,5],a=[1,6],h=[1,7],Q=[1,8],w=[1,10],I=[1,5,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],d=[1,5,7,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],D=[38,39,40],N=[2,8],U=[1,19],R=[1,23],T=[1,24],j=[1,25],W=[1,26],AA=[1,27],X=[1,29],K=[1,30],$=[1,31],QA=[1,32],hA=[1,33],aA=[1,34],iA=[1,37],BA=[1,38],rA=[1,39],FA=[1,40],gA=[1,41],fA=[1,42],DA=[1,43],eA=[1,44],GA=[1,45],cA=[1,46],JA=[1,47],_=[1,48],SA=[1,49],jA=[1,52],dA=[1,67],kA=[1,68],vA=[5,23,27,38,39,40,50,51,52,53,54,55,56,57,58,59,60,61],Fe=[5,7,38,39,40,41],at={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,directive:6,QUADRANT:7,document:8,line:9,statement:10,axisDetails:11,quadrantDetails:12,points:13,title:14,title_value:15,acc_title:16,acc_title_value:17,acc_descr:18,acc_descr_value:19,acc_descr_multiline_value:20,section:21,text:22,point_start:23,point_x:24,point_y:25,"X-AXIS":26,"AXIS-TEXT-DELIMITER":27,"Y-AXIS":28,QUADRANT_1:29,QUADRANT_2:30,QUADRANT_3:31,QUADRANT_4:32,openDirective:33,typeDirective:34,closeDirective:35,":":36,argDirective:37,NEWLINE:38,SEMI:39,EOF:40,open_directive:41,type_directive:42,arg_directive:43,close_directive:44,alphaNumToken:45,textNoTagsToken:46,STR:47,MD_STR:48,alphaNum:49,PUNCTUATION:50,AMP:51,NUM:52,ALPHA:53,COMMA:54,PLUS:55,EQUALS:56,MULT:57,DOT:58,BRKT:59,UNDERSCORE:60,MINUS:61,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",7:"QUADRANT",14:"title",15:"title_value",16:"acc_title",17:"acc_title_value",18:"acc_descr",19:"acc_descr_value",20:"acc_descr_multiline_value",21:"section",23:"point_start",24:"point_x",25:"point_y",26:"X-AXIS",27:"AXIS-TEXT-DELIMITER",28:"Y-AXIS",29:"QUADRANT_1",30:"QUADRANT_2",31:"QUADRANT_3",32:"QUADRANT_4",36:":",38:"NEWLINE",39:"SEMI",40:"EOF",41:"open_directive",42:"type_directive",43:"arg_directive",44:"close_directive",47:"STR",48:"MD_STR",50:"PUNCTUATION",51:"AMP",52:"NUM",53:"ALPHA",54:"COMMA",55:"PLUS",56:"EQUALS",57:"MULT",58:"DOT",59:"BRKT",60:"UNDERSCORE",61:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[10,0],[10,2],[10,1],[10,1],[10,1],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[13,4],[11,4],[11,3],[11,2],[11,4],[11,3],[11,2],[12,2],[12,2],[12,2],[12,2],[6,3],[6,5],[4,1],[4,1],[4,1],[33,1],[34,1],[37,1],[35,1],[22,1],[22,2],[22,1],[22,1],[49,1],[49,2],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[46,1],[46,1],[46,1]],performAction:function(ie,ye,Le,HA,WA,XA,ce){var ZA=XA.length-1;switch(WA){case 13:this.$=XA[ZA].trim(),HA.setDiagramTitle(this.$);break;case 14:this.$=XA[ZA].trim(),HA.setAccTitle(this.$);break;case 15:case 16:this.$=XA[ZA].trim(),HA.setAccDescription(this.$);break;case 17:HA.addSection(XA[ZA].substr(8)),this.$=XA[ZA].substr(8);break;case 19:HA.addPoint(XA[ZA-3],XA[ZA-1],XA[ZA]);break;case 20:HA.setXAxisLeftText(XA[ZA-2]),HA.setXAxisRightText(XA[ZA]);break;case 21:XA[ZA-1].text+=" ⟶ ",HA.setXAxisLeftText(XA[ZA-1]);break;case 22:HA.setXAxisLeftText(XA[ZA]);break;case 23:HA.setYAxisBottomText(XA[ZA-2]),HA.setYAxisTopText(XA[ZA]);break;case 24:XA[ZA-1].text+=" ⟶ ",HA.setYAxisBottomText(XA[ZA-1]);break;case 25:HA.setYAxisBottomText(XA[ZA]);break;case 26:HA.setQuadrant1Text(XA[ZA]);break;case 27:HA.setQuadrant2Text(XA[ZA]);break;case 28:HA.setQuadrant3Text(XA[ZA]);break;case 29:HA.setQuadrant4Text(XA[ZA]);break;case 35:HA.parseDirective("%%{","open_directive");break;case 36:HA.parseDirective(XA[ZA],"type_directive");break;case 37:XA[ZA]=XA[ZA].trim().replace(/'/g,'"'),HA.parseDirective(XA[ZA],"arg_directive");break;case 38:HA.parseDirective("}%%","close_directive","quadrantChart");break;case 39:this.$={text:XA[ZA],type:"text"};break;case 40:this.$={text:XA[ZA-1].text+""+XA[ZA],type:XA[ZA-1].type};break;case 41:this.$={text:XA[ZA],type:"text"};break;case 42:this.$={text:XA[ZA],type:"markdown"};break;case 43:this.$=XA[ZA];break;case 44:this.$=XA[ZA-1]+""+XA[ZA];break}},table:[{3:1,4:2,5:i,6:4,7:s,33:9,38:a,39:h,40:Q,41:w},{1:[3]},{3:11,4:2,5:i,6:4,7:s,33:9,38:a,39:h,40:Q,41:w},{3:12,4:2,5:i,6:4,7:s,33:9,38:a,39:h,40:Q,41:w},{3:13,4:2,5:i,6:4,7:s,33:9,38:a,39:h,40:Q,41:w},t(I,[2,5],{8:14}),t(d,[2,32]),t(d,[2,33]),t(d,[2,34]),{34:15,42:[1,16]},{42:[2,35]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(D,N,{33:9,9:17,10:18,11:20,12:21,13:22,6:28,22:35,45:36,1:[2,4],5:U,14:R,16:T,18:j,20:W,21:AA,26:X,28:K,29:$,30:QA,31:hA,32:aA,41:w,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA}),{35:50,36:[1,51],44:jA},t([36,44],[2,36]),t(I,[2,6]),{4:53,38:a,39:h,40:Q},t(D,N,{33:9,11:20,12:21,13:22,6:28,22:35,45:36,10:54,5:U,14:R,16:T,18:j,20:W,21:AA,26:X,28:K,29:$,30:QA,31:hA,32:aA,41:w,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA}),t(D,[2,10]),t(D,[2,11]),t(D,[2,12]),{15:[1,55]},{17:[1,56]},{19:[1,57]},t(D,[2,16]),t(D,[2,17]),t(D,[2,18]),{22:58,45:36,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA},{22:59,45:36,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA},{22:60,45:36,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA},{22:61,45:36,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA},{22:62,45:36,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA},{22:63,45:36,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA},{5:dA,23:[1,64],45:66,46:65,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA,61:kA},t(vA,[2,39]),t(vA,[2,41]),t(vA,[2,42]),t(vA,[2,45]),t(vA,[2,46]),t(vA,[2,47]),t(vA,[2,48]),t(vA,[2,49]),t(vA,[2,50]),t(vA,[2,51]),t(vA,[2,52]),t(vA,[2,53]),t(vA,[2,54]),t(vA,[2,55]),t(Fe,[2,30]),{37:69,43:[1,70]},t(Fe,[2,38]),t(I,[2,7]),t(D,[2,9]),t(D,[2,13]),t(D,[2,14]),t(D,[2,15]),t(D,[2,22],{46:65,45:66,5:dA,27:[1,71],50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA,61:kA}),t(D,[2,25],{46:65,45:66,5:dA,27:[1,72],50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA,61:kA}),t(D,[2,26],{46:65,45:66,5:dA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA,61:kA}),t(D,[2,27],{46:65,45:66,5:dA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA,61:kA}),t(D,[2,28],{46:65,45:66,5:dA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA,61:kA}),t(D,[2,29],{46:65,45:66,5:dA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA,61:kA}),{24:[1,73]},t(vA,[2,40]),t(vA,[2,56]),t(vA,[2,57]),t(vA,[2,58]),{35:74,44:jA},{44:[2,37]},t(D,[2,21],{45:36,22:75,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA}),t(D,[2,24],{45:36,22:76,47:iA,48:BA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA}),{25:[1,77]},t(Fe,[2,31]),t(D,[2,20],{46:65,45:66,5:dA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA,61:kA}),t(D,[2,23],{46:65,45:66,5:dA,50:rA,51:FA,52:gA,53:fA,54:DA,55:eA,56:GA,57:cA,58:JA,59:_,60:SA,61:kA}),t(D,[2,19])],defaultActions:{10:[2,35],11:[2,1],12:[2,2],13:[2,3],70:[2,37]},parseError:function(ie,ye){if(ye.recoverable)this.trace(ie);else{var Le=new Error(ie);throw Le.hash=ye,Le}},parse:function(ie){var ye=this,Le=[0],HA=[],WA=[null],XA=[],ce=this.table,ZA="",pe=0,zA=0,Ft=2,RA=1,Et=XA.slice.call(arguments,1),$A=Object.create(this.lexer),Ot={yy:{}};for(var zt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,zt)&&(Ot.yy[zt]=this.yy[zt]);$A.setInput(ie,Ot.yy),Ot.yy.lexer=$A,Ot.yy.parser=this,typeof $A.yylloc>"u"&&($A.yylloc={});var Gt=$A.yylloc;XA.push(Gt);var sn=$A.options&&$A.options.ranges;typeof Ot.yy.parseError=="function"?this.parseError=Ot.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ke(){var Wi;return Wi=HA.pop()||$A.lex()||RA,typeof Wi!="number"&&(Wi instanceof Array&&(HA=Wi,Wi=HA.pop()),Wi=ye.symbols_[Wi]||Wi),Wi}for(var lt,gn,Rt,ln,hi={},Oi,ki,mr,wn;;){if(gn=Le[Le.length-1],this.defaultActions[gn]?Rt=this.defaultActions[gn]:((lt===null||typeof lt>"u")&&(lt=Ke()),Rt=ce[gn]&&ce[gn][lt]),typeof Rt>"u"||!Rt.length||!Rt[0]){var Xn="";wn=[];for(Oi in ce[gn])this.terminals_[Oi]&&Oi>Ft&&wn.push("'"+this.terminals_[Oi]+"'");$A.showPosition?Xn="Parse error on line "+(pe+1)+`:`+$A.showPosition()+`Expecting `+wn.join(", ")+", got '"+(this.terminals_[lt]||lt)+"'":Xn="Parse error on line "+(pe+1)+": Unexpected "+(lt==RA?"end of input":"'"+(this.terminals_[lt]||lt)+"'"),this.parseError(Xn,{text:$A.match,token:this.terminals_[lt]||lt,line:$A.yylineno,loc:Gt,expected:wn})}if(Rt[0]instanceof Array&&Rt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+gn+", token: "+lt);switch(Rt[0]){case 1:Le.push(lt),WA.push($A.yytext),XA.push($A.yylloc),Le.push(Rt[1]),lt=null,zA=$A.yyleng,ZA=$A.yytext,pe=$A.yylineno,Gt=$A.yylloc;break;case 2:if(ki=this.productions_[Rt[1]][1],hi.$=WA[WA.length-ki],hi._$={first_line:XA[XA.length-(ki||1)].first_line,last_line:XA[XA.length-1].last_line,first_column:XA[XA.length-(ki||1)].first_column,last_column:XA[XA.length-1].last_column},sn&&(hi._$.range=[XA[XA.length-(ki||1)].range[0],XA[XA.length-1].range[1]]),ln=this.performAction.apply(hi,[ZA,zA,pe,Ot.yy,Rt[1],WA,XA].concat(Et)),typeof ln<"u")return ln;ki&&(Le=Le.slice(0,-1*ki*2),WA=WA.slice(0,-1*ki),XA=XA.slice(0,-1*ki)),Le.push(this.productions_[Rt[1]][0]),WA.push(hi.$),XA.push(hi._$),mr=ce[Le[Le.length-2]][Le[Le.length-1]],Le.push(mr);break;case 3:return!0}}return!0}},fe=function(){var be={EOF:1,parseError:function(ye,Le){if(this.yy.parser)this.yy.parser.parseError(ye,Le);else throw new Error(ye)},setInput:function(ie,ye){return this.yy=ye||this.yy||{},this._input=ie,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},input:function(){var ie=this._input[0];this.yytext+=ie,this.yyleng++,this.offset++,this.match+=ie,this.matched+=ie;var ye=ie.match(/(?:\r\n?|\n).*/g);return ye?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ie},unput:function(ie){var ye=ie.length,Le=ie.split(/(?:\r\n?|\n)/g);this._input=ie+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ye),this.offset-=ye;var HA=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),Le.length-1&&(this.yylineno-=Le.length-1);var WA=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:Le?(Le.length===HA.length?this.yylloc.first_column:0)+HA[HA.length-Le.length].length-Le[0].length:this.yylloc.first_column-ye},this.options.ranges&&(this.yylloc.range=[WA[0],WA[0]+this.yyleng-ye]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(ie){this.unput(this.match.slice(ie))},pastInput:function(){var ie=this.matched.substr(0,this.matched.length-this.match.length);return(ie.length>20?"...":"")+ie.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ie=this.match;return ie.length<20&&(ie+=this._input.substr(0,20-ie.length)),(ie.substr(0,20)+(ie.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ie=this.pastInput(),ye=new Array(ie.length+1).join("-");return ie+this.upcomingInput()+``+ye+"^"},test_match:function(ie,ye){var Le,HA,WA;if(this.options.backtrack_lexer&&(WA={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&&(WA.yylloc.range=this.yylloc.range.slice(0))),HA=ie[0].match(/(?:\r\n?|\n).*/g),HA&&(this.yylineno+=HA.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:HA?HA[HA.length-1].length-HA[HA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ie[0].length},this.yytext+=ie[0],this.match+=ie[0],this.matches=ie,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(ie[0].length),this.matched+=ie[0],Le=this.performAction.call(this,this.yy,this,ye,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Le)return Le;if(this._backtrack){for(var XA in WA)this[XA]=WA[XA];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ie,ye,Le,HA;this._more||(this.yytext="",this.match="");for(var WA=this._currentRules(),XA=0;XA ye[0].length)){if(ye=Le,HA=XA,this.options.backtrack_lexer){if(ie=this.test_match(Le,WA[XA]),ie!==!1)return ie;if(this._backtrack){ye=!1;continue}else return!1}else if(!this.options.flex)break}return ye?(ie=this.test_match(ye,WA[HA]),ie!==!1?ie:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ye=this.next();return ye||this.lex()},begin:function(ye){this.conditionStack.push(ye)},popState:function(){var ye=this.conditionStack.length-1;return ye>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ye){return ye=this.conditionStack.length-1-Math.abs(ye||0),ye>=0?this.conditionStack[ye]:"INITIAL"},pushState:function(ye){this.begin(ye)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ye,Le,HA,WA){switch(HA){case 0:return this.begin("open_directive"),41;case 1:return this.begin("type_directive"),42;case 2:return this.popState(),this.begin("arg_directive"),36;case 3:return this.popState(),this.popState(),44;case 4:return 43;case 5:break;case 6:break;case 7:return 38;case 8:break;case 9:return this.begin("title"),14;case 10:return this.popState(),"title_value";case 11:return this.begin("acc_title"),16;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),18;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 26;case 19:return 28;case 20:return 27;case 21:return 29;case 22:return 30;case 23:return 31;case 24:return 32;case 25:this.begin("md_string");break;case 26:return"MD_STR";case 27:this.popState();break;case 28:this.begin("string");break;case 29:this.popState();break;case 30:return"STR";case 31:return this.begin("point_start"),23;case 32:return this.begin("point_x"),24;case 33:this.popState();break;case 34:this.popState(),this.begin("point_y");break;case 35:return this.popState(),25;case 36:return 7;case 37:return 53;case 38:return"COLON";case 39:return 55;case 40:return 54;case 41:return 56;case 42:return 56;case 43:return 57;case 44:return 59;case 45:return 60;case 46:return 58;case 47:return 51;case 48:return 61;case 49:return 52;case 50:return 5;case 51:return 39;case 52:return 50;case 53:return 40}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\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,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/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:{point_y:{rules:[35],inclusive:!1},point_x:{rules:[34],inclusive:!1},point_start:{rules:[32,33],inclusive:!1},acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[10],inclusive:!1},md_string:{rules:[26,27],inclusive:!1},string:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,11,13,15,18,19,20,21,22,23,24,25,28,31,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53],inclusive:!0}}};return be}();at.lexer=fe;function mt(){this.yy={}}return mt.prototype=at,at.Parser=mt,new mt}();N8A.parser=N8A;const dkt=N8A,V1=fme();class Fkt{constructor(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){var i,s,a,h,Q,w,I,d,D,N,U,R,T,j,W,AA,X,K;return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:((i=Ru.quadrantChart)==null?void 0:i.chartWidth)||500,chartWidth:((s=Ru.quadrantChart)==null?void 0:s.chartHeight)||500,titlePadding:((a=Ru.quadrantChart)==null?void 0:a.titlePadding)||10,titleFontSize:((h=Ru.quadrantChart)==null?void 0:h.titleFontSize)||20,quadrantPadding:((Q=Ru.quadrantChart)==null?void 0:Q.quadrantPadding)||5,xAxisLabelPadding:((w=Ru.quadrantChart)==null?void 0:w.xAxisLabelPadding)||5,yAxisLabelPadding:((I=Ru.quadrantChart)==null?void 0:I.yAxisLabelPadding)||5,xAxisLabelFontSize:((d=Ru.quadrantChart)==null?void 0:d.xAxisLabelFontSize)||16,yAxisLabelFontSize:((D=Ru.quadrantChart)==null?void 0:D.yAxisLabelFontSize)||16,quadrantLabelFontSize:((N=Ru.quadrantChart)==null?void 0:N.quadrantLabelFontSize)||16,quadrantTextTopPadding:((U=Ru.quadrantChart)==null?void 0:U.quadrantTextTopPadding)||5,pointTextPadding:((R=Ru.quadrantChart)==null?void 0:R.pointTextPadding)||5,pointLabelFontSize:((T=Ru.quadrantChart)==null?void 0:T.pointLabelFontSize)||12,pointRadius:((j=Ru.quadrantChart)==null?void 0:j.pointRadius)||5,xAxisPosition:((W=Ru.quadrantChart)==null?void 0:W.xAxisPosition)||"top",yAxisPosition:((AA=Ru.quadrantChart)==null?void 0:AA.yAxisPosition)||"left",quadrantInternalBorderStrokeWidth:((X=Ru.quadrantChart)==null?void 0:X.quadrantInternalBorderStrokeWidth)||1,quadrantExternalBorderStrokeWidth:((K=Ru.quadrantChart)==null?void 0:K.quadrantExternalBorderStrokeWidth)||2}}getDefaultThemeConfig(){return{quadrant1Fill:V1.quadrant1Fill,quadrant2Fill:V1.quadrant2Fill,quadrant3Fill:V1.quadrant3Fill,quadrant4Fill:V1.quadrant4Fill,quadrant1TextFill:V1.quadrant1TextFill,quadrant2TextFill:V1.quadrant2TextFill,quadrant3TextFill:V1.quadrant3TextFill,quadrant4TextFill:V1.quadrant4TextFill,quadrantPointFill:V1.quadrantPointFill,quadrantPointTextFill:V1.quadrantPointTextFill,quadrantXAxisTextFill:V1.quadrantXAxisTextFill,quadrantYAxisTextFill:V1.quadrantYAxisTextFill,quadrantTitleFill:V1.quadrantTitleFill,quadrantInternalBorderStrokeFill:V1.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:V1.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),_A.info("clear called")}setData(i){this.data={...this.data,...i}}addPoints(i){this.data.points=[...i,...this.data.points]}setConfig(i){_A.trace("setConfig called with: ",i),this.config={...this.config,...i}}setThemeConfig(i){_A.trace("setThemeConfig called with: ",i),this.themeConfig={...this.themeConfig,...i}}calculateSpace(i,s,a,h){const Q=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,w={top:i==="top"&&s?Q:0,bottom:i==="bottom"&&s?Q:0},I=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,d={left:this.config.yAxisPosition==="left"&&a?I:0,right:this.config.yAxisPosition==="right"&&a?I:0},D=this.config.titleFontSize+this.config.titlePadding*2,N={top:h?D:0},U=this.config.quadrantPadding+d.left,R=this.config.quadrantPadding+w.top+N.top,T=this.config.chartWidth-this.config.quadrantPadding*2-d.left-d.right,j=this.config.chartHeight-this.config.quadrantPadding*2-w.top-w.bottom-N.top,W=T/2,AA=j/2;return{xAxisSpace:w,yAxisSpace:d,titleSpace:N,quadrantSpace:{quadrantLeft:U,quadrantTop:R,quadrantWidth:T,quadrantHalfWidth:W,quadrantHeight:j,quadrantHalfHeight:AA}}}getAxisLabels(i,s,a,h){const{quadrantSpace:Q,titleSpace:w}=h,{quadrantHalfHeight:I,quadrantHeight:d,quadrantLeft:D,quadrantHalfWidth:N,quadrantTop:U,quadrantWidth:R}=Q,T=this.data.points.length===0,j=[];return this.data.xAxisLeftText&&s&&j.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:D+(T?N/2:0),y:i==="top"?this.config.xAxisLabelPadding+w.top:this.config.xAxisLabelPadding+U+d+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:T?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&s&&j.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:D+N+(T?N/2:0),y:i==="top"?this.config.xAxisLabelPadding+w.top:this.config.xAxisLabelPadding+U+d+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:T?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&a&&j.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+D+R+this.config.quadrantPadding,y:U+d-(T?I/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:T?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&a&&j.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+D+R+this.config.quadrantPadding,y:U+I-(T?I/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:T?"center":"left",horizontalPos:"top",rotation:-90}),j}getQuadrants(i){const{quadrantSpace:s}=i,{quadrantHalfHeight:a,quadrantLeft:h,quadrantHalfWidth:Q,quadrantTop:w}=s,I=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:h+Q,y:w,width:Q,height:a,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:h,y:w,width:Q,height:a,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:h,y:w+a,width:Q,height:a,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:h+Q,y:w+a,width:Q,height:a,fill:this.themeConfig.quadrant4Fill}];for(const d of I)d.text.x=d.x+d.width/2,this.data.points.length===0?(d.text.y=d.y+d.height/2,d.text.horizontalPos="middle"):(d.text.y=d.y+this.config.quadrantTextTopPadding,d.text.horizontalPos="top");return I}getQuadrantPoints(i){const{quadrantSpace:s}=i,{quadrantHeight:a,quadrantLeft:h,quadrantTop:Q,quadrantWidth:w}=s,I=NQA().domain([0,1]).range([h,w+h]),d=NQA().domain([0,1]).range([a+Q,Q]);return this.data.points.map(N=>({x:I(N.x),y:d(N.y),fill:this.themeConfig.quadrantPointFill,radius:this.config.pointRadius,text:{text:N.text,fill:this.themeConfig.quadrantPointTextFill,x:I(N.x),y:d(N.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0}}))}getBorders(i){const s=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:a}=i,{quadrantHalfHeight:h,quadrantHeight:Q,quadrantLeft:w,quadrantHalfWidth:I,quadrantTop:d,quadrantWidth:D}=a;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:w-s,y1:d,x2:w+D+s,y2:d},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:w+D,y1:d+s,x2:w+D,y2:d+Q-s},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:w-s,y1:d+Q,x2:w+D+s,y2:d+Q},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:w,y1:d+s,x2:w,y2:d+Q-s},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:w+I,y1:d+s,x2:w+I,y2:d+Q-s},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:w+s,y1:d+h,x2:w+D-s,y2:d+h}]}getTitle(i){if(i)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(){const i=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),s=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),a=this.config.showTitle&&!!this.data.titleText,h=this.data.points.length>0?"bottom":this.config.xAxisPosition,Q=this.calculateSpace(h,i,s,a);return{points:this.getQuadrantPoints(Q),quadrants:this.getQuadrants(Q),axisLabels:this.getAxisLabels(h,i,s,Q),borderLines:this.getBorders(Q),title:this.getTitle(a)}}}const Mkt=Je();function l4(t){return o0(t.trim(),Mkt)}const qQ=new Fkt;function Ykt(t){qQ.setData({quadrant1Text:l4(t.text)})}function Dkt(t){qQ.setData({quadrant2Text:l4(t.text)})}function ykt(t){qQ.setData({quadrant3Text:l4(t.text)})}function pkt(t){qQ.setData({quadrant4Text:l4(t.text)})}function Nkt(t){qQ.setData({xAxisLeftText:l4(t.text)})}function mkt(t){qQ.setData({xAxisRightText:l4(t.text)})}function Ukt(t){qQ.setData({yAxisTopText:l4(t.text)})}function bkt(t){qQ.setData({yAxisBottomText:l4(t.text)})}function Hkt(t,i,s){qQ.addPoints([{x:i,y:s,text:l4(t.text)}])}function xkt(t){qQ.setConfig({chartWidth:t})}function Gkt(t){qQ.setConfig({chartHeight:t})}function Jkt(){const t=Je(),{themeVariables:i,quadrantChart:s}=t;return s&&qQ.setConfig(s),qQ.setThemeConfig({quadrant1Fill:i.quadrant1Fill,quadrant2Fill:i.quadrant2Fill,quadrant3Fill:i.quadrant3Fill,quadrant4Fill:i.quadrant4Fill,quadrant1TextFill:i.quadrant1TextFill,quadrant2TextFill:i.quadrant2TextFill,quadrant3TextFill:i.quadrant3TextFill,quadrant4TextFill:i.quadrant4TextFill,quadrantPointFill:i.quadrantPointFill,quadrantPointTextFill:i.quadrantPointTextFill,quadrantXAxisTextFill:i.quadrantXAxisTextFill,quadrantYAxisTextFill:i.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:i.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:i.quadrantInternalBorderStrokeFill,quadrantTitleFill:i.quadrantTitleFill}),qQ.setData({titleText:zE()}),qQ.build()}const kkt=function(t,i,s){zu.parseDirective(this,t,i,s)},Rkt=function(){qQ.clear(),g0()},Tkt={setWidth:xkt,setHeight:Gkt,setQuadrant1Text:Ykt,setQuadrant2Text:Dkt,setQuadrant3Text:ykt,setQuadrant4Text:pkt,setXAxisLeftText:Nkt,setXAxisRightText:mkt,setYAxisTopText:Ukt,setYAxisBottomText:bkt,addPoint:Hkt,getQuadrantData:Jkt,parseDirective:kkt,clear:Rkt,setAccTitle:A1,getAccTitle:h0,setDiagramTitle:EI,getDiagramTitle:zE,getAccDescription:u0,setAccDescription:l0},vkt=(t,i,s,a)=>{var h,Q,w;function I(gA){return gA==="top"?"hanging":"middle"}function d(gA){return gA==="left"?"start":"middle"}function D(gA){return`translate(${gA.x}, ${gA.y}) rotate(${gA.rotation||0})`}const N=Je();_A.debug(`Rendering quadrant chart`+t);const U=N.securityLevel;let R;U==="sandbox"&&(R=Nn("#i"+i));const j=Nn(U==="sandbox"?R.nodes()[0].contentDocument.body:"body").select(`[id="${i}"]`),W=j.append("g").attr("class","main"),AA=((h=N.quadrantChart)==null?void 0:h.chartWidth)||500,X=((Q=N.quadrantChart)==null?void 0:Q.chartHeight)||500;B0(j,X,AA,((w=N.quadrantChart)==null?void 0:w.useMaxWidth)||!0),j.attr("viewBox","0 0 "+AA+" "+X),a.db.setHeight(X),a.db.setWidth(AA);const K=a.db.getQuadrantData(),$=W.append("g").attr("class","quadrants"),QA=W.append("g").attr("class","border"),hA=W.append("g").attr("class","data-points"),aA=W.append("g").attr("class","labels"),iA=W.append("g").attr("class","title");K.title&&iA.append("text").attr("x",0).attr("y",0).attr("fill",K.title.fill).attr("font-size",K.title.fontSize).attr("dominant-baseline",I(K.title.horizontalPos)).attr("text-anchor",d(K.title.verticalPos)).attr("transform",D(K.title)).text(K.title.text),K.borderLines&&QA.selectAll("line").data(K.borderLines).enter().append("line").attr("x1",gA=>gA.x1).attr("y1",gA=>gA.y1).attr("x2",gA=>gA.x2).attr("y2",gA=>gA.y2).style("stroke",gA=>gA.strokeFill).style("stroke-width",gA=>gA.strokeWidth);const BA=$.selectAll("g.quadrant").data(K.quadrants).enter().append("g").attr("class","quadrant");BA.append("rect").attr("x",gA=>gA.x).attr("y",gA=>gA.y).attr("width",gA=>gA.width).attr("height",gA=>gA.height).attr("fill",gA=>gA.fill),BA.append("text").attr("x",0).attr("y",0).attr("fill",gA=>gA.text.fill).attr("font-size",gA=>gA.text.fontSize).attr("dominant-baseline",gA=>I(gA.text.horizontalPos)).attr("text-anchor",gA=>d(gA.text.verticalPos)).attr("transform",gA=>D(gA.text)).text(gA=>gA.text.text),aA.selectAll("g.label").data(K.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(gA=>gA.text).attr("fill",gA=>gA.fill).attr("font-size",gA=>gA.fontSize).attr("dominant-baseline",gA=>I(gA.horizontalPos)).attr("text-anchor",gA=>d(gA.verticalPos)).attr("transform",gA=>D(gA));const FA=hA.selectAll("g.data-point").data(K.points).enter().append("g").attr("class","data-point");FA.append("circle").attr("cx",gA=>gA.x).attr("cy",gA=>gA.y).attr("r",gA=>gA.radius).attr("fill",gA=>gA.fill),FA.append("text").attr("x",0).attr("y",0).text(gA=>gA.text.text).attr("fill",gA=>gA.text.fill).attr("font-size",gA=>gA.text.fontSize).attr("dominant-baseline",gA=>I(gA.text.horizontalPos)).attr("text-anchor",gA=>d(gA.text.verticalPos)).attr("transform",gA=>D(gA.text))},jkt={draw:vkt},Skt={parser:dkt,db:Tkt,renderer:jkt,styles:()=>""},Lkt=Object.freeze(Object.defineProperty({__proto__:null,diagram:Skt},Symbol.toStringTag,{value:"Module"}));var m8A=function(){var t=function(mt,be,ie,ye){for(ie=ie||{},ye=mt.length;ye--;ie[mt[ye]]=be);return ie},i=[1,3],s=[1,5],a=[1,6],h=[1,7],Q=[1,8],w=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],I=[1,22],d=[2,13],D=[1,26],N=[1,27],U=[1,28],R=[1,29],T=[1,30],j=[1,31],W=[1,24],AA=[1,32],X=[1,33],K=[1,36],$=[71,72],QA=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],hA=[1,56],aA=[1,57],iA=[1,58],BA=[1,59],rA=[1,60],FA=[1,61],gA=[1,62],fA=[62,63],DA=[1,74],eA=[1,70],GA=[1,71],cA=[1,72],JA=[1,73],_=[1,75],SA=[1,79],jA=[1,80],dA=[1,77],kA=[1,78],vA=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],Fe={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DERIVES:66,SATISFIES:67,VERIFIES:68,REFINES:69,TRACES:70,unqString:71,qString:72,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",12:":",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",28:"STRUCT_START",30:"ID",31:"COLONSEP",33:"TEXT",35:"RISK",37:"VERIFYMTHD",39:"STRUCT_STOP",40:"REQUIREMENT",41:"FUNCTIONAL_REQUIREMENT",42:"INTERFACE_REQUIREMENT",43:"PERFORMANCE_REQUIREMENT",44:"PHYSICAL_REQUIREMENT",45:"DESIGN_CONSTRAINT",46:"LOW_RISK",47:"MED_RISK",48:"HIGH_RISK",49:"VERIFY_ANALYSIS",50:"VERIFY_DEMONSTRATION",51:"VERIFY_INSPECTION",52:"VERIFY_TEST",53:"ELEMENT",56:"TYPE",58:"DOCREF",60:"END_ARROW_L",62:"LINE",63:"END_ARROW_R",64:"CONTAINS",65:"COPIES",66:"DERIVES",67:"SATISFIES",68:"VERIFIES",69:"REFINES",70:"TRACES",71:"unqString",72:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,3],[4,5],[4,2],[4,2],[4,1],[9,1],[10,1],[13,1],[11,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[23,5],[29,5],[29,5],[29,5],[29,5],[29,2],[29,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[36,1],[36,1],[36,1],[38,1],[38,1],[38,1],[38,1],[24,5],[55,5],[55,5],[55,2],[55,1],[25,5],[25,5],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[27,1],[27,1],[32,1],[32,1],[34,1],[34,1],[54,1],[54,1],[57,1],[57,1],[59,1],[59,1]],performAction:function(be,ie,ye,Le,HA,WA,XA){var ce=WA.length-1;switch(HA){case 6:this.$=WA[ce].trim(),Le.setAccTitle(this.$);break;case 7:case 8:this.$=WA[ce].trim(),Le.setAccDescription(this.$);break;case 9:Le.parseDirective("%%{","open_directive");break;case 10:Le.parseDirective(WA[ce],"type_directive");break;case 11:WA[ce]=WA[ce].trim().replace(/'/g,'"'),Le.parseDirective(WA[ce],"arg_directive");break;case 12:Le.parseDirective("}%%","close_directive","pie");break;case 13:this.$=[];break;case 19:Le.addRequirement(WA[ce-3],WA[ce-4]);break;case 20:Le.setNewReqId(WA[ce-2]);break;case 21:Le.setNewReqText(WA[ce-2]);break;case 22:Le.setNewReqRisk(WA[ce-2]);break;case 23:Le.setNewReqVerifyMethod(WA[ce-2]);break;case 26:this.$=Le.RequirementType.REQUIREMENT;break;case 27:this.$=Le.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 28:this.$=Le.RequirementType.INTERFACE_REQUIREMENT;break;case 29:this.$=Le.RequirementType.PERFORMANCE_REQUIREMENT;break;case 30:this.$=Le.RequirementType.PHYSICAL_REQUIREMENT;break;case 31:this.$=Le.RequirementType.DESIGN_CONSTRAINT;break;case 32:this.$=Le.RiskLevel.LOW_RISK;break;case 33:this.$=Le.RiskLevel.MED_RISK;break;case 34:this.$=Le.RiskLevel.HIGH_RISK;break;case 35:this.$=Le.VerifyType.VERIFY_ANALYSIS;break;case 36:this.$=Le.VerifyType.VERIFY_DEMONSTRATION;break;case 37:this.$=Le.VerifyType.VERIFY_INSPECTION;break;case 38:this.$=Le.VerifyType.VERIFY_TEST;break;case 39:Le.addElement(WA[ce-3]);break;case 40:Le.setNewElementType(WA[ce-2]);break;case 41:Le.setNewElementDocRef(WA[ce-2]);break;case 44:Le.addRelationship(WA[ce-2],WA[ce],WA[ce-4]);break;case 45:Le.addRelationship(WA[ce-2],WA[ce-4],WA[ce]);break;case 46:this.$=Le.Relationships.CONTAINS;break;case 47:this.$=Le.Relationships.COPIES;break;case 48:this.$=Le.Relationships.DERIVES;break;case 49:this.$=Le.Relationships.SATISFIES;break;case 50:this.$=Le.Relationships.VERIFIES;break;case 51:this.$=Le.Relationships.REFINES;break;case 52:this.$=Le.Relationships.TRACES;break}},table:[{3:1,4:2,6:i,9:4,14:s,16:a,18:h,19:Q},{1:[3]},{3:10,4:2,5:[1,9],6:i,9:4,14:s,16:a,18:h,19:Q},{5:[1,11]},{10:12,20:[1,13]},{15:[1,14]},{17:[1,15]},t(w,[2,8]),{20:[2,9]},{3:16,4:2,6:i,9:4,14:s,16:a,18:h,19:Q},{1:[2,2]},{4:21,5:I,7:17,8:d,9:4,14:s,16:a,18:h,19:Q,23:18,24:19,25:20,26:23,32:25,40:D,41:N,42:U,43:R,44:T,45:j,53:W,71:AA,72:X},{11:34,12:[1,35],22:K},t([12,22],[2,10]),t(w,[2,6]),t(w,[2,7]),{1:[2,1]},{8:[1,37]},{4:21,5:I,7:38,8:d,9:4,14:s,16:a,18:h,19:Q,23:18,24:19,25:20,26:23,32:25,40:D,41:N,42:U,43:R,44:T,45:j,53:W,71:AA,72:X},{4:21,5:I,7:39,8:d,9:4,14:s,16:a,18:h,19:Q,23:18,24:19,25:20,26:23,32:25,40:D,41:N,42:U,43:R,44:T,45:j,53:W,71:AA,72:X},{4:21,5:I,7:40,8:d,9:4,14:s,16:a,18:h,19:Q,23:18,24:19,25:20,26:23,32:25,40:D,41:N,42:U,43:R,44:T,45:j,53:W,71:AA,72:X},{4:21,5:I,7:41,8:d,9:4,14:s,16:a,18:h,19:Q,23:18,24:19,25:20,26:23,32:25,40:D,41:N,42:U,43:R,44:T,45:j,53:W,71:AA,72:X},{4:21,5:I,7:42,8:d,9:4,14:s,16:a,18:h,19:Q,23:18,24:19,25:20,26:23,32:25,40:D,41:N,42:U,43:R,44:T,45:j,53:W,71:AA,72:X},{27:43,71:[1,44],72:[1,45]},{54:46,71:[1,47],72:[1,48]},{60:[1,49],62:[1,50]},t($,[2,26]),t($,[2,27]),t($,[2,28]),t($,[2,29]),t($,[2,30]),t($,[2,31]),t(QA,[2,55]),t(QA,[2,56]),t(w,[2,4]),{13:51,21:[1,52]},t(w,[2,12]),{1:[2,3]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{8:[2,17]},{8:[2,18]},{28:[1,53]},{28:[2,53]},{28:[2,54]},{28:[1,54]},{28:[2,59]},{28:[2,60]},{61:55,64:hA,65:aA,66:iA,67:BA,68:rA,69:FA,70:gA},{61:63,64:hA,65:aA,66:iA,67:BA,68:rA,69:FA,70:gA},{11:64,22:K},{22:[2,11]},{5:[1,65]},{5:[1,66]},{62:[1,67]},t(fA,[2,46]),t(fA,[2,47]),t(fA,[2,48]),t(fA,[2,49]),t(fA,[2,50]),t(fA,[2,51]),t(fA,[2,52]),{63:[1,68]},t(w,[2,5]),{5:DA,29:69,30:eA,33:GA,35:cA,37:JA,39:_},{5:SA,39:jA,55:76,56:dA,58:kA},{32:81,71:AA,72:X},{32:82,71:AA,72:X},t(vA,[2,19]),{31:[1,83]},{31:[1,84]},{31:[1,85]},{31:[1,86]},{5:DA,29:87,30:eA,33:GA,35:cA,37:JA,39:_},t(vA,[2,25]),t(vA,[2,39]),{31:[1,88]},{31:[1,89]},{5:SA,39:jA,55:90,56:dA,58:kA},t(vA,[2,43]),t(vA,[2,44]),t(vA,[2,45]),{32:91,71:AA,72:X},{34:92,71:[1,93],72:[1,94]},{36:95,46:[1,96],47:[1,97],48:[1,98]},{38:99,49:[1,100],50:[1,101],51:[1,102],52:[1,103]},t(vA,[2,24]),{57:104,71:[1,105],72:[1,106]},{59:107,71:[1,108],72:[1,109]},t(vA,[2,42]),{5:[1,110]},{5:[1,111]},{5:[2,57]},{5:[2,58]},{5:[1,112]},{5:[2,32]},{5:[2,33]},{5:[2,34]},{5:[1,113]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[2,38]},{5:[1,114]},{5:[2,61]},{5:[2,62]},{5:[1,115]},{5:[2,63]},{5:[2,64]},{5:DA,29:116,30:eA,33:GA,35:cA,37:JA,39:_},{5:DA,29:117,30:eA,33:GA,35:cA,37:JA,39:_},{5:DA,29:118,30:eA,33:GA,35:cA,37:JA,39:_},{5:DA,29:119,30:eA,33:GA,35:cA,37:JA,39:_},{5:SA,39:jA,55:120,56:dA,58:kA},{5:SA,39:jA,55:121,56:dA,58:kA},t(vA,[2,20]),t(vA,[2,21]),t(vA,[2,22]),t(vA,[2,23]),t(vA,[2,40]),t(vA,[2,41])],defaultActions:{8:[2,9],10:[2,2],16:[2,1],37:[2,3],38:[2,14],39:[2,15],40:[2,16],41:[2,17],42:[2,18],44:[2,53],45:[2,54],47:[2,59],48:[2,60],52:[2,11],93:[2,57],94:[2,58],96:[2,32],97:[2,33],98:[2,34],100:[2,35],101:[2,36],102:[2,37],103:[2,38],105:[2,61],106:[2,62],108:[2,63],109:[2,64]},parseError:function(be,ie){if(ie.recoverable)this.trace(be);else{var ye=new Error(be);throw ye.hash=ie,ye}},parse:function(be){var ie=this,ye=[0],Le=[],HA=[null],WA=[],XA=this.table,ce="",ZA=0,pe=0,zA=2,Ft=1,RA=WA.slice.call(arguments,1),Et=Object.create(this.lexer),$A={yy:{}};for(var Ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ot)&&($A.yy[Ot]=this.yy[Ot]);Et.setInput(be,$A.yy),$A.yy.lexer=Et,$A.yy.parser=this,typeof Et.yylloc>"u"&&(Et.yylloc={});var zt=Et.yylloc;WA.push(zt);var Gt=Et.options&&Et.options.ranges;typeof $A.yy.parseError=="function"?this.parseError=$A.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function sn(){var Xn;return Xn=Le.pop()||Et.lex()||Ft,typeof Xn!="number"&&(Xn instanceof Array&&(Le=Xn,Xn=Le.pop()),Xn=ie.symbols_[Xn]||Xn),Xn}for(var Ke,lt,gn,Rt,ln={},hi,Oi,ki,mr;;){if(lt=ye[ye.length-1],this.defaultActions[lt]?gn=this.defaultActions[lt]:((Ke===null||typeof Ke>"u")&&(Ke=sn()),gn=XA[lt]&&XA[lt][Ke]),typeof gn>"u"||!gn.length||!gn[0]){var wn="";mr=[];for(hi in XA[lt])this.terminals_[hi]&&hi>zA&&mr.push("'"+this.terminals_[hi]+"'");Et.showPosition?wn="Parse error on line "+(ZA+1)+`:`+Et.showPosition()+`Expecting `+mr.join(", ")+", got '"+(this.terminals_[Ke]||Ke)+"'":wn="Parse error on line "+(ZA+1)+": Unexpected "+(Ke==Ft?"end of input":"'"+(this.terminals_[Ke]||Ke)+"'"),this.parseError(wn,{text:Et.match,token:this.terminals_[Ke]||Ke,line:Et.yylineno,loc:zt,expected:mr})}if(gn[0]instanceof Array&&gn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+lt+", token: "+Ke);switch(gn[0]){case 1:ye.push(Ke),HA.push(Et.yytext),WA.push(Et.yylloc),ye.push(gn[1]),Ke=null,pe=Et.yyleng,ce=Et.yytext,ZA=Et.yylineno,zt=Et.yylloc;break;case 2:if(Oi=this.productions_[gn[1]][1],ln.$=HA[HA.length-Oi],ln._$={first_line:WA[WA.length-(Oi||1)].first_line,last_line:WA[WA.length-1].last_line,first_column:WA[WA.length-(Oi||1)].first_column,last_column:WA[WA.length-1].last_column},Gt&&(ln._$.range=[WA[WA.length-(Oi||1)].range[0],WA[WA.length-1].range[1]]),Rt=this.performAction.apply(ln,[ce,pe,ZA,$A.yy,gn[1],HA,WA].concat(RA)),typeof Rt<"u")return Rt;Oi&&(ye=ye.slice(0,-1*Oi*2),HA=HA.slice(0,-1*Oi),WA=WA.slice(0,-1*Oi)),ye.push(this.productions_[gn[1]][0]),HA.push(ln.$),WA.push(ln._$),ki=XA[ye[ye.length-2]][ye[ye.length-1]],ye.push(ki);break;case 3:return!0}}return!0}},at=function(){var mt={EOF:1,parseError:function(ie,ye){if(this.yy.parser)this.yy.parser.parseError(ie,ye);else throw new Error(ie)},setInput:function(be,ie){return this.yy=ie||this.yy||{},this._input=be,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},input:function(){var be=this._input[0];this.yytext+=be,this.yyleng++,this.offset++,this.match+=be,this.matched+=be;var ie=be.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),be},unput:function(be){var ie=be.length,ye=be.split(/(?:\r\n?|\n)/g);this._input=be+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ie),this.offset-=ie;var Le=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),ye.length-1&&(this.yylineno-=ye.length-1);var HA=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:ye?(ye.length===Le.length?this.yylloc.first_column:0)+Le[Le.length-ye.length].length-ye[0].length:this.yylloc.first_column-ie},this.options.ranges&&(this.yylloc.range=[HA[0],HA[0]+this.yyleng-ie]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(be){this.unput(this.match.slice(be))},pastInput:function(){var be=this.matched.substr(0,this.matched.length-this.match.length);return(be.length>20?"...":"")+be.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var be=this.match;return be.length<20&&(be+=this._input.substr(0,20-be.length)),(be.substr(0,20)+(be.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var be=this.pastInput(),ie=new Array(be.length+1).join("-");return be+this.upcomingInput()+``+ie+"^"},test_match:function(be,ie){var ye,Le,HA;if(this.options.backtrack_lexer&&(HA={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&&(HA.yylloc.range=this.yylloc.range.slice(0))),Le=be[0].match(/(?:\r\n?|\n).*/g),Le&&(this.yylineno+=Le.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Le?Le[Le.length-1].length-Le[Le.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+be[0].length},this.yytext+=be[0],this.match+=be[0],this.matches=be,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(be[0].length),this.matched+=be[0],ye=this.performAction.call(this,this.yy,this,ie,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ye)return ye;if(this._backtrack){for(var WA in HA)this[WA]=HA[WA];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var be,ie,ye,Le;this._more||(this.yytext="",this.match="");for(var HA=this._currentRules(),WA=0;WA ie[0].length)){if(ie=ye,Le=WA,this.options.backtrack_lexer){if(be=this.test_match(ye,HA[WA]),be!==!1)return be;if(this._backtrack){ie=!1;continue}else return!1}else if(!this.options.flex)break}return ie?(be=this.test_match(ie,HA[Le]),be!==!1?be:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ie=this.next();return ie||this.lex()},begin:function(ie){this.conditionStack.push(ie)},popState:function(){var ie=this.conditionStack.length-1;return ie>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ie){return ie=this.conditionStack.length-1-Math.abs(ie||0),ie>=0?this.conditionStack[ie]:"INITIAL"},pushState:function(ie){this.begin(ie)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ie,ye,Le,HA){switch(Le){case 0:return this.begin("open_directive"),19;case 1:return this.begin("type_directive"),20;case 2:return this.popState(),this.begin("arg_directive"),12;case 3:return this.popState(),this.popState(),22;case 4:return 21;case 5:return"title";case 6:return this.begin("acc_title"),14;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),16;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 5;case 14:break;case 15:break;case 16:break;case 17:return 8;case 18:return 6;case 19:return 28;case 20:return 39;case 21:return 31;case 22:return 30;case 23:return 33;case 24:return 35;case 25:return 37;case 26:return 40;case 27:return 41;case 28:return 42;case 29:return 43;case 30:return 44;case 31:return 45;case 32:return 46;case 33:return 47;case 34:return 48;case 35:return 49;case 36:return 50;case 37:return 51;case 38:return 52;case 39:return 53;case 40:return 64;case 41:return 65;case 42:return 66;case 43:return 67;case 44:return 68;case 45:return 69;case 46:return 70;case 47:return 56;case 48:return 58;case 49:return 60;case 50:return 63;case 51:return 62;case 52:this.begin("string");break;case 53:this.popState();break;case 54:return"qString";case 55:return ye.yytext=ye.yytext.trim(),71}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\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,/^(?:(\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:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[53,54],inclusive:!1},INITIAL:{rules:[0,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,55],inclusive:!0}}};return mt}();Fe.lexer=at;function fe(){this.yy={}}return fe.prototype=Fe,Fe.Parser=fe,new fe}();m8A.parser=m8A;const zkt=m8A;let lSA=[],RE={},MX={},eb={},YX={};const Pkt={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},Okt={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},Wkt={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},Kkt={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},Vkt=function(t,i,s){zu.parseDirective(this,t,i,s)},Xkt=(t,i)=>(MX[t]===void 0&&(MX[t]={name:t,type:i,id:RE.id,text:RE.text,risk:RE.risk,verifyMethod:RE.verifyMethod}),RE={},MX[t]),Zkt=()=>MX,qkt=t=>{RE!==void 0&&(RE.id=t)},_kt=t=>{RE!==void 0&&(RE.text=t)},$kt=t=>{RE!==void 0&&(RE.risk=t)},ARt=t=>{RE!==void 0&&(RE.verifyMethod=t)},eRt=t=>(YX[t]===void 0&&(YX[t]={name:t,type:eb.type,docRef:eb.docRef},_A.info("Added new requirement: ",t)),eb={},YX[t]),tRt=()=>YX,nRt=t=>{eb!==void 0&&(eb.type=t)},iRt=t=>{eb!==void 0&&(eb.docRef=t)},rRt=(t,i,s)=>{lSA.push({type:t,src:i,dst:s})},cRt=()=>lSA,sRt=()=>{lSA=[],RE={},MX={},eb={},YX={},g0()},oRt={RequirementType:Pkt,RiskLevel:Okt,VerifyType:Wkt,Relationships:Kkt,parseDirective:Vkt,getConfig:()=>Je().req,addRequirement:Xkt,getRequirements:Zkt,setNewReqId:qkt,setNewReqText:_kt,setNewReqRisk:$kt,setNewReqVerifyMethod:ARt,setAccTitle:A1,getAccTitle:h0,setAccDescription:l0,getAccDescription:u0,addElement:eRt,getElements:tRt,setNewElementType:nRt,setNewElementDocRef:iRt,addRelationship:rRt,getRelationships:cRt,clear:sRt},aRt=t=>` marker { fill: ${t.relationColor}; stroke: ${t.relationColor}; } marker.cross { stroke: ${t.lineColor}; } svg { font-family: ${t.fontFamily}; font-size: ${t.fontSize}; } .reqBox { fill: ${t.requirementBackground}; fill-opacity: 1.0; stroke: ${t.requirementBorderColor}; stroke-width: ${t.requirementBorderSize}; } .reqTitle, .reqLabel{ fill: ${t.requirementTextColor}; } .reqLabelBox { fill: ${t.relationLabelBackground}; fill-opacity: 1.0; } .req-title-line { stroke: ${t.requirementBorderColor}; stroke-width: ${t.requirementBorderSize}; } .relationshipLine { stroke: ${t.relationColor}; stroke-width: 1; } .relationshipLabel { fill: ${t.relationLabelColor}; }`,BRt=aRt,U8A={CONTAINS:"contains",ARROW:"arrow"},gRt=(t,i)=>{let s=t.append("defs").append("marker").attr("id",U8A.CONTAINS+"_line_ending").attr("refX",0).attr("refY",i.line_height/2).attr("markerWidth",i.line_height).attr("markerHeight",i.line_height).attr("orient","auto").append("g");s.append("circle").attr("cx",i.line_height/2).attr("cy",i.line_height/2).attr("r",i.line_height/2).attr("fill","none"),s.append("line").attr("x1",0).attr("x2",i.line_height).attr("y1",i.line_height/2).attr("y2",i.line_height/2).attr("stroke-width",1),s.append("line").attr("y1",0).attr("y2",i.line_height).attr("x1",i.line_height/2).attr("x2",i.line_height/2).attr("stroke-width",1),t.append("defs").append("marker").attr("id",U8A.ARROW+"_line_ending").attr("refX",i.line_height).attr("refY",.5*i.line_height).attr("markerWidth",i.line_height).attr("markerHeight",i.line_height).attr("orient","auto").append("path").attr("d",`M0,0 L${i.line_height},${i.line_height/2} M${i.line_height},${i.line_height/2} L0,${i.line_height}`).attr("stroke-width",1)},pxe={ReqMarkers:U8A,insertLineEndings:gRt};let Sh={},Aye=0;const Nxe=(t,i)=>t.insert("rect","#"+i).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",Sh.rect_min_width+"px").attr("height",Sh.rect_min_height+"px"),mxe=(t,i,s)=>{let a=Sh.rect_min_width/2,h=t.append("text").attr("class","req reqLabel reqTitle").attr("id",i).attr("x",a).attr("y",Sh.rect_padding).attr("dominant-baseline","hanging"),Q=0;s.forEach(D=>{Q==0?h.append("tspan").attr("text-anchor","middle").attr("x",Sh.rect_min_width/2).attr("dy",0).text(D):h.append("tspan").attr("text-anchor","middle").attr("x",Sh.rect_min_width/2).attr("dy",Sh.line_height*.75).text(D),Q++});let w=1.5*Sh.rect_padding,I=Q*Sh.line_height*.75,d=w+I;return t.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",Sh.rect_min_width).attr("y1",d).attr("y2",d),{titleNode:h,y:d}},Uxe=(t,i,s,a)=>{let h=t.append("text").attr("class","req reqLabel").attr("id",i).attr("x",Sh.rect_padding).attr("y",a).attr("dominant-baseline","hanging"),Q=0;const w=30;let I=[];return s.forEach(d=>{let D=d.length;for(;D>w&&Q<3;){let N=d.substring(0,w);d=d.substring(w,d.length),D=d.length,I[I.length]=N,Q++}if(Q==3){let N=I[I.length-1];I[I.length-1]=N.substring(0,N.length-4)+"..."}else I[I.length]=d;Q=0}),I.forEach(d=>{h.append("tspan").attr("x",Sh.rect_padding).attr("dy",Sh.line_height).text(d)}),h},hRt=(t,i,s,a)=>{const h=i.node().getTotalLength(),Q=i.node().getPointAtLength(h*.5),w="rel"+Aye;Aye++;const d=t.append("text").attr("class","req relationshipLabel").attr("id",w).attr("x",Q.x).attr("y",Q.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(a).node().getBBox();t.insert("rect","#"+w).attr("class","req reqLabelBox").attr("x",Q.x-d.width/2).attr("y",Q.y-d.height/2).attr("width",d.width).attr("height",d.height).attr("fill","white").attr("fill-opacity","85%")},lRt=function(t,i,s,a,h){const Q=s.edge(JS(i.src),JS(i.dst)),w=hk().x(function(d){return d.x}).y(function(d){return d.y}),I=t.insert("path","#"+a).attr("class","er relationshipLine").attr("d",w(Q.points)).attr("fill","none");i.type==h.db.Relationships.CONTAINS?I.attr("marker-start","url("+Yi.getUrl(Sh.arrowMarkerAbsolute)+"#"+i.type+"_line_ending)"):(I.attr("stroke-dasharray","10,7"),I.attr("marker-end","url("+Yi.getUrl(Sh.arrowMarkerAbsolute)+"#"+pxe.ReqMarkers.ARROW+"_line_ending)")),hRt(t,I,Sh,`<<${i.type}>>`)},uRt=(t,i,s)=>{Object.keys(t).forEach(a=>{let h=t[a];a=JS(a),_A.info("Added new requirement: ",a);const Q=s.append("g").attr("id",a),w="req-"+a,I=Nxe(Q,w);let d=mxe(Q,a+"_title",[`<<${h.type}>>`,`${h.name}`]);Uxe(Q,a+"_body",[`Id: ${h.id}`,`Text: ${h.text}`,`Risk: ${h.risk}`,`Verification: ${h.verifyMethod}`],d.y);const D=I.node().getBBox();i.setNode(a,{width:D.width,height:D.height,shape:"rect",id:a})})},wRt=(t,i,s)=>{Object.keys(t).forEach(a=>{let h=t[a];const Q=JS(a),w=s.append("g").attr("id",Q),I="element-"+Q,d=Nxe(w,I);let D=mxe(w,I+"_title",["< >",`${a}`]);Uxe(w,I+"_body",[`Type: ${h.type||"Not Specified"}`,`Doc Ref: ${h.docRef||"None"}`],D.y);const N=d.node().getBBox();i.setNode(Q,{width:N.width,height:N.height,shape:"rect",id:Q})})},QRt=(t,i)=>(t.forEach(function(s){let a=JS(s.src),h=JS(s.dst);i.setEdge(a,h,{relationship:s})}),t),ERt=function(t,i){i.nodes().forEach(function(s){s!==void 0&&i.node(s)!==void 0&&(t.select("#"+s),t.select("#"+s).attr("transform","translate("+(i.node(s).x-i.node(s).width/2)+","+(i.node(s).y-i.node(s).height/2)+" )"))})},JS=t=>t.replace(/\s/g,"").replace(/\./g,"_"),fRt=(t,i,s,a)=>{Sh=Je().requirement;const h=Sh.securityLevel;let Q;h==="sandbox"&&(Q=Nn("#i"+i));const I=Nn(h==="sandbox"?Q.nodes()[0].contentDocument.body:"body").select(`[id='${i}']`);pxe.insertLineEndings(I,Sh);const d=new Pu({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:Sh.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let D=a.db.getRequirements(),N=a.db.getElements(),U=a.db.getRelationships();uRt(D,d,I),wRt(N,d,I),QRt(U,d),n5(d),ERt(I,d),U.forEach(function(AA){lRt(I,AA,d,i,a)});const R=Sh.rect_padding,T=I.node().getBBox(),j=T.width+R*2,W=T.height+R*2;B0(I,W,j,Sh.useMaxWidth),I.attr("viewBox",`${T.x-R} ${T.y-R} ${j} ${W}`)},IRt={draw:fRt},CRt={parser:zkt,db:oRt,renderer:IRt,styles:BRt},dRt=Object.freeze(Object.defineProperty({__proto__:null,diagram:CRt},Symbol.toStringTag,{value:"Module"}));var b8A=function(){var t=function(HA,WA,XA,ce){for(XA=XA||{},ce=HA.length;ce--;XA[HA[ce]]=WA);return XA},i=[1,2],s=[1,3],a=[1,5],h=[1,7],Q=[2,5],w=[1,15],I=[1,17],d=[1,19],D=[1,20],N=[1,22],U=[1,23],R=[1,24],T=[1,30],j=[1,31],W=[1,32],AA=[1,33],X=[1,34],K=[1,35],$=[1,36],QA=[1,37],hA=[1,38],aA=[1,39],iA=[1,40],BA=[1,41],rA=[1,42],FA=[1,44],gA=[1,45],fA=[1,46],DA=[1,48],eA=[1,49],GA=[1,50],cA=[1,51],JA=[1,52],_=[1,53],SA=[1,56],jA=[1,4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],dA=[4,5,22,56,58,59],kA=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],vA=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,55,56,58,59,60,65,66,67,68,76,86],Fe=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,54,56,58,59,60,65,66,67,68,76,86],at=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,56,58,59,60,65,66,67,68,76,86],fe=[74,75,76],mt=[1,133],be=[1,4,5,7,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],ie={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,directive:6,SD:7,document:8,line:9,statement:10,box_section:11,box_line:12,participant_statement:13,openDirective:14,typeDirective:15,closeDirective:16,":":17,argDirective:18,create:19,box:20,restOfLine:21,end:22,signal:23,autonumber:24,NUM:25,off:26,activate:27,actor:28,deactivate:29,note_statement:30,links_statement:31,link_statement:32,properties_statement:33,details_statement:34,title:35,legacy_title:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,loop:42,rect:43,opt:44,alt:45,else_sections:46,par:47,par_sections:48,par_over:49,critical:50,option_sections:51,break:52,option:53,and:54,else:55,participant:56,AS:57,participant_actor:58,destroy:59,note:60,placement:61,text2:62,over:63,actor_pair:64,links:65,link:66,properties:67,details:68,spaceList:69,",":70,left_of:71,right_of:72,signaltype:73,"+":74,"-":75,ACTOR:76,SOLID_OPEN_ARROW:77,DOTTED_OPEN_ARROW:78,SOLID_ARROW:79,DOTTED_ARROW:80,SOLID_CROSS:81,DOTTED_CROSS:82,SOLID_POINT:83,DOTTED_POINT:84,TXT:85,open_directive:86,type_directive:87,arg_directive:88,close_directive:89,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",7:"SD",17:":",19:"create",20:"box",21:"restOfLine",22:"end",24:"autonumber",25:"NUM",26:"off",27:"activate",29:"deactivate",35:"title",36:"legacy_title",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"loop",43:"rect",44:"opt",45:"alt",47:"par",49:"par_over",50:"critical",52:"break",53:"option",54:"and",55:"else",56:"participant",57:"AS",58:"participant_actor",59:"destroy",60:"note",63:"over",65:"links",66:"link",67:"properties",68:"details",70:",",71:"left_of",72:"right_of",74:"+",75:"-",76:"ACTOR",77:"SOLID_OPEN_ARROW",78:"DOTTED_OPEN_ARROW",79:"SOLID_ARROW",80:"DOTTED_ARROW",81:"SOLID_CROSS",82:"DOTTED_CROSS",83:"SOLID_POINT",84:"DOTTED_POINT",85:"TXT",86:"open_directive",87:"type_directive",88:"arg_directive",89:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[11,0],[11,2],[12,2],[12,1],[12,1],[6,4],[6,6],[10,1],[10,2],[10,4],[10,2],[10,4],[10,3],[10,3],[10,2],[10,3],[10,3],[10,2],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,2],[10,2],[10,1],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,1],[51,1],[51,4],[48,1],[48,4],[46,1],[46,4],[13,5],[13,3],[13,5],[13,3],[13,3],[30,4],[30,4],[31,3],[32,3],[33,3],[34,3],[69,2],[69,1],[64,3],[64,1],[61,1],[61,1],[23,5],[23,5],[23,4],[28,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[62,1],[14,1],[15,1],[18,1],[16,1]],performAction:function(WA,XA,ce,ZA,pe,zA,Ft){var RA=zA.length-1;switch(pe){case 4:return ZA.apply(zA[RA]),zA[RA];case 5:case 10:this.$=[];break;case 6:case 11:zA[RA-1].push(zA[RA]),this.$=zA[RA-1];break;case 7:case 8:case 12:case 13:this.$=zA[RA];break;case 9:case 14:this.$=[];break;case 18:zA[RA].type="createParticipant",this.$=zA[RA];break;case 19:zA[RA-1].unshift({type:"boxStart",boxData:ZA.parseBoxData(zA[RA-2])}),zA[RA-1].push({type:"boxEnd",boxText:zA[RA-2]}),this.$=zA[RA-1];break;case 21:this.$={type:"sequenceIndex",sequenceIndex:Number(zA[RA-2]),sequenceIndexStep:Number(zA[RA-1]),sequenceVisible:!0,signalType:ZA.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceIndex:Number(zA[RA-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:ZA.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:ZA.LINETYPE.AUTONUMBER};break;case 24:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:ZA.LINETYPE.AUTONUMBER};break;case 25:this.$={type:"activeStart",signalType:ZA.LINETYPE.ACTIVE_START,actor:zA[RA-1]};break;case 26:this.$={type:"activeEnd",signalType:ZA.LINETYPE.ACTIVE_END,actor:zA[RA-1]};break;case 32:ZA.setDiagramTitle(zA[RA].substring(6)),this.$=zA[RA].substring(6);break;case 33:ZA.setDiagramTitle(zA[RA].substring(7)),this.$=zA[RA].substring(7);break;case 34:this.$=zA[RA].trim(),ZA.setAccTitle(this.$);break;case 35:case 36:this.$=zA[RA].trim(),ZA.setAccDescription(this.$);break;case 37:zA[RA-1].unshift({type:"loopStart",loopText:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.LOOP_START}),zA[RA-1].push({type:"loopEnd",loopText:zA[RA-2],signalType:ZA.LINETYPE.LOOP_END}),this.$=zA[RA-1];break;case 38:zA[RA-1].unshift({type:"rectStart",color:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.RECT_START}),zA[RA-1].push({type:"rectEnd",color:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.RECT_END}),this.$=zA[RA-1];break;case 39:zA[RA-1].unshift({type:"optStart",optText:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.OPT_START}),zA[RA-1].push({type:"optEnd",optText:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.OPT_END}),this.$=zA[RA-1];break;case 40:zA[RA-1].unshift({type:"altStart",altText:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.ALT_START}),zA[RA-1].push({type:"altEnd",signalType:ZA.LINETYPE.ALT_END}),this.$=zA[RA-1];break;case 41:zA[RA-1].unshift({type:"parStart",parText:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.PAR_START}),zA[RA-1].push({type:"parEnd",signalType:ZA.LINETYPE.PAR_END}),this.$=zA[RA-1];break;case 42:zA[RA-1].unshift({type:"parStart",parText:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.PAR_OVER_START}),zA[RA-1].push({type:"parEnd",signalType:ZA.LINETYPE.PAR_END}),this.$=zA[RA-1];break;case 43:zA[RA-1].unshift({type:"criticalStart",criticalText:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.CRITICAL_START}),zA[RA-1].push({type:"criticalEnd",signalType:ZA.LINETYPE.CRITICAL_END}),this.$=zA[RA-1];break;case 44:zA[RA-1].unshift({type:"breakStart",breakText:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.BREAK_START}),zA[RA-1].push({type:"breakEnd",optText:ZA.parseMessage(zA[RA-2]),signalType:ZA.LINETYPE.BREAK_END}),this.$=zA[RA-1];break;case 47:this.$=zA[RA-3].concat([{type:"option",optionText:ZA.parseMessage(zA[RA-1]),signalType:ZA.LINETYPE.CRITICAL_OPTION},zA[RA]]);break;case 49:this.$=zA[RA-3].concat([{type:"and",parText:ZA.parseMessage(zA[RA-1]),signalType:ZA.LINETYPE.PAR_AND},zA[RA]]);break;case 51:this.$=zA[RA-3].concat([{type:"else",altText:ZA.parseMessage(zA[RA-1]),signalType:ZA.LINETYPE.ALT_ELSE},zA[RA]]);break;case 52:zA[RA-3].draw="participant",zA[RA-3].type="addParticipant",zA[RA-3].description=ZA.parseMessage(zA[RA-1]),this.$=zA[RA-3];break;case 53:zA[RA-1].draw="participant",zA[RA-1].type="addParticipant",this.$=zA[RA-1];break;case 54:zA[RA-3].draw="actor",zA[RA-3].type="addParticipant",zA[RA-3].description=ZA.parseMessage(zA[RA-1]),this.$=zA[RA-3];break;case 55:zA[RA-1].draw="actor",zA[RA-1].type="addParticipant",this.$=zA[RA-1];break;case 56:zA[RA-1].type="destroyParticipant",this.$=zA[RA-1];break;case 57:this.$=[zA[RA-1],{type:"addNote",placement:zA[RA-2],actor:zA[RA-1].actor,text:zA[RA]}];break;case 58:zA[RA-2]=[].concat(zA[RA-1],zA[RA-1]).slice(0,2),zA[RA-2][0]=zA[RA-2][0].actor,zA[RA-2][1]=zA[RA-2][1].actor,this.$=[zA[RA-1],{type:"addNote",placement:ZA.PLACEMENT.OVER,actor:zA[RA-2].slice(0,2),text:zA[RA]}];break;case 59:this.$=[zA[RA-1],{type:"addLinks",actor:zA[RA-1].actor,text:zA[RA]}];break;case 60:this.$=[zA[RA-1],{type:"addALink",actor:zA[RA-1].actor,text:zA[RA]}];break;case 61:this.$=[zA[RA-1],{type:"addProperties",actor:zA[RA-1].actor,text:zA[RA]}];break;case 62:this.$=[zA[RA-1],{type:"addDetails",actor:zA[RA-1].actor,text:zA[RA]}];break;case 65:this.$=[zA[RA-2],zA[RA]];break;case 66:this.$=zA[RA];break;case 67:this.$=ZA.PLACEMENT.LEFTOF;break;case 68:this.$=ZA.PLACEMENT.RIGHTOF;break;case 69:this.$=[zA[RA-4],zA[RA-1],{type:"addMessage",from:zA[RA-4].actor,to:zA[RA-1].actor,signalType:zA[RA-3],msg:zA[RA]},{type:"activeStart",signalType:ZA.LINETYPE.ACTIVE_START,actor:zA[RA-1]}];break;case 70:this.$=[zA[RA-4],zA[RA-1],{type:"addMessage",from:zA[RA-4].actor,to:zA[RA-1].actor,signalType:zA[RA-3],msg:zA[RA]},{type:"activeEnd",signalType:ZA.LINETYPE.ACTIVE_END,actor:zA[RA-4]}];break;case 71:this.$=[zA[RA-3],zA[RA-1],{type:"addMessage",from:zA[RA-3].actor,to:zA[RA-1].actor,signalType:zA[RA-2],msg:zA[RA]}];break;case 72:this.$={type:"addParticipant",actor:zA[RA]};break;case 73:this.$=ZA.LINETYPE.SOLID_OPEN;break;case 74:this.$=ZA.LINETYPE.DOTTED_OPEN;break;case 75:this.$=ZA.LINETYPE.SOLID;break;case 76:this.$=ZA.LINETYPE.DOTTED;break;case 77:this.$=ZA.LINETYPE.SOLID_CROSS;break;case 78:this.$=ZA.LINETYPE.DOTTED_CROSS;break;case 79:this.$=ZA.LINETYPE.SOLID_POINT;break;case 80:this.$=ZA.LINETYPE.DOTTED_POINT;break;case 81:this.$=ZA.parseMessage(zA[RA].trim().substring(1));break;case 82:ZA.parseDirective("%%{","open_directive");break;case 83:ZA.parseDirective(zA[RA],"type_directive");break;case 84:zA[RA]=zA[RA].trim().replace(/'/g,'"'),ZA.parseDirective(zA[RA],"arg_directive");break;case 85:ZA.parseDirective("}%%","close_directive","sequence");break}},table:[{3:1,4:i,5:s,6:4,7:a,14:6,86:h},{1:[3]},{3:8,4:i,5:s,6:4,7:a,14:6,86:h},{3:9,4:i,5:s,6:4,7:a,14:6,86:h},{3:10,4:i,5:s,6:4,7:a,14:6,86:h},t([1,4,5,19,20,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],Q,{8:11}),{15:12,87:[1,13]},{87:[2,82]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:w,5:I,6:43,9:14,10:16,13:18,14:6,19:d,20:D,23:21,24:N,27:U,28:47,29:R,30:25,31:26,32:27,33:28,34:29,35:T,36:j,37:W,39:AA,41:X,42:K,43:$,44:QA,45:hA,47:aA,49:iA,50:BA,52:rA,56:FA,58:gA,59:fA,60:DA,65:eA,66:GA,67:cA,68:JA,76:_,86:h},{16:54,17:[1,55],89:SA},t([17,89],[2,83]),t(jA,[2,6]),{6:43,10:57,13:18,14:6,19:d,20:D,23:21,24:N,27:U,28:47,29:R,30:25,31:26,32:27,33:28,34:29,35:T,36:j,37:W,39:AA,41:X,42:K,43:$,44:QA,45:hA,47:aA,49:iA,50:BA,52:rA,56:FA,58:gA,59:fA,60:DA,65:eA,66:GA,67:cA,68:JA,76:_,86:h},t(jA,[2,8]),t(jA,[2,9]),t(jA,[2,17]),{13:58,56:FA,58:gA,59:fA},{21:[1,59]},{5:[1,60]},{5:[1,63],25:[1,61],26:[1,62]},{28:64,76:_},{28:65,76:_},{5:[1,66]},{5:[1,67]},{5:[1,68]},{5:[1,69]},{5:[1,70]},t(jA,[2,32]),t(jA,[2,33]),{38:[1,71]},{40:[1,72]},t(jA,[2,36]),{21:[1,73]},{21:[1,74]},{21:[1,75]},{21:[1,76]},{21:[1,77]},{21:[1,78]},{21:[1,79]},{21:[1,80]},t(jA,[2,45]),{28:81,76:_},{28:82,76:_},{28:83,76:_},{73:84,77:[1,85],78:[1,86],79:[1,87],80:[1,88],81:[1,89],82:[1,90],83:[1,91],84:[1,92]},{61:93,63:[1,94],71:[1,95],72:[1,96]},{28:97,76:_},{28:98,76:_},{28:99,76:_},{28:100,76:_},t([5,57,70,77,78,79,80,81,82,83,84,85],[2,72]),{5:[1,101]},{18:102,88:[1,103]},{5:[2,85]},t(jA,[2,7]),t(jA,[2,18]),t(dA,[2,10],{11:104}),t(jA,[2,20]),{5:[1,106],25:[1,105]},{5:[1,107]},t(jA,[2,24]),{5:[1,108]},{5:[1,109]},t(jA,[2,27]),t(jA,[2,28]),t(jA,[2,29]),t(jA,[2,30]),t(jA,[2,31]),t(jA,[2,34]),t(jA,[2,35]),t(kA,Q,{8:110}),t(kA,Q,{8:111}),t(kA,Q,{8:112}),t(vA,Q,{46:113,8:114}),t(Fe,Q,{48:115,8:116}),t(Fe,Q,{8:116,48:117}),t(at,Q,{51:118,8:119}),t(kA,Q,{8:120}),{5:[1,122],57:[1,121]},{5:[1,124],57:[1,123]},{5:[1,125]},{28:128,74:[1,126],75:[1,127],76:_},t(fe,[2,73]),t(fe,[2,74]),t(fe,[2,75]),t(fe,[2,76]),t(fe,[2,77]),t(fe,[2,78]),t(fe,[2,79]),t(fe,[2,80]),{28:129,76:_},{28:131,64:130,76:_},{76:[2,67]},{76:[2,68]},{62:132,85:mt},{62:134,85:mt},{62:135,85:mt},{62:136,85:mt},t(be,[2,15]),{16:137,89:SA},{89:[2,84]},{4:[1,140],5:[1,142],12:139,13:141,22:[1,138],56:FA,58:gA,59:fA},{5:[1,143]},t(jA,[2,22]),t(jA,[2,23]),t(jA,[2,25]),t(jA,[2,26]),{4:w,5:I,6:43,9:14,10:16,13:18,14:6,19:d,20:D,22:[1,144],23:21,24:N,27:U,28:47,29:R,30:25,31:26,32:27,33:28,34:29,35:T,36:j,37:W,39:AA,41:X,42:K,43:$,44:QA,45:hA,47:aA,49:iA,50:BA,52:rA,56:FA,58:gA,59:fA,60:DA,65:eA,66:GA,67:cA,68:JA,76:_,86:h},{4:w,5:I,6:43,9:14,10:16,13:18,14:6,19:d,20:D,22:[1,145],23:21,24:N,27:U,28:47,29:R,30:25,31:26,32:27,33:28,34:29,35:T,36:j,37:W,39:AA,41:X,42:K,43:$,44:QA,45:hA,47:aA,49:iA,50:BA,52:rA,56:FA,58:gA,59:fA,60:DA,65:eA,66:GA,67:cA,68:JA,76:_,86:h},{4:w,5:I,6:43,9:14,10:16,13:18,14:6,19:d,20:D,22:[1,146],23:21,24:N,27:U,28:47,29:R,30:25,31:26,32:27,33:28,34:29,35:T,36:j,37:W,39:AA,41:X,42:K,43:$,44:QA,45:hA,47:aA,49:iA,50:BA,52:rA,56:FA,58:gA,59:fA,60:DA,65:eA,66:GA,67:cA,68:JA,76:_,86:h},{22:[1,147]},{4:w,5:I,6:43,9:14,10:16,13:18,14:6,19:d,20:D,22:[2,50],23:21,24:N,27:U,28:47,29:R,30:25,31:26,32:27,33:28,34:29,35:T,36:j,37:W,39:AA,41:X,42:K,43:$,44:QA,45:hA,47:aA,49:iA,50:BA,52:rA,55:[1,148],56:FA,58:gA,59:fA,60:DA,65:eA,66:GA,67:cA,68:JA,76:_,86:h},{22:[1,149]},{4:w,5:I,6:43,9:14,10:16,13:18,14:6,19:d,20:D,22:[2,48],23:21,24:N,27:U,28:47,29:R,30:25,31:26,32:27,33:28,34:29,35:T,36:j,37:W,39:AA,41:X,42:K,43:$,44:QA,45:hA,47:aA,49:iA,50:BA,52:rA,54:[1,150],56:FA,58:gA,59:fA,60:DA,65:eA,66:GA,67:cA,68:JA,76:_,86:h},{22:[1,151]},{22:[1,152]},{4:w,5:I,6:43,9:14,10:16,13:18,14:6,19:d,20:D,22:[2,46],23:21,24:N,27:U,28:47,29:R,30:25,31:26,32:27,33:28,34:29,35:T,36:j,37:W,39:AA,41:X,42:K,43:$,44:QA,45:hA,47:aA,49:iA,50:BA,52:rA,53:[1,153],56:FA,58:gA,59:fA,60:DA,65:eA,66:GA,67:cA,68:JA,76:_,86:h},{4:w,5:I,6:43,9:14,10:16,13:18,14:6,19:d,20:D,22:[1,154],23:21,24:N,27:U,28:47,29:R,30:25,31:26,32:27,33:28,34:29,35:T,36:j,37:W,39:AA,41:X,42:K,43:$,44:QA,45:hA,47:aA,49:iA,50:BA,52:rA,56:FA,58:gA,59:fA,60:DA,65:eA,66:GA,67:cA,68:JA,76:_,86:h},{21:[1,155]},t(jA,[2,53]),{21:[1,156]},t(jA,[2,55]),t(jA,[2,56]),{28:157,76:_},{28:158,76:_},{62:159,85:mt},{62:160,85:mt},{62:161,85:mt},{70:[1,162],85:[2,66]},{5:[2,59]},{5:[2,81]},{5:[2,60]},{5:[2,61]},{5:[2,62]},{5:[1,163]},t(jA,[2,19]),t(dA,[2,11]),{13:164,56:FA,58:gA,59:fA},t(dA,[2,13]),t(dA,[2,14]),t(jA,[2,21]),t(jA,[2,37]),t(jA,[2,38]),t(jA,[2,39]),t(jA,[2,40]),{21:[1,165]},t(jA,[2,41]),{21:[1,166]},t(jA,[2,42]),t(jA,[2,43]),{21:[1,167]},t(jA,[2,44]),{5:[1,168]},{5:[1,169]},{62:170,85:mt},{62:171,85:mt},{5:[2,71]},{5:[2,57]},{5:[2,58]},{28:172,76:_},t(be,[2,16]),t(dA,[2,12]),t(vA,Q,{8:114,46:173}),t(Fe,Q,{8:116,48:174}),t(at,Q,{8:119,51:175}),t(jA,[2,52]),t(jA,[2,54]),{5:[2,69]},{5:[2,70]},{85:[2,65]},{22:[2,51]},{22:[2,49]},{22:[2,47]}],defaultActions:{7:[2,82],8:[2,1],9:[2,2],10:[2,3],56:[2,85],95:[2,67],96:[2,68],103:[2,84],132:[2,59],133:[2,81],134:[2,60],135:[2,61],136:[2,62],159:[2,71],160:[2,57],161:[2,58],170:[2,69],171:[2,70],172:[2,65],173:[2,51],174:[2,49],175:[2,47]},parseError:function(WA,XA){if(XA.recoverable)this.trace(WA);else{var ce=new Error(WA);throw ce.hash=XA,ce}},parse:function(WA){var XA=this,ce=[0],ZA=[],pe=[null],zA=[],Ft=this.table,RA="",Et=0,$A=0,Ot=2,zt=1,Gt=zA.slice.call(arguments,1),sn=Object.create(this.lexer),Ke={yy:{}};for(var lt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,lt)&&(Ke.yy[lt]=this.yy[lt]);sn.setInput(WA,Ke.yy),Ke.yy.lexer=sn,Ke.yy.parser=this,typeof sn.yylloc>"u"&&(sn.yylloc={});var gn=sn.yylloc;zA.push(gn);var Rt=sn.options&&sn.options.ranges;typeof Ke.yy.parseError=="function"?this.parseError=Ke.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ln(){var Da;return Da=ZA.pop()||sn.lex()||zt,typeof Da!="number"&&(Da instanceof Array&&(ZA=Da,Da=ZA.pop()),Da=XA.symbols_[Da]||Da),Da}for(var hi,Oi,ki,mr,wn={},Xn,Wi,mn,Ec;;){if(Oi=ce[ce.length-1],this.defaultActions[Oi]?ki=this.defaultActions[Oi]:((hi===null||typeof hi>"u")&&(hi=ln()),ki=Ft[Oi]&&Ft[Oi][hi]),typeof ki>"u"||!ki.length||!ki[0]){var An="";Ec=[];for(Xn in Ft[Oi])this.terminals_[Xn]&&Xn>Ot&&Ec.push("'"+this.terminals_[Xn]+"'");sn.showPosition?An="Parse error on line "+(Et+1)+`:`+sn.showPosition()+`Expecting `+Ec.join(", ")+", got '"+(this.terminals_[hi]||hi)+"'":An="Parse error on line "+(Et+1)+": Unexpected "+(hi==zt?"end of input":"'"+(this.terminals_[hi]||hi)+"'"),this.parseError(An,{text:sn.match,token:this.terminals_[hi]||hi,line:sn.yylineno,loc:gn,expected:Ec})}if(ki[0]instanceof Array&&ki.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Oi+", token: "+hi);switch(ki[0]){case 1:ce.push(hi),pe.push(sn.yytext),zA.push(sn.yylloc),ce.push(ki[1]),hi=null,$A=sn.yyleng,RA=sn.yytext,Et=sn.yylineno,gn=sn.yylloc;break;case 2:if(Wi=this.productions_[ki[1]][1],wn.$=pe[pe.length-Wi],wn._$={first_line:zA[zA.length-(Wi||1)].first_line,last_line:zA[zA.length-1].last_line,first_column:zA[zA.length-(Wi||1)].first_column,last_column:zA[zA.length-1].last_column},Rt&&(wn._$.range=[zA[zA.length-(Wi||1)].range[0],zA[zA.length-1].range[1]]),mr=this.performAction.apply(wn,[RA,$A,Et,Ke.yy,ki[1],pe,zA].concat(Gt)),typeof mr<"u")return mr;Wi&&(ce=ce.slice(0,-1*Wi*2),pe=pe.slice(0,-1*Wi),zA=zA.slice(0,-1*Wi)),ce.push(this.productions_[ki[1]][0]),pe.push(wn.$),zA.push(wn._$),mn=Ft[ce[ce.length-2]][ce[ce.length-1]],ce.push(mn);break;case 3:return!0}}return!0}},ye=function(){var HA={EOF:1,parseError:function(XA,ce){if(this.yy.parser)this.yy.parser.parseError(XA,ce);else throw new Error(XA)},setInput:function(WA,XA){return this.yy=XA||this.yy||{},this._input=WA,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},input:function(){var WA=this._input[0];this.yytext+=WA,this.yyleng++,this.offset++,this.match+=WA,this.matched+=WA;var XA=WA.match(/(?:\r\n?|\n).*/g);return XA?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),WA},unput:function(WA){var XA=WA.length,ce=WA.split(/(?:\r\n?|\n)/g);this._input=WA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-XA),this.offset-=XA;var ZA=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),ce.length-1&&(this.yylineno-=ce.length-1);var pe=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:ce?(ce.length===ZA.length?this.yylloc.first_column:0)+ZA[ZA.length-ce.length].length-ce[0].length:this.yylloc.first_column-XA},this.options.ranges&&(this.yylloc.range=[pe[0],pe[0]+this.yyleng-XA]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(WA){this.unput(this.match.slice(WA))},pastInput:function(){var WA=this.matched.substr(0,this.matched.length-this.match.length);return(WA.length>20?"...":"")+WA.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var WA=this.match;return WA.length<20&&(WA+=this._input.substr(0,20-WA.length)),(WA.substr(0,20)+(WA.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var WA=this.pastInput(),XA=new Array(WA.length+1).join("-");return WA+this.upcomingInput()+``+XA+"^"},test_match:function(WA,XA){var ce,ZA,pe;if(this.options.backtrack_lexer&&(pe={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&&(pe.yylloc.range=this.yylloc.range.slice(0))),ZA=WA[0].match(/(?:\r\n?|\n).*/g),ZA&&(this.yylineno+=ZA.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ZA?ZA[ZA.length-1].length-ZA[ZA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+WA[0].length},this.yytext+=WA[0],this.match+=WA[0],this.matches=WA,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(WA[0].length),this.matched+=WA[0],ce=this.performAction.call(this,this.yy,this,XA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ce)return ce;if(this._backtrack){for(var zA in pe)this[zA]=pe[zA];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var WA,XA,ce,ZA;this._more||(this.yytext="",this.match="");for(var pe=this._currentRules(),zA=0;zA XA[0].length)){if(XA=ce,ZA=zA,this.options.backtrack_lexer){if(WA=this.test_match(ce,pe[zA]),WA!==!1)return WA;if(this._backtrack){XA=!1;continue}else return!1}else if(!this.options.flex)break}return XA?(WA=this.test_match(XA,pe[ZA]),WA!==!1?WA:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var XA=this.next();return XA||this.lex()},begin:function(XA){this.conditionStack.push(XA)},popState:function(){var XA=this.conditionStack.length-1;return XA>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(XA){return XA=this.conditionStack.length-1-Math.abs(XA||0),XA>=0?this.conditionStack[XA]:"INITIAL"},pushState:function(XA){this.begin(XA)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(XA,ce,ZA,pe){switch(ZA){case 0:return this.begin("open_directive"),86;case 1:return this.begin("type_directive"),87;case 2:return this.popState(),this.begin("arg_directive"),17;case 3:return this.popState(),this.popState(),89;case 4:return 88;case 5:return 5;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:return 25;case 12:return this.begin("LINE"),20;case 13:return this.begin("ID"),56;case 14:return this.begin("ID"),58;case 15:return 19;case 16:return this.begin("ID"),59;case 17:return ce.yytext=ce.yytext.trim(),this.begin("ALIAS"),76;case 18:return this.popState(),this.popState(),this.begin("LINE"),57;case 19:return this.popState(),this.popState(),5;case 20:return this.begin("LINE"),42;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),44;case 23:return this.begin("LINE"),45;case 24:return this.begin("LINE"),55;case 25:return this.begin("LINE"),47;case 26:return this.begin("LINE"),49;case 27:return this.begin("LINE"),54;case 28:return this.begin("LINE"),50;case 29:return this.begin("LINE"),53;case 30:return this.begin("LINE"),52;case 31:return this.popState(),21;case 32:return 22;case 33:return 71;case 34:return 72;case 35:return 65;case 36:return 66;case 37:return 67;case 38:return 68;case 39:return 63;case 40:return 60;case 41:return this.begin("ID"),27;case 42:return this.begin("ID"),29;case 43:return 35;case 44:return 36;case 45:return this.begin("acc_title"),37;case 46:return this.popState(),"acc_title_value";case 47:return this.begin("acc_descr"),39;case 48:return this.popState(),"acc_descr_value";case 49:this.begin("acc_descr_multiline");break;case 50:this.popState();break;case 51:return"acc_descr_multiline_value";case 52:return 7;case 53:return 24;case 54:return 26;case 55:return 70;case 56:return 5;case 57:return ce.yytext=ce.yytext.trim(),76;case 58:return 79;case 59:return 80;case 60:return 77;case 61:return 78;case 62:return 81;case 63:return 82;case 64:return 83;case 65:return 84;case 66:return 85;case 67:return 74;case 68:return 75;case 69:return 5;case 70:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\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,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[50,51],inclusive:!1},acc_descr:{rules:[48],inclusive:!1},acc_title:{rules:[46],inclusive:!1},open_directive:{rules:[1,8],inclusive:!1},type_directive:{rules:[2,3,8],inclusive:!1},arg_directive:{rules:[3,4,8],inclusive:!1},ID:{rules:[7,8,17],inclusive:!1},ALIAS:{rules:[7,8,18,19],inclusive:!1},LINE:{rules:[7,8,31],inclusive:!1},INITIAL:{rules:[0,5,6,8,9,10,11,12,13,14,15,16,20,21,22,23,24,25,26,27,28,29,30,32,33,34,35,36,37,38,39,40,41,42,43,44,45,47,49,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70],inclusive:!0}}};return HA}();ie.lexer=ye;function Le(){this.yy={}}return Le.prototype=ie,ie.Parser=Le,new Le}();b8A.parser=b8A;const FRt=b8A;let WV,zp={},uSA={},wSA={},kS=[],oI=[],D0A=!1,H8A,Hp,KV,Jj;const MRt=function(t,i,s){zu.parseDirective(this,t,i,s)},YRt=function(t){kS.push({name:t.text,wrap:t.wrap===void 0&&Ak()||!!t.wrap,fill:t.color,actorKeys:[]}),Hp=kS.slice(-1)[0]},x8A=function(t,i,s,a){let h=Hp;const Q=zp[t];if(Q){if(Hp&&Q.box&&Hp!==Q.box)throw new Error("A same participant should only be defined in one Box: "+Q.name+" can't be in '"+Q.box.name+"' and in '"+Hp.name+"' at the same time.");if(h=Q.box?Q.box:Hp,Q.box=h,Q&&i===Q.name&&s==null)return}(s==null||s.text==null)&&(s={text:i,wrap:null,type:a}),(a==null||s.text==null)&&(s={text:i,wrap:null,type:a}),zp[t]={box:h,name:i,description:s.text,wrap:s.wrap===void 0&&Ak()||!!s.wrap,prevActor:WV,links:{},properties:{},actorCnt:null,rectData:null,type:a||"participant"},WV&&zp[WV]&&(zp[WV].nextActor=t),Hp&&Hp.actorKeys.push(t),WV=t},DRt=t=>{let i,s=0;for(i=0;i >-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},Q}return oI.push({from:t,to:i,message:s.text,wrap:s.wrap===void 0&&Ak()||!!s.wrap,type:a}),!0},pRt=function(){return kS.length>0},NRt=function(){return kS.some(t=>t.name)},mRt=function(){return oI},URt=function(){return kS},bRt=function(){return zp},HRt=function(){return uSA},xRt=function(){return wSA},jZ=function(t){return zp[t]},GRt=function(){return Object.keys(zp)},JRt=function(){D0A=!0},kRt=function(){D0A=!1},RRt=()=>D0A,TRt=function(t){H8A=t},Ak=()=>H8A!==void 0?H8A:Je().sequence.wrap,vRt=function(){zp={},uSA={},wSA={},kS=[],oI=[],D0A=!1,g0()},jRt=function(t){const i=t.trim(),s={text:i.replace(/^:?(?:no)?wrap:/,"").trim(),wrap:i.match(/^:?wrap:/)!==null?!0:i.match(/^:?nowrap:/)!==null?!1:void 0};return _A.debug("parseMessage:",s),s},SRt=function(t){const i=t.match(/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/);let s=i!=null&&i[1]?i[1].trim():"transparent",a=i!=null&&i[2]?i[2].trim():void 0;if(window&&window.CSS)window.CSS.supports("color",s)||(s="transparent",a=t.trim());else{const Q=new Option().style;Q.color=s,Q.color!==s&&(s="transparent",a=t.trim())}return{color:s,text:a!==void 0?o0(a.replace(/^:?(?:no)?wrap:/,""),Je()):void 0,wrap:a!==void 0?a.match(/^:?wrap:/)!==null?!0:a.match(/^:?nowrap:/)!==null?!1:void 0:void 0}},rZ={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},LRt={FILLED:0,OPEN:1},zRt={LEFTOF:0,RIGHTOF:1,OVER:2},bxe=function(t,i,s){s.text,s.wrap===void 0&&Ak()||s.wrap;const a=[].concat(t,t);oI.push({from:a[0],to:a[1],message:s.text,wrap:s.wrap===void 0&&Ak()||!!s.wrap,type:rZ.NOTE,placement:i})},Hxe=function(t,i){const s=jZ(t);try{let a=o0(i.text,Je());a=a.replace(/&/g,"&"),a=a.replace(/=/g,"=");const h=JSON.parse(a);QSA(s,h)}catch(a){_A.error("error while parsing actor link text",a)}},PRt=function(t,i){const s=jZ(t);try{const w={};let I=o0(i.text,Je());var a=I.indexOf("@");I=I.replace(/&/g,"&"),I=I.replace(/=/g,"=");var h=I.slice(0,a-1).trim(),Q=I.slice(a+1).trim();w[h]=Q,QSA(s,w)}catch(w){_A.error("error while parsing actor link text",w)}};function QSA(t,i){if(t.links==null)t.links=i;else for(let s in i)t.links[s]=i[s]}const xxe=function(t,i){const s=jZ(t);try{let a=o0(i.text,Je());const h=JSON.parse(a);Gxe(s,h)}catch(a){_A.error("error while parsing actor properties text",a)}};function Gxe(t,i){if(t.properties==null)t.properties=i;else for(let s in i)t.properties[s]=i[s]}function ORt(){Hp=void 0}const Jxe=function(t,i){const s=jZ(t),a=document.getElementById(i.text);try{const h=a.innerHTML,Q=JSON.parse(h);Q.properties&&Gxe(s,Q.properties),Q.links&&QSA(s,Q.links)}catch(h){_A.error("error while parsing actor details text",h)}},WRt=function(t,i){if(t!==void 0&&t.properties!==void 0)return t.properties[i]},kxe=function(t){if(Array.isArray(t))t.forEach(function(i){kxe(i)});else switch(t.type){case"sequenceIndex":oI.push({from:void 0,to:void 0,message:{start:t.sequenceIndex,step:t.sequenceIndexStep,visible:t.sequenceVisible},wrap:!1,type:t.signalType});break;case"addParticipant":x8A(t.actor,t.actor,t.description,t.draw);break;case"createParticipant":if(zp[t.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");KV=t.actor,x8A(t.actor,t.actor,t.description,t.draw),uSA[t.actor]=oI.length;break;case"destroyParticipant":Jj=t.actor,wSA[t.actor]=oI.length;break;case"activeStart":Ql(t.actor,void 0,void 0,t.signalType);break;case"activeEnd":Ql(t.actor,void 0,void 0,t.signalType);break;case"addNote":bxe(t.actor,t.placement,t.text);break;case"addLinks":Hxe(t.actor,t.text);break;case"addALink":PRt(t.actor,t.text);break;case"addProperties":xxe(t.actor,t.text);break;case"addDetails":Jxe(t.actor,t.text);break;case"addMessage":if(KV){if(t.to!==KV)throw new Error("The created participant "+KV+" does not have an associated creating message after its declaration. Please check the sequence diagram.");KV=void 0}else if(Jj){if(t.to!==Jj&&t.from!==Jj)throw new Error("The destroyed participant "+Jj+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");Jj=void 0}Ql(t.from,t.to,t.msg,t.signalType);break;case"boxStart":YRt(t.boxData);break;case"boxEnd":ORt();break;case"loopStart":Ql(void 0,void 0,t.loopText,t.signalType);break;case"loopEnd":Ql(void 0,void 0,void 0,t.signalType);break;case"rectStart":Ql(void 0,void 0,t.color,t.signalType);break;case"rectEnd":Ql(void 0,void 0,void 0,t.signalType);break;case"optStart":Ql(void 0,void 0,t.optText,t.signalType);break;case"optEnd":Ql(void 0,void 0,void 0,t.signalType);break;case"altStart":Ql(void 0,void 0,t.altText,t.signalType);break;case"else":Ql(void 0,void 0,t.altText,t.signalType);break;case"altEnd":Ql(void 0,void 0,void 0,t.signalType);break;case"setAccTitle":A1(t.text);break;case"parStart":Ql(void 0,void 0,t.parText,t.signalType);break;case"and":Ql(void 0,void 0,t.parText,t.signalType);break;case"parEnd":Ql(void 0,void 0,void 0,t.signalType);break;case"criticalStart":Ql(void 0,void 0,t.criticalText,t.signalType);break;case"option":Ql(void 0,void 0,t.optionText,t.signalType);break;case"criticalEnd":Ql(void 0,void 0,void 0,t.signalType);break;case"breakStart":Ql(void 0,void 0,t.breakText,t.signalType);break;case"breakEnd":Ql(void 0,void 0,void 0,t.signalType);break}},KRt={addActor:x8A,addMessage:yRt,addSignal:Ql,addLinks:Hxe,addDetails:Jxe,addProperties:xxe,autoWrap:Ak,setWrap:TRt,enableSequenceNumbers:JRt,disableSequenceNumbers:kRt,showSequenceNumbers:RRt,getMessages:mRt,getActors:bRt,getCreatedActors:HRt,getDestroyedActors:xRt,getActor:jZ,getActorKeys:GRt,getActorProperty:WRt,getAccTitle:h0,getBoxes:URt,getDiagramTitle:zE,setDiagramTitle:EI,parseDirective:MRt,getConfig:()=>Je().sequence,clear:vRt,parseMessage:jRt,parseBoxData:SRt,LINETYPE:rZ,ARROWTYPE:LRt,PLACEMENT:zRt,addNote:bxe,setAccTitle:A1,apply:kxe,setAccDescription:l0,getAccDescription:u0,hasAtLeastOneBox:pRt,hasAtLeastOneBoxWithTitle:NRt},VRt=t=>`.actor { stroke: ${t.actorBorder}; fill: ${t.actorBkg}; } text.actor > tspan { fill: ${t.actorTextColor}; stroke: none; } .actor-line { stroke: ${t.actorLineColor}; } .messageLine0 { stroke-width: 1.5; stroke-dasharray: none; stroke: ${t.signalColor}; } .messageLine1 { stroke-width: 1.5; stroke-dasharray: 2, 2; stroke: ${t.signalColor}; } #arrowhead path { fill: ${t.signalColor}; stroke: ${t.signalColor}; } .sequenceNumber { fill: ${t.sequenceNumberColor}; } #sequencenumber { fill: ${t.signalColor}; } #crosshead path { fill: ${t.signalColor}; stroke: ${t.signalColor}; } .messageText { fill: ${t.signalTextColor}; stroke: none; } .labelBox { stroke: ${t.labelBoxBorderColor}; fill: ${t.labelBoxBkgColor}; } .labelText, .labelText > tspan { fill: ${t.labelTextColor}; stroke: none; } .loopText, .loopText > tspan { fill: ${t.loopTextColor}; stroke: none; } .loopLine { stroke-width: 2px; stroke-dasharray: 2, 2; stroke: ${t.labelBoxBorderColor}; fill: ${t.labelBoxBorderColor}; } .note { //stroke: #decc93; stroke: ${t.noteBorderColor}; fill: ${t.noteBkgColor}; } .noteText, .noteText > tspan { fill: ${t.noteTextColor}; stroke: none; } .activation0 { fill: ${t.activationBkgColor}; stroke: ${t.activationBorderColor}; } .activation1 { fill: ${t.activationBkgColor}; stroke: ${t.activationBorderColor}; } .activation2 { fill: ${t.activationBkgColor}; stroke: ${t.activationBorderColor}; } .actorPopupMenu { position: absolute; } .actorPopupMenuPanel { position: absolute; fill: ${t.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: ${t.actorBorder}; fill: ${t.actorBkg}; } .actor-man circle, line { stroke: ${t.actorBorder}; fill: ${t.actorBkg}; stroke-width: 2px; }`,XRt=VRt,mJ=18*2,ESA=function(t,i){return s0A(t,i)},Rxe=(t,i)=>{NYt(()=>{const s=document.querySelectorAll(t);s.length!==0&&(s[0].addEventListener("mouseover",function(){$Rt("actor"+i+"_popup")}),s[0].addEventListener("mouseout",function(){ATt("actor"+i+"_popup")}))})},ZRt=function(t,i,s,a,h){if(i.links===void 0||i.links===null||Object.keys(i.links).length===0)return{height:0,width:0};const Q=i.links,w=i.actorCnt,I=i.rectData;var d="none";h&&(d="block !important");const D=t.append("g");D.attr("id","actor"+w+"_popup"),D.attr("class","actorPopupMenu"),D.attr("display",d),Rxe("#actor"+w+"_popup",w);var N="";I.class!==void 0&&(N=" "+I.class);let U=I.width>s?I.width:s;const R=D.append("rect");if(R.attr("class","actorPopupMenuPanel"+N),R.attr("x",I.x),R.attr("y",I.height),R.attr("fill",I.fill),R.attr("stroke",I.stroke),R.attr("width",U),R.attr("height",I.height),R.attr("rx",I.rx),R.attr("ry",I.ry),Q!=null){var T=20;for(let AA in Q){var j=D.append("a"),W=ub.sanitizeUrl(Q[AA]);j.attr("xlink:href",W),j.attr("target","_blank"),QTt(a)(AA,j,I.x+10,I.height+T,U,20,{class:"actor"},a),T+=30}}return R.attr("height",T),{height:I.height+T,width:U}},qRt=function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = 'block'; }"},_Rt=function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = 'none'; }"},$Rt=function(t){var i=document.getElementById(t);i!=null&&(i.style.display="block")},ATt=function(t){var i=document.getElementById(t);i!=null&&(i.style.display="none")},RS=function(t,i){let s=0,a=0;const h=i.text.split(Yi.lineBreakRegex),[Q,w]=A5(i.fontSize);let I=[],d=0,D=()=>i.y;if(i.valign!==void 0&&i.textMargin!==void 0&&i.textMargin>0)switch(i.valign){case"top":case"start":D=()=>Math.round(i.y+i.textMargin);break;case"middle":case"center":D=()=>Math.round(i.y+(s+a+i.textMargin)/2);break;case"bottom":case"end":D=()=>Math.round(i.y+(s+a+2*i.textMargin)-i.textMargin);break}if(i.anchor!==void 0&&i.textMargin!==void 0&&i.width!==void 0)switch(i.anchor){case"left":case"start":i.x=Math.round(i.x+i.textMargin),i.anchor="start",i.dominantBaseline="middle",i.alignmentBaseline="middle";break;case"middle":case"center":i.x=Math.round(i.x+i.width/2),i.anchor="middle",i.dominantBaseline="middle",i.alignmentBaseline="middle";break;case"right":case"end":i.x=Math.round(i.x+i.width-i.textMargin),i.anchor="end",i.dominantBaseline="middle",i.alignmentBaseline="middle";break}for(let[N,U]of h.entries()){i.textMargin!==void 0&&i.textMargin===0&&Q!==void 0&&(d=N*Q);const R=t.append("text");R.attr("x",i.x),R.attr("y",D()),i.anchor!==void 0&&R.attr("text-anchor",i.anchor).attr("dominant-baseline",i.dominantBaseline).attr("alignment-baseline",i.alignmentBaseline),i.fontFamily!==void 0&&R.style("font-family",i.fontFamily),w!==void 0&&R.style("font-size",w),i.fontWeight!==void 0&&R.style("font-weight",i.fontWeight),i.fill!==void 0&&R.attr("fill",i.fill),i.class!==void 0&&R.attr("class",i.class),i.dy!==void 0?R.attr("dy",i.dy):d!==0&&R.attr("dy",d);const T=U||Wme;if(i.tspan){const j=R.append("tspan");j.attr("x",i.x),i.fill!==void 0&&j.attr("fill",i.fill),j.text(T)}else R.text(T);i.valign!==void 0&&i.textMargin!==void 0&&i.textMargin>0&&(a+=(R._groups||R)[0][0].getBBox().height,s=a),I.push(R)}return I},Txe=function(t,i){function s(h,Q,w,I,d){return h+","+Q+" "+(h+w)+","+Q+" "+(h+w)+","+(Q+I-d)+" "+(h+w-d*1.2)+","+(Q+I)+" "+h+","+(Q+I)}const a=t.append("polygon");return a.attr("points",s(i.x,i.y,i.width,i.height,7)),a.attr("class","labelBox"),i.y=i.y+i.height/2,RS(t,i),a};let MM=-1;const vxe=(t,i,s,a)=>{t.select&&s.forEach(h=>{const Q=i[h],w=t.select("#actor"+Q.actorCnt);!a.mirrorActors&&Q.stopy?w.attr("y2",Q.stopy+Q.height/2):a.mirrorActors&&w.attr("y2",Q.stopy)})},eTt=function(t,i,s,a){const h=a?i.stopy:i.starty,Q=i.x+i.width/2,w=h+5,I=t.append("g").lower();var d=I;a||(MM++,d.append("line").attr("id","actor"+MM).attr("x1",Q).attr("y1",w).attr("x2",Q).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),d=I.append("g"),i.actorCnt=MM,i.links!=null&&(d.attr("id","root-"+MM),Rxe("#root-"+MM,MM)));const D=fk();var N="actor";i.properties!=null&&i.properties.class?N=i.properties.class:D.fill="#eaeaea",D.x=i.x,D.y=h,D.width=i.width,D.height=i.height,D.class=N,D.rx=3,D.ry=3;const U=ESA(d,D);if(i.rectData=D,i.properties!=null&&i.properties.icon){const T=i.properties.icon.trim();T.charAt(0)==="@"?wDt(d,D.x+D.width-20,D.y+10,T.substr(1)):uDt(d,D.x+D.width-20,D.y+10,T)}fSA(s)(i.description,d,D.x,D.y,D.width,D.height,{class:"actor"},s);let R=i.height;if(U.node){const T=U.node().getBBox();i.height=T.height,R=T.height}return R},tTt=function(t,i,s,a){const h=a?i.stopy:i.starty,Q=i.x+i.width/2,w=h+80;t.lower(),a||(MM++,t.append("line").attr("id","actor"+MM).attr("x1",Q).attr("y1",w).attr("x2",Q).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),i.actorCnt=MM);const I=t.append("g");I.attr("class","actor-man");const d=fk();d.x=i.x,d.y=h,d.fill="#eaeaea",d.width=i.width,d.height=i.height,d.class="actor",d.rx=3,d.ry=3,I.append("line").attr("id","actor-man-torso"+MM).attr("x1",Q).attr("y1",h+25).attr("x2",Q).attr("y2",h+45),I.append("line").attr("id","actor-man-arms"+MM).attr("x1",Q-mJ/2).attr("y1",h+33).attr("x2",Q+mJ/2).attr("y2",h+33),I.append("line").attr("x1",Q-mJ/2).attr("y1",h+60).attr("x2",Q).attr("y2",h+45),I.append("line").attr("x1",Q).attr("y1",h+45).attr("x2",Q+mJ/2-2).attr("y2",h+60);const D=I.append("circle");D.attr("cx",i.x+i.width/2),D.attr("cy",h+10),D.attr("r",15),D.attr("width",i.width),D.attr("height",i.height);const N=I.node().getBBox();return i.height=N.height,fSA(s)(i.description,I,d.x,d.y+35,d.width,d.height,{class:"actor"},s),i.height},nTt=function(t,i,s,a){switch(i.type){case"actor":return tTt(t,i,s,a);case"participant":return eTt(t,i,s,a)}},iTt=function(t,i,s){const h=t.append("g");jxe(h,i),i.name&&fSA(s)(i.name,h,i.x,i.y+(i.textMaxHeight||0)/2,i.width,0,{class:"text"},s),h.lower()},rTt=function(t){return t.append("g")},cTt=function(t,i,s,a,h){const Q=fk(),w=i.anchored;Q.x=i.startx,Q.y=i.starty,Q.class="activation"+h%3,Q.width=i.stopx-i.startx,Q.height=s-i.starty,ESA(w,Q)},sTt=function(t,i,s,a){const{boxMargin:h,boxTextMargin:Q,labelBoxHeight:w,labelBoxWidth:I,messageFontFamily:d,messageFontSize:D,messageFontWeight:N}=a,U=t.append("g"),R=function(W,AA,X,K){return U.append("line").attr("x1",W).attr("y1",AA).attr("x2",X).attr("y2",K).attr("class","loopLine")};R(i.startx,i.starty,i.stopx,i.starty),R(i.stopx,i.starty,i.stopx,i.stopy),R(i.startx,i.stopy,i.stopx,i.stopy),R(i.startx,i.starty,i.startx,i.stopy),i.sections!==void 0&&i.sections.forEach(function(W){R(i.startx,W.y,i.stopx,W.y).style("stroke-dasharray","3, 3")});let T=DjA();T.text=s,T.x=i.startx,T.y=i.starty,T.fontFamily=d,T.fontSize=D,T.fontWeight=N,T.anchor="middle",T.valign="middle",T.tspan=!1,T.width=I||50,T.height=w||20,T.textMargin=Q,T.class="labelText",Txe(U,T),T=Sxe(),T.text=i.title,T.x=i.startx+I/2+(i.stopx-i.startx)/2,T.y=i.starty+h+Q,T.anchor="middle",T.valign="middle",T.textMargin=Q,T.class="loopText",T.fontFamily=d,T.fontSize=D,T.fontWeight=N,T.wrap=!0;let j=RS(U,T);return i.sectionTitles!==void 0&&i.sectionTitles.forEach(function(W,AA){if(W.message){T.text=W.message,T.x=i.startx+(i.stopx-i.startx)/2,T.y=i.sections[AA].y+h+Q,T.class="loopText",T.anchor="middle",T.valign="middle",T.tspan=!1,T.fontFamily=d,T.fontSize=D,T.fontWeight=N,T.wrap=i.wrap,j=RS(U,T);let X=Math.round(j.map(K=>(K._groups||K)[0][0].getBBox().height).reduce((K,$)=>K+$));i.sections[AA].height+=X-(h+Q)}}),i.height=Math.round(i.stopy-i.starty),U},jxe=function(t,i){NUe(t,i)},oTt=function(t){t.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")},aTt=function(t){t.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")},BTt=function(t){t.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")},gTt=function(t){t.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")},hTt=function(t){t.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")},lTt=function(t){t.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)},uTt=function(t){t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",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")},Sxe=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}},wTt=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},fSA=function(){function t(h,Q,w,I,d,D,N){const U=Q.append("text").attr("x",w+d/2).attr("y",I+D/2+5).style("text-anchor","middle").text(h);a(U,N)}function i(h,Q,w,I,d,D,N,U){const{actorFontSize:R,actorFontFamily:T,actorFontWeight:j}=U,[W,AA]=A5(R),X=h.split(Yi.lineBreakRegex);for(let K=0;K t.height||0))+(this.loops.length===0?0:this.loops.map(t=>t.height||0).reduce((t,i)=>t+i))+(this.messages.length===0?0:this.messages.map(t=>t.height||0).reduce((t,i)=>t+i))+(this.notes.length===0?0:this.notes.map(t=>t.height||0).reduce((t,i)=>t+i))},clear:function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},addBox:function(t){this.boxes.push(t)},addActor:function(t){this.actors.push(t)},addLoop:function(t){this.loops.push(t)},addMessage:function(t){this.messages.push(t)},addNote:function(t){this.notes.push(t)},lastActor:function(){return this.actors[this.actors.length-1]},lastLoop:function(){return this.loops[this.loops.length-1]},lastMessage:function(){return this.messages[this.messages.length-1]},lastNote:function(){return this.notes[this.notes.length-1]},actors:[],boxes:[],loops:[],messages:[],notes:[]},init: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,zxe(Je())},updateVal:function(t,i,s,a){t[i]===void 0?t[i]=s:t[i]=a(s,t[i])},updateBounds:function(t,i,s,a){const h=this;let Q=0;function w(I){return function(D){Q++;const N=h.sequenceItems.length-Q+1;h.updateVal(D,"starty",i-N*wt.boxMargin,Math.min),h.updateVal(D,"stopy",a+N*wt.boxMargin,Math.max),h.updateVal(ti.data,"startx",t-N*wt.boxMargin,Math.min),h.updateVal(ti.data,"stopx",s+N*wt.boxMargin,Math.max),I!=="activation"&&(h.updateVal(D,"startx",t-N*wt.boxMargin,Math.min),h.updateVal(D,"stopx",s+N*wt.boxMargin,Math.max),h.updateVal(ti.data,"starty",i-N*wt.boxMargin,Math.min),h.updateVal(ti.data,"stopy",a+N*wt.boxMargin,Math.max))}}this.sequenceItems.forEach(w()),this.activations.forEach(w("activation"))},insert:function(t,i,s,a){const h=Yi.getMin(t,s),Q=Yi.getMax(t,s),w=Yi.getMin(i,a),I=Yi.getMax(i,a);this.updateVal(ti.data,"startx",h,Math.min),this.updateVal(ti.data,"starty",w,Math.min),this.updateVal(ti.data,"stopx",Q,Math.max),this.updateVal(ti.data,"stopy",I,Math.max),this.updateBounds(h,w,Q,I)},newActivation:function(t,i,s){const a=s[t.from.actor],h=y0A(t.from.actor).length||0,Q=a.x+a.width/2+(h-1)*wt.activationWidth/2;this.activations.push({startx:Q,starty:this.verticalPos+2,stopx:Q+wt.activationWidth,stopy:void 0,actor:t.from.actor,anchored:El.anchorElement(i)})},endActivation:function(t){const i=this.activations.map(function(s){return s.actor}).lastIndexOf(t.from.actor);return this.activations.splice(i,1)[0]},createLoop:function(t={message:void 0,wrap:!1,width:void 0},i){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:t.message,wrap:t.wrap,width:t.width,height:0,fill:i}},newLoop:function(t={message:void 0,wrap:!1,width:void 0},i){this.sequenceItems.push(this.createLoop(t,i))},endLoop:function(){return this.sequenceItems.pop()},isLoopOverlap:function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},addSectionToLoop:function(t){const i=this.sequenceItems.pop();i.sections=i.sections||[],i.sectionTitles=i.sectionTitles||[],i.sections.push({y:ti.getVerticalPos(),height:0}),i.sectionTitles.push(t),this.sequenceItems.push(i)},saveVerticalPos:function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},resetVerticalPos:function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},bumpVerticalPos:function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=Yi.getMax(this.data.stopy,this.verticalPos)},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return{bounds:this.data,models:this.models}}},ETt=function(t,i){ti.bumpVerticalPos(wt.boxMargin),i.height=wt.boxMargin,i.starty=ti.getVerticalPos();const s=fk();s.x=i.startx,s.y=i.starty,s.width=i.width||wt.width,s.class="note";const a=t.append("g"),h=El.drawRect(a,s),Q=DjA();Q.x=i.startx,Q.y=i.starty,Q.width=s.width,Q.dy="1em",Q.text=i.message,Q.class="noteText",Q.fontFamily=wt.noteFontFamily,Q.fontSize=wt.noteFontSize,Q.fontWeight=wt.noteFontWeight,Q.anchor=wt.noteAlign,Q.textMargin=wt.noteMargin,Q.valign="center";const w=RS(a,Q),I=Math.round(w.map(d=>(d._groups||d)[0][0].getBBox().height).reduce((d,D)=>d+D));h.attr("height",I+2*wt.noteMargin),i.height+=I+2*wt.noteMargin,ti.bumpVerticalPos(I+2*wt.noteMargin),i.stopy=i.starty+I+2*wt.noteMargin,i.stopx=i.startx+s.width,ti.insert(i.startx,i.starty,i.stopx,i.stopy),ti.models.addNote(i)},ek=t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),zj=t=>({fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight}),G8A=t=>({fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight});function fTt(t,i){ti.bumpVerticalPos(10);const{startx:s,stopx:a,message:h}=i,Q=Yi.splitBreaks(h).length,w=ms.calculateTextDimensions(h,ek(wt)),I=w.height/Q;i.height+=I,ti.bumpVerticalPos(I);let d,D=w.height-10;const N=w.width;if(s===a){d=ti.getVerticalPos()+D,wt.rightAngles||(D+=wt.boxMargin,d=ti.getVerticalPos()+D),D+=30;const U=Yi.getMax(N/2,wt.width/2);ti.insert(s-U,ti.getVerticalPos()-10+D,a+U,ti.getVerticalPos()+30+D)}else D+=wt.boxMargin,d=ti.getVerticalPos()+D,ti.insert(s,d-10,a,d);return ti.bumpVerticalPos(D),i.height+=D,i.stopy=i.starty+i.height,ti.insert(i.fromBounds,i.starty,i.toBounds,i.stopy),d}const ITt=function(t,i,s,a){const{startx:h,stopx:Q,starty:w,message:I,type:d,sequenceIndex:D,sequenceVisible:N}=i,U=ms.calculateTextDimensions(I,ek(wt)),R=DjA();R.x=h,R.y=w+10,R.width=Q-h,R.class="messageText",R.dy="1em",R.text=I,R.fontFamily=wt.messageFontFamily,R.fontSize=wt.messageFontSize,R.fontWeight=wt.messageFontWeight,R.anchor=wt.messageAlign,R.valign="center",R.textMargin=wt.wrapPadding,R.tspan=!1,RS(t,R);const T=U.width;let j;h===Q?wt.rightAngles?j=t.append("path").attr("d",`M ${h},${s} H ${h+Yi.getMax(wt.width/2,T/2)} V ${s+25} H ${h}`):j=t.append("path").attr("d","M "+h+","+s+" C "+(h+60)+","+(s-10)+" "+(h+60)+","+(s+30)+" "+h+","+(s+20)):(j=t.append("line"),j.attr("x1",h),j.attr("y1",s),j.attr("x2",Q),j.attr("y2",s)),d===a.db.LINETYPE.DOTTED||d===a.db.LINETYPE.DOTTED_CROSS||d===a.db.LINETYPE.DOTTED_POINT||d===a.db.LINETYPE.DOTTED_OPEN?(j.style("stroke-dasharray","3, 3"),j.attr("class","messageLine1")):j.attr("class","messageLine0");let W="";wt.arrowMarkerAbsolute&&(W=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,W=W.replace(/\(/g,"\\("),W=W.replace(/\)/g,"\\)")),j.attr("stroke-width",2),j.attr("stroke","none"),j.style("fill","none"),(d===a.db.LINETYPE.SOLID||d===a.db.LINETYPE.DOTTED)&&j.attr("marker-end","url("+W+"#arrowhead)"),(d===a.db.LINETYPE.SOLID_POINT||d===a.db.LINETYPE.DOTTED_POINT)&&j.attr("marker-end","url("+W+"#filled-head)"),(d===a.db.LINETYPE.SOLID_CROSS||d===a.db.LINETYPE.DOTTED_CROSS)&&j.attr("marker-end","url("+W+"#crosshead)"),(N||wt.showSequenceNumbers)&&(j.attr("marker-start","url("+W+"#sequencenumber)"),t.append("text").attr("x",h).attr("y",s+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(D))},CTt=function(t,i,s,a,h,Q,w){let I=0,d=0,D,N=0;for(const U of a){const R=i[U],T=R.box;D&&D!=T&&(w||ti.models.addBox(D),d+=wt.boxMargin+D.margin),T&&T!=D&&(w||(T.x=I+d,T.y=h),d+=T.margin),R.width=R.width||wt.width,R.height=Yi.getMax(R.height||wt.height,wt.height),R.margin=R.margin||wt.actorMargin,N=Yi.getMax(N,R.height),s[R.name]&&(d+=R.width/2),R.x=I+d,R.starty=ti.getVerticalPos(),ti.insert(R.x,h,R.x+R.width,R.height),I+=R.width+d,R.box&&(R.box.width=I+T.margin-R.box.x),d=R.margin,D=R.box,ti.models.addActor(R)}D&&!w&&ti.models.addBox(D),ti.bumpVerticalPos(N)},J8A=function(t,i,s,a){if(a){let h=0;ti.bumpVerticalPos(wt.boxMargin*2);for(const Q of s){const w=i[Q];w.stopy||(w.stopy=ti.getVerticalPos());const I=El.drawActor(t,w,wt,!0);h=Yi.getMax(h,I)}ti.bumpVerticalPos(h+wt.boxMargin)}else for(const h of s){const Q=i[h];El.drawActor(t,Q,wt,!1)}},Lxe=function(t,i,s,a){let h=0,Q=0;for(const w of s){const I=i[w],d=YTt(I),D=El.drawPopup(t,I,d,wt,wt.forceMenus,a);D.height>h&&(h=D.height),D.width+I.x>Q&&(Q=D.width+I.x)}return{maxHeight:h,maxWidth:Q}},zxe=function(t){Dw(wt,t),t.fontFamily&&(wt.actorFontFamily=wt.noteFontFamily=wt.messageFontFamily=t.fontFamily),t.fontSize&&(wt.actorFontSize=wt.noteFontSize=wt.messageFontSize=t.fontSize),t.fontWeight&&(wt.actorFontWeight=wt.noteFontWeight=wt.messageFontWeight=t.fontWeight)},y0A=function(t){return ti.activations.filter(function(i){return i.actor===t})},eye=function(t,i){const s=i[t],a=y0A(t),h=a.reduce(function(w,I){return Yi.getMin(w,I.startx)},s.x+s.width/2),Q=a.reduce(function(w,I){return Yi.getMax(w,I.stopx)},s.x+s.width/2);return[h,Q]};function vD(t,i,s,a,h){ti.bumpVerticalPos(s);let Q=a;if(i.id&&i.message&&t[i.id]){const w=t[i.id].width,I=ek(wt);i.message=ms.wrapLabel(`[${i.message}]`,w-2*wt.wrapPadding,I),i.width=w,i.wrap=!0;const d=ms.calculateTextDimensions(i.message,I),D=Yi.getMax(d.height,wt.labelBoxHeight);Q=a+D,_A.debug(`${D} - ${i.message}`)}h(i),ti.bumpVerticalPos(Q)}function dTt(t,i,s,a,h,Q,w){function I(D,N){D.x {JA.add(_.from),JA.add(_.to)}),j=j.filter(_=>JA.has(_))}CTt(D,N,U,j,0,W,!1);const QA=NTt(W,N,$,a);El.insertArrowHead(D),El.insertArrowCrossHead(D),El.insertArrowFilledHead(D),El.insertSequenceNumber(D);function hA(JA,_){const SA=ti.endActivation(JA);SA.starty+18>_&&(SA.starty=_-6,_+=12),El.drawActivation(D,SA,_,wt,y0A(JA.from.actor).length),ti.insert(SA.startx,_-10,SA.stopx,_)}let aA=1,iA=1;const BA=[],rA=[];W.forEach(function(JA,_){let SA,jA,dA;switch(JA.type){case a.db.LINETYPE.NOTE:ti.resetVerticalPos(),jA=JA.noteModel,ETt(D,jA);break;case a.db.LINETYPE.ACTIVE_START:ti.newActivation(JA,D,N);break;case a.db.LINETYPE.ACTIVE_END:hA(JA,ti.getVerticalPos());break;case a.db.LINETYPE.LOOP_START:vD(QA,JA,wt.boxMargin,wt.boxMargin+wt.boxTextMargin,kA=>ti.newLoop(kA));break;case a.db.LINETYPE.LOOP_END:SA=ti.endLoop(),El.drawLoop(D,SA,"loop",wt),ti.bumpVerticalPos(SA.stopy-ti.getVerticalPos()),ti.models.addLoop(SA);break;case a.db.LINETYPE.RECT_START:vD(QA,JA,wt.boxMargin,wt.boxMargin,kA=>ti.newLoop(void 0,kA.message));break;case a.db.LINETYPE.RECT_END:SA=ti.endLoop(),rA.push(SA),ti.models.addLoop(SA),ti.bumpVerticalPos(SA.stopy-ti.getVerticalPos());break;case a.db.LINETYPE.OPT_START:vD(QA,JA,wt.boxMargin,wt.boxMargin+wt.boxTextMargin,kA=>ti.newLoop(kA));break;case a.db.LINETYPE.OPT_END:SA=ti.endLoop(),El.drawLoop(D,SA,"opt",wt),ti.bumpVerticalPos(SA.stopy-ti.getVerticalPos()),ti.models.addLoop(SA);break;case a.db.LINETYPE.ALT_START:vD(QA,JA,wt.boxMargin,wt.boxMargin+wt.boxTextMargin,kA=>ti.newLoop(kA));break;case a.db.LINETYPE.ALT_ELSE:vD(QA,JA,wt.boxMargin+wt.boxTextMargin,wt.boxMargin,kA=>ti.addSectionToLoop(kA));break;case a.db.LINETYPE.ALT_END:SA=ti.endLoop(),El.drawLoop(D,SA,"alt",wt),ti.bumpVerticalPos(SA.stopy-ti.getVerticalPos()),ti.models.addLoop(SA);break;case a.db.LINETYPE.PAR_START:case a.db.LINETYPE.PAR_OVER_START:vD(QA,JA,wt.boxMargin,wt.boxMargin+wt.boxTextMargin,kA=>ti.newLoop(kA)),ti.saveVerticalPos();break;case a.db.LINETYPE.PAR_AND:vD(QA,JA,wt.boxMargin+wt.boxTextMargin,wt.boxMargin,kA=>ti.addSectionToLoop(kA));break;case a.db.LINETYPE.PAR_END:SA=ti.endLoop(),El.drawLoop(D,SA,"par",wt),ti.bumpVerticalPos(SA.stopy-ti.getVerticalPos()),ti.models.addLoop(SA);break;case a.db.LINETYPE.AUTONUMBER:aA=JA.message.start||aA,iA=JA.message.step||iA,JA.message.visible?a.db.enableSequenceNumbers():a.db.disableSequenceNumbers();break;case a.db.LINETYPE.CRITICAL_START:vD(QA,JA,wt.boxMargin,wt.boxMargin+wt.boxTextMargin,kA=>ti.newLoop(kA));break;case a.db.LINETYPE.CRITICAL_OPTION:vD(QA,JA,wt.boxMargin+wt.boxTextMargin,wt.boxMargin,kA=>ti.addSectionToLoop(kA));break;case a.db.LINETYPE.CRITICAL_END:SA=ti.endLoop(),El.drawLoop(D,SA,"critical",wt),ti.bumpVerticalPos(SA.stopy-ti.getVerticalPos()),ti.models.addLoop(SA);break;case a.db.LINETYPE.BREAK_START:vD(QA,JA,wt.boxMargin,wt.boxMargin+wt.boxTextMargin,kA=>ti.newLoop(kA));break;case a.db.LINETYPE.BREAK_END:SA=ti.endLoop(),El.drawLoop(D,SA,"break",wt),ti.bumpVerticalPos(SA.stopy-ti.getVerticalPos()),ti.models.addLoop(SA);break;default:try{dA=JA.msgModel,dA.starty=ti.getVerticalPos(),dA.sequenceIndex=aA,dA.sequenceVisible=a.db.showSequenceNumbers();const kA=fTt(D,dA);dTt(JA,dA,kA,_,N,U,R),BA.push({messageModel:dA,lineStartY:kA}),ti.models.addMessage(dA)}catch(kA){_A.error("error while drawing message",kA)}}[a.db.LINETYPE.SOLID_OPEN,a.db.LINETYPE.DOTTED_OPEN,a.db.LINETYPE.SOLID,a.db.LINETYPE.DOTTED,a.db.LINETYPE.SOLID_CROSS,a.db.LINETYPE.DOTTED_CROSS,a.db.LINETYPE.SOLID_POINT,a.db.LINETYPE.DOTTED_POINT].includes(JA.type)&&(aA=aA+iA)}),_A.debug("createdActors",U),_A.debug("destroyedActors",R),J8A(D,N,j,!1),BA.forEach(JA=>ITt(D,JA.messageModel,JA.lineStartY,a)),wt.mirrorActors&&J8A(D,N,j,!0),rA.forEach(JA=>El.drawBackgroundRect(D,JA)),vxe(D,N,j,wt),ti.models.boxes.forEach(function(JA){JA.height=ti.getVerticalPos()-JA.y,ti.insert(JA.x,JA.y,JA.x+JA.width,JA.height),JA.startx=JA.x,JA.starty=JA.y,JA.stopx=JA.startx+JA.width,JA.stopy=JA.starty+JA.height,JA.stroke="rgb(0,0,0, 0.5)",El.drawBox(D,JA,wt)}),X&&ti.bumpVerticalPos(wt.boxMargin);const FA=Lxe(D,N,j,d),{bounds:gA}=ti.getBounds();let fA=gA.stopy-gA.starty;fA {const w=t[Q];w.wrap&&(w.description=ms.wrapLabel(w.description,wt.width-2*wt.wrapPadding,G8A(wt)));const I=ms.calculateTextDimensions(w.description,G8A(wt));w.width=w.wrap?wt.width:Yi.getMax(wt.width,I.width+2*wt.wrapPadding),w.height=w.wrap?Yi.getMax(I.height,wt.height):wt.height,a=Yi.getMax(a,w.height)});for(const Q in i){const w=t[Q];if(!w)continue;const I=t[w.nextActor];if(!I){const U=i[Q]+wt.actorMargin-w.width/2;w.margin=Yi.getMax(U,wt.actorMargin);continue}const D=i[Q]+wt.actorMargin-w.width/2-I.width/2;w.margin=Yi.getMax(D,wt.actorMargin)}let h=0;return s.forEach(Q=>{const w=ek(wt);let I=Q.actorKeys.reduce((N,U)=>N+=t[U].width+(t[U].margin||0),0);I-=2*wt.boxTextMargin,Q.wrap&&(Q.name=ms.wrapLabel(Q.name,I-2*wt.wrapPadding,w));const d=ms.calculateTextDimensions(Q.name,w);h=Yi.getMax(d.height,h);const D=Yi.getMax(I,d.width+2*wt.wrapPadding);if(Q.margin=wt.boxTextMargin,I Q.textMaxHeight=h),Yi.getMax(a,wt.height)}const yTt=function(t,i,s){const a=i[t.from].x,h=i[t.to].x,Q=t.wrap&&t.message;let w=ms.calculateTextDimensions(Q?ms.wrapLabel(t.message,wt.width,zj(wt)):t.message,zj(wt));const I={width:Q?wt.width:Yi.getMax(wt.width,w.width+2*wt.noteMargin),height:0,startx:i[t.from].x,stopx:0,starty:0,stopy:0,message:t.message};return t.placement===s.db.PLACEMENT.RIGHTOF?(I.width=Q?Yi.getMax(wt.width,w.width):Yi.getMax(i[t.from].width/2+i[t.to].width/2,w.width+2*wt.noteMargin),I.startx=a+(i[t.from].width+wt.actorMargin)/2):t.placement===s.db.PLACEMENT.LEFTOF?(I.width=Q?Yi.getMax(wt.width,w.width+2*wt.noteMargin):Yi.getMax(i[t.from].width/2+i[t.to].width/2,w.width+2*wt.noteMargin),I.startx=a-I.width+(i[t.from].width-wt.actorMargin)/2):t.to===t.from?(w=ms.calculateTextDimensions(Q?ms.wrapLabel(t.message,Yi.getMax(wt.width,i[t.from].width),zj(wt)):t.message,zj(wt)),I.width=Q?Yi.getMax(wt.width,i[t.from].width):Yi.getMax(i[t.from].width,wt.width,w.width+2*wt.noteMargin),I.startx=a+(i[t.from].width-I.width)/2):(I.width=Math.abs(a+i[t.from].width/2-(h+i[t.to].width/2))+wt.actorMargin,I.startx=a R.actor).lastIndexOf(D.from.actor);delete ti.activations.splice(U,1)[0]}break}D.placement!==void 0?(I=yTt(D,i,a),D.noteModel=I,Q.forEach(U=>{w=U,w.from=Yi.getMin(w.from,I.startx),w.to=Yi.getMax(w.to,I.startx+I.width),w.width=Yi.getMax(w.width,Math.abs(w.from-w.to))-wt.labelBoxWidth})):(d=pTt(D,i,a),D.msgModel=d,d.startx&&d.stopx&&Q.length>0&&Q.forEach(U=>{if(w=U,d.startx===d.stopx){const R=i[D.from],T=i[D.to];w.from=Yi.getMin(R.x-d.width/2,R.x-R.width/2,w.from),w.to=Yi.getMax(T.x+d.width/2,T.x+R.width/2,w.to),w.width=Yi.getMax(w.width,Math.abs(w.to-w.from))-wt.labelBoxWidth}else w.from=Yi.getMin(d.startx,w.from),w.to=Yi.getMax(d.stopx,w.to),w.width=Yi.getMax(w.width,d.width)-wt.labelBoxWidth}))}),ti.activations=[],_A.debug("Loop type widths:",h),h},mTt={bounds:ti,drawActors:J8A,drawActorsPopup:Lxe,setConf:zxe,draw:FTt},UTt={parser:FRt,db:KRt,renderer:mTt,styles:XRt},bTt=Object.freeze(Object.defineProperty({__proto__:null,diagram:UTt},Symbol.toStringTag,{value:"Module"}));var k8A=function(){var t=function(XA,ce,ZA,pe){for(ZA=ZA||{},pe=XA.length;pe--;ZA[XA[pe]]=ce);return ZA},i=[1,34],s=[1,35],a=[1,36],h=[1,37],Q=[1,9],w=[1,8],I=[1,19],d=[1,20],D=[1,21],N=[1,40],U=[1,41],R=[1,27],T=[1,25],j=[1,26],W=[1,32],AA=[1,33],X=[1,28],K=[1,29],$=[1,30],QA=[1,31],hA=[1,45],aA=[1,42],iA=[1,43],BA=[1,44],rA=[1,46],FA=[1,24],gA=[1,16,24],fA=[1,60],DA=[1,61],eA=[1,62],GA=[1,63],cA=[1,64],JA=[1,65],_=[1,66],SA=[1,16,24,52],jA=[1,77],dA=[1,16,24,27,28,36,50,52,55,68,69,70,71,72,73,74,79,81],kA=[1,16,24,27,28,34,36,50,52,55,59,68,69,70,71,72,73,74,79,81,94,96,97,98,99],vA=[1,86],Fe=[28,94,96,97,98,99],at=[28,73,74,94,96,97,98,99],fe=[28,68,69,70,71,72,94,96,97,98,99],mt=[1,99],be=[1,16,24,50,52,55],ie=[1,16,24,36],ye=[8,9,10,11,19,23,44,46,48,53,57,58,60,61,63,65,75,76,78,82,94,96,97,98,99],Le={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,statements:6,direction:7,direction_tb:8,direction_bt:9,direction_rl:10,direction_lr:11,graphConfig:12,openDirective:13,typeDirective:14,closeDirective:15,NEWLINE:16,":":17,argDirective:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,CLASS_DIAGRAM:23,EOF:24,statement:25,classLabel:26,SQS:27,STR:28,SQE:29,namespaceName:30,alphaNumToken:31,className:32,classLiteralName:33,GENERICTYPE:34,relationStatement:35,LABEL:36,namespaceStatement:37,classStatement:38,methodStatement:39,annotationStatement:40,clickStatement:41,cssClassStatement:42,noteStatement:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,namespaceIdentifier:49,STRUCT_START:50,classStatements:51,STRUCT_STOP:52,NAMESPACE:53,classIdentifier:54,STYLE_SEPARATOR:55,members:56,CLASS:57,ANNOTATION_START:58,ANNOTATION_END:59,MEMBER:60,SEPARATOR:61,relation:62,NOTE_FOR:63,noteText:64,NOTE:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,CSSCLASS:82,commentToken:83,textToken:84,graphCodeTokens:85,textNoTagsToken:86,TAGSTART:87,TAGEND:88,"==":89,"--":90,PCT:91,DEFAULT:92,SPACE:93,MINUS:94,keywords:95,UNICODE_TEXT:96,NUM:97,ALPHA:98,BQUOTE_STR:99,$accept:0,$end:1},terminals_:{2:"error",8:"direction_tb",9:"direction_bt",10:"direction_rl",11:"direction_lr",16:"NEWLINE",17:":",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",23:"CLASS_DIAGRAM",24:"EOF",27:"SQS",28:"STR",29:"SQE",34:"GENERICTYPE",36:"LABEL",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",50:"STRUCT_START",52:"STRUCT_STOP",53:"NAMESPACE",55:"STYLE_SEPARATOR",57:"CLASS",58:"ANNOTATION_START",59:"ANNOTATION_END",60:"MEMBER",61:"SEPARATOR",63:"NOTE_FOR",65:"NOTE",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"CSSCLASS",85:"graphCodeTokens",87:"TAGSTART",88:"TAGEND",89:"==",90:"--",91:"PCT",92:"DEFAULT",93:"SPACE",94:"MINUS",95:"keywords",96:"UNICODE_TEXT",97:"NUM",98:"ALPHA",99:"BQUOTE_STR"},productions_:[0,[3,1],[3,2],[3,1],[7,1],[7,1],[7,1],[7,1],[4,1],[5,4],[5,6],[13,1],[14,1],[18,1],[15,1],[12,4],[6,1],[6,2],[6,3],[26,3],[30,1],[30,2],[32,1],[32,1],[32,2],[32,2],[32,2],[25,1],[25,2],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,2],[25,2],[25,1],[37,4],[37,5],[49,2],[51,1],[51,2],[51,3],[38,1],[38,3],[38,4],[38,6],[54,2],[54,3],[40,4],[56,1],[56,2],[39,1],[39,2],[39,1],[39,1],[35,3],[35,4],[35,4],[35,5],[43,3],[43,2],[62,3],[62,2],[62,2],[62,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[41,3],[41,4],[41,3],[41,4],[41,4],[41,5],[41,3],[41,4],[41,4],[41,5],[41,4],[41,5],[41,5],[41,6],[42,3],[83,1],[83,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[86,1],[86,1],[86,1],[86,1],[31,1],[31,1],[31,1],[31,1],[33,1],[64,1]],performAction:function(ce,ZA,pe,zA,Ft,RA,Et){var $A=RA.length-1;switch(Ft){case 4:zA.setDirection("TB");break;case 5:zA.setDirection("BT");break;case 6:zA.setDirection("RL");break;case 7:zA.setDirection("LR");break;case 11:zA.parseDirective("%%{","open_directive");break;case 12:zA.parseDirective(RA[$A],"type_directive");break;case 13:RA[$A]=RA[$A].trim().replace(/'/g,'"'),zA.parseDirective(RA[$A],"arg_directive");break;case 14:zA.parseDirective("}%%","close_directive","class");break;case 19:this.$=RA[$A-1];break;case 20:case 22:case 23:this.$=RA[$A];break;case 21:case 24:this.$=RA[$A-1]+RA[$A];break;case 25:case 26:this.$=RA[$A-1]+"~"+RA[$A]+"~";break;case 27:zA.addRelation(RA[$A]);break;case 28:RA[$A-1].title=zA.cleanupLabel(RA[$A]),zA.addRelation(RA[$A-1]);break;case 37:this.$=RA[$A].trim(),zA.setAccTitle(this.$);break;case 38:case 39:this.$=RA[$A].trim(),zA.setAccDescription(this.$);break;case 40:zA.addClassesToNamespace(RA[$A-3],RA[$A-1]);break;case 41:zA.addClassesToNamespace(RA[$A-4],RA[$A-1]);break;case 42:this.$=RA[$A],zA.addNamespace(RA[$A]);break;case 43:this.$=[RA[$A]];break;case 44:this.$=[RA[$A-1]];break;case 45:RA[$A].unshift(RA[$A-2]),this.$=RA[$A];break;case 47:zA.setCssClass(RA[$A-2],RA[$A]);break;case 48:zA.addMembers(RA[$A-3],RA[$A-1]);break;case 49:zA.setCssClass(RA[$A-5],RA[$A-3]),zA.addMembers(RA[$A-5],RA[$A-1]);break;case 50:this.$=RA[$A],zA.addClass(RA[$A]);break;case 51:this.$=RA[$A-1],zA.addClass(RA[$A-1]),zA.setClassLabel(RA[$A-1],RA[$A]);break;case 52:zA.addAnnotation(RA[$A],RA[$A-2]);break;case 53:this.$=[RA[$A]];break;case 54:RA[$A].push(RA[$A-1]),this.$=RA[$A];break;case 55:break;case 56:zA.addMember(RA[$A-1],zA.cleanupLabel(RA[$A]));break;case 57:break;case 58:break;case 59:this.$={id1:RA[$A-2],id2:RA[$A],relation:RA[$A-1],relationTitle1:"none",relationTitle2:"none"};break;case 60:this.$={id1:RA[$A-3],id2:RA[$A],relation:RA[$A-1],relationTitle1:RA[$A-2],relationTitle2:"none"};break;case 61:this.$={id1:RA[$A-3],id2:RA[$A],relation:RA[$A-2],relationTitle1:"none",relationTitle2:RA[$A-1]};break;case 62:this.$={id1:RA[$A-4],id2:RA[$A],relation:RA[$A-2],relationTitle1:RA[$A-3],relationTitle2:RA[$A-1]};break;case 63:zA.addNote(RA[$A],RA[$A-1]);break;case 64:zA.addNote(RA[$A]);break;case 65:this.$={type1:RA[$A-2],type2:RA[$A],lineType:RA[$A-1]};break;case 66:this.$={type1:"none",type2:RA[$A],lineType:RA[$A-1]};break;case 67:this.$={type1:RA[$A-1],type2:"none",lineType:RA[$A]};break;case 68:this.$={type1:"none",type2:"none",lineType:RA[$A]};break;case 69:this.$=zA.relationType.AGGREGATION;break;case 70:this.$=zA.relationType.EXTENSION;break;case 71:this.$=zA.relationType.COMPOSITION;break;case 72:this.$=zA.relationType.DEPENDENCY;break;case 73:this.$=zA.relationType.LOLLIPOP;break;case 74:this.$=zA.lineType.LINE;break;case 75:this.$=zA.lineType.DOTTED_LINE;break;case 76:case 82:this.$=RA[$A-2],zA.setClickEvent(RA[$A-1],RA[$A]);break;case 77:case 83:this.$=RA[$A-3],zA.setClickEvent(RA[$A-2],RA[$A-1]),zA.setTooltip(RA[$A-2],RA[$A]);break;case 78:this.$=RA[$A-2],zA.setLink(RA[$A-1],RA[$A]);break;case 79:this.$=RA[$A-3],zA.setLink(RA[$A-2],RA[$A-1],RA[$A]);break;case 80:this.$=RA[$A-3],zA.setLink(RA[$A-2],RA[$A-1]),zA.setTooltip(RA[$A-2],RA[$A]);break;case 81:this.$=RA[$A-4],zA.setLink(RA[$A-3],RA[$A-2],RA[$A]),zA.setTooltip(RA[$A-3],RA[$A-1]);break;case 84:this.$=RA[$A-3],zA.setClickEvent(RA[$A-2],RA[$A-1],RA[$A]);break;case 85:this.$=RA[$A-4],zA.setClickEvent(RA[$A-3],RA[$A-2],RA[$A-1]),zA.setTooltip(RA[$A-3],RA[$A]);break;case 86:this.$=RA[$A-3],zA.setLink(RA[$A-2],RA[$A]);break;case 87:this.$=RA[$A-4],zA.setLink(RA[$A-3],RA[$A-1],RA[$A]);break;case 88:this.$=RA[$A-4],zA.setLink(RA[$A-3],RA[$A-1]),zA.setTooltip(RA[$A-3],RA[$A]);break;case 89:this.$=RA[$A-5],zA.setLink(RA[$A-4],RA[$A-2],RA[$A]),zA.setTooltip(RA[$A-4],RA[$A-1]);break;case 90:zA.setCssClass(RA[$A-1],RA[$A]);break}},table:[{3:1,4:2,5:3,6:4,7:18,8:i,9:s,10:a,11:h,12:5,13:6,19:Q,23:w,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:I,46:d,48:D,49:23,53:N,54:24,57:U,58:R,60:T,61:j,63:W,65:AA,75:X,76:K,78:$,82:QA,94:hA,96:aA,97:iA,98:BA,99:rA},{1:[3]},{1:[2,1]},{3:47,4:2,5:3,6:4,7:18,8:i,9:s,10:a,11:h,12:5,13:6,19:Q,23:w,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:I,46:d,48:D,49:23,53:N,54:24,57:U,58:R,60:T,61:j,63:W,65:AA,75:X,76:K,78:$,82:QA,94:hA,96:aA,97:iA,98:BA,99:rA},{1:[2,3]},{1:[2,8]},{14:48,20:[1,49]},t(FA,[2,16],{16:[1,50]}),{16:[1,51]},{20:[2,11]},t(gA,[2,27],{36:[1,52]}),t(gA,[2,29]),t(gA,[2,30]),t(gA,[2,31]),t(gA,[2,32]),t(gA,[2,33]),t(gA,[2,34]),t(gA,[2,35]),t(gA,[2,36]),{45:[1,53]},{47:[1,54]},t(gA,[2,39]),t(gA,[2,55],{62:55,66:58,67:59,28:[1,56],36:[1,57],68:fA,69:DA,70:eA,71:GA,72:cA,73:JA,74:_}),{50:[1,67]},t(SA,[2,46],{50:[1,69],55:[1,68]}),t(gA,[2,57]),t(gA,[2,58]),{31:70,94:hA,96:aA,97:iA,98:BA},{31:38,32:71,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},{31:38,32:72,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},{31:38,32:73,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},{28:[1,74]},{31:38,32:75,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},{28:jA,64:76},t(gA,[2,4]),t(gA,[2,5]),t(gA,[2,6]),t(gA,[2,7]),t(dA,[2,22],{31:38,33:39,32:78,34:[1,79],94:hA,96:aA,97:iA,98:BA,99:rA}),t(dA,[2,23],{34:[1,80]}),{30:81,31:82,94:hA,96:aA,97:iA,98:BA},{31:38,32:83,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},t(kA,[2,104]),t(kA,[2,105]),t(kA,[2,106]),t(kA,[2,107]),t([1,16,24,27,28,34,36,50,52,55,68,69,70,71,72,73,74,79,81],[2,108]),{1:[2,2]},{15:84,17:[1,85],22:vA},t([17,22],[2,12]),t(FA,[2,17],{25:7,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,7:18,32:22,49:23,54:24,31:38,33:39,6:87,8:i,9:s,10:a,11:h,44:I,46:d,48:D,53:N,57:U,58:R,60:T,61:j,63:W,65:AA,75:X,76:K,78:$,82:QA,94:hA,96:aA,97:iA,98:BA,99:rA}),{6:88,7:18,8:i,9:s,10:a,11:h,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:I,46:d,48:D,49:23,53:N,54:24,57:U,58:R,60:T,61:j,63:W,65:AA,75:X,76:K,78:$,82:QA,94:hA,96:aA,97:iA,98:BA,99:rA},t(gA,[2,28]),t(gA,[2,37]),t(gA,[2,38]),{28:[1,90],31:38,32:89,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},{62:91,66:58,67:59,68:fA,69:DA,70:eA,71:GA,72:cA,73:JA,74:_},t(gA,[2,56]),{67:92,73:JA,74:_},t(Fe,[2,68],{66:93,68:fA,69:DA,70:eA,71:GA,72:cA}),t(at,[2,69]),t(at,[2,70]),t(at,[2,71]),t(at,[2,72]),t(at,[2,73]),t(fe,[2,74]),t(fe,[2,75]),{16:[1,95],38:96,51:94,54:24,57:U},{31:97,94:hA,96:aA,97:iA,98:BA},{56:98,60:mt},{59:[1,100]},{28:[1,101]},{28:[1,102]},{79:[1,103],81:[1,104]},{31:105,94:hA,96:aA,97:iA,98:BA},{28:jA,64:106},t(gA,[2,64]),t(gA,[2,109]),t(dA,[2,24]),t(dA,[2,25]),t(dA,[2,26]),{50:[2,42]},{30:107,31:82,50:[2,20],94:hA,96:aA,97:iA,98:BA},t(be,[2,50],{26:108,27:[1,109]}),{16:[1,110]},{18:111,21:[1,112]},{16:[2,14]},t(FA,[2,18]),{24:[1,113]},t(ie,[2,59]),{31:38,32:114,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},{28:[1,116],31:38,32:115,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},t(Fe,[2,67],{66:117,68:fA,69:DA,70:eA,71:GA,72:cA}),t(Fe,[2,66]),{52:[1,118]},{38:96,51:119,54:24,57:U},{16:[1,120],52:[2,43]},t(SA,[2,47],{50:[1,121]}),{52:[1,122]},{52:[2,53],56:123,60:mt},{31:38,32:124,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},t(gA,[2,76],{28:[1,125]}),t(gA,[2,78],{28:[1,127],77:[1,126]}),t(gA,[2,82],{28:[1,128],80:[1,129]}),{28:[1,130]},t(gA,[2,90]),t(gA,[2,63]),{50:[2,21]},t(be,[2,51]),{28:[1,131]},t(ye,[2,9]),{15:132,22:vA},{22:[2,13]},{1:[2,15]},t(ie,[2,61]),t(ie,[2,60]),{31:38,32:133,33:39,94:hA,96:aA,97:iA,98:BA,99:rA},t(Fe,[2,65]),t(gA,[2,40]),{52:[1,134]},{38:96,51:135,52:[2,44],54:24,57:U},{56:136,60:mt},t(SA,[2,48]),{52:[2,54]},t(gA,[2,52]),t(gA,[2,77]),t(gA,[2,79]),t(gA,[2,80],{77:[1,137]}),t(gA,[2,83]),t(gA,[2,84],{28:[1,138]}),t(gA,[2,86],{28:[1,140],77:[1,139]}),{29:[1,141]},{16:[1,142]},t(ie,[2,62]),t(gA,[2,41]),{52:[2,45]},{52:[1,143]},t(gA,[2,81]),t(gA,[2,85]),t(gA,[2,87]),t(gA,[2,88],{77:[1,144]}),t(be,[2,19]),t(ye,[2,10]),t(SA,[2,49]),t(gA,[2,89])],defaultActions:{2:[2,1],4:[2,3],5:[2,8],9:[2,11],47:[2,2],81:[2,42],86:[2,14],107:[2,21],112:[2,13],113:[2,15],123:[2,54],135:[2,45]},parseError:function(ce,ZA){if(ZA.recoverable)this.trace(ce);else{var pe=new Error(ce);throw pe.hash=ZA,pe}},parse:function(ce){var ZA=this,pe=[0],zA=[],Ft=[null],RA=[],Et=this.table,$A="",Ot=0,zt=0,Gt=2,sn=1,Ke=RA.slice.call(arguments,1),lt=Object.create(this.lexer),gn={yy:{}};for(var Rt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Rt)&&(gn.yy[Rt]=this.yy[Rt]);lt.setInput(ce,gn.yy),gn.yy.lexer=lt,gn.yy.parser=this,typeof lt.yylloc>"u"&&(lt.yylloc={});var ln=lt.yylloc;RA.push(ln);var hi=lt.options&<.options.ranges;typeof gn.yy.parseError=="function"?this.parseError=gn.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Oi(){var ta;return ta=zA.pop()||lt.lex()||sn,typeof ta!="number"&&(ta instanceof Array&&(zA=ta,ta=zA.pop()),ta=ZA.symbols_[ta]||ta),ta}for(var ki,mr,wn,Xn,Wi={},mn,Ec,An,Da;;){if(mr=pe[pe.length-1],this.defaultActions[mr]?wn=this.defaultActions[mr]:((ki===null||typeof ki>"u")&&(ki=Oi()),wn=Et[mr]&&Et[mr][ki]),typeof wn>"u"||!wn.length||!wn[0]){var Tn="";Da=[];for(mn in Et[mr])this.terminals_[mn]&&mn>Gt&&Da.push("'"+this.terminals_[mn]+"'");lt.showPosition?Tn="Parse error on line "+(Ot+1)+`:`+lt.showPosition()+`Expecting `+Da.join(", ")+", got '"+(this.terminals_[ki]||ki)+"'":Tn="Parse error on line "+(Ot+1)+": Unexpected "+(ki==sn?"end of input":"'"+(this.terminals_[ki]||ki)+"'"),this.parseError(Tn,{text:lt.match,token:this.terminals_[ki]||ki,line:lt.yylineno,loc:ln,expected:Da})}if(wn[0]instanceof Array&&wn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+mr+", token: "+ki);switch(wn[0]){case 1:pe.push(ki),Ft.push(lt.yytext),RA.push(lt.yylloc),pe.push(wn[1]),ki=null,zt=lt.yyleng,$A=lt.yytext,Ot=lt.yylineno,ln=lt.yylloc;break;case 2:if(Ec=this.productions_[wn[1]][1],Wi.$=Ft[Ft.length-Ec],Wi._$={first_line:RA[RA.length-(Ec||1)].first_line,last_line:RA[RA.length-1].last_line,first_column:RA[RA.length-(Ec||1)].first_column,last_column:RA[RA.length-1].last_column},hi&&(Wi._$.range=[RA[RA.length-(Ec||1)].range[0],RA[RA.length-1].range[1]]),Xn=this.performAction.apply(Wi,[$A,zt,Ot,gn.yy,wn[1],Ft,RA].concat(Ke)),typeof Xn<"u")return Xn;Ec&&(pe=pe.slice(0,-1*Ec*2),Ft=Ft.slice(0,-1*Ec),RA=RA.slice(0,-1*Ec)),pe.push(this.productions_[wn[1]][0]),Ft.push(Wi.$),RA.push(Wi._$),An=Et[pe[pe.length-2]][pe[pe.length-1]],pe.push(An);break;case 3:return!0}}return!0}},HA=function(){var XA={EOF:1,parseError:function(ZA,pe){if(this.yy.parser)this.yy.parser.parseError(ZA,pe);else throw new Error(ZA)},setInput:function(ce,ZA){return this.yy=ZA||this.yy||{},this._input=ce,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},input:function(){var ce=this._input[0];this.yytext+=ce,this.yyleng++,this.offset++,this.match+=ce,this.matched+=ce;var ZA=ce.match(/(?:\r\n?|\n).*/g);return ZA?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ce},unput:function(ce){var ZA=ce.length,pe=ce.split(/(?:\r\n?|\n)/g);this._input=ce+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ZA),this.offset-=ZA;var zA=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),pe.length-1&&(this.yylineno-=pe.length-1);var Ft=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:pe?(pe.length===zA.length?this.yylloc.first_column:0)+zA[zA.length-pe.length].length-pe[0].length:this.yylloc.first_column-ZA},this.options.ranges&&(this.yylloc.range=[Ft[0],Ft[0]+this.yyleng-ZA]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(ce){this.unput(this.match.slice(ce))},pastInput:function(){var ce=this.matched.substr(0,this.matched.length-this.match.length);return(ce.length>20?"...":"")+ce.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ce=this.match;return ce.length<20&&(ce+=this._input.substr(0,20-ce.length)),(ce.substr(0,20)+(ce.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ce=this.pastInput(),ZA=new Array(ce.length+1).join("-");return ce+this.upcomingInput()+``+ZA+"^"},test_match:function(ce,ZA){var pe,zA,Ft;if(this.options.backtrack_lexer&&(Ft={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&&(Ft.yylloc.range=this.yylloc.range.slice(0))),zA=ce[0].match(/(?:\r\n?|\n).*/g),zA&&(this.yylineno+=zA.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:zA?zA[zA.length-1].length-zA[zA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ce[0].length},this.yytext+=ce[0],this.match+=ce[0],this.matches=ce,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(ce[0].length),this.matched+=ce[0],pe=this.performAction.call(this,this.yy,this,ZA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),pe)return pe;if(this._backtrack){for(var RA in Ft)this[RA]=Ft[RA];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ce,ZA,pe,zA;this._more||(this.yytext="",this.match="");for(var Ft=this._currentRules(),RA=0;RA ZA[0].length)){if(ZA=pe,zA=RA,this.options.backtrack_lexer){if(ce=this.test_match(pe,Ft[RA]),ce!==!1)return ce;if(this._backtrack){ZA=!1;continue}else return!1}else if(!this.options.flex)break}return ZA?(ce=this.test_match(ZA,Ft[zA]),ce!==!1?ce:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ZA=this.next();return ZA||this.lex()},begin:function(ZA){this.conditionStack.push(ZA)},popState:function(){var ZA=this.conditionStack.length-1;return ZA>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ZA){return ZA=this.conditionStack.length-1-Math.abs(ZA||0),ZA>=0?this.conditionStack[ZA]:"INITIAL"},pushState:function(ZA){this.begin(ZA)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(ZA,pe,zA,Ft){switch(zA){case 0:return this.begin("open_directive"),19;case 1:return 8;case 2:return 9;case 3:return 10;case 4:return 11;case 5:return this.begin("type_directive"),20;case 6:return this.popState(),this.begin("arg_directive"),17;case 7:return this.popState(),this.popState(),22;case 8:return 21;case 9:break;case 10:break;case 11:return this.begin("acc_title"),44;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),46;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 16;case 19:break;case 20:return 23;case 21:return 23;case 22:return"EDGE_STATE";case 23:this.begin("callback_name");break;case 24:this.popState();break;case 25:this.popState(),this.begin("callback_args");break;case 26:return 79;case 27:this.popState();break;case 28:return 80;case 29:this.popState();break;case 30:return"STR";case 31:this.begin("string");break;case 32:return this.begin("namespace"),53;case 33:return this.popState(),16;case 34:break;case 35:return this.begin("namespace-body"),50;case 36:return this.popState(),52;case 37:return"EOF_IN_STRUCT";case 38:return 16;case 39:break;case 40:return"EDGE_STATE";case 41:return this.begin("class"),57;case 42:return this.popState(),16;case 43:break;case 44:return this.popState(),this.popState(),52;case 45:return this.begin("class-body"),50;case 46:return this.popState(),52;case 47:return"EOF_IN_STRUCT";case 48:return"EDGE_STATE";case 49:return"OPEN_IN_STRUCT";case 50:break;case 51:return"MEMBER";case 52:return 82;case 53:return 75;case 54:return 76;case 55:return 78;case 56:return 63;case 57:return 65;case 58:return 58;case 59:return 59;case 60:return 81;case 61:this.popState();break;case 62:return"GENERICTYPE";case 63:this.begin("generic");break;case 64:this.popState();break;case 65:return"BQUOTE_STR";case 66:this.begin("bqstring");break;case 67:return 77;case 68:return 77;case 69:return 77;case 70:return 77;case 71:return 69;case 72:return 69;case 73:return 71;case 74:return 71;case 75:return 70;case 76:return 68;case 77:return 72;case 78:return 73;case 79:return 74;case 80:return 36;case 81:return 55;case 82:return 94;case 83:return"DOT";case 84:return"PLUS";case 85:return 91;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 98;case 89:return 27;case 90:return 29;case 91:return"PUNCTUATION";case 92:return 97;case 93:return 96;case 94:return 93;case 95:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\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]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?: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)/,/^(?:$)/],conditions:{"namespace-body":{rules:[31,36,37,38,39,40,41,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},namespace:{rules:[31,32,33,34,35,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},"class-body":{rules:[31,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},class:{rules:[31,42,43,44,45,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},acc_descr_multiline:{rules:[16,17,31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},acc_descr:{rules:[14,31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},acc_title:{rules:[12,31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},arg_directive:{rules:[7,8,31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},type_directive:{rules:[6,7,31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},open_directive:{rules:[5,31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},callback_args:{rules:[27,28,31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},callback_name:{rules:[24,25,26,31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},href:{rules:[31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},struct:{rules:[31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},generic:{rules:[31,52,53,54,55,56,57,58,59,60,61,62,63,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],inclusive:!1},bqstring:{rules:[31,52,53,54,55,56,57,58,59,60,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],inclusive:!1},string:{rules:[29,30,31,52,53,54,55,56,57,58,59,60,63,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],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,31,32,41,52,53,54,55,56,57,58,59,60,63,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],inclusive:!0}}};return XA}();Le.lexer=HA;function WA(){this.yy={}}return WA.prototype=Le,Le.Parser=WA,new WA}();k8A.parser=k8A;const Pxe=k8A,p0A="classId-";let ISA=[],hh={},g1A=[],tye=0,ob={},R8A=0,cZ=[];const Kp=t=>Yi.sanitizeText(t,Je()),HTt=function(t,i,s){zu.parseDirective(this,t,i,s)},TS=function(t){let i="",s=t;if(t.indexOf("~")>0){const a=t.split("~");s=Kp(a[0]),i=Kp(a[1])}return{className:s,type:i}},xTt=function(t,i){i&&(i=Kp(i));const{className:s}=TS(t);hh[s].label=i},T8A=function(t){const i=TS(t);hh[i.className]===void 0&&(hh[i.className]={id:i.className,type:i.type,label:i.className,cssClasses:[],methods:[],members:[],annotations:[],domId:p0A+i.className+"-"+tye},tye++)},Oxe=function(t){if(t in hh)return hh[t].domId;throw new Error("Class not found: "+t)},GTt=function(){ISA=[],hh={},g1A=[],cZ=[],cZ.push(Kxe),ob={},R8A=0,g0()},JTt=function(t){return hh[t]},kTt=function(){return hh},RTt=function(){return ISA},TTt=function(){return g1A},vTt=function(t){_A.debug("Adding relation: "+JSON.stringify(t)),T8A(t.id1),T8A(t.id2),t.id1=TS(t.id1).className,t.id2=TS(t.id2).className,t.relationTitle1=Yi.sanitizeText(t.relationTitle1.trim(),Je()),t.relationTitle2=Yi.sanitizeText(t.relationTitle2.trim(),Je()),ISA.push(t)},jTt=function(t,i){const s=TS(t).className;hh[s].annotations.push(i)},Wxe=function(t,i){const s=TS(t).className,a=hh[s];if(typeof i=="string"){const h=i.trim();h.startsWith("<<")&&h.endsWith(">>")?a.annotations.push(Kp(h.substring(2,h.length-2))):h.indexOf(")")>0?a.methods.push(Kp(h)):h&&a.members.push(Kp(h))}},STt=function(t,i){Array.isArray(i)&&(i.reverse(),i.forEach(s=>Wxe(t,s)))},LTt=function(t,i){const s={id:`note${g1A.length}`,class:i,text:t};g1A.push(s)},zTt=function(t){return t.startsWith(":")&&(t=t.substring(1)),Kp(t.trim())},CSA=function(t,i){t.split(",").forEach(function(s){let a=s;s[0].match(/\d/)&&(a=p0A+a),hh[a]!==void 0&&hh[a].cssClasses.push(i)})},PTt=function(t,i){t.split(",").forEach(function(s){i!==void 0&&(hh[s].tooltip=Kp(i))})},OTt=function(t,i){return i?ob[i].classes[t].tooltip:hh[t].tooltip},WTt=function(t,i,s){const a=Je();t.split(",").forEach(function(h){let Q=h;h[0].match(/\d/)&&(Q=p0A+Q),hh[Q]!==void 0&&(hh[Q].link=ms.formatUrl(i,a),a.securityLevel==="sandbox"?hh[Q].linkTarget="_top":typeof s=="string"?hh[Q].linkTarget=Kp(s):hh[Q].linkTarget="_blank")}),CSA(t,"clickable")},KTt=function(t,i,s){t.split(",").forEach(function(a){VTt(a,i,s),hh[a].haveCallback=!0}),CSA(t,"clickable")},VTt=function(t,i,s){if(Je().securityLevel!=="loose"||i===void 0)return;const h=t;if(hh[h]!==void 0){const Q=Oxe(h);let w=[];if(typeof s=="string"){w=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let I=0;I ")),h.classed("hover",!0)}).on("mouseout",function(){i.transition().duration(500).style("opacity",0),Nn(this).classed("hover",!1)})};cZ.push(Kxe);let Vxe="TB";const _Tt=()=>Vxe,$Tt=t=>{Vxe=t},A8t=function(t){ob[t]===void 0&&(ob[t]={id:t,classes:{},children:{},domId:p0A+t+"-"+R8A},R8A++)},e8t=function(t){return ob[t]},t8t=function(){return ob},n8t=function(t,i){ob[t]!==void 0&&i.map(s=>{hh[s].parent=t,ob[t].classes[s]=hh[s]})},h1A={parseDirective:HTt,setAccTitle:A1,getAccTitle:h0,getAccDescription:u0,setAccDescription:l0,getConfig:()=>Je().class,addClass:T8A,bindFunctions:XTt,clear:GTt,getClass:JTt,getClasses:kTt,getNotes:TTt,addAnnotation:jTt,addNote:LTt,getRelations:RTt,addRelation:vTt,getDirection:_Tt,setDirection:$Tt,addMember:Wxe,addMembers:STt,cleanupLabel:zTt,lineType:ZTt,relationType:qTt,setClickEvent:KTt,setCssClass:CSA,setLink:WTt,getTooltip:OTt,setTooltip:PTt,lookUpDomId:Oxe,setDiagramTitle:EI,getDiagramTitle:zE,setClassLabel:xTt,addNamespace:A8t,addClassesToNamespace:n8t,getNamespace:e8t,getNamespaces:t8t},i8t=t=>`g.classGroup text { fill: ${t.nodeBorder}; fill: ${t.classText}; stroke: none; font-family: ${t.fontFamily}; font-size: 10px; .title { font-weight: bolder; }}.nodeLabel, .edgeLabel { color: ${t.classText};}.edgeLabel .label rect { fill: ${t.mainBkg};}.label text { fill: ${t.classText};}.edgeLabel .label span { background: ${t.mainBkg};}.classTitle { font-weight: bolder;}.node rect, .node circle, .node ellipse, .node polygon, .node path { fill: ${t.mainBkg}; stroke: ${t.nodeBorder}; stroke-width: 1px; }.divider { stroke: ${t.nodeBorder}; stroke-width: 1;}g.clickable { cursor: pointer;}g.classGroup rect { fill: ${t.mainBkg}; stroke: ${t.nodeBorder};}g.classGroup line { stroke: ${t.nodeBorder}; stroke-width: 1;}.classLabel .box { stroke: none; stroke-width: 0; fill: ${t.mainBkg}; opacity: 0.5;}.classLabel .label { fill: ${t.nodeBorder}; font-size: 10px;}.relation { stroke: ${t.lineColor}; stroke-width: 1; fill: none;}.dashed-line{ stroke-dasharray: 3;}.dotted-line{ stroke-dasharray: 1 2;}#compositionStart, .composition { fill: ${t.lineColor} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}#compositionEnd, .composition { fill: ${t.lineColor} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}#dependencyStart, .dependency { fill: ${t.lineColor} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}#dependencyStart, .dependency { fill: ${t.lineColor} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}#extensionStart, .extension { fill: ${t.mainBkg} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}#extensionEnd, .extension { fill: ${t.mainBkg} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}#aggregationStart, .aggregation { fill: ${t.mainBkg} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}#aggregationEnd, .aggregation { fill: ${t.mainBkg} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}#lollipopStart, .lollipop { fill: ${t.mainBkg} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}#lollipopEnd, .lollipop { fill: ${t.mainBkg} !important; stroke: ${t.lineColor} !important; stroke-width: 1;}.edgeTerminals { font-size: 11px;}.classTitleText { text-anchor: middle; font-size: 18px; fill: ${t.textColor};}`,Xxe=i8t;let sQA={};const wwA=20,VV=function(t){const i=Object.entries(sQA).find(s=>s[1].label===t);if(i)return i[0]},r8t=function(t){t.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"),t.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"),t.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"),t.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"),t.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"),t.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"),t.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"),t.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")},c8t=function(t,i,s,a){const h=Je().class;sQA={},_A.info("Rendering diagram "+t);const Q=Je().securityLevel;let w;Q==="sandbox"&&(w=Nn("#i"+i));const I=Nn(Q==="sandbox"?w.nodes()[0].contentDocument.body:"body"),d=I.select(`[id='${i}']`);r8t(d);const D=new Pu({multigraph:!0});D.setGraph({isMultiGraph:!0}),D.setDefaultEdgeLabel(function(){return{}});const N=a.db.getClasses(),U=Object.keys(N);for(const K of U){const $=N[K],QA=LRA.drawClass(d,$,h,a);sQA[QA.id]=QA,D.setNode(QA.id,QA),_A.info("Org height: "+QA.height)}a.db.getRelations().forEach(function(K){_A.info("tjoho"+VV(K.id1)+VV(K.id2)+JSON.stringify(K)),D.setEdge(VV(K.id1),VV(K.id2),{relation:K},K.title||"DEFAULT")}),a.db.getNotes().forEach(function(K){_A.debug(`Adding note: ${JSON.stringify(K)}`);const $=LRA.drawNote(d,K,h,a);sQA[$.id]=$,D.setNode($.id,$),K.class&&K.class in N&&D.setEdge(K.id,VV(K.class),{relation:{id1:K.id,id2:K.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),n5(D),D.nodes().forEach(function(K){K!==void 0&&D.node(K)!==void 0&&(_A.debug("Node "+K+": "+JSON.stringify(D.node(K))),I.select("#"+(a.db.lookUpDomId(K)||K)).attr("transform","translate("+(D.node(K).x-D.node(K).width/2)+","+(D.node(K).y-D.node(K).height/2)+" )"))}),D.edges().forEach(function(K){K!==void 0&&D.edge(K)!==void 0&&(_A.debug("Edge "+K.v+" -> "+K.w+": "+JSON.stringify(D.edge(K))),LRA.drawEdge(d,D.edge(K),D.edge(K).relation,h,a))});const j=d.node().getBBox(),W=j.width+wwA*2,AA=j.height+wwA*2;B0(d,AA,W,h.useMaxWidth);const X=`${j.x-wwA} ${j.y-wwA} ${W} ${AA}`;_A.debug(`viewBox ${X}`),d.attr("viewBox",X)},s8t={draw:c8t},o8t={parser:Pxe,db:h1A,renderer:s8t,styles:Xxe,init:t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,h1A.clear()}},a8t=Object.freeze(Object.defineProperty({__proto__:null,diagram:o8t},Symbol.toStringTag,{value:"Module"})),dSA=t=>Yi.sanitizeText(t,Je());let v8A={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const B8t=function(t,i,s,a){const h=Object.keys(t);_A.info("keys:",h),_A.info(t),h.forEach(function(Q){var w,I;const d=t[Q],N={shape:"rect",id:d.id,domId:d.domId,labelText:dSA(d.id),labelStyle:"",style:"fill: none; stroke: black",padding:((w=Je().flowchart)==null?void 0:w.padding)??((I=Je().class)==null?void 0:I.padding)};i.setNode(d.id,N),Zxe(d.classes,i,s,a,d.id),_A.info("setNode",N)})},Zxe=function(t,i,s,a,h){const Q=Object.keys(t);_A.info("keys:",Q),_A.info(t),Q.filter(w=>t[w].parent==h).forEach(function(w){var I,d;const D=t[w],N=D.cssClasses.join(" "),U={labelStyle:"",style:""},R=D.label??D.id,T=0,j="class_box",W={labelStyle:U.labelStyle,shape:j,labelText:dSA(R),classData:D,rx:T,ry:T,class:N,style:U.style,id:D.id,domId:D.domId,tooltip:a.db.getTooltip(D.id,h)||"",haveCallback:D.haveCallback,link:D.link,width:D.type==="group"?500:void 0,type:D.type,padding:((I=Je().flowchart)==null?void 0:I.padding)??((d=Je().class)==null?void 0:d.padding)};i.setNode(D.id,W),h&&i.setParent(D.id,h),_A.info("setNode",W)})},g8t=function(t,i,s,a){_A.info(t),t.forEach(function(h,Q){var w,I;const d=h,D="",N={labelStyle:"",style:""},U=d.text,R=0,T="note",j={labelStyle:N.labelStyle,shape:T,labelText:dSA(U),noteData:d,rx:R,ry:R,class:D,style:N.style,id:d.id,domId:d.id,tooltip:"",type:"note",padding:((w=Je().flowchart)==null?void 0:w.padding)??((I=Je().class)==null?void 0:I.padding)};if(i.setNode(d.id,j),_A.info("setNode",j),!d.class||!(d.class in a))return;const W=s+Q,AA={id:`edgeNote${W}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:fd(v8A.curve,t0)};i.setEdge(d.id,d.class,AA,W)})},h8t=function(t,i){const s=Je().flowchart;let a=0;t.forEach(function(h){var Q;a++;const w={classes:"relation",pattern:h.relation.lineType==1?"dashed":"solid",id:"id"+a,arrowhead:h.type==="arrow_open"?"none":"normal",startLabelRight:h.relationTitle1==="none"?"":h.relationTitle1,endLabelLeft:h.relationTitle2==="none"?"":h.relationTitle2,arrowTypeStart:nye(h.relation.type1),arrowTypeEnd:nye(h.relation.type2),style:"fill:none",labelStyle:"",curve:fd(s==null?void 0:s.curve,t0)};if(_A.info(w,h),h.style!==void 0){const I=JM(h.style);w.style=I.style,w.labelStyle=I.labelStyle}h.text=h.title,h.text===void 0?h.style!==void 0&&(w.arrowheadStyle="fill: #333"):(w.arrowheadStyle="fill: #333",w.labelpos="c",((Q=Je().flowchart)==null?void 0:Q.htmlLabels)??Je().htmlLabels?(w.labelType="html",w.label=''+h.text+""):(w.labelType="text",w.label=h.text.replace(Yi.lineBreakRegex,``),h.style===void 0&&(w.style=w.style||"stroke: #333; stroke-width: 1.5px;fill:none"),w.labelStyle=w.labelStyle.replace("color:","fill:"))),i.setEdge(h.id1,h.id2,w,a)})},l8t=function(t){v8A={...v8A,...t}},u8t=async function(t,i,s,a){_A.info("Drawing class - ",i);const h=Je().flowchart??Je().class,Q=Je().securityLevel;_A.info("config:",h);const w=(h==null?void 0:h.nodeSpacing)??50,I=(h==null?void 0:h.rankSpacing)??50,d=new Pu({multigraph:!0,compound:!0}).setGraph({rankdir:a.db.getDirection(),nodesep:w,ranksep:I,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),D=a.db.getNamespaces(),N=a.db.getClasses(),U=a.db.getRelations(),R=a.db.getNotes();_A.info(U),B8t(D,d,i,a),Zxe(N,d,i,a),h8t(U,d),g8t(R,d,U.length+1,N);let T;Q==="sandbox"&&(T=Nn("#i"+i));const j=Nn(Q==="sandbox"?T.nodes()[0].contentDocument.body:"body"),W=j.select(`[id="${i}"]`),AA=j.select("#"+i+" g");if(await $jA(AA,d,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",i),ms.insertTitle(W,"classTitleText",(h==null?void 0:h.titleTopMargin)??5,a.db.getDiagramTitle()),Ek(d,W,h==null?void 0:h.diagramPadding,h==null?void 0:h.useMaxWidth),!(h!=null&&h.htmlLabels)){const X=Q==="sandbox"?T.nodes()[0].contentDocument:document,K=X.querySelectorAll('[id="'+i+'"] .edgeLabel .label');for(const $ of K){const QA=$.getBBox(),hA=X.createElementNS("http://www.w3.org/2000/svg","rect");hA.setAttribute("rx",0),hA.setAttribute("ry",0),hA.setAttribute("width",QA.width),hA.setAttribute("height",QA.height),$.insertBefore(hA,$.firstChild)}}};function nye(t){let i;switch(t){case 0:i="aggregation";break;case 1:i="extension";break;case 2:i="composition";break;case 3:i="dependency";break;case 4:i="lollipop";break;default:i="none"}return i}const w8t={setConf:l8t,draw:u8t},Q8t={parser:Pxe,db:h1A,renderer:w8t,styles:Xxe,init:t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,h1A.clear()}},E8t=Object.freeze(Object.defineProperty({__proto__:null,diagram:Q8t},Symbol.toStringTag,{value:"Module"}));var j8A=function(){var t=function(jA,dA,kA,vA){for(kA=kA||{},vA=jA.length;vA--;kA[jA[vA]]=dA);return kA},i=[1,2],s=[1,3],a=[1,5],h=[1,7],Q=[2,5],w=[1,15],I=[1,17],d=[1,21],D=[1,22],N=[1,23],U=[1,24],R=[1,37],T=[1,25],j=[1,26],W=[1,27],AA=[1,28],X=[1,29],K=[1,32],$=[1,33],QA=[1,34],hA=[1,35],aA=[1,36],iA=[1,39],BA=[1,40],rA=[1,41],FA=[1,42],gA=[1,38],fA=[1,45],DA=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],eA=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],GA=[1,4,5,7,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],cA=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],JA={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,directive:6,SD:7,document:8,line:9,statement:10,classDefStatement: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,class:42,CLASSENTITY_IDS:43,STYLECLASS:44,openDirective:45,typeDirective:46,closeDirective:47,":":48,argDirective:49,direction_tb:50,direction_bt:51,direction_rl:52,direction_lr:53,eol:54,";":55,EDGE_STATE:56,STYLE_SEPARATOR:57,left_of:58,right_of:59,open_directive:60,type_directive:61,arg_directive:62,close_directive:63,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",7:"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:"class",43:"CLASSENTITY_IDS",44:"STYLECLASS",48:":",50:"direction_tb",51:"direction_bt",52:"direction_rl",53:"direction_lr",55:";",56:"EDGE_STATE",57:"STYLE_SEPARATOR",58:"left_of",59:"right_of",60:"open_directive",61:"type_directive",62:"arg_directive",63:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[10,1],[10,1],[10,1],[10,2],[10,3],[10,4],[10,1],[10,2],[10,1],[10,4],[10,3],[10,6],[10,1],[10,1],[10,1],[10,1],[10,4],[10,4],[10,1],[10,1],[10,2],[10,2],[10,1],[11,3],[11,3],[12,3],[6,3],[6,5],[32,1],[32,1],[32,1],[32,1],[54,1],[54,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1],[45,1],[46,1],[49,1],[47,1]],performAction:function(dA,kA,vA,Fe,at,fe,mt){var be=fe.length-1;switch(at){case 4:return Fe.setRootDoc(fe[be]),fe[be];case 5:this.$=[];break;case 6:fe[be]!="nl"&&(fe[be-1].push(fe[be]),this.$=fe[be-1]);break;case 7:case 8:this.$=fe[be];break;case 9:this.$="nl";break;case 12:this.$=fe[be];break;case 13:const HA=fe[be-1];HA.description=Fe.trimColon(fe[be]),this.$=HA;break;case 14:this.$={stmt:"relation",state1:fe[be-2],state2:fe[be]};break;case 15:const WA=Fe.trimColon(fe[be]);this.$={stmt:"relation",state1:fe[be-3],state2:fe[be-1],description:WA};break;case 19:this.$={stmt:"state",id:fe[be-3],type:"default",description:"",doc:fe[be-1]};break;case 20:var ie=fe[be],ye=fe[be-2].trim();if(fe[be].match(":")){var Le=fe[be].split(":");ie=Le[0],ye=[ye,Le[1]]}this.$={stmt:"state",id:ie,type:"default",description:ye};break;case 21:this.$={stmt:"state",id:fe[be-3],type:"default",description:fe[be-5],doc:fe[be-1]};break;case 22:this.$={stmt:"state",id:fe[be],type:"fork"};break;case 23:this.$={stmt:"state",id:fe[be],type:"join"};break;case 24:this.$={stmt:"state",id:fe[be],type:"choice"};break;case 25:this.$={stmt:"state",id:Fe.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:fe[be-1].trim(),note:{position:fe[be-2].trim(),text:fe[be].trim()}};break;case 30:this.$=fe[be].trim(),Fe.setAccTitle(this.$);break;case 31:case 32:this.$=fe[be].trim(),Fe.setAccDescription(this.$);break;case 33:case 34:this.$={stmt:"classDef",id:fe[be-1].trim(),classes:fe[be].trim()};break;case 35:this.$={stmt:"applyClass",id:fe[be-1].trim(),styleClass:fe[be].trim()};break;case 38:Fe.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:Fe.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:Fe.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:Fe.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:fe[be].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:fe[be-2].trim(),classes:[fe[be].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:fe[be-2].trim(),classes:[fe[be].trim()],type:"default",description:""};break;case 50:Fe.parseDirective("%%{","open_directive");break;case 51:Fe.parseDirective(fe[be],"type_directive");break;case 52:fe[be]=fe[be].trim().replace(/'/g,'"'),Fe.parseDirective(fe[be],"arg_directive");break;case 53:Fe.parseDirective("}%%","close_directive","state");break}},table:[{3:1,4:i,5:s,6:4,7:a,45:6,60:h},{1:[3]},{3:8,4:i,5:s,6:4,7:a,45:6,60:h},{3:9,4:i,5:s,6:4,7:a,45:6,60:h},{3:10,4:i,5:s,6:4,7:a,45:6,60:h},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],Q,{8:11}),{46:12,61:[1,13]},{61:[2,50]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:w,5:I,6:30,9:14,10:16,11:18,12:19,13:20,16:d,17:D,19:N,22:U,24:R,25:T,26:j,27:W,28:AA,29:X,32:31,33:K,35:$,37:QA,38:hA,42:aA,45:6,50:iA,51:BA,52:rA,53:FA,56:gA,60:h},{47:43,48:[1,44],63:fA},t([48,63],[2,51]),t(DA,[2,6]),{6:30,10:46,11:18,12:19,13:20,16:d,17:D,19:N,22:U,24:R,25:T,26:j,27:W,28:AA,29:X,32:31,33:K,35:$,37:QA,38:hA,42:aA,45:6,50:iA,51:BA,52:rA,53:FA,56:gA,60:h},t(DA,[2,8]),t(DA,[2,9]),t(DA,[2,10]),t(DA,[2,11]),t(DA,[2,12],{14:[1,47],15:[1,48]}),t(DA,[2,16]),{18:[1,49]},t(DA,[2,18],{20:[1,50]}),{23:[1,51]},t(DA,[2,22]),t(DA,[2,23]),t(DA,[2,24]),t(DA,[2,25]),{30:52,31:[1,53],58:[1,54],59:[1,55]},t(DA,[2,28]),t(DA,[2,29]),{34:[1,56]},{36:[1,57]},t(DA,[2,32]),{39:[1,58],41:[1,59]},{43:[1,60]},t(eA,[2,44],{57:[1,61]}),t(eA,[2,45],{57:[1,62]}),t(DA,[2,38]),t(DA,[2,39]),t(DA,[2,40]),t(DA,[2,41]),t(GA,[2,36]),{49:63,62:[1,64]},t(GA,[2,53]),t(DA,[2,7]),t(DA,[2,13]),{13:65,24:R,56:gA},t(DA,[2,17]),t(cA,Q,{8:66}),{24:[1,67]},{24:[1,68]},{23:[1,69]},{24:[2,48]},{24:[2,49]},t(DA,[2,30]),t(DA,[2,31]),{40:[1,70]},{40:[1,71]},{44:[1,72]},{24:[1,73]},{24:[1,74]},{47:75,63:fA},{63:[2,52]},t(DA,[2,14],{14:[1,76]}),{4:w,5:I,6:30,9:14,10:16,11:18,12:19,13:20,16:d,17:D,19:N,21:[1,77],22:U,24:R,25:T,26:j,27:W,28:AA,29:X,32:31,33:K,35:$,37:QA,38:hA,42:aA,45:6,50:iA,51:BA,52:rA,53:FA,56:gA,60:h},t(DA,[2,20],{20:[1,78]}),{31:[1,79]},{24:[1,80]},t(DA,[2,33]),t(DA,[2,34]),t(DA,[2,35]),t(eA,[2,46]),t(eA,[2,47]),t(GA,[2,37]),t(DA,[2,15]),t(DA,[2,19]),t(cA,Q,{8:81}),t(DA,[2,26]),t(DA,[2,27]),{4:w,5:I,6:30,9:14,10:16,11:18,12:19,13:20,16:d,17:D,19:N,21:[1,82],22:U,24:R,25:T,26:j,27:W,28:AA,29:X,32:31,33:K,35:$,37:QA,38:hA,42:aA,45:6,50:iA,51:BA,52:rA,53:FA,56:gA,60:h},t(DA,[2,21])],defaultActions:{7:[2,50],8:[2,1],9:[2,2],10:[2,3],54:[2,48],55:[2,49],64:[2,52]},parseError:function(dA,kA){if(kA.recoverable)this.trace(dA);else{var vA=new Error(dA);throw vA.hash=kA,vA}},parse:function(dA){var kA=this,vA=[0],Fe=[],at=[null],fe=[],mt=this.table,be="",ie=0,ye=0,Le=2,HA=1,WA=fe.slice.call(arguments,1),XA=Object.create(this.lexer),ce={yy:{}};for(var ZA in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ZA)&&(ce.yy[ZA]=this.yy[ZA]);XA.setInput(dA,ce.yy),ce.yy.lexer=XA,ce.yy.parser=this,typeof XA.yylloc>"u"&&(XA.yylloc={});var pe=XA.yylloc;fe.push(pe);var zA=XA.options&&XA.options.ranges;typeof ce.yy.parseError=="function"?this.parseError=ce.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ft(){var Rt;return Rt=Fe.pop()||XA.lex()||HA,typeof Rt!="number"&&(Rt instanceof Array&&(Fe=Rt,Rt=Fe.pop()),Rt=kA.symbols_[Rt]||Rt),Rt}for(var RA,Et,$A,Ot,zt={},Gt,sn,Ke,lt;;){if(Et=vA[vA.length-1],this.defaultActions[Et]?$A=this.defaultActions[Et]:((RA===null||typeof RA>"u")&&(RA=Ft()),$A=mt[Et]&&mt[Et][RA]),typeof $A>"u"||!$A.length||!$A[0]){var gn="";lt=[];for(Gt in mt[Et])this.terminals_[Gt]&&Gt>Le&<.push("'"+this.terminals_[Gt]+"'");XA.showPosition?gn="Parse error on line "+(ie+1)+`:`+XA.showPosition()+`Expecting `+lt.join(", ")+", got '"+(this.terminals_[RA]||RA)+"'":gn="Parse error on line "+(ie+1)+": Unexpected "+(RA==HA?"end of input":"'"+(this.terminals_[RA]||RA)+"'"),this.parseError(gn,{text:XA.match,token:this.terminals_[RA]||RA,line:XA.yylineno,loc:pe,expected:lt})}if($A[0]instanceof Array&&$A.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Et+", token: "+RA);switch($A[0]){case 1:vA.push(RA),at.push(XA.yytext),fe.push(XA.yylloc),vA.push($A[1]),RA=null,ye=XA.yyleng,be=XA.yytext,ie=XA.yylineno,pe=XA.yylloc;break;case 2:if(sn=this.productions_[$A[1]][1],zt.$=at[at.length-sn],zt._$={first_line:fe[fe.length-(sn||1)].first_line,last_line:fe[fe.length-1].last_line,first_column:fe[fe.length-(sn||1)].first_column,last_column:fe[fe.length-1].last_column},zA&&(zt._$.range=[fe[fe.length-(sn||1)].range[0],fe[fe.length-1].range[1]]),Ot=this.performAction.apply(zt,[be,ye,ie,ce.yy,$A[1],at,fe].concat(WA)),typeof Ot<"u")return Ot;sn&&(vA=vA.slice(0,-1*sn*2),at=at.slice(0,-1*sn),fe=fe.slice(0,-1*sn)),vA.push(this.productions_[$A[1]][0]),at.push(zt.$),fe.push(zt._$),Ke=mt[vA[vA.length-2]][vA[vA.length-1]],vA.push(Ke);break;case 3:return!0}}return!0}},_=function(){var jA={EOF:1,parseError:function(kA,vA){if(this.yy.parser)this.yy.parser.parseError(kA,vA);else throw new Error(kA)},setInput:function(dA,kA){return this.yy=kA||this.yy||{},this._input=dA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var dA=this._input[0];this.yytext+=dA,this.yyleng++,this.offset++,this.match+=dA,this.matched+=dA;var kA=dA.match(/(?:\r\n?|\n).*/g);return kA?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),dA},unput:function(dA){var kA=dA.length,vA=dA.split(/(?:\r\n?|\n)/g);this._input=dA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-kA),this.offset-=kA;var Fe=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),vA.length-1&&(this.yylineno-=vA.length-1);var at=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:vA?(vA.length===Fe.length?this.yylloc.first_column:0)+Fe[Fe.length-vA.length].length-vA[0].length:this.yylloc.first_column-kA},this.options.ranges&&(this.yylloc.range=[at[0],at[0]+this.yyleng-kA]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(dA){this.unput(this.match.slice(dA))},pastInput:function(){var dA=this.matched.substr(0,this.matched.length-this.match.length);return(dA.length>20?"...":"")+dA.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var dA=this.match;return dA.length<20&&(dA+=this._input.substr(0,20-dA.length)),(dA.substr(0,20)+(dA.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var dA=this.pastInput(),kA=new Array(dA.length+1).join("-");return dA+this.upcomingInput()+``+kA+"^"},test_match:function(dA,kA){var vA,Fe,at;if(this.options.backtrack_lexer&&(at={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&&(at.yylloc.range=this.yylloc.range.slice(0))),Fe=dA[0].match(/(?:\r\n?|\n).*/g),Fe&&(this.yylineno+=Fe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Fe?Fe[Fe.length-1].length-Fe[Fe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+dA[0].length},this.yytext+=dA[0],this.match+=dA[0],this.matches=dA,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(dA[0].length),this.matched+=dA[0],vA=this.performAction.call(this,this.yy,this,kA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),vA)return vA;if(this._backtrack){for(var fe in at)this[fe]=at[fe];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var dA,kA,vA,Fe;this._more||(this.yytext="",this.match="");for(var at=this._currentRules(),fe=0;fe kA[0].length)){if(kA=vA,Fe=fe,this.options.backtrack_lexer){if(dA=this.test_match(vA,at[fe]),dA!==!1)return dA;if(this._backtrack){kA=!1;continue}else return!1}else if(!this.options.flex)break}return kA?(dA=this.test_match(kA,at[Fe]),dA!==!1?dA:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var kA=this.next();return kA||this.lex()},begin:function(kA){this.conditionStack.push(kA)},popState:function(){var kA=this.conditionStack.length-1;return kA>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(kA){return kA=this.conditionStack.length-1-Math.abs(kA||0),kA>=0?this.conditionStack[kA]:"INITIAL"},pushState:function(kA){this.begin(kA)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(kA,vA,Fe,at){switch(Fe){case 0:return 41;case 1:return 50;case 2:return 51;case 3:return 52;case 4:return 53;case 5:return this.begin("open_directive"),60;case 6:return this.begin("type_directive"),61;case 7:return this.popState(),this.begin("arg_directive"),48;case 8:return this.popState(),this.popState(),63;case 9:return 62;case 10:break;case 11:break;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:break;case 17:return this.pushState("SCALE"),17;case 18:return 18;case 19:this.popState();break;case 20:return this.begin("acc_title"),33;case 21:return this.popState(),"acc_title_value";case 22:return this.begin("acc_descr"),35;case 23:return this.popState(),"acc_descr_value";case 24:this.begin("acc_descr_multiline");break;case 25:this.popState();break;case 26:return"acc_descr_multiline_value";case 27:return this.pushState("CLASSDEF"),38;case 28:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 29:return this.popState(),this.pushState("CLASSDEFID"),39;case 30:return this.popState(),40;case 31:return this.pushState("CLASS"),42;case 32:return this.popState(),this.pushState("CLASS_STYLE"),43;case 33:return this.popState(),44;case 34:return this.pushState("SCALE"),17;case 35:return 18;case 36:this.popState();break;case 37:this.pushState("STATE");break;case 38:return this.popState(),vA.yytext=vA.yytext.slice(0,-8).trim(),25;case 39:return this.popState(),vA.yytext=vA.yytext.slice(0,-8).trim(),26;case 40:return this.popState(),vA.yytext=vA.yytext.slice(0,-10).trim(),27;case 41:return this.popState(),vA.yytext=vA.yytext.slice(0,-8).trim(),25;case 42:return this.popState(),vA.yytext=vA.yytext.slice(0,-8).trim(),26;case 43:return this.popState(),vA.yytext=vA.yytext.slice(0,-10).trim(),27;case 44:return 50;case 45:return 51;case 46:return 52;case 47:return 53;case 48:this.pushState("STATE_STRING");break;case 49:return this.pushState("STATE_ID"),"AS";case 50:return this.popState(),"ID";case 51:this.popState();break;case 52:return"STATE_DESCR";case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState("struct"),20;case 56:break;case 57:return this.popState(),21;case 58:break;case 59:return this.begin("NOTE"),29;case 60:return this.popState(),this.pushState("NOTE_ID"),58;case 61:return this.popState(),this.pushState("NOTE_ID"),59;case 62:this.popState(),this.pushState("FLOATING_NOTE");break;case 63:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 64:break;case 65:return"NOTE_TEXT";case 66:return this.popState(),"ID";case 67:return this.popState(),this.pushState("NOTE_TEXT"),24;case 68:return this.popState(),vA.yytext=vA.yytext.substr(2).trim(),31;case 69:return this.popState(),vA.yytext=vA.yytext.slice(0,-8).trim(),31;case 70:return 7;case 71:return 7;case 72:return 16;case 73:return 56;case 74:return 24;case 75:return vA.yytext=vA.yytext.trim(),14;case 76:return 15;case 77:return 28;case 78:return 57;case 79:return 5;case 80:return"INVALID"}},rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\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,/^(?: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:[14,15],inclusive:!1},close_directive:{rules:[14,15],inclusive:!1},arg_directive:{rules:[8,9,14,15],inclusive:!1},type_directive:{rules:[7,8,14,15],inclusive:!1},open_directive:{rules:[6,14,15],inclusive:!1},struct:{rules:[14,15,27,31,37,44,45,46,47,56,57,58,59,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[66],inclusive:!1},FLOATING_NOTE:{rules:[63,64,65],inclusive:!1},NOTE_TEXT:{rules:[68,69],inclusive:!1},NOTE_ID:{rules:[67],inclusive:!1},NOTE:{rules:[60,61,62],inclusive:!1},CLASS_STYLE:{rules:[33],inclusive:!1},CLASS:{rules:[32],inclusive:!1},CLASSDEFID:{rules:[30],inclusive:!1},CLASSDEF:{rules:[28,29],inclusive:!1},acc_descr_multiline:{rules:[25,26],inclusive:!1},acc_descr:{rules:[23],inclusive:!1},acc_title:{rules:[21],inclusive:!1},SCALE:{rules:[18,19,35,36],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[50],inclusive:!1},STATE_STRING:{rules:[51,52],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[14,15,38,39,40,41,42,43,48,49,53,54,55],inclusive:!1},ID:{rules:[14,15],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,10,11,12,13,15,16,17,20,22,24,27,31,34,37,55,59,70,71,72,73,74,75,76,78,79,80],inclusive:!0}}};return jA}();JA.lexer=_;function SA(){this.yy={}}return SA.prototype=JA,JA.Parser=SA,new SA}();j8A.parser=j8A;const qxe=j8A,f8t="LR",I8t="TB",l1A="state",FSA="relation",C8t="classDef",d8t="applyClass",SZ="default",_xe="divider",MSA="[*]",$xe="start",A3e=MSA,e3e="end",iye="color",rye="fill",F8t="bgFill",M8t=",";function t3e(){return{}}let n3e=f8t,u1A=[],DX=t3e();const i3e=()=>({relations:[],states:{},documents:{}});let w1A={root:i3e()},WQ=w1A.root,sZ=0,cye=0;const Y8t={LINE:0,DOTTED_LINE:1},D8t={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},QwA=t=>JSON.parse(JSON.stringify(t)),y8t=function(t,i,s){zu.parseDirective(this,t,i,s)},p8t=t=>{_A.info("Setting root doc",t),u1A=t},N8t=()=>u1A,oQA=(t,i,s)=>{if(i.stmt===FSA)oQA(t,i.state1,!0),oQA(t,i.state2,!1);else if(i.stmt===l1A&&(i.id==="[*]"?(i.id=s?t.id+"_start":t.id+"_end",i.start=s):i.id=i.id.trim()),i.doc){const a=[];let h=[],Q;for(Q=0;Q 0&&h.length>0){const w={stmt:l1A,id:Vme(),type:"divider",doc:QwA(h)};a.push(QwA(w)),i.doc=a}i.doc.forEach(w=>oQA(i,w,!0))}},m8t=()=>(oQA({id:"root"},{id:"root",doc:u1A},!0),{id:"root",doc:u1A}),U8t=t=>{let i;t.doc?i=t.doc:i=t,_A.info(i),r3e(!0),_A.info("Extract",i),i.forEach(s=>{switch(s.stmt){case l1A:tk(s.id.trim(),s.type,s.doc,s.description,s.note,s.classes,s.styles,s.textStyles);break;case FSA:c3e(s.state1,s.state2,s.description);break;case C8t:s3e(s.id.trim(),s.classes);break;case d8t:YSA(s.id.trim(),s.styleClass);break}})},tk=function(t,i=SZ,s=null,a=null,h=null,Q=null,w=null,I=null){const d=t==null?void 0:t.trim();WQ.states[d]===void 0?(_A.info("Adding state ",d,a),WQ.states[d]={id:d,descriptions:[],type:i,doc:s,note:h,classes:[],styles:[],textStyles:[]}):(WQ.states[d].doc||(WQ.states[d].doc=s),WQ.states[d].type||(WQ.states[d].type=i)),a&&(_A.info("Setting state description",d,a),typeof a=="string"&&z8A(d,a.trim()),typeof a=="object"&&a.forEach(D=>z8A(d,D.trim()))),h&&(WQ.states[d].note=h,WQ.states[d].note.text=Yi.sanitizeText(WQ.states[d].note.text,Je())),Q&&(_A.info("Setting state classes",d,Q),(typeof Q=="string"?[Q]:Q).forEach(N=>YSA(d,N.trim()))),w&&(_A.info("Setting state styles",d,w),(typeof w=="string"?[w]:w).forEach(N=>j8t(d,N.trim()))),I&&(_A.info("Setting state styles",d,w),(typeof I=="string"?[I]:I).forEach(N=>S8t(d,N.trim())))},r3e=function(t){w1A={root:i3e()},WQ=w1A.root,sZ=0,DX=t3e(),t||g0()},oZ=function(t){return WQ.states[t]},b8t=function(){return WQ.states},H8t=function(){_A.info("Documents = ",w1A)},x8t=function(){return WQ.relations};function S8A(t=""){let i=t;return t===MSA&&(sZ++,i=`${$xe}${sZ}`),i}function L8A(t="",i=SZ){return t===MSA?$xe:i}function G8t(t=""){let i=t;return t===A3e&&(sZ++,i=`${e3e}${sZ}`),i}function J8t(t="",i=SZ){return t===A3e?e3e:i}function k8t(t,i,s){let a=S8A(t.id.trim()),h=L8A(t.id.trim(),t.type),Q=S8A(i.id.trim()),w=L8A(i.id.trim(),i.type);tk(a,h,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),tk(Q,w,i.doc,i.description,i.note,i.classes,i.styles,i.textStyles),WQ.relations.push({id1:a,id2:Q,relationTitle:Yi.sanitizeText(s,Je())})}const c3e=function(t,i,s){if(typeof t=="object")k8t(t,i,s);else{const a=S8A(t.trim()),h=L8A(t),Q=G8t(i.trim()),w=J8t(i);tk(a,h),tk(Q,w),WQ.relations.push({id1:a,id2:Q,title:Yi.sanitizeText(s,Je())})}},z8A=function(t,i){const s=WQ.states[t],a=i.startsWith(":")?i.replace(":","").trim():i;s.descriptions.push(Yi.sanitizeText(a,Je()))},R8t=function(t){return t.substring(0,1)===":"?t.substr(2).trim():t.trim()},T8t=()=>(cye++,"divider-id-"+cye),s3e=function(t,i=""){DX[t]===void 0&&(DX[t]={id:t,styles:[],textStyles:[]});const s=DX[t];i!=null&&i.split(M8t).forEach(a=>{const h=a.replace(/([^;]*);/,"$1").trim();if(a.match(iye)){const w=h.replace(rye,F8t).replace(iye,rye);s.textStyles.push(w)}s.styles.push(h)})},v8t=function(){return DX},YSA=function(t,i){t.split(",").forEach(function(s){let a=oZ(s);if(a===void 0){const h=s.trim();tk(h),a=oZ(h)}a.classes.push(i)})},j8t=function(t,i){const s=oZ(t);s!==void 0&&s.textStyles.push(i)},S8t=function(t,i){const s=oZ(t);s!==void 0&&s.textStyles.push(i)},L8t=()=>n3e,z8t=t=>{n3e=t},P8t=t=>t&&t[0]===":"?t.substr(1).trim():t.trim(),kp={parseDirective:y8t,getConfig:()=>Je().state,addState:tk,clear:r3e,getState:oZ,getStates:b8t,getRelations:x8t,getClasses:v8t,getDirection:L8t,addRelation:c3e,getDividerId:T8t,setDirection:z8t,cleanupLabel:R8t,lineType:Y8t,relationType:D8t,logDocuments:H8t,getRootDoc:N8t,setRootDoc:p8t,getRootDocV2:m8t,extract:U8t,trimColon:P8t,getAccTitle:h0,setAccTitle:A1,getAccDescription:u0,setAccDescription:l0,addStyleClass:s3e,setCssClass:YSA,addDescription:z8A,setDiagramTitle:EI,getDiagramTitle:zE},O8t=t=>`defs #statediagram-barbEnd { fill: ${t.transitionColor}; stroke: ${t.transitionColor}; }g.stateGroup text { fill: ${t.nodeBorder}; stroke: none; font-size: 10px;}g.stateGroup text { fill: ${t.textColor}; stroke: none; font-size: 10px;}g.stateGroup .state-title { font-weight: bolder; fill: ${t.stateLabelColor};}g.stateGroup rect { fill: ${t.mainBkg}; stroke: ${t.nodeBorder};}g.stateGroup line { stroke: ${t.lineColor}; stroke-width: 1;}.transition { stroke: ${t.transitionColor}; stroke-width: 1; fill: none;}.stateGroup .composit { fill: ${t.background}; border-bottom: 1px}.stateGroup .alt-composit { fill: #e0e0e0; border-bottom: 1px}.state-note { stroke: ${t.noteBorderColor}; fill: ${t.noteBkgColor}; text { fill: ${t.noteTextColor}; stroke: none; font-size: 10px; }}.stateLabel .box { stroke: none; stroke-width: 0; fill: ${t.mainBkg}; opacity: 0.5;}.edgeLabel .label rect { fill: ${t.labelBackgroundColor}; opacity: 0.5;}.edgeLabel .label text { fill: ${t.transitionLabelColor||t.tertiaryTextColor};}.label div .edgeLabel { color: ${t.transitionLabelColor||t.tertiaryTextColor};}.stateLabel text { fill: ${t.stateLabelColor}; font-size: 10px; font-weight: bold;}.node circle.state-start { fill: ${t.specialStateColor}; stroke: ${t.specialStateColor};}.node .fork-join { fill: ${t.specialStateColor}; stroke: ${t.specialStateColor};}.node circle.state-end { fill: ${t.innerEndBackground}; stroke: ${t.background}; stroke-width: 1.5}.end-state-inner { fill: ${t.compositeBackground||t.background}; // stroke: ${t.background}; stroke-width: 1.5}.node rect { fill: ${t.stateBkg||t.mainBkg}; stroke: ${t.stateBorder||t.nodeBorder}; stroke-width: 1px;}.node polygon { fill: ${t.mainBkg}; stroke: ${t.stateBorder||t.nodeBorder};; stroke-width: 1px;}#statediagram-barbEnd { fill: ${t.lineColor};}.statediagram-cluster rect { fill: ${t.compositeTitleBackground}; stroke: ${t.stateBorder||t.nodeBorder}; stroke-width: 1px;}.cluster-label, .nodeLabel { color: ${t.stateLabelColor};}.statediagram-cluster rect.outer { rx: 5px; ry: 5px;}.statediagram-state .divider { stroke: ${t.stateBorder||t.nodeBorder};}.statediagram-state .title-state { rx: 5px; ry: 5px;}.statediagram-cluster.statediagram-cluster .inner { fill: ${t.compositeBackground||t.background};}.statediagram-cluster.statediagram-cluster-alt .inner { fill: ${t.altBackground?t.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: ${t.altBackground?t.altBackground:"#efefef"};}.note-edge { stroke-dasharray: 5;}.statediagram-note rect { fill: ${t.noteBkgColor}; stroke: ${t.noteBorderColor}; stroke-width: 1px; rx: 0; ry: 0;}.statediagram-note rect { fill: ${t.noteBkgColor}; stroke: ${t.noteBorderColor}; stroke-width: 1px; rx: 0; ry: 0;}.statediagram-note text { fill: ${t.noteTextColor};}.statediagram-note .nodeLabel { color: ${t.noteTextColor};}.statediagram .edgeLabel { color: red; // ${t.noteTextColor};}#dependencyStart, #dependencyEnd { fill: ${t.lineColor}; stroke: ${t.lineColor}; stroke-width: 1;}.statediagramTitleText { text-anchor: middle; font-size: 18px; fill: ${t.textColor};}`,o3e=O8t,W8t=t=>t.append("circle").attr("class","start-state").attr("r",Je().state.sizeUnit).attr("cx",Je().state.padding+Je().state.sizeUnit).attr("cy",Je().state.padding+Je().state.sizeUnit),K8t=t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",Je().state.textHeight).attr("class","divider").attr("x2",Je().state.textHeight*2).attr("y1",0).attr("y2",0),V8t=(t,i)=>{const s=t.append("text").attr("x",2*Je().state.padding).attr("y",Je().state.textHeight+2*Je().state.padding).attr("font-size",Je().state.fontSize).attr("class","state-title").text(i.id),a=s.node().getBBox();return t.insert("rect",":first-child").attr("x",Je().state.padding).attr("y",Je().state.padding).attr("width",a.width+2*Je().state.padding).attr("height",a.height+2*Je().state.padding).attr("rx",Je().state.radius),s},X8t=(t,i)=>{const s=function(R,T,j){const W=R.append("tspan").attr("x",2*Je().state.padding).text(T);j||W.attr("dy",Je().state.textHeight)},h=t.append("text").attr("x",2*Je().state.padding).attr("y",Je().state.textHeight+1.3*Je().state.padding).attr("font-size",Je().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),Q=h.height,w=t.append("text").attr("x",Je().state.padding).attr("y",Q+Je().state.padding*.4+Je().state.dividerMargin+Je().state.textHeight).attr("class","state-description");let I=!0,d=!0;i.descriptions.forEach(function(R){I||(s(w,R,d),d=!1),I=!1});const D=t.append("line").attr("x1",Je().state.padding).attr("y1",Je().state.padding+Q+Je().state.dividerMargin/2).attr("y2",Je().state.padding+Q+Je().state.dividerMargin/2).attr("class","descr-divider"),N=w.node().getBBox(),U=Math.max(N.width,h.width);return D.attr("x2",U+3*Je().state.padding),t.insert("rect",":first-child").attr("x",Je().state.padding).attr("y",Je().state.padding).attr("width",U+2*Je().state.padding).attr("height",N.height+Q+2*Je().state.padding).attr("rx",Je().state.radius),t},Z8t=(t,i,s)=>{const a=Je().state.padding,h=2*Je().state.padding,Q=t.node().getBBox(),w=Q.width,I=Q.x,d=t.append("text").attr("x",0).attr("y",Je().state.titleShift).attr("font-size",Je().state.fontSize).attr("class","state-title").text(i.id),N=d.node().getBBox().width+h;let U=Math.max(N,w);U===w&&(U=U+h);let R;const T=t.node().getBBox();i.doc,R=I-a,N>w&&(R=(w-U)/2+a),Math.abs(I-T.x)w&&(R=I-(N-w)/2);const j=1-Je().state.textHeight;return t.insert("rect",":first-child").attr("x",R).attr("y",j).attr("class",s?"alt-composit":"composit").attr("width",U).attr("height",T.height+Je().state.textHeight+Je().state.titleShift+1).attr("rx","0"),d.attr("x",R+a),N<=w&&d.attr("x",I+(U-h)/2-N/2+a),t.insert("rect",":first-child").attr("x",R).attr("y",Je().state.titleShift-Je().state.textHeight-Je().state.padding).attr("width",U).attr("height",Je().state.textHeight*3).attr("rx",Je().state.radius),t.insert("rect",":first-child").attr("x",R).attr("y",Je().state.titleShift-Je().state.textHeight-Je().state.padding).attr("width",U).attr("height",T.height+3+2*Je().state.textHeight).attr("rx",Je().state.radius),t},q8t=t=>(t.append("circle").attr("class","end-state-outer").attr("r",Je().state.sizeUnit+Je().state.miniPadding).attr("cx",Je().state.padding+Je().state.sizeUnit+Je().state.miniPadding).attr("cy",Je().state.padding+Je().state.sizeUnit+Je().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",Je().state.sizeUnit).attr("cx",Je().state.padding+Je().state.sizeUnit+2).attr("cy",Je().state.padding+Je().state.sizeUnit+2)),_8t=(t,i)=>{let s=Je().state.forkWidth,a=Je().state.forkHeight;if(i.parentId){let h=s;s=a,a=h}return t.append("rect").style("stroke","black").style("fill","black").attr("width",s).attr("height",a).attr("x",Je().state.padding).attr("y",Je().state.padding)},$8t=(t,i,s,a)=>{let h=0;const Q=a.append("text");Q.style("text-anchor","start"),Q.attr("class","noteText");let w=t.replace(/\r\n/g,"
");w=w.replace(/\n/g,"
");const I=w.split(Yi.lineBreakRegex);let d=1.25*Je().state.noteMargin;for(const D of I){const N=D.trim();if(N.length>0){const U=Q.append("tspan");if(U.text(N),d===0){const R=U.node().getBBox();d+=R.height}h+=d,U.attr("x",i+Je().state.noteMargin),U.attr("y",s+h+1.25*Je().state.noteMargin)}}return{textWidth:Q.node().getBBox().width,textHeight:h}},Avt=(t,i)=>{i.attr("class","state-note");const s=i.append("rect").attr("x",0).attr("y",Je().state.padding),a=i.append("g"),{textWidth:h,textHeight:Q}=$8t(t,0,0,a);return s.attr("height",Q+2*Je().state.noteMargin),s.attr("width",h+Je().state.noteMargin*2),s},sye=function(t,i){const s=i.id,a={id:s,label:i.id,width:0,height:0},h=t.append("g").attr("id",s).attr("class","stateGroup");i.type==="start"&&W8t(h),i.type==="end"&&q8t(h),(i.type==="fork"||i.type==="join")&&_8t(h,i),i.type==="note"&&Avt(i.note.text,h),i.type==="divider"&&K8t(h),i.type==="default"&&i.descriptions.length===0&&V8t(h,i),i.type==="default"&&i.descriptions.length>0&&X8t(h,i);const Q=h.node().getBBox();return a.width=Q.width+2*Je().state.padding,a.height=Q.height+2*Je().state.padding,a};let oye=0;const evt=function(t,i,s){const a=function(d){switch(d){case kp.relationType.AGGREGATION:return"aggregation";case kp.relationType.EXTENSION:return"extension";case kp.relationType.COMPOSITION:return"composition";case kp.relationType.DEPENDENCY:return"dependency"}};i.points=i.points.filter(d=>!Number.isNaN(d.y));const h=i.points,Q=hk().x(function(d){return d.x}).y(function(d){return d.y}).curve(MS),w=t.append("path").attr("d",Q(h)).attr("id","edge"+oye).attr("class","transition");let I="";if(Je().state.arrowMarkerAbsolute&&(I=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,I=I.replace(/\(/g,"\\("),I=I.replace(/\)/g,"\\)")),w.attr("marker-end","url("+I+"#"+a(kp.relationType.DEPENDENCY)+"End)"),s.title!==void 0){const d=t.append("g").attr("class","stateLabel"),{x:D,y:N}=ms.calcLabelPosition(i.points),U=Yi.getRows(s.title);let R=0;const T=[];let j=0,W=0;for(let K=0;K<=U.length;K++){const $=d.append("text").attr("text-anchor","middle").text(U[K]).attr("x",D).attr("y",N+R),QA=$.node().getBBox();j=Math.max(j,QA.width),W=Math.min(W,QA.x),_A.info(QA.x,D,N+R),R===0&&(R=$.node().getBBox().height,_A.info("Title height",R,N)),T.push($)}let AA=R*U.length;if(U.length>1){const K=(U.length-1)*R*.5;T.forEach(($,QA)=>$.attr("y",N+QA*R-K)),AA=R*U.length}const X=d.node().getBBox();d.insert("rect",":first-child").attr("class","box").attr("x",D-j/2-Je().state.padding/2).attr("y",N-AA/2-Je().state.padding/2-3.5).attr("width",j+Je().state.padding).attr("height",AA+Je().state.padding),_A.info(X)}oye++};let rI;const PRA={},tvt=function(){},nvt=function(t){t.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")},ivt=function(t,i,s,a){rI=Je().state;const h=Je().securityLevel;let Q;h==="sandbox"&&(Q=Nn("#i"+i));const w=Nn(h==="sandbox"?Q.nodes()[0].contentDocument.body:"body"),I=h==="sandbox"?Q.nodes()[0].contentDocument:document;_A.debug("Rendering diagram "+t);const d=w.select(`[id='${i}']`);nvt(d);const D=a.db.getRootDoc();a3e(D,d,void 0,!1,w,I,a);const N=rI.padding,U=d.node().getBBox(),R=U.width+N*2,T=U.height+N*2,j=R*1.75;B0(d,T,j,rI.useMaxWidth),d.attr("viewBox",`${U.x-rI.padding} ${U.y-rI.padding} `+R+" "+T)},rvt=t=>t?t.length*rI.fontSizeFactor:1,a3e=(t,i,s,a,h,Q,w)=>{const I=new Pu({compound:!0,multigraph:!0});let d,D=!0;for(d=0;d{const QA=$.parentElement;let hA=0,aA=0;QA&&(QA.parentElement&&(hA=QA.parentElement.getBBox().width),aA=parseInt(QA.getAttribute("data-x-shift"),10),Number.isNaN(aA)&&(aA=0)),$.setAttribute("x1",0-aA+8),$.setAttribute("x2",hA-aA-8)})):_A.debug("No Node "+X+": "+JSON.stringify(I.node(X)))});let W=j.getBBox();I.edges().forEach(function(X){X!==void 0&&I.edge(X)!==void 0&&(_A.debug("Edge "+X.v+" -> "+X.w+": "+JSON.stringify(I.edge(X))),evt(i,I.edge(X),I.edge(X).relation))}),W=j.getBBox();const AA={id:s||"root",label:s||"root",width:0,height:0};return AA.width=W.width+2*rI.padding,AA.height=W.height+2*rI.padding,_A.debug("Doc rendered",AA,I),AA},cvt={setConf:tvt,draw:ivt},svt={parser:qxe,db:kp,renderer:cvt,styles:o3e,init:t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,kp.clear()}},ovt=Object.freeze(Object.defineProperty({__proto__:null,diagram:svt},Symbol.toStringTag,{value:"Module"})),aQA="rect",ORA="rectWithTitle",avt="start",Bvt="end",gvt="divider",hvt="roundedWithTitle",lvt="note",uvt="noteGroup",vS="statediagram",wvt="state",Qvt=`${vS}-${wvt}`,B3e="transition",Evt="note",fvt="note-edge",Ivt=`${B3e} ${fvt}`,Cvt=`${vS}-${Evt}`,dvt="cluster",Fvt=`${vS}-${dvt}`,Mvt="cluster-alt",Yvt=`${vS}-${Mvt}`,g3e="parent",h3e="note",Dvt="state",DSA="----",yvt=`${DSA}${h3e}`,aye=`${DSA}${g3e}`,l3e="fill:none",u3e="fill: #333",w3e="c",Q3e="text",E3e="normal";let BQA={},XU=0;const pvt=function(t){const i=Object.keys(t);for(const s of i)t[s]},Nvt=function(t,i){return i.db.extract(i.db.getRootDocV2()),i.db.getClasses()};function mvt(t){return t==null?"":t.classes?t.classes.join(" "):""}function WRA(t="",i=0,s="",a=DSA){const h=s!==null&&s.length>0?`${a}${s}`:"";return`${Dvt}-${t}${h}-${i}`}const gX=(t,i,s,a,h,Q)=>{const w=s.id,I=mvt(a[w]);if(w!=="root"){let d=aQA;s.start===!0&&(d=avt),s.start===!1&&(d=Bvt),s.type!==SZ&&(d=s.type),BQA[w]||(BQA[w]={id:w,shape:d,description:Yi.sanitizeText(w,Je()),classes:`${I} ${Qvt}`});const D=BQA[w];s.description&&(Array.isArray(D.description)?(D.shape=ORA,D.description.push(s.description)):D.description.length>0?(D.shape=ORA,D.description===w?D.description=[s.description]:D.description=[D.description,s.description]):(D.shape=aQA,D.description=s.description),D.description=Yi.sanitizeTextOrArray(D.description,Je())),D.description.length===1&&D.shape===ORA&&(D.shape=aQA),!D.type&&s.doc&&(_A.info("Setting cluster for ",w,P8A(s)),D.type="group",D.dir=P8A(s),D.shape=s.type===_xe?gvt:hvt,D.classes=D.classes+" "+Fvt+" "+(Q?Yvt:""));const N={labelStyle:"",shape:D.shape,labelText:D.description,classes:D.classes,style:"",id:w,dir:D.dir,domId:WRA(w,XU),type:D.type,padding:15};if(N.centerLabel=!0,s.note){const U={labelStyle:"",shape:lvt,labelText:s.note.text,classes:Cvt,style:"",id:w+yvt+"-"+XU,domId:WRA(w,XU,h3e),type:D.type,padding:15},R={labelStyle:"",shape:uvt,labelText:s.note.text,classes:D.classes,style:"",id:w+aye,domId:WRA(w,XU,g3e),type:"group",padding:0};XU++;const T=w+aye;t.setNode(T,R),t.setNode(U.id,U),t.setNode(w,N),t.setParent(w,T),t.setParent(U.id,T);let j=w,W=U.id;s.note.position==="left of"&&(j=U.id,W=w),t.setEdge(j,W,{arrowhead:"none",arrowType:"",style:l3e,labelStyle:"",classes:Ivt,arrowheadStyle:u3e,labelpos:w3e,labelType:Q3e,thickness:E3e})}else t.setNode(w,N)}i&&i.id!=="root"&&(_A.trace("Setting node ",w," to be child of its parent ",i.id),t.setParent(w,i.id)),s.doc&&(_A.trace("Adding nodes children "),Uvt(t,s,s.doc,a,h,!Q))},Uvt=(t,i,s,a,h,Q)=>{_A.trace("items",s),s.forEach(w=>{switch(w.stmt){case l1A:gX(t,i,w,a,h,Q);break;case SZ:gX(t,i,w,a,h,Q);break;case FSA:{gX(t,i,w.state1,a,h,Q),gX(t,i,w.state2,a,h,Q);const I={id:"edge"+XU,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:l3e,labelStyle:"",label:Yi.sanitizeText(w.description,Je()),arrowheadStyle:u3e,labelpos:w3e,labelType:Q3e,thickness:E3e,classes:B3e};t.setEdge(w.state1.id,w.state2.id,I,XU),XU++}break}})},P8A=(t,i=I8t)=>{let s=i;if(t.doc)for(let a=0;a {t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,kp.clear()}},Gvt=Object.freeze(Object.defineProperty({__proto__:null,diagram:xvt},Symbol.toStringTag,{value:"Module"}));var O8A=function(){var t=function(W,AA,X,K){for(X=X||{},K=W.length;K--;X[W[K]]=AA);return X},i=[1,2],s=[1,5],a=[6,9,11,17,18,20,22,23,24,26],h=[1,15],Q=[1,16],w=[1,17],I=[1,18],d=[1,19],D=[1,20],N=[1,24],U=[4,6,9,11,17,18,20,22,23,24,26],R={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,taskName:24,taskData:25,open_directive:26,type_directive:27,arg_directive:28,close_directive:29,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",24:"taskName",25:"taskData",26:"open_directive",27:"type_directive",28:"arg_directive",29:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,2],[10,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(AA,X,K,$,QA,hA,aA){var iA=hA.length-1;switch(QA){case 1:return hA[iA-1];case 3:this.$=[];break;case 4:hA[iA-1].push(hA[iA]),this.$=hA[iA-1];break;case 5:case 6:this.$=hA[iA];break;case 7:case 8:this.$=[];break;case 11:$.setDiagramTitle(hA[iA].substr(6)),this.$=hA[iA].substr(6);break;case 12:this.$=hA[iA].trim(),$.setAccTitle(this.$);break;case 13:case 14:this.$=hA[iA].trim(),$.setAccDescription(this.$);break;case 15:$.addSection(hA[iA].substr(8)),this.$=hA[iA].substr(8);break;case 16:$.addTask(hA[iA-1],hA[iA]),this.$="task";break;case 18:$.parseDirective("%%{","open_directive");break;case 19:$.parseDirective(hA[iA],"type_directive");break;case 20:hA[iA]=hA[iA].trim().replace(/'/g,'"'),$.parseDirective(hA[iA],"arg_directive");break;case 21:$.parseDirective("}%%","close_directive","journey");break}},table:[{3:1,4:i,7:3,12:4,26:s},{1:[3]},t(a,[2,3],{5:6}),{3:7,4:i,7:3,12:4,26:s},{13:8,27:[1,9]},{27:[2,18]},{6:[1,10],7:21,8:11,9:[1,12],10:13,11:[1,14],12:4,17:h,18:Q,20:w,22:I,23:d,24:D,26:s},{1:[2,2]},{14:22,15:[1,23],29:N},t([15,29],[2,19]),t(a,[2,8],{1:[2,1]}),t(a,[2,4]),{7:21,10:25,12:4,17:h,18:Q,20:w,22:I,23:d,24:D,26:s},t(a,[2,6]),t(a,[2,7]),t(a,[2,11]),{19:[1,26]},{21:[1,27]},t(a,[2,14]),t(a,[2,15]),{25:[1,28]},t(a,[2,17]),{11:[1,29]},{16:30,28:[1,31]},{11:[2,21]},t(a,[2,5]),t(a,[2,12]),t(a,[2,13]),t(a,[2,16]),t(U,[2,9]),{14:32,29:N},{29:[2,20]},{11:[1,33]},t(U,[2,10])],defaultActions:{5:[2,18],7:[2,2],24:[2,21],31:[2,20]},parseError:function(AA,X){if(X.recoverable)this.trace(AA);else{var K=new Error(AA);throw K.hash=X,K}},parse:function(AA){var X=this,K=[0],$=[],QA=[null],hA=[],aA=this.table,iA="",BA=0,rA=0,FA=2,gA=1,fA=hA.slice.call(arguments,1),DA=Object.create(this.lexer),eA={yy:{}};for(var GA in this.yy)Object.prototype.hasOwnProperty.call(this.yy,GA)&&(eA.yy[GA]=this.yy[GA]);DA.setInput(AA,eA.yy),eA.yy.lexer=DA,eA.yy.parser=this,typeof DA.yylloc>"u"&&(DA.yylloc={});var cA=DA.yylloc;hA.push(cA);var JA=DA.options&&DA.options.ranges;typeof eA.yy.parseError=="function"?this.parseError=eA.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _(){var ie;return ie=$.pop()||DA.lex()||gA,typeof ie!="number"&&(ie instanceof Array&&($=ie,ie=$.pop()),ie=X.symbols_[ie]||ie),ie}for(var SA,jA,dA,kA,vA={},Fe,at,fe,mt;;){if(jA=K[K.length-1],this.defaultActions[jA]?dA=this.defaultActions[jA]:((SA===null||typeof SA>"u")&&(SA=_()),dA=aA[jA]&&aA[jA][SA]),typeof dA>"u"||!dA.length||!dA[0]){var be="";mt=[];for(Fe in aA[jA])this.terminals_[Fe]&&Fe>FA&&mt.push("'"+this.terminals_[Fe]+"'");DA.showPosition?be="Parse error on line "+(BA+1)+`:`+DA.showPosition()+`Expecting `+mt.join(", ")+", got '"+(this.terminals_[SA]||SA)+"'":be="Parse error on line "+(BA+1)+": Unexpected "+(SA==gA?"end of input":"'"+(this.terminals_[SA]||SA)+"'"),this.parseError(be,{text:DA.match,token:this.terminals_[SA]||SA,line:DA.yylineno,loc:cA,expected:mt})}if(dA[0]instanceof Array&&dA.length>1)throw new Error("Parse Error: multiple actions possible at state: "+jA+", token: "+SA);switch(dA[0]){case 1:K.push(SA),QA.push(DA.yytext),hA.push(DA.yylloc),K.push(dA[1]),SA=null,rA=DA.yyleng,iA=DA.yytext,BA=DA.yylineno,cA=DA.yylloc;break;case 2:if(at=this.productions_[dA[1]][1],vA.$=QA[QA.length-at],vA._$={first_line:hA[hA.length-(at||1)].first_line,last_line:hA[hA.length-1].last_line,first_column:hA[hA.length-(at||1)].first_column,last_column:hA[hA.length-1].last_column},JA&&(vA._$.range=[hA[hA.length-(at||1)].range[0],hA[hA.length-1].range[1]]),kA=this.performAction.apply(vA,[iA,rA,BA,eA.yy,dA[1],QA,hA].concat(fA)),typeof kA<"u")return kA;at&&(K=K.slice(0,-1*at*2),QA=QA.slice(0,-1*at),hA=hA.slice(0,-1*at)),K.push(this.productions_[dA[1]][0]),QA.push(vA.$),hA.push(vA._$),fe=aA[K[K.length-2]][K[K.length-1]],K.push(fe);break;case 3:return!0}}return!0}},T=function(){var W={EOF:1,parseError:function(X,K){if(this.yy.parser)this.yy.parser.parseError(X,K);else throw new Error(X)},setInput:function(AA,X){return this.yy=X||this.yy||{},this._input=AA,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},input:function(){var AA=this._input[0];this.yytext+=AA,this.yyleng++,this.offset++,this.match+=AA,this.matched+=AA;var X=AA.match(/(?:\r\n?|\n).*/g);return X?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),AA},unput:function(AA){var X=AA.length,K=AA.split(/(?:\r\n?|\n)/g);this._input=AA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-X),this.offset-=X;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),K.length-1&&(this.yylineno-=K.length-1);var QA=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:K?(K.length===$.length?this.yylloc.first_column:0)+$[$.length-K.length].length-K[0].length:this.yylloc.first_column-X},this.options.ranges&&(this.yylloc.range=[QA[0],QA[0]+this.yyleng-X]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject: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},less:function(AA){this.unput(this.match.slice(AA))},pastInput:function(){var AA=this.matched.substr(0,this.matched.length-this.match.length);return(AA.length>20?"...":"")+AA.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var AA=this.match;return AA.length<20&&(AA+=this._input.substr(0,20-AA.length)),(AA.substr(0,20)+(AA.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var AA=this.pastInput(),X=new Array(AA.length+1).join("-");return AA+this.upcomingInput()+``+X+"^"},test_match:function(AA,X){var K,$,QA;if(this.options.backtrack_lexer&&(QA={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&&(QA.yylloc.range=this.yylloc.range.slice(0))),$=AA[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+AA[0].length},this.yytext+=AA[0],this.match+=AA[0],this.matches=AA,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(AA[0].length),this.matched+=AA[0],K=this.performAction.call(this,this.yy,this,X,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),K)return K;if(this._backtrack){for(var hA in QA)this[hA]=QA[hA];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var AA,X,K,$;this._more||(this.yytext="",this.match="");for(var QA=this._currentRules(),hA=0;hA X[0].length)){if(X=K,$=hA,this.options.backtrack_lexer){if(AA=this.test_match(K,QA[hA]),AA!==!1)return AA;if(this._backtrack){X=!1;continue}else return!1}else if(!this.options.flex)break}return X?(AA=this.test_match(X,QA[$]),AA!==!1?AA:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var X=this.next();return X||this.lex()},begin:function(X){this.conditionStack.push(X)},popState:function(){var X=this.conditionStack.length-1;return X>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(X){return X=this.conditionStack.length-1-Math.abs(X||0),X>=0?this.conditionStack[X]:"INITIAL"},pushState:function(X){this.begin(X)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(X,K,$,QA){switch($){case 0:return this.begin("open_directive"),26;case 1:return this.begin("type_directive"),27;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),29;case 4:return 28;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 24;case 21:return 25;case 22:return 15;case 23:return 6;case 24:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\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:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23,24],inclusive:!0}}};return W}();R.lexer=T;function j(){this.yy={}}return j.prototype=R,R.Parser=j,new j}();O8A.parser=O8A;const Jvt=O8A;let jS="";const ySA=[],aZ=[],BZ=[],kvt=function(t,i,s){zu.parseDirective(this,t,i,s)},Rvt=function(){ySA.length=0,aZ.length=0,jS="",BZ.length=0,g0()},Tvt=function(t){jS=t,ySA.push(t)},vvt=function(){return ySA},jvt=function(){let t=Bye();const i=100;let s=0;for(;!t&&s{s.people&&t.push(...s.people)}),[...new Set(t)].sort()},Lvt=function(t,i){const s=i.substr(1).split(":");let a=0,h=[];s.length===1?(a=Number(s[0]),h=[]):(a=Number(s[0]),h=s[1].split(","));const Q=h.map(I=>I.trim()),w={section:jS,type:jS,people:Q,task:t,score:a};BZ.push(w)},zvt=function(t){const i={section:jS,type:jS,description:t,task:t,classes:[]};aZ.push(i)},Bye=function(){const t=function(s){return BZ[s].processed};let i=!0;for(const[s,a]of BZ.entries())t(s),i=i&&a.processed;return i},Pvt=function(){return Svt()},gye={parseDirective:kvt,getConfig:()=>Je().journey,clear:Rvt,setDiagramTitle:EI,getDiagramTitle:zE,setAccTitle:A1,getAccTitle:h0,setAccDescription:l0,getAccDescription:u0,addSection:Tvt,getSections:vvt,getTasks:jvt,addTask:Lvt,addTaskOrg:zvt,getActors:Pvt},Ovt=t=>`.label { font-family: 'trebuchet ms', verdana, arial, sans-serif; font-family: var(--mermaid-font-family); color: ${t.textColor}; } .mouth { stroke: #666; } line { stroke: ${t.textColor} } .legend { fill: ${t.textColor}; } .label text { fill: #333; } .label { color: ${t.textColor} } .face { ${t.faceColor?`fill: ${t.faceColor}`:"fill: #FFF8DC"}; stroke: #999; } .node rect, .node circle, .node ellipse, .node polygon, .node path { fill: ${t.mainBkg}; stroke: ${t.nodeBorder}; stroke-width: 1px; } .node .label { text-align: center; } .node.clickable { cursor: pointer; } .arrowheadPath { fill: ${t.arrowheadColor}; } .edgePath .path { stroke: ${t.lineColor}; stroke-width: 1.5px; } .flowchart-link { stroke: ${t.lineColor}; fill: none; } .edgeLabel { background-color: ${t.edgeLabelBackground}; rect { opacity: 0.5; } text-align: center; } .cluster rect { } .cluster text { fill: ${t.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: ${t.tertiaryColor}; border: 1px solid ${t.border2}; border-radius: 2px; pointer-events: none; z-index: 100; } .task-type-0, .section-type-0 { ${t.fillType0?`fill: ${t.fillType0}`:""}; } .task-type-1, .section-type-1 { ${t.fillType0?`fill: ${t.fillType1}`:""}; } .task-type-2, .section-type-2 { ${t.fillType0?`fill: ${t.fillType2}`:""}; } .task-type-3, .section-type-3 { ${t.fillType0?`fill: ${t.fillType3}`:""}; } .task-type-4, .section-type-4 { ${t.fillType0?`fill: ${t.fillType4}`:""}; } .task-type-5, .section-type-5 { ${t.fillType0?`fill: ${t.fillType5}`:""}; } .task-type-6, .section-type-6 { ${t.fillType0?`fill: ${t.fillType6}`:""}; } .task-type-7, .section-type-7 { ${t.fillType0?`fill: ${t.fillType7}`:""}; } .actor-0 { ${t.actor0?`fill: ${t.actor0}`:""}; } .actor-1 { ${t.actor1?`fill: ${t.actor1}`:""}; } .actor-2 { ${t.actor2?`fill: ${t.actor2}`:""}; } .actor-3 { ${t.actor3?`fill: ${t.actor3}`:""}; } .actor-4 { ${t.actor4?`fill: ${t.actor4}`:""}; } .actor-5 { ${t.actor5?`fill: ${t.actor5}`:""}; }`,Wvt=Ovt,pSA=function(t,i){return s0A(t,i)},Kvt=function(t,i){const a=t.append("circle").attr("cx",i.cx).attr("cy",i.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),h=t.append("g");h.append("circle").attr("cx",i.cx-15/3).attr("cy",i.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),h.append("circle").attr("cx",i.cx+15/3).attr("cy",i.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function Q(d){const D=FS().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);d.append("path").attr("class","mouth").attr("d",D).attr("transform","translate("+i.cx+","+(i.cy+2)+")")}function w(d){const D=FS().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);d.append("path").attr("class","mouth").attr("d",D).attr("transform","translate("+i.cx+","+(i.cy+7)+")")}function I(d){d.append("line").attr("class","mouth").attr("stroke",2).attr("x1",i.cx-5).attr("y1",i.cy+7).attr("x2",i.cx+5).attr("y2",i.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return i.score>3?Q(h):i.score<3?w(h):I(h),a},f3e=function(t,i){const s=t.append("circle");return s.attr("cx",i.cx),s.attr("cy",i.cy),s.attr("class","actor-"+i.pos),s.attr("fill",i.fill),s.attr("stroke",i.stroke),s.attr("r",i.r),s.class!==void 0&&s.attr("class",s.class),i.title!==void 0&&s.append("title").text(i.title),s},I3e=function(t,i){return lDt(t,i)},Vvt=function(t,i){function s(h,Q,w,I,d){return h+","+Q+" "+(h+w)+","+Q+" "+(h+w)+","+(Q+I-d)+" "+(h+w-d*1.2)+","+(Q+I)+" "+h+","+(Q+I)}const a=t.append("polygon");a.attr("points",s(i.x,i.y,50,20,7)),a.attr("class","labelBox"),i.y=i.y+i.labelMargin,i.x=i.x+.5*i.labelMargin,I3e(t,i)},Xvt=function(t,i,s){const a=t.append("g"),h=fk();h.x=i.x,h.y=i.y,h.fill=i.fill,h.width=s.width*i.taskCount+s.diagramMarginX*(i.taskCount-1),h.height=s.height,h.class="journey-section section-type-"+i.num,h.rx=3,h.ry=3,pSA(a,h),C3e(s)(i.text,a,h.x,h.y,h.width,h.height,{class:"journey-section section-type-"+i.num},s,i.colour)};let hye=-1;const Zvt=function(t,i,s){const a=i.x+s.width/2,h=t.append("g");hye++;const Q=300+5*30;h.append("line").attr("id","task"+hye).attr("x1",a).attr("y1",i.y).attr("x2",a).attr("y2",Q).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Kvt(h,{cx:a,cy:300+(5-i.score)*30,score:i.score});const w=fk();w.x=i.x,w.y=i.y,w.fill=i.fill,w.width=s.width,w.height=s.height,w.class="task task-type-"+i.num,w.rx=3,w.ry=3,pSA(h,w);let I=i.x+14;i.people.forEach(d=>{const D=i.actors[d].color,N={cx:I,cy:i.y,r:7,fill:D,stroke:"#000",title:d,pos:i.actors[d].position};f3e(h,N),I+=10}),C3e(s)(i.task,h,w.x,w.y,w.width,w.height,{class:"task"},s,i.colour)},qvt=function(t,i){NUe(t,i)},C3e=function(){function t(h,Q,w,I,d,D,N,U){const R=Q.append("text").attr("x",w+d/2).attr("y",I+D/2+5).style("font-color",U).style("text-anchor","middle").text(h);a(R,N)}function i(h,Q,w,I,d,D,N,U,R){const{taskFontSize:T,taskFontFamily:j}=U,W=h.split(/
/gi);for(let AA=0;AA{const h=Pp[a].color,Q={cx:20,cy:s,r:7,fill:h,stroke:"#000",pos:Pp[a].position};gZ.drawCircle(t,Q);const w={x:40,y:s+7,fill:"#666",text:a,textMargin:i.boxTextMargin|5};gZ.drawText(t,w),s+=20})}const N0A=Je().journey,dJ=N0A.leftMargin,ejt=function(t,i,s,a){const h=Je().journey,Q=Je().securityLevel;let w;Q==="sandbox"&&(w=Nn("#i"+i));const I=Nn(Q==="sandbox"?w.nodes()[0].contentDocument.body:"body");wd.init();const d=I.select("#"+i);gZ.initGraphics(d);const D=a.db.getTasks(),N=a.db.getDiagramTitle(),U=a.db.getActors();for(const X in Pp)delete Pp[X];let R=0;U.forEach(X=>{Pp[X]={color:h.actorColours[R%h.actorColours.length],position:R},R++}),Ajt(d),wd.insert(0,0,dJ,Object.keys(Pp).length*50),tjt(d,D,0);const T=wd.getBounds();N&&d.append("text").text(N).attr("x",dJ).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);const j=T.stopy-T.starty+2*h.diagramMarginY,W=dJ+T.stopx+2*h.diagramMarginX;B0(d,j,W,h.useMaxWidth),d.append("line").attr("x1",dJ).attr("y1",h.height*4).attr("x2",W-dJ-4).attr("y2",h.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");const AA=N?70:0;d.attr("viewBox",`${T.startx} -25 ${W} ${j+AA}`),d.attr("preserveAspectRatio","xMinYMin meet"),d.attr("height",j+AA+25)},wd={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},updateVal:function(t,i,s,a){t[i]===void 0?t[i]=s:t[i]=a(s,t[i])},updateBounds:function(t,i,s,a){const h=Je().journey,Q=this;let w=0;function I(d){return function(N){w++;const U=Q.sequenceItems.length-w+1;Q.updateVal(N,"starty",i-U*h.boxMargin,Math.min),Q.updateVal(N,"stopy",a+U*h.boxMargin,Math.max),Q.updateVal(wd.data,"startx",t-U*h.boxMargin,Math.min),Q.updateVal(wd.data,"stopx",s+U*h.boxMargin,Math.max),d!=="activation"&&(Q.updateVal(N,"startx",t-U*h.boxMargin,Math.min),Q.updateVal(N,"stopx",s+U*h.boxMargin,Math.max),Q.updateVal(wd.data,"starty",i-U*h.boxMargin,Math.min),Q.updateVal(wd.data,"stopy",a+U*h.boxMargin,Math.max))}}this.sequenceItems.forEach(I())},insert:function(t,i,s,a){const h=Math.min(t,s),Q=Math.max(t,s),w=Math.min(i,a),I=Math.max(i,a);this.updateVal(wd.data,"startx",h,Math.min),this.updateVal(wd.data,"starty",w,Math.min),this.updateVal(wd.data,"stopx",Q,Math.max),this.updateVal(wd.data,"stopy",I,Math.max),this.updateBounds(h,w,Q,I)},bumpVerticalPos:function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}},KRA=N0A.sectionFills,lye=N0A.sectionColours,tjt=function(t,i,s){const a=Je().journey;let h="";const Q=a.height*2+a.diagramMarginY,w=s+Q;let I=0,d="#CCC",D="black",N=0;for(const[U,R]of i.entries()){if(h!==R.section){d=KRA[I%KRA.length],N=I%KRA.length,D=lye[I%lye.length];let j=0;const W=R.section;for(let X=U;X (Pp[W]&&(j[W]=Pp[W]),j),{});R.x=U*a.taskMargin+U*a.width+dJ,R.y=w,R.width=a.diagramMarginX,R.height=a.diagramMarginY,R.colour=D,R.fill=d,R.num=N,R.actors=T,gZ.drawTask(t,R,a),wd.insert(R.x,R.y,R.x+R.width+a.taskMargin,300+5*30)}},uye={setConf:$vt,draw:ejt},njt={parser:Jvt,db:gye,renderer:uye,styles:Wvt,init:t=>{uye.setConf(t.journey),gye.clear()}},ijt=Object.freeze(Object.defineProperty({__proto__:null,diagram:njt},Symbol.toStringTag,{value:"Module"}));function EwA(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var d3e={exports:{}};(function(t,i){(function(s){t.exports=s()})(function(){return function(){function s(a,h,Q){function w(D,N){if(!h[D]){if(!a[D]){var U=typeof EwA=="function"&&EwA;if(!N&&U)return U(D,!0);if(I)return I(D,!0);var R=new Error("Cannot find module '"+D+"'");throw R.code="MODULE_NOT_FOUND",R}var T=h[D]={exports:{}};a[D][0].call(T.exports,function(j){var W=a[D][1][j];return w(W||j)},T,T.exports,s,a,h,Q)}return h[D].exports}for(var I=typeof EwA=="function"&&EwA,d=0;d 0&&arguments[0]!==void 0?arguments[0]:{},R=U.defaultLayoutOptions,T=R===void 0?{}:R,j=U.algorithms,W=j===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:j,AA=U.workerFactory,X=U.workerUrl;if(w(this,D),this.defaultLayoutOptions=T,this.initialized=!1,typeof X>"u"&&typeof AA>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var K=AA;typeof X<"u"&&typeof AA>"u"&&(K=function(hA){return new Worker(hA)});var $=K(X);if(typeof $.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new d($),this.worker.postMessage({cmd:"register",algorithms:W}).then(function(QA){return N.initialized=!0}).catch(console.err)}return Q(D,[{key:"layout",value:function(U){var R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},T=R.layoutOptions,j=T===void 0?this.defaultLayoutOptions:T,W=R.logging,AA=W===void 0?!1:W,X=R.measureExecutionTime,K=X===void 0?!1:X;return U?this.worker.postMessage({cmd:"layout",graph:U,layoutOptions:j,options:{logging:AA,measureExecutionTime:K}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),D}();h.default=I;var d=function(){function D(N){var U=this;if(w(this,D),N===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=N,this.worker.onmessage=function(R){setTimeout(function(){U.receive(U,R)},0)}}return Q(D,[{key:"postMessage",value:function(U){var R=this.id||0;this.id=R+1,U.id=R;var T=this;return new Promise(function(j,W){T.resolvers[R]=function(AA,X){AA?(T.convertGwtStyleError(AA),W(AA)):j(X)},T.worker.postMessage(U)})}},{key:"receive",value:function(U,R){var T=R.data,j=U.resolvers[T.id];j&&(delete U.resolvers[T.id],T.error?j(T.error):j(null,T.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(U){if(U){var R=U.__java$exception;R&&(R.cause&&R.cause.backingJsObject&&(U.cause=R.cause.backingJsObject,this.convertGwtStyleError(U.cause)),delete U.__java$exception)}}}]),D}()},{}],2:[function(s,a,h){(function(Q){(function(){var w;typeof window<"u"?w=window:typeof Q<"u"?w=Q:typeof self<"u"&&(w=self);var I;function d(){}function D(){}function N(){}function U(){}function R(){}function T(){}function j(){}function W(){}function AA(){}function X(){}function K(){}function $(){}function QA(){}function hA(){}function aA(){}function iA(){}function BA(){}function rA(){}function FA(){}function gA(){}function fA(){}function DA(){}function eA(){}function GA(){}function cA(){}function JA(){}function _(){}function SA(){}function jA(){}function dA(){}function kA(){}function vA(){}function Fe(){}function at(){}function fe(){}function mt(){}function be(){}function ie(){}function ye(){}function Le(){}function HA(){}function WA(){}function XA(){}function ce(){}function ZA(){}function pe(){}function zA(){}function Ft(){}function RA(){}function Et(){}function $A(){}function Ot(){}function zt(){}function Gt(){}function sn(){}function Ke(){}function lt(){}function gn(){}function Rt(){}function ln(){}function hi(){}function Oi(){}function ki(){}function mr(){}function wn(){}function Xn(){}function Wi(){}function mn(){}function Ec(){}function An(){}function Da(){}function Tn(){}function ta(){}function w0(){}function yd(){}function gQ(){}function Nw(){}function Ao(){}function fc(){}function Ka(){}function uB(){}function Us(){}function Ts(){}function Zr(){}function rg(){}function wB(){}function oo(){}function Ou(){}function zh(){}function WB(){}function nr(){}function qe(){}function kn(){}function Ei(){}function Is(){}function na(){}function HB(){}function Eo(){}function Yl(){}function zg(){}function pd(){}function Cb(){}function PM(){}function WE(){}function Fr(){}function Pr(){}function vc(){}function Ui(){}function ya(){}function Ue(){}function e1(){}function Te(){}function Ph(){}function E4(){}function OM(){}function Nd(){}function db(){}function ka(){}function t1(){}function f4(){}function Q0(){}function Fb(){}function Mb(){}function Dl(){}function FI(){}function mw(){}function WM(){}function MI(){}function YI(){}function n1(){}function Q2(){}function Ra(){}function E2(){}function Cs(){}function uq(){}function KE(){}function wq(){}function Yb(){}function Qq(){}function f5(){}function yl(){}function md(){}function bk(){}function I5(){}function E0(){}function Ud(){}function Eq(){}function VE(){}function fq(){}function Iq(){}function f2(){}function Db(){}function C5(){}function I4(){}function Cq(){}function C4(){}function dq(){}function Fq(){}function Mq(){}function Yq(){}function Dq(){}function yq(){}function pq(){}function Nq(){}function mq(){}function Uq(){}function bq(){}function Hk(){}function Hq(){}function xq(){}function yb(){}function d5(){}function I2(){}function Gq(){}function Jq(){}function kq(){}function Rq(){}function Tq(){}function pb(){}function xk(){}function F5(){}function KM(){}function VM(){}function vq(){}function Oh(){}function C2(){}function jq(){}function d4(){}function Uw(){}function Sq(){}function Lq(){}function zq(){}function Pq(){}function Nb(){}function Gk(){}function M5(){}function Jk(){}function d2(){}function Oq(){}function Y5(){}function D5(){}function Wq(){}function Kq(){}function Vq(){}function Xq(){}function Zq(){}function qq(){}function bw(){}function DI(){}function _q(){}function y5(){}function p5(){}function $q(){}function XM(){}function F4(){}function kk(){}function bd(){}function M4(){}function A_(){}function mb(){}function Wu(){}function N5(){}function Rk(){}function Y4(){}function Tk(){}function m5(){}function e_(){}function vk(){}function t_(){}function n_(){}function U5(){}function F2(){}function b5(){}function M2(){}function i_(){}function jk(){}function r_(){}function c_(){}function s_(){}function o_(){}function H5(){}function a_(){}function B_(){}function g_(){}function x5(){}function h_(){}function l_(){}function u_(){}function G5(){}function w_(){}function Q_(){}function J5(){}function k5(){}function R5(){}function E_(){}function f_(){}function D4(){}function Y2(){}function Ub(){}function I_(){}function Sk(){}function bb(){}function Lk(){}function T5(){}function v5(){}function C_(){}function d_(){}function F_(){}function j5(){}function S5(){}function M_(){}function Y_(){}function D_(){}function y_(){}function p_(){}function L5(){}function N_(){}function m_(){}function U_(){}function b_(){}function z5(){}function Hb(){}function H_(){}function x_(){}function P5(){}function G_(){}function J_(){}function k_(){}function R_(){}function T_(){}function v_(){}function O5(){}function j_(){}function W5(){}function S_(){}function L_(){}function z_(){}function xb(){}function P_(){}function Gb(){}function O_(){}function K5(){}function V5(){}function X5(){}function Z5(){}function yI(){}function q5(){}function _5(){}function $5(){}function AL(){}function W_(){}function D2(){}function Jb(){}function ZM(){}function K_(){}function V_(){}function kb(){}function X_(){}function Z_(){}function q_(){}function __(){}function $_(){}function A$(){}function e$(){}function t$(){}function n$(){}function i$(){}function r$(){}function zk(){}function eL(){}function c$(){}function s$(){}function o$(){}function tL(){}function a$(){}function B$(){}function g$(){}function h$(){}function l$(){}function u$(){}function nL(){}function iL(){}function w$(){}function rL(){}function cL(){}function Q$(){}function E$(){}function f$(){}function Pk(){}function I$(){}function y4(){}function C$(){}function d$(){}function F$(){}function sL(){}function M$(){}function Y$(){}function D$(){}function y$(){}function p$(){}function N$(){}function m$(){}function U$(){}function b$(){}function H$(){}function x$(){}function G$(){}function y2(){}function oL(){}function J$(){}function k$(){}function R$(){}function aL(){}function T$(){}function Rb(){}function v$(){}function j$(){}function S$(){}function L$(){}function z$(){}function P$(){}function O$(){}function W$(){}function K$(){}function V$(){}function p2(){}function X$(){}function Z$(){}function q$(){}function _$(){}function $$(){}function AAA(){}function eAA(){}function tAA(){}function Tb(){}function nAA(){}function iAA(){}function rAA(){}function cAA(){}function sAA(){}function oAA(){}function aAA(){}function BAA(){}function N2(){}function BL(){}function gAA(){}function Ok(){}function hAA(){}function lAA(){}function uAA(){}function wAA(){}function QAA(){}function EAA(){}function fAA(){}function gL(){}function IAA(){}function hL(){}function CAA(){}function lL(){}function uL(){}function wL(){}function dAA(){}function FAA(){}function vb(){}function Wk(){}function jb(){}function MAA(){}function YAA(){}function Kk(){}function DAA(){}function yAA(){}function QL(){}function pAA(){}function NAA(){}function mAA(){}function UAA(){}function bAA(){}function HAA(){}function xAA(){}function GAA(){}function JAA(){}function kAA(){}function i1(){}function RAA(){}function Hd(){}function EL(){}function TAA(){}function vAA(){}function jAA(){}function SAA(){}function LAA(){}function zAA(){}function PAA(){}function OAA(){}function WAA(){}function ia(){}function KAA(){}function Sb(){}function Uo(){}function pa(){}function Br(){}function Vk(){}function VAA(){}function XAA(){}function ZAA(){}function m2(){}function xd(){}function Xe(){}function qAA(){}function _AA(){}function $AA(){}function AeA(){}function eeA(){}function fL(){}function teA(){}function neA(){}function Xk(){}function ieA(){}function xB(){}function QB(){}function reA(){}function ceA(){}function seA(){}function Gd(){}function pI(){}function f0(){}function Ku(){}function U2(){}function Lb(){}function p4(){}function IL(){}function oeA(){}function N4(){}function CL(){}function aeA(){}function zb(){}function b2(){}function H2(){}function I0(){}function dL(){}function m4(){}function FL(){}function ML(){}function x2(){}function XE(){}function hQ(){}function C0(){}function qM(){}function U4(){}function Pb(){}function YL(){}function BeA(){}function DL(){}function yL(){}function pL(){}function b4(){}function NL(){}function mL(){}function geA(){}function H4(){}function x4(){}function Jd(){}function Zk(){}function heA(){}function leA(){}function ueA(){}function weA(){}function QeA(){}function EeA(){}function feA(){}function IeA(){}function UL(){}function CeA(){}function deA(){}function FeA(){}function bL(){}function G4(){}function Ob(){}function HL(){}function MeA(){}function xL(){}function GL(){}function YeA(){}function Wb(){}function kd(){}function JL(){}function kL(){}function DeA(){}function yeA(){}function Kb(){}function RL(){}function TL(){}function So(){}function peA(){}function vL(){}function Vb(){}function NeA(){}function meA(){}function Xb(){}function jL(){}function Zb(){}function qb(){}function pl(){}function qk(){}function _k(){}function G2(){}function UeA(){}function beA(){}function HeA(){}function xeA(){}function Rd(){}function SL(){}function J2(){}function Au(){}function LL(){}function zL(){}function PL(){}function OL(){}function WL(){}function KL(){}function Nl(){}function Va(){}function GeA(){}function JeA(){}function keA(){}function Xa(){}function _b(){}function VL(){}function XL(){}function k2(){}function ReA(){}function J4(){}function TeA(){}function ZL(){}function veA(){}function jeA(){}function $b(){}function qL(){}function $k(){}function AH(){}function SeA(){}function LeA(){}function AR(){}function eH(){}function eu(){}function k4(){}function zeA(){}function R4(){}function eR(){}function ZE(){}function tH(){}function tR(){}function ml(){}function nH(){}function tu(){}function nu(){}function PeA(){}function OeA(){}function _M(){}function T4(){}function v4(){}function iH(){}function WeA(){}function R2(){}function nR(){}function _L(){}function KeA(){}function rH(){YH()}function VeA(){LcA()}function $L(){qx()}function iR(){fP()}function XeA(){a2A()}function cH(){Sl()}function ZeA(){CDA()}function qeA(){g8()}function _eA(){UR()}function $eA(){mR()}function AtA(){tT()}function A9(){O7A()}function etA(){py()}function ttA(){$9()}function ntA(){t$A()}function e9(){wee()}function itA(){G$A()}function rtA(){qZA()}function sH(){tm()}function ctA(){$0()}function stA(){Qee()}function otA(){PqA()}function atA(){tpA()}function BtA(){nre()}function gtA(){_ZA()}function t9(){He()}function htA(){ZZA()}function n9(){Eee()}function ltA(){Cte()}function rR(){AqA()}function utA(){v$A()}function i9(){W7A()}function wtA(){P2A()}function r9(){CF()}function QtA(){Pee()}function c9(){w8()}function s9(){EoA()}function o9(){YsA()}function cR(){yC()}function $M(){jMA()}function oH(){$ZA()}function Vu(){gae()}function a9(){S2A()}function j4(){aoA()}function sR(){n7()}function EtA(){DP()}function d0(){Ni()}function B9(){j7()}function g9(){VYA()}function h9(){PP()}function Pg(){jKA()}function oR(){ycA()}function l9(){NyA()}function S4(A){jt(A)}function aH(A){this.a=A}function L4(A){this.a=A}function u9(A){this.a=A}function T2(A){this.a=A}function NI(A){this.a=A}function z4(A){this.a=A}function w9(A){this.a=A}function ftA(A){this.a=A}function aR(A){this.a=A}function AY(A){this.a=A}function BR(A){this.a=A}function BH(A){this.a=A}function ItA(A){this.a=A}function gH(A){this.a=A}function hH(A){this.a=A}function v2(A){this.a=A}function gR(A){this.a=A}function hR(A){this.a=A}function CtA(A){this.a=A}function dtA(A){this.a=A}function FtA(A){this.a=A}function Q9(A){this.b=A}function MtA(A){this.c=A}function YtA(A){this.a=A}function DtA(A){this.a=A}function ytA(A){this.a=A}function ptA(A){this.a=A}function NtA(A){this.a=A}function mtA(A){this.a=A}function UtA(A){this.a=A}function btA(A){this.a=A}function j2(A){this.a=A}function HtA(A){this.a=A}function P4(A){this.a=A}function lh(A){this.a=A}function xtA(A){this.a=A}function S2(A){this.a=A}function O4(A){this.a=A}function lH(A){this.a=A}function W4(A){this.a=A}function r1(){this.a=[]}function GtA(A,e){A.a=e}function mEA(A,e){A.a=e}function UEA(A,e){A.b=e}function bEA(A,e){A.b=e}function HEA(A,e){A.b=e}function lR(A,e){A.j=e}function xEA(A,e){A.g=e}function GEA(A,e){A.i=e}function JtA(A,e){A.c=e}function iu(A,e){A.d=e}function ktA(A,e){A.d=e}function JEA(A,e){A.c=e}function lQ(A,e){A.k=e}function RtA(A,e){A.c=e}function E9(A,e){A.c=e}function f9(A,e){A.a=e}function TtA(A,e){A.a=e}function kEA(A,e){A.f=e}function REA(A,e){A.a=e}function mI(A,e){A.b=e}function uR(A,e){A.d=e}function uH(A,e){A.i=e}function I9(A,e){A.o=e}function TEA(A,e){A.r=e}function vEA(A,e){A.a=e}function C9(A,e){A.b=e}function UI(A,e){A.e=e}function vtA(A,e){A.f=e}function wH(A,e){A.g=e}function L2(A,e){A.e=e}function jEA(A,e){A.f=e}function K4(A,e){A.f=e}function jtA(A,e){A.n=e}function c1(A,e){A.a=e}function SEA(A,e){A.a=e}function eY(A,e){A.c=e}function StA(A,e){A.c=e}function LtA(A,e){A.d=e}function d9(A,e){A.e=e}function F9(A,e){A.g=e}function ztA(A,e){A.a=e}function V4(A,e){A.c=e}function QH(A,e){A.d=e}function LEA(A,e){A.e=e}function PtA(A,e){A.f=e}function OtA(A,e){A.j=e}function WtA(A,e){A.a=e}function zEA(A,e){A.b=e}function Vo(A,e){A.a=e}function M9(A){A.b=A.a}function KtA(A){A.c=A.d.d}function z2(A){this.d=A}function s1(A){this.a=A}function Td(A){this.a=A}function wR(A){this.a=A}function ru(A){this.a=A}function P2(A){this.a=A}function VtA(A){this.a=A}function Y9(A){this.a=A}function tY(A){this.a=A}function QR(A){this.a=A}function vd(A){this.a=A}function D9(A){this.a=A}function cu(A){this.a=A}function F(A){this.a=A}function f(A){this.a=A}function M(A){this.b=A}function y(A){this.b=A}function b(A){this.b=A}function G(A){this.a=A}function J(A){this.a=A}function S(A){this.a=A}function L(A){this.c=A}function m(A){this.c=A}function P(A){this.c=A}function V(A){this.a=A}function sA(A){this.a=A}function lA(A){this.a=A}function EA(A){this.a=A}function IA(A){this.a=A}function mA(A){this.a=A}function YA(A){this.a=A}function bA(A){this.a=A}function xA(A){this.a=A}function OA(A){this.a=A}function oe(A){this.a=A}function te(A){this.a=A}function VA(A){this.a=A}function ge(A){this.a=A}function Ae(A){this.a=A}function Ce(A){this.a=A}function Me(A){this.a=A}function he(A){this.a=A}function ve(A){this.a=A}function Ye(A){this.a=A}function Qt(A){this.a=A}function Oe(A){this.a=A}function Ve(A){this.a=A}function Dt(A){this.a=A}function vt(A){this.a=A}function cn(A){this.a=A}function Ut(A){this.a=A}function rn(A){this.a=A}function En(A){this.a=A}function xn(A){this.a=A}function Fn(A){this.a=A}function un(A){this.a=A}function It(A){this.a=A}function Un(A){this.a=A}function yn(A){this.a=A}function fi(A){this.a=A}function vi(A){this.a=A}function Fc(A){this.a=A}function Vc(A){this.a=A}function zi(A){this.a=A}function bi(A){this.a=A}function Lr(A){this.a=A}function gr(A){this.a=A}function Ki(A){this.a=A}function Qr(A){this.a=A}function as(A){this.e=A}function Mc(A){this.a=A}function lc(A){this.a=A}function jn(A){this.a=A}function se(A){this.a=A}function Vt(A){this.a=A}function zn(A){this.a=A}function fn(A){this.a=A}function In(A){this.a=A}function es(A){this.a=A}function ni(A){this.a=A}function fr(A){this.a=A}function ao(A){this.a=A}function aa(A){this.a=A}function ds(A){this.a=A}function Xo(A){this.a=A}function Xc(A){this.a=A}function Fs(A){this.a=A}function cg(A){this.a=A}function Ul(A){this.a=A}function F0(A){this.a=A}function M0(A){this.a=A}function bl(A){this.a=A}function o1(A){this.a=A}function Xu(A){this.a=A}function bI(A){this.a=A}function jd(A){this.a=A}function O2(A){this.a=A}function nY(A){this.a=A}function W2(A){this.a=A}function EH(A){this.a=A}function iY(A){this.a=A}function Hw(A){this.a=A}function su(A){this.a=A}function xw(A){this.a=A}function fH(A){this.a=A}function qE(A){this.a=A}function y9(A){this.a=A}function XtA(A){this.a=A}function ZtA(A){this.a=A}function qtA(A){this.a=A}function _tA(A){this.a=A}function $tA(A){this.a=A}function AnA(A){this.a=A}function enA(A){this.a=A}function X4(A){this.a=A}function ER(A){this.a=A}function IH(A){this.a=A}function p9(A){this.a=A}function N9(A){this.a=A}function tnA(A){this.a=A}function Y0(A){this.a=A}function fR(A){this.a=A}function m9(A){this.a=A}function Z4(A){this.c=A}function D0(A){this.b=A}function nnA(A){this.a=A}function JLA(A){this.a=A}function kLA(A){this.a=A}function RLA(A){this.a=A}function TLA(A){this.a=A}function vLA(A){this.a=A}function jLA(A){this.a=A}function SLA(A){this.a=A}function LLA(A){this.a=A}function zLA(A){this.a=A}function PLA(A){this.a=A}function OLA(A){this.a=A}function WLA(A){this.a=A}function KLA(A){this.a=A}function VLA(A){this.a=A}function XLA(A){this.a=A}function ZLA(A){this.a=A}function qLA(A){this.a=A}function _LA(A){this.a=A}function $LA(A){this.a=A}function A9A(A){this.a=A}function e9A(A){this.a=A}function t9A(A){this.a=A}function n9A(A){this.a=A}function y0(A){this.a=A}function K2(A){this.a=A}function i9A(A){this.a=A}function r9A(A){this.a=A}function c9A(A){this.a=A}function s9A(A){this.a=A}function o9A(A){this.a=A}function a9A(A){this.a=A}function B9A(A){this.a=A}function g9A(A){this.a=A}function h9A(A){this.a=A}function l9A(A){this.a=A}function u9A(A){this.a=A}function w9A(A){this.a=A}function Q9A(A){this.a=A}function E9A(A){this.a=A}function f9A(A){this.a=A}function I9A(A){this.a=A}function U9(A){this.a=A}function C9A(A){this.a=A}function d9A(A){this.a=A}function F9A(A){this.a=A}function M9A(A){this.a=A}function Y9A(A){this.a=A}function D9A(A){this.a=A}function y9A(A){this.a=A}function p9A(A){this.a=A}function N9A(A){this.a=A}function m9A(A){this.a=A}function U9A(A){this.a=A}function b9A(A){this.a=A}function H9A(A){this.a=A}function x9A(A){this.a=A}function G9A(A){this.a=A}function J9A(A){this.a=A}function k9A(A){this.a=A}function R9A(A){this.a=A}function T9A(A){this.a=A}function v9A(A){this.a=A}function j9A(A){this.a=A}function S9A(A){this.a=A}function L9A(A){this.a=A}function z9A(A){this.a=A}function P9A(A){this.a=A}function O9A(A){this.a=A}function W9A(A){this.a=A}function K9A(A){this.a=A}function PEA(A){this.a=A}function ur(A){this.b=A}function V9A(A){this.f=A}function OEA(A){this.a=A}function X9A(A){this.a=A}function Z9A(A){this.a=A}function q9A(A){this.a=A}function _9A(A){this.a=A}function $9A(A){this.a=A}function A6A(A){this.a=A}function e6A(A){this.a=A}function t6A(A){this.a=A}function IR(A){this.a=A}function n6A(A){this.a=A}function i6A(A){this.b=A}function WEA(A){this.c=A}function b9(A){this.e=A}function r6A(A){this.a=A}function H9(A){this.a=A}function x9(A){this.a=A}function inA(A){this.a=A}function c6A(A){this.a=A}function s6A(A){this.d=A}function KEA(A){this.a=A}function VEA(A){this.a=A}function HI(A){this.e=A}function tTe(){this.a=0}function rY(){jOA(this)}function Ee(){BiA(this)}function Ln(){JB(this)}function rnA(){PXA(this)}function o6A(){}function xI(){this.c=NkA}function nTe(A,e){e.Wb(A)}function a6A(A,e){A.b+=e}function B6A(A){A.b=new FnA}function oA(A){return A.e}function iTe(A){return A.a}function rTe(A){return A.a}function cTe(A){return A.a}function sTe(A){return A.a}function oTe(A){return A.a}function aTe(){return null}function BTe(){return null}function gTe(){GfA(),Ygt()}function hTe(A){A.b.tf(A.e)}function CH(A,e){A.b=e-A.b}function dH(A,e){A.a=e-A.a}function g6A(A,e){e.ad(A.a)}function lTe(A,e){Bc(e,A)}function uTe(A,e,n){A.Od(n,e)}function CR(A,e){A.e=e,e.b=A}function XEA(A){ew(),this.a=A}function h6A(A){ew(),this.a=A}function l6A(A){ew(),this.a=A}function ZEA(A){iF(),this.a=A}function u6A(A){pN(),RgA.be(A)}function _E(){MWA.call(this)}function qEA(){MWA.call(this)}function _EA(){_E.call(this)}function cnA(){_E.call(this)}function w6A(){_E.call(this)}function dR(){_E.call(this)}function EB(){_E.call(this)}function FH(){_E.call(this)}function Zn(){_E.call(this)}function Og(){_E.call(this)}function Q6A(){_E.call(this)}function Lo(){_E.call(this)}function E6A(){_E.call(this)}function f6A(){this.a=this}function G9(){this.Bb|=256}function I6A(){this.b=new dOA}function $EA(){$EA=_,new Ln}function AfA(){_EA.call(this)}function C6A(A,e){A.length=e}function J9(A,e){Qe(A.a,e)}function wTe(A,e){g2A(A.c,e)}function QTe(A,e){oc(A.b,e)}function ETe(A,e){hP(A.a,e)}function fTe(A,e){qcA(A.a,e)}function q4(A,e){ji(A.e,e)}function V2(A){NP(A.c,A.b)}function ITe(A,e){A.kc().Nb(e)}function efA(A){this.a=EXe(A)}function uc(){this.a=new Ln}function d6A(){this.a=new Ln}function k9(){this.a=new Ee}function snA(){this.a=new Ee}function tfA(){this.a=new Ee}function uh(){this.a=new Da}function $E(){this.a=new __A}function nfA(){this.a=new db}function ifA(){this.a=new R7A}function F6A(){this.a=new DqA}function rfA(){this.a=new SZA}function cfA(){this.a=new gKA}function M6A(){this.a=new Ee}function sfA(){this.a=new Ee}function Y6A(){this.a=new Ee}function D6A(){this.a=new Ee}function y6A(){this.d=new Ee}function p6A(){this.a=new uc}function N6A(){this.a=new Ln}function m6A(){this.b=new Ln}function U6A(){this.b=new Ee}function ofA(){this.e=new Ee}function b6A(){this.d=new Ee}function H6A(){this.a=new ctA}function x6A(){Ee.call(this)}function afA(){k9.call(this)}function G6A(){O6.call(this)}function J6A(){sfA.call(this)}function onA(){MH.call(this)}function MH(){o6A.call(this)}function X2(){o6A.call(this)}function BfA(){X2.call(this)}function k6A(){fZA.call(this)}function R6A(){fZA.call(this)}function T6A(){EfA.call(this)}function v6A(){EfA.call(this)}function j6A(){EfA.call(this)}function S6A(){ffA.call(this)}function fB(){Mr.call(this)}function gfA(){Gd.call(this)}function hfA(){Gd.call(this)}function L6A(){izA.call(this)}function z6A(){izA.call(this)}function P6A(){Ln.call(this)}function O6A(){Ln.call(this)}function W6A(){Ln.call(this)}function K6A(){uc.call(this)}function anA(){hee.call(this)}function V6A(){G9.call(this)}function BnA(){LIA.call(this)}function gnA(){LIA.call(this)}function lfA(){Ln.call(this)}function hnA(){Ln.call(this)}function X6A(){Ln.call(this)}function ufA(){m4.call(this)}function Z6A(){m4.call(this)}function q6A(){ufA.call(this)}function _6A(){nR.call(this)}function $6A(A){RAe.call(this,A)}function AzA(A){RAe.call(this,A)}function wfA(A){aR.call(this,A)}function QfA(A){p7A.call(this,A)}function CTe(A){QfA.call(this,A)}function dTe(A){p7A.call(this,A)}function _4(){this.a=new Mr}function EfA(){this.a=new uc}function ffA(){this.a=new Ln}function ezA(){this.a=new Ee}function tzA(){this.j=new Ee}function IfA(){this.a=new wL}function nzA(){this.a=new _zA}function izA(){this.a=new dL}function lnA(){lnA=_,bgA=new FzA}function unA(){unA=_,UgA=new dzA}function YH(){YH=_,mgA=new D}function R9(){R9=_,GgA=new dWA}function FTe(A){QfA.call(this,A)}function MTe(A){QfA.call(this,A)}function rzA(A){PrA.call(this,A)}function czA(A){PrA.call(this,A)}function szA(A){xKA.call(this,A)}function wnA(A){zAt.call(this,A)}function GI(A){Pd.call(this,A)}function DH(A){X9.call(this,A)}function CfA(A){X9.call(this,A)}function ozA(A){X9.call(this,A)}function fo(A){KVA.call(this,A)}function azA(A){fo.call(this,A)}function Z2(){W4.call(this,{})}function T9(A){hN(),this.a=A}function yH(A){A.b=null,A.c=0}function YTe(A,e){A.e=e,Boe(A,e)}function DTe(A,e){A.a=e,Uet(A)}function QnA(A,e,n){A.a[e.g]=n}function yTe(A,e,n){O_e(n,A,e)}function pTe(A,e){_je(e.i,A.n)}function BzA(A,e){$Ke(A).td(e)}function NTe(A,e){return A*A/e}function gzA(A,e){return A.g-e.g}function mTe(A){return new lH(A)}function UTe(A){return new nF(A)}function v9(A){fo.call(this,A)}function Os(A){fo.call(this,A)}function hzA(A){fo.call(this,A)}function EnA(A){KVA.call(this,A)}function fnA(A){TMA(),this.a=A}function lzA(A){vKA(),this.a=A}function Sd(A){ViA(),this.f=A}function InA(A){ViA(),this.f=A}function $4(A){fo.call(this,A)}function Lt(A){fo.call(this,A)}function Bo(A){fo.call(this,A)}function uzA(A){fo.call(this,A)}function q2(A){fo.call(this,A)}function ze(A){return jt(A),A}function re(A){return jt(A),A}function FR(A){return jt(A),A}function dfA(A){return jt(A),A}function bTe(A){return jt(A),A}function pH(A){return A.b==A.c}function Ld(A){return!!A&&A.b}function HTe(A){return!!A&&A.k}function xTe(A){return!!A&&A.j}function sg(A){jt(A),this.a=A}function FfA(A){return ff(A),A}function NH(A){GdA(A,A.length)}function a1(A){fo.call(this,A)}function Zu(A){fo.call(this,A)}function CnA(A){fo.call(this,A)}function cY(A){fo.call(this,A)}function mH(A){fo.call(this,A)}function _n(A){fo.call(this,A)}function dnA(A){cCA.call(this,A,0)}function FnA(){uFA.call(this,12,3)}function MfA(){MfA=_,YmA=new FA}function wzA(){wzA=_,MmA=new d}function j9(){j9=_,_3=new QA}function QzA(){QzA=_,Owe=new aA}function EzA(){throw oA(new Zn)}function YfA(){throw oA(new Zn)}function fzA(){throw oA(new Zn)}function GTe(){throw oA(new Zn)}function JTe(){throw oA(new Zn)}function kTe(){throw oA(new Zn)}function MnA(){this.a=$n(On(ls))}function _2(A){ew(),this.a=On(A)}function IzA(A,e){A.Td(e),e.Sd(A)}function RTe(A,e){A.a.ec().Mc(e)}function TTe(A,e,n){A.c.lf(e,n)}function DfA(A){Os.call(this,A)}function qu(A){Lt.call(this,A)}function B1(){P2.call(this,"")}function UH(){P2.call(this,"")}function p0(){P2.call(this,"")}function zd(){P2.call(this,"")}function yfA(A){Os.call(this,A)}function AN(A){y.call(this,A)}function YnA(A){k6.call(this,A)}function CzA(A){AN.call(this,A)}function dzA(){gH.call(this,null)}function FzA(){gH.call(this,null)}function S9(){S9=_,pN()}function MzA(){MzA=_,eQe=f$e()}function YzA(A){return A.a?A.b:0}function vTe(A){return A.a?A.b:0}function jTe(A,e){return A.a-e.a}function STe(A,e){return A.a-e.a}function LTe(A,e){return A.a-e.a}function L9(A,e){return iMA(A,e)}function uA(A,e){return PZA(A,e)}function zTe(A,e){return e in A.a}function DzA(A,e){return A.f=e,A}function PTe(A,e){return A.b=e,A}function yzA(A,e){return A.c=e,A}function OTe(A,e){return A.g=e,A}function pfA(A,e){return A.a=e,A}function NfA(A,e){return A.f=e,A}function WTe(A,e){return A.k=e,A}function mfA(A,e){return A.a=e,A}function KTe(A,e){return A.e=e,A}function UfA(A,e){return A.e=e,A}function VTe(A,e){return A.f=e,A}function XTe(A,e){A.b=!0,A.d=e}function ZTe(A,e){A.b=new Ws(e)}function qTe(A,e,n){e.td(A.a[n])}function _Te(A,e,n){e.we(A.a[n])}function $Te(A,e){return A.b-e.b}function A8e(A,e){return A.g-e.g}function e8e(A,e){return A.s-e.s}function t8e(A,e){return A?0:e-1}function pzA(A,e){return A?0:e-1}function n8e(A,e){return A?e-1:0}function i8e(A,e){return e.Yf(A)}function JI(A,e){return A.b=e,A}function z9(A,e){return A.a=e,A}function kI(A,e){return A.c=e,A}function RI(A,e){return A.d=e,A}function TI(A,e){return A.e=e,A}function bfA(A,e){return A.f=e,A}function bH(A,e){return A.a=e,A}function eN(A,e){return A.b=e,A}function tN(A,e){return A.c=e,A}function et(A,e){return A.c=e,A}function Mt(A,e){return A.b=e,A}function tt(A,e){return A.d=e,A}function nt(A,e){return A.e=e,A}function r8e(A,e){return A.f=e,A}function it(A,e){return A.g=e,A}function rt(A,e){return A.a=e,A}function ct(A,e){return A.i=e,A}function st(A,e){return A.j=e,A}function NzA(A,e){return A.k=e,A}function c8e(A,e){return A.j=e,A}function s8e(A,e){$0(),Co(e,A)}function o8e(A,e,n){t9e(A.a,e,n)}function mzA(A){WXA.call(this,A)}function HfA(A){WXA.call(this,A)}function P9(A){biA.call(this,A)}function UzA(A){DXe.call(this,A)}function N0(A){aC.call(this,A)}function bzA(A){IrA.call(this,A)}function HzA(A){IrA.call(this,A)}function xzA(){RIA.call(this,"")}function Zc(){this.a=0,this.b=0}function GzA(){this.b=0,this.a=0}function JzA(A,e){A.b=0,uF(A,e)}function a8e(A,e){A.c=e,A.b=!0}function kzA(A,e){return A.c._b(e)}function Hl(A){return A.e&&A.e()}function DnA(A){return A?A.d:null}function RzA(A,e){return ane(A.b,e)}function B8e(A){return A?A.g:null}function g8e(A){return A?A.i:null}function m0(A){return QQ(A),A.o}function vI(){vI=_,$Fe=m_e()}function TzA(){TzA=_,Nc=S$e()}function nN(){nN=_,pkA=b_e()}function vzA(){vzA=_,RMe=U_e()}function xfA(){xfA=_,Ko=pet()}function GfA(){GfA=_,DE=PN()}function jzA(){throw oA(new Zn)}function SzA(){throw oA(new Zn)}function LzA(){throw oA(new Zn)}function zzA(){throw oA(new Zn)}function PzA(){throw oA(new Zn)}function OzA(){throw oA(new Zn)}function O9(A){this.a=new $2(A)}function JfA(A){jBe(),Rgt(this,A)}function U0(A){this.a=new _iA(A)}function sY(A,e){for(;A.ye(e););}function kfA(A,e){for(;A.sd(e););}function oY(A,e){return A.a+=e,A}function ynA(A,e){return A.a+=e,A}function g1(A,e){return A.a+=e,A}function jI(A,e){return A.a+=e,A}function HH(A){return S0(A),A.a}function W9(A){return A.b!=A.d.c}function WzA(A){return A.l|A.m<<22}function RfA(A,e){return A.d[e.p]}function KzA(A,e){return Ert(A,e)}function TfA(A,e,n){A.splice(e,n)}function VzA(A){A.c?boe(A):Hoe(A)}function K9(A){this.a=0,this.b=A}function XzA(){this.a=new D8(j3A)}function ZzA(){this.b=new D8(y3A)}function qzA(){this.b=new D8(tuA)}function _zA(){this.b=new D8(tuA)}function $zA(){throw oA(new Zn)}function A7A(){throw oA(new Zn)}function e7A(){throw oA(new Zn)}function t7A(){throw oA(new Zn)}function n7A(){throw oA(new Zn)}function i7A(){throw oA(new Zn)}function r7A(){throw oA(new Zn)}function c7A(){throw oA(new Zn)}function s7A(){throw oA(new Zn)}function o7A(){throw oA(new Zn)}function h8e(){throw oA(new Lo)}function l8e(){throw oA(new Lo)}function MR(A){this.a=new a7A(A)}function a7A(A){YWe(this,A,Y$e())}function YR(A){return!A||UXA(A)}function DR(A){return Ju[A]!=-1}function u8e(){gW!=0&&(gW=0),hW=-1}function B7A(){NgA==null&&(NgA=[])}function w8e(A,e){ioA(ee(A.a),e)}function Q8e(A,e){ioA(ee(A.a),e)}function yR(A,e){EY.call(this,A,e)}function iN(A,e){yR.call(this,A,e)}function vfA(A,e){this.b=A,this.c=e}function g7A(A,e){this.b=A,this.a=e}function h7A(A,e){this.a=A,this.b=e}function l7A(A,e){this.a=A,this.b=e}function u7A(A,e){this.a=A,this.b=e}function w7A(A,e){this.a=A,this.b=e}function Q7A(A,e){this.a=A,this.b=e}function E7A(A,e){this.a=A,this.b=e}function f7A(A,e){this.a=A,this.b=e}function I7A(A,e){this.a=A,this.b=e}function C7A(A,e){this.b=A,this.a=e}function d7A(A,e){this.b=A,this.a=e}function F7A(A,e){this.b=A,this.a=e}function M7A(A,e){this.b=A,this.a=e}function si(A,e){this.f=A,this.g=e}function rN(A,e){this.e=A,this.d=e}function SI(A,e){this.g=A,this.i=e}function pnA(A,e){this.a=A,this.b=e}function Y7A(A,e){this.a=A,this.f=e}function D7A(A,e){this.b=A,this.c=e}function E8e(A,e){this.a=A,this.b=e}function y7A(A,e){this.a=A,this.b=e}function NnA(A,e){this.a=A,this.b=e}function p7A(A){XIA(A.dc()),this.c=A}function V9(A){this.b=g(On(A),83)}function N7A(A){this.a=g(On(A),83)}function Pd(A){this.a=g(On(A),15)}function m7A(A){this.a=g(On(A),15)}function X9(A){this.b=g(On(A),47)}function Z9(){this.q=new w.Date}function Gw(){Gw=_,vmA=new SA}function cN(){cN=_,eU=new GA}function xH(A){return A.f.c+A.g.c}function pR(A,e){return A.b.Hc(e)}function U7A(A,e){return A.b.Ic(e)}function b7A(A,e){return A.b.Qc(e)}function H7A(A,e){return A.b.Hc(e)}function x7A(A,e){return A.c.uc(e)}function uQ(A,e){return A.a._b(e)}function G7A(A,e){return Si(A.c,e)}function J7A(A,e){return gg(A.b,e)}function k7A(A,e){return A>e&&e 0}function UnA(A,e){return Zo(A,e)<0}function vH(A,e){return A.a.get(e)}function U8e(A,e){return e.split(A)}function ePA(A,e){return gg(A.e,e)}function KfA(A){return jt(A),!1}function c6(A){Nt.call(this,A,21)}function b8e(A,e){HZA.call(this,A,e)}function s6(A,e){si.call(this,A,e)}function bnA(A,e){si.call(this,A,e)}function VfA(A){grA(),xKA.call(this,A)}function XfA(A,e){kVA(A,A.length,e)}function HR(A,e){gXA(A,A.length,e)}function H8e(A,e,n){e.ud(A.a.Ge(n))}function x8e(A,e,n){e.we(A.a.Fe(n))}function G8e(A,e,n){e.td(A.a.Kb(n))}function J8e(A,e,n){A.Mb(n)&&e.td(n)}function jH(A,e,n){A.splice(e,0,n)}function k8e(A,e){return CB(A.e,e)}function o6(A,e){this.d=A,this.e=e}function tPA(A,e){this.b=A,this.a=e}function nPA(A,e){this.b=A,this.a=e}function ZfA(A,e){this.b=A,this.a=e}function iPA(A,e){this.a=A,this.b=e}function rPA(A,e){this.a=A,this.b=e}function cPA(A,e){this.a=A,this.b=e}function sPA(A,e){this.a=A,this.b=e}function ey(A,e){this.a=A,this.b=e}function qfA(A,e){this.b=A,this.a=e}function _fA(A,e){this.b=A,this.a=e}function a6(A,e){si.call(this,A,e)}function B6(A,e){si.call(this,A,e)}function $fA(A,e){si.call(this,A,e)}function AIA(A,e){si.call(this,A,e)}function aY(A,e){si.call(this,A,e)}function HnA(A,e){si.call(this,A,e)}function xnA(A,e){si.call(this,A,e)}function GnA(A,e){si.call(this,A,e)}function g6(A,e){si.call(this,A,e)}function eIA(A,e){si.call(this,A,e)}function JnA(A,e){si.call(this,A,e)}function xR(A,e){si.call(this,A,e)}function h6(A,e){si.call(this,A,e)}function knA(A,e){si.call(this,A,e)}function SH(A,e){si.call(this,A,e)}function tIA(A,e){si.call(this,A,e)}function Or(A,e){si.call(this,A,e)}function l6(A,e){si.call(this,A,e)}function oPA(A,e){this.a=A,this.b=e}function aPA(A,e){this.a=A,this.b=e}function BPA(A,e){this.a=A,this.b=e}function gPA(A,e){this.a=A,this.b=e}function hPA(A,e){this.a=A,this.b=e}function lPA(A,e){this.a=A,this.b=e}function uPA(A,e){this.a=A,this.b=e}function wPA(A,e){this.a=A,this.b=e}function QPA(A,e){this.a=A,this.b=e}function nIA(A,e){this.b=A,this.a=e}function EPA(A,e){this.b=A,this.a=e}function fPA(A,e){this.b=A,this.a=e}function IPA(A,e){this.b=A,this.a=e}function aN(A,e){this.c=A,this.d=e}function CPA(A,e){this.e=A,this.d=e}function dPA(A,e){this.a=A,this.b=e}function FPA(A,e){this.b=e,this.c=A}function u6(A,e){si.call(this,A,e)}function GR(A,e){si.call(this,A,e)}function RnA(A,e){si.call(this,A,e)}function LH(A,e){si.call(this,A,e)}function iIA(A,e){si.call(this,A,e)}function TnA(A,e){si.call(this,A,e)}function vnA(A,e){si.call(this,A,e)}function JR(A,e){si.call(this,A,e)}function rIA(A,e){si.call(this,A,e)}function jnA(A,e){si.call(this,A,e)}function zH(A,e){si.call(this,A,e)}function cIA(A,e){si.call(this,A,e)}function PH(A,e){si.call(this,A,e)}function OH(A,e){si.call(this,A,e)}function Wd(A,e){si.call(this,A,e)}function SnA(A,e){si.call(this,A,e)}function LnA(A,e){si.call(this,A,e)}function sIA(A,e){si.call(this,A,e)}function WH(A,e){si.call(this,A,e)}function znA(A,e){si.call(this,A,e)}function w6(A,e){si.call(this,A,e)}function kR(A,e){si.call(this,A,e)}function RR(A,e){si.call(this,A,e)}function ty(A,e){si.call(this,A,e)}function PnA(A,e){si.call(this,A,e)}function oIA(A,e){si.call(this,A,e)}function OnA(A,e){si.call(this,A,e)}function WnA(A,e){si.call(this,A,e)}function aIA(A,e){si.call(this,A,e)}function KnA(A,e){si.call(this,A,e)}function VnA(A,e){si.call(this,A,e)}function XnA(A,e){si.call(this,A,e)}function ZnA(A,e){si.call(this,A,e)}function BIA(A,e){si.call(this,A,e)}function MPA(A,e){this.b=A,this.a=e}function YPA(A,e){this.a=A,this.b=e}function DPA(A,e){this.a=A,this.b=e}function yPA(A,e){this.a=A,this.b=e}function pPA(A,e){this.a=A,this.b=e}function gIA(A,e){si.call(this,A,e)}function hIA(A,e){si.call(this,A,e)}function NPA(A,e){this.b=A,this.d=e}function lIA(A,e){si.call(this,A,e)}function uIA(A,e){si.call(this,A,e)}function mPA(A,e){this.a=A,this.b=e}function UPA(A,e){this.a=A,this.b=e}function Q6(A,e){si.call(this,A,e)}function KH(A,e){si.call(this,A,e)}function wIA(A,e){si.call(this,A,e)}function QIA(A,e){si.call(this,A,e)}function EIA(A,e){si.call(this,A,e)}function qnA(A,e){si.call(this,A,e)}function fIA(A,e){si.call(this,A,e)}function _nA(A,e){si.call(this,A,e)}function E6(A,e){si.call(this,A,e)}function $nA(A,e){si.call(this,A,e)}function AiA(A,e){si.call(this,A,e)}function TR(A,e){si.call(this,A,e)}function eiA(A,e){si.call(this,A,e)}function IIA(A,e){si.call(this,A,e)}function vR(A,e){si.call(this,A,e)}function CIA(A,e){si.call(this,A,e)}function R8e(A,e){return CB(A.c,e)}function T8e(A,e){return CB(e.b,A)}function v8e(A,e){return-A.b.Je(e)}function dIA(A,e){return CB(A.g,e)}function jR(A,e){si.call(this,A,e)}function ny(A,e){si.call(this,A,e)}function bPA(A,e){this.a=A,this.b=e}function HPA(A,e){this.a=A,this.b=e}function Pe(A,e){this.a=A,this.b=e}function VH(A,e){si.call(this,A,e)}function XH(A,e){si.call(this,A,e)}function SR(A,e){si.call(this,A,e)}function tiA(A,e){si.call(this,A,e)}function f6(A,e){si.call(this,A,e)}function ZH(A,e){si.call(this,A,e)}function niA(A,e){si.call(this,A,e)}function I6(A,e){si.call(this,A,e)}function BY(A,e){si.call(this,A,e)}function LR(A,e){si.call(this,A,e)}function qH(A,e){si.call(this,A,e)}function _H(A,e){si.call(this,A,e)}function zR(A,e){si.call(this,A,e)}function C6(A,e){si.call(this,A,e)}function gY(A,e){si.call(this,A,e)}function d6(A,e){si.call(this,A,e)}function xPA(A,e){this.a=A,this.b=e}function GPA(A,e){this.a=A,this.b=e}function JPA(A,e){this.a=A,this.b=e}function kPA(A,e){this.a=A,this.b=e}function RPA(A,e){this.a=A,this.b=e}function TPA(A,e){this.a=A,this.b=e}function jc(A,e){this.a=A,this.b=e}function F6(A,e){si.call(this,A,e)}function vPA(A,e){this.a=A,this.b=e}function jPA(A,e){this.a=A,this.b=e}function SPA(A,e){this.a=A,this.b=e}function LPA(A,e){this.a=A,this.b=e}function zPA(A,e){this.a=A,this.b=e}function PPA(A,e){this.a=A,this.b=e}function OPA(A,e){this.b=A,this.a=e}function WPA(A,e){this.b=A,this.a=e}function KPA(A,e){this.b=A,this.a=e}function VPA(A,e){this.b=A,this.a=e}function XPA(A,e){this.a=A,this.b=e}function ZPA(A,e){this.a=A,this.b=e}function j8e(A,e){fit(A.a,g(e,56))}function qPA(A,e){NOe(A.a,g(e,11))}function S8e(A,e){return EN(),e!=A}function _PA(){return MzA(),new eQe}function $PA(){UrA(),this.b=new uc}function AOA(){JP(),this.a=new uc}function eOA(){lFA(),FdA.call(this)}function iy(A,e){si.call(this,A,e)}function tOA(A,e){this.a=A,this.b=e}function nOA(A,e){this.a=A,this.b=e}function M6(A,e){this.a=A,this.b=e}function iOA(A,e){this.a=A,this.b=e}function rOA(A,e){this.a=A,this.b=e}function cOA(A,e){this.a=A,this.b=e}function sOA(A,e){this.d=A,this.b=e}function FIA(A,e){this.d=A,this.e=e}function oOA(A,e){this.f=A,this.c=e}function PR(A,e){this.b=A,this.c=e}function MIA(A,e){this.i=A,this.g=e}function aOA(A,e){this.e=A,this.a=e}function BOA(A,e){this.a=A,this.b=e}function YIA(A,e){A.i=null,D7(A,e)}function L8e(A,e){A&&Li(Cj,A,e)}function gOA(A,e){return osA(A.a,e)}function Y6(A){return n8(A.c,A.b)}function bo(A){return A?A.dd():null}function qA(A){return A??null}function Kd(A){return typeof A===jy}function Vd(A){return typeof A===npA}function Uc(A){return typeof A===VoA}function x0(A,e){return A.Hd().Xb(e)}function D6(A,e){return iKe(A.Kc(),e)}function zI(A,e){return Zo(A,e)==0}function z8e(A,e){return Zo(A,e)>=0}function $H(A,e){return Zo(A,e)!=0}function P8e(A){return""+(jt(A),A)}function OR(A,e){return A.substr(e)}function hOA(A){return ZB(A),A.d.gc()}function iiA(A){return Ltt(A,A.c),A}function y6(A){return hx(A==null),A}function Ax(A,e){return A.a+=""+e,A}function vs(A,e){return A.a+=""+e,A}function ex(A,e){return A.a+=""+e,A}function zo(A,e){return A.a+=""+e,A}function oi(A,e){return A.a+=""+e,A}function DIA(A,e){return A.a+=""+e,A}function lOA(A,e){vr(A,e,A.a,A.a.a)}function ef(A,e){vr(A,e,A.c.b,A.c)}function O8e(A,e,n){Fre(e,qsA(A,n))}function W8e(A,e,n){Fre(e,qsA(A,n))}function K8e(A,e){vOe(new Qn(A),e)}function uOA(A,e){A.q.setTime(cC(e))}function wOA(A,e){bdA.call(this,A,e)}function QOA(A,e){bdA.call(this,A,e)}function riA(A,e){bdA.call(this,A,e)}function EOA(A){JB(this),Tx(this,A)}function yIA(A){return bt(A,0),null}function xl(A){return A.a=0,A.b=0,A}function fOA(A,e){return A.a=e.g+1,A}function V8e(A,e){return A.j[e.p]==2}function pIA(A){return U9e(g(A,79))}function IOA(){IOA=_,XQe=Bi(usA())}function COA(){COA=_,h0e=Bi(toe())}function dOA(){this.b=new $2(gF(12))}function FOA(){this.b=0,this.a=!1}function MOA(){this.b=0,this.a=!1}function tx(A){this.a=A,rH.call(this)}function YOA(A){this.a=A,rH.call(this)}function Ct(A,e){sc.call(this,A,e)}function ciA(A,e){$d.call(this,A,e)}function hY(A,e){MIA.call(this,A,e)}function siA(A,e){XN.call(this,A,e)}function DOA(A,e){WR.call(this,A,e)}function Fi(A,e){i6(),Li(yV,A,e)}function oiA(A,e){return Mg(A.a,0,e)}function yOA(A,e){return A.a.a.a.cc(e)}function pOA(A,e){return qA(A)===qA(e)}function X8e(A,e){return ec(A.a,e.a)}function Z8e(A,e){return Za(A.a,e.a)}function q8e(A,e){return oXA(A.a,e.a)}function _u(A,e){return A.indexOf(e)}function PI(A,e){return A==e?0:A?1:-1}function p6(A){return A<10?"0"+A:""+A}function _8e(A){return On(A),new tx(A)}function NOA(A){return Ta(A.l,A.m,A.h)}function BN(A){return zr((jt(A),A))}function $8e(A){return zr((jt(A),A))}function mOA(A,e){return Za(A.g,e.g)}function go(A){return typeof A===npA}function Ave(A){return A==SC||A==WF}function eve(A){return A==SC||A==OF}function NIA(A){return ho(A.b.b,A,0)}function UOA(A){this.a=_PA(),this.b=A}function bOA(A){this.a=_PA(),this.b=A}function tve(A,e){return Qe(A.a,e),e}function nve(A,e){return Qe(A.c,e),A}function HOA(A,e){return mg(A.a,e),A}function ive(A,e){return qh(),e.a+=A}function rve(A,e){return qh(),e.a+=A}function cve(A,e){return qh(),e.c+=A}function mIA(A,e){JN(A,0,A.length,e)}function wQ(){YA.call(this,new Bf)}function xOA(){cz.call(this,0,0,0,0)}function ry(){Vg.call(this,0,0,0,0)}function Ws(A){this.a=A.a,this.b=A.b}function G0(A){return A==Uh||A==al}function gN(A){return A==vQ||A==TQ}function GOA(A){return A==YD||A==MD}function lY(A){return A!=Hu&&A!=dE}function og(A){return A.Lg()&&A.Mg()}function JOA(A){return Fz(g(A,118))}function N6(A){return mg(new wc,A)}function kOA(A,e){return new XN(e,A)}function sve(A,e){return new XN(e,A)}function UIA(A,e,n){E7(A,e),f7(A,n)}function m6(A,e,n){hC(A,e),gC(A,n)}function ou(A,e,n){nB(A,e),iB(A,n)}function U6(A,e,n){vN(A,e),SN(A,n)}function b6(A,e,n){jN(A,e),LN(A,n)}function aiA(A,e){em(A,e),zN(A,A.D)}function bIA(A){oOA.call(this,A,!0)}function ROA(A,e,n){CCA.call(this,A,e,n)}function J0(A){AE(),oKe.call(this,A)}function TOA(){s6.call(this,"Head",1)}function vOA(){s6.call(this,"Tail",3)}function BiA(A){A.c=TA(on,ke,1,0,5,1)}function jOA(A){A.a=TA(on,ke,1,8,5,1)}function SOA(A){tB(A.xf(),new Fn(A))}function uY(A){return A!=null?hr(A):0}function ove(A,e){return hF(e,gu(A))}function ave(A,e){return hF(e,gu(A))}function Bve(A,e){return A[A.length]=e}function gve(A,e){return A[A.length]=e}function HIA(A){return BLe(A.b.Kc(),A.a)}function hve(A,e){return Y7(arA(A.d),e)}function lve(A,e){return Y7(arA(A.g),e)}function uve(A,e){return Y7(arA(A.j),e)}function Ys(A,e){sc.call(this,A.b,e)}function OI(A){cz.call(this,A,A,A,A)}function xIA(A){return A.b&&boA(A),A.a}function GIA(A){return A.b&&boA(A),A.c}function wve(A,e){pu||(A.b=e)}function giA(A,e,n){return Dr(A,e,n),n}function LOA(A,e,n){Dr(A.c[e.g],e.g,n)}function Qve(A,e,n){g(A.c,69).Xh(e,n)}function Eve(A,e,n){ou(n,n.i+A,n.j+e)}function fve(A,e){Kn(ra(A.a),tqA(e))}function Ive(A,e){Kn(VB(A.a),nqA(e))}function nx(A){Gi(),HI.call(this,A)}function Cve(A){return A==null?0:hr(A)}function zOA(){zOA=_,JlA=new Vx(UuA)}function qn(){qn=_,new POA,new Ee}function POA(){new Ln,new Ln,new Ln}function JIA(){JIA=_,$EA(),DmA=new Ln}function au(){au=_,w.Math.log(2)}function Wg(){Wg=_,iQ=(Z7A(),rMe)}function dve(){throw oA(new a1(Uwe))}function Fve(){throw oA(new a1(Uwe))}function Mve(){throw oA(new a1(bwe))}function Yve(){throw oA(new a1(bwe))}function OOA(A){this.a=A,$CA.call(this,A)}function hiA(A){this.a=A,V9.call(this,A)}function liA(A){this.a=A,V9.call(this,A)}function Yc(A,e){PiA(A.c,A.c.length,e)}function Io(A){return A.a e?1:0}function KOA(A,e){return Zo(A,e)>0?A:e}function Ta(A,e,n){return{l:A,m:e,h:n}}function Dve(A,e){A.a!=null&&qPA(e,A.a)}function VOA(A){A.a=new jA,A.c=new jA}function H6(A){this.b=A,this.a=new Ee}function XOA(A){this.b=new Pr,this.a=A}function RIA(A){mCA.call(this),this.a=A}function ZOA(){s6.call(this,"Range",2)}function qOA(){bDA(),this.a=new D8($UA)}function yve(A,e){On(e),IY(A).Jc(new X)}function pve(A,e){return Yg(),e.n.b+=A}function Nve(A,e,n){return Li(A.g,n,e)}function mve(A,e,n){return Li(A.k,n,e)}function Uve(A,e){return Li(A.a,e.a,e)}function wY(A,e,n){return qYA(e,n,A.c)}function TIA(A){return new Pe(A.c,A.d)}function bve(A){return new Pe(A.c,A.d)}function Ho(A){return new Pe(A.a,A.b)}function _OA(A,e){return tBt(A.a,e,null)}function Hve(A){ts(A,null),Gc(A,null)}function $OA(A){HrA(A,null),xrA(A,null)}function AWA(){WR.call(this,null,null)}function eWA(){j6.call(this,null,null)}function vIA(A){this.a=A,Ln.call(this)}function xve(A){this.b=(ft(),new L(A))}function x6(A){A.j=TA(TmA,Be,310,0,0,1)}function Gve(A,e,n){A.c.Vc(e,g(n,133))}function Jve(A,e,n){A.c.ji(e,g(n,133))}function tWA(A,e){vn(A),A.Gc(g(e,15))}function ix(A,e){return fat(A.c,A.b,e)}function kve(A,e){return new YWA(A.Kc(),e)}function uiA(A,e){return JKe(A.Kc(),e)!=-1}function jIA(A,e){return A.a.Bc(e)!=null}function G6(A){return A.Ob()?A.Pb():null}function nWA(A){return Ih(A,0,A.length)}function yA(A,e){return A!=null&&fsA(A,e)}function Rve(A,e){A.q.setHours(e),l3(A,e)}function iWA(A,e){A.c&&(BdA(e),UZA(e))}function Tve(A,e,n){g(A.Kb(n),164).Nb(e)}function vve(A,e,n){return Xat(A,e,n),n}function rWA(A,e,n){A.a=e^1502,A.b=n^paA}function wiA(A,e,n){return A.a[e.g][n.g]}function Bu(A,e){return A.a[e.c.p][e.p]}function jve(A,e){return A.e[e.c.p][e.p]}function Sve(A,e){return A.c[e.c.p][e.p]}function Lve(A,e){return A.j[e.p]=$nt(e)}function zve(A,e){return zFA(A.f,e.tg())}function Pve(A,e){return zFA(A.b,e.tg())}function Ove(A,e){return A.a 0?e*e/A:e*e*100}function Qje(A,e){return A>0?e/(A*A):e*100}function Eje(A,e,n){return Qe(e,Nne(A,n))}function fje(A,e,n){n7(),A.Xe(e)&&n.td(A)}function uN(A,e,n){var r;r=A.Zc(e),r.Rb(n)}function Zd(A,e,n){return A.a+=e,A.b+=n,A}function Ije(A,e,n){return A.a*=e,A.b*=n,A}function XR(A,e,n){return A.a-=e,A.b-=n,A}function BCA(A,e){return A.a=e.a,A.b=e.b,A}function z6(A){return A.a=-A.a,A.b=-A.b,A}function kWA(A){this.c=A,this.a=1,this.b=1}function RWA(A){this.c=A,nB(A,0),iB(A,0)}function TWA(A){Mr.call(this),Gx(this,A)}function vWA(A){WoA(),B6A(this),this.mf(A)}function jWA(A,e){TH(),WR.call(this,A,e)}function gCA(A,e){h1(),j6.call(this,A,e)}function SWA(A,e){h1(),j6.call(this,A,e)}function LWA(A,e){h1(),gCA.call(this,A,e)}function ag(A,e,n){lg.call(this,A,e,n,2)}function FiA(A,e){Wg(),rz.call(this,A,e)}function zWA(A,e){Wg(),FiA.call(this,A,e)}function hCA(A,e){Wg(),FiA.call(this,A,e)}function PWA(A,e){Wg(),hCA.call(this,A,e)}function lCA(A,e){Wg(),rz.call(this,A,e)}function OWA(A,e){Wg(),lCA.call(this,A,e)}function WWA(A,e){Wg(),rz.call(this,A,e)}function Cje(A,e){return A.c.Fc(g(e,133))}function uCA(A,e,n){return KP(bT(A,e),n)}function dje(A,e,n){return e.Qk(A.e,A.c,n)}function Fje(A,e,n){return e.Rk(A.e,A.c,n)}function MiA(A,e){return X0(A.e,g(e,49))}function Mje(A,e,n){Wx(VB(A.a),e,nqA(n))}function Yje(A,e,n){Wx(ra(A.a),e,tqA(n))}function wCA(A,e){e.$modCount=A.$modCount}function ax(){ax=_,xG=new ur("root")}function wN(){wN=_,Fj=new L6A,new z6A}function KWA(){this.a=new iC,this.b=new iC}function QCA(){hee.call(this),this.Bb|=us}function VWA(){si.call(this,"GROW_TREE",0)}function Dje(A){return A==null?null:OBt(A)}function yje(A){return A==null?null:qAt(A)}function pje(A){return A==null?null:uo(A)}function Nje(A){return A==null?null:uo(A)}function QQ(A){A.o==null&&pnt(A)}function Se(A){return hx(A==null||Kd(A)),A}function Ne(A){return hx(A==null||Vd(A)),A}function $n(A){return hx(A==null||Uc(A)),A}function ECA(A){this.q=new w.Date(cC(A))}function ZR(A,e){this.c=A,rN.call(this,A,e)}function P6(A,e){this.a=A,ZR.call(this,A,e)}function mje(A,e){this.d=A,KtA(this),this.b=e}function fCA(A,e){AcA.call(this,A),this.a=e}function ICA(A,e){AcA.call(this,A),this.a=e}function Uje(A){WYA.call(this,0,0),this.f=A}function CCA(A,e,n){e7.call(this,A,e,n,null)}function XWA(A,e,n){e7.call(this,A,e,n,null)}function bje(A,e,n){return A.ue(e,n)<=0?n:e}function Hje(A,e,n){return A.ue(e,n)<=0?e:n}function xje(A,e){return g(oC(A.b,e),149)}function Gje(A,e){return g(oC(A.c,e),229)}function YiA(A){return g(je(A.a,A.b),287)}function ZWA(A){return new Pe(A.c,A.d+A.a)}function qWA(A){return Yg(),GOA(g(A,197))}function qd(){qd=_,NUA=Bt((wg(),$f))}function Jje(A,e){e.a?Frt(A,e):QiA(A.a,e.b)}function _WA(A,e){pu||Qe(A.a,e)}function kje(A,e){return mR(),VN(e.d.i,A)}function Rje(A,e){return py(),new Aae(e,A)}function Aw(A,e){return hT(e,MpA),A.f=e,A}function dCA(A,e,n){return n=Hg(A,e,3,n),n}function FCA(A,e,n){return n=Hg(A,e,6,n),n}function MCA(A,e,n){return n=Hg(A,e,9,n),n}function qR(A,e,n){++A.j,A.Ki(),_rA(A,e,n)}function $WA(A,e,n){++A.j,A.Hi(e,A.oi(e,n))}function AKA(A,e,n){var r;r=A.Zc(e),r.Rb(n)}function eKA(A,e,n){return RyA(A.c,A.b,e,n)}function YCA(A,e){return(e&Ti)%A.d.length}function sc(A,e){ur.call(this,A),this.a=e}function DCA(A,e){WEA.call(this,A),this.a=e}function DiA(A,e){WEA.call(this,A),this.a=e}function tKA(A,e){this.c=A,aC.call(this,e)}function nKA(A,e){this.a=A,i6A.call(this,e)}function _R(A,e){this.a=A,i6A.call(this,e)}function iKA(A){this.a=(Ng(A,xF),new Na(A))}function rKA(A){this.a=(Ng(A,xF),new Na(A))}function $R(A){return!A.a&&(A.a=new K),A.a}function cKA(A){return A>8?0:A+1}function Tje(A,e){return Pt(),A==e?0:A?1:-1}function yCA(A,e,n){return gy(A,g(e,22),n)}function vje(A,e,n){return A.apply(e,n)}function sKA(A,e,n){return A.a+=Ih(e,0,n),A}function pCA(A,e){var n;return n=A.e,A.e=e,n}function jje(A,e){var n;n=A[yaA],n.call(A,e)}function Sje(A,e){var n;n=A[yaA],n.call(A,e)}function _d(A,e){A.a.Vc(A.b,e),++A.b,A.c=-1}function oKA(A){JB(A.e),A.d.b=A.d,A.d.a=A.d}function AT(A){A.b?AT(A.b):A.f.c.zc(A.e,A.d)}function Lje(A,e,n){Af(),GtA(A,e.Ce(A.a,n))}function zje(A,e){return DnA(Pne(A.a,e,!0))}function Pje(A,e){return DnA(One(A.a,e,!0))}function Zh(A,e){return L9(new Array(e),A)}function yiA(A){return String.fromCharCode(A)}function Oje(A){return A==null?null:A.message}function aKA(){this.a=new Ee,this.b=new Ee}function BKA(){this.a=new db,this.b=new I6A}function gKA(){this.b=new Zc,this.c=new Ee}function NCA(){this.d=new Zc,this.e=new Zc}function mCA(){this.n=new Zc,this.o=new Zc}function O6(){this.n=new X2,this.i=new ry}function hKA(){this.a=new ttA,this.b=new i$}function lKA(){this.a=new Ee,this.d=new Ee}function uKA(){this.b=new uc,this.a=new uc}function wKA(){this.b=new Ln,this.a=new Ln}function QKA(){this.b=new ZzA,this.a=new q$}function EKA(){O6.call(this),this.a=new Zc}function Bx(A){QKe.call(this,A,(r7(),zgA))}function UCA(A,e,n,r){cz.call(this,A,e,n,r)}function Wje(A,e,n){n!=null&&F7(e,msA(A,n))}function Kje(A,e,n){n!=null&&M7(e,msA(A,n))}function bCA(A,e,n){return n=Hg(A,e,11,n),n}function Xi(A,e){return A.a+=e.a,A.b+=e.b,A}function bc(A,e){return A.a-=e.a,A.b-=e.b,A}function Vje(A,e){return A.n.a=(jt(e),e+10)}function Xje(A,e){return A.n.a=(jt(e),e+10)}function Zje(A,e){return e==A||wm(HP(e),A)}function fKA(A,e){return Li(A.a,e,"")==null}function qje(A,e){return mR(),!VN(e.d.i,A)}function _je(A,e){G0(A.f)?Ent(A,e):$$e(A,e)}function $je(A,e){var n;return n=e.Hh(A.a),n}function $d(A,e){Os.call(this,z3+A+Jf+e)}function oy(A,e,n,r){Ie.call(this,A,e,n,r)}function HCA(A,e,n,r){Ie.call(this,A,e,n,r)}function IKA(A,e,n,r){HCA.call(this,A,e,n,r)}function CKA(A,e,n,r){Qz.call(this,A,e,n,r)}function piA(A,e,n,r){Qz.call(this,A,e,n,r)}function xCA(A,e,n,r){Qz.call(this,A,e,n,r)}function dKA(A,e,n,r){piA.call(this,A,e,n,r)}function GCA(A,e,n,r){piA.call(this,A,e,n,r)}function pt(A,e,n,r){xCA.call(this,A,e,n,r)}function FKA(A,e,n,r){GCA.call(this,A,e,n,r)}function MKA(A,e,n,r){HdA.call(this,A,e,n,r)}function YKA(A,e,n){this.a=A,cCA.call(this,e,n)}function DKA(A,e,n){this.c=e,this.b=n,this.a=A}function ASe(A,e,n){return A.d=g(e.Kb(n),164)}function JCA(A,e){return A.Aj().Nh().Kh(A,e)}function kCA(A,e){return A.Aj().Nh().Ih(A,e)}function yKA(A,e){return jt(A),qA(A)===qA(e)}function ht(A,e){return jt(A),qA(A)===qA(e)}function NiA(A,e){return DnA(Pne(A.a,e,!1))}function miA(A,e){return DnA(One(A.a,e,!1))}function eSe(A,e){return A.b.sd(new rPA(A,e))}function tSe(A,e){return A.b.sd(new cPA(A,e))}function pKA(A,e){return A.b.sd(new sPA(A,e))}function RCA(A,e,n){return A.lastIndexOf(e,n)}function nSe(A,e,n){return ec(A[e.b],A[n.b])}function iSe(A,e){return ae(e,(He(),Tv),A)}function rSe(A,e){return Za(e.a.d.p,A.a.d.p)}function cSe(A,e){return Za(A.a.d.p,e.a.d.p)}function sSe(A,e){return ec(A.c-A.s,e.c-e.s)}function NKA(A){return A.c?ho(A.c.a,A,0):-1}function oSe(A){return A<100?null:new N0(A)}function ay(A){return A==_f||A==nQ||A==Ca}function mKA(A,e){return yA(e,15)&&Joe(A.c,e)}function aSe(A,e){pu||e&&(A.d=e)}function UiA(A,e){var n;return n=e,!!cYA(A,n)}function TCA(A,e){this.c=A,nrA.call(this,A,e)}function UKA(A){this.c=A,riA.call(this,eO,0)}function bKA(A,e){uLe.call(this,A,A.length,e)}function BSe(A,e,n){return g(A.c,69).lk(e,n)}function W6(A,e,n){return g(A.c,69).mk(e,n)}function gSe(A,e,n){return dje(A,g(e,332),n)}function vCA(A,e,n){return Fje(A,g(e,332),n)}function hSe(A,e,n){return mre(A,g(e,332),n)}function HKA(A,e,n){return BAt(A,g(e,332),n)}function gx(A,e){return e==null?null:QF(A.b,e)}function jCA(A){return Vd(A)?(jt(A),A):A.ke()}function K6(A){return!isNaN(A)&&!isFinite(A)}function xKA(A){ew(),this.a=(ft(),new AN(A))}function eT(A){EN(),this.d=A,this.a=new rY}function Kg(A,e,n){this.a=A,this.b=e,this.c=n}function GKA(A,e,n){this.a=A,this.b=e,this.c=n}function JKA(A,e,n){this.d=A,this.b=n,this.a=e}function biA(A){VOA(this),Eh(this),gs(this,A)}function dB(A){BiA(this),edA(this.c,0,A.Pc())}function kKA(A){hg(A.a),x$A(A.c,A.b),A.b=null}function RKA(A){this.a=A,Gw(),rB(Date.now())}function TKA(){TKA=_,rUA=new d,IW=new d}function HiA(){HiA=_,ZmA=new dA,tQe=new kA}function vKA(){vKA=_,BMe=TA(on,ke,1,0,5,1)}function jKA(){jKA=_,NMe=TA(on,ke,1,0,5,1)}function SCA(){SCA=_,mMe=TA(on,ke,1,0,5,1)}function ew(){ew=_,new XEA((ft(),ft(),ps))}function lSe(A){return r7(),ai((P$A(),rQe),A)}function uSe(A){return Cu(),ai((a$A(),gQe),A)}function wSe(A){return iP(),ai((Q_A(),EQe),A)}function QSe(A){return B7(),ai((E_A(),fQe),A)}function ESe(A){return TP(),ai((nte(),IQe),A)}function fSe(A){return Rl(),ai((c$A(),FQe),A)}function ISe(A){return kB(),ai((s$A(),YQe),A)}function CSe(A){return eB(),ai((o$A(),yQe),A)}function dSe(A){return $P(),ai((IOA(),XQe),A)}function FSe(A){return wC(),ai((W$A(),qQe),A)}function MSe(A){return xy(),ai((K$A(),$Qe),A)}function YSe(A){return _x(),ai((V$A(),t1e),A)}function DSe(A){return _9(),ai((VqA(),n1e),A)}function ySe(A){return g7(),ai((f_A(),C1e),A)}function pSe(A){return Hx(),ai((B$A(),S1e),A)}function NSe(A){return hs(),ai((YAe(),O1e),A)}function mSe(A){return qN(),ai((O$A(),Z1e),A)}function USe(A){return QC(),ai((g$A(),t0e),A)}function LCA(A,e){if(!A)throw oA(new Lt(e))}function bSe(A){return en(),ai((OAe(),c0e),A)}function zCA(A){cz.call(this,A.d,A.c,A.a,A.b)}function xiA(A){cz.call(this,A.d,A.c,A.a,A.b)}function PCA(A,e,n){this.b=A,this.c=e,this.a=n}function V6(A,e,n){this.b=A,this.a=e,this.c=n}function SKA(A,e,n){this.a=A,this.b=e,this.c=n}function OCA(A,e,n){this.a=A,this.b=e,this.c=n}function LKA(A,e,n){this.a=A,this.b=e,this.c=n}function WCA(A,e,n){this.a=A,this.b=e,this.c=n}function zKA(A,e,n){this.b=A,this.a=e,this.c=n}function X6(A,e,n){this.e=e,this.b=A,this.d=n}function HSe(A,e,n){return Af(),A.a.Od(e,n),e}function GiA(A){var e;return e=new Tn,e.e=A,e}function KCA(A){var e;return e=new y6A,e.b=A,e}function tT(){tT=_,HW=new zq,xW=new Pq}function qh(){qh=_,C0e=new x_,d0e=new P5}function xSe(A){return R7(),ai((Z$A(),w0e),A)}function GSe(A){return Iu(),ai((_$A(),Y0e),A)}function JSe(A){return kP(),ai((Wee(),H0e),A)}function kSe(A){return Jy(),ai((VAe(),x0e),A)}function RSe(A){return t7(),ai((Y_A(),G0e),A)}function TSe(A){return yy(),ai((h$A(),J0e),A)}function vSe(A){return TY(),ai((IAe(),y0e),A)}function jSe(A){return uC(),ai((w$A(),b0e),A)}function SSe(A){return C7(),ai((l$A(),k0e),A)}function LSe(A){return Df(),ai((EAe(),R0e),A)}function zSe(A){return kT(),ai((C_A(),T0e),A)}function PSe(A){return Ef(),ai((u$A(),j0e),A)}function OSe(A){return yP(),ai((_Ae(),S0e),A)}function WSe(A){return NT(),ai((d_A(),L0e),A)}function KSe(A){return u8(),ai((ZAe(),z0e),A)}function VSe(A){return Em(),ai((XAe(),P0e),A)}function XSe(A){return xs(),ai((fte(),O0e),A)}function ZSe(A){return ZN(),ai((E$A(),W0e),A)}function qSe(A){return YQ(),ai((Q$A(),V0e),A)}function _Se(A){return Oz(),ai((D_A(),X0e),A)}function $Se(A){return eh(),ai((CAe(),Z0e),A)}function A5e(A){return FP(),ai((qAe(),gIe),A)}function e5e(A){return Lx(),ai((f$A(),hIe),A)}function t5e(A){return IF(),ai(($$A(),lIe),A)}function n5e(A){return bs(),ai((d$A(),IIe),A)}function i5e(A){return LY(),ai((Oee(),wIe),A)}function r5e(A){return yQ(),ai((C$A(),QIe),A)}function c5e(A){return HT(),ai((M_A(),EIe),A)}function s5e(A){return x7(),ai((I$A(),CIe),A)}function o5e(A){return $x(),ai((fAe(),uIe),A)}function a5e(A){return FT(),ai((F_A(),dIe),A)}function B5e(A){return nm(),ai((M$A(),FIe),A)}function g5e(A){return b7(),ai((Y$A(),MIe),A)}function h5e(A){return T7(),ai((F$A(),YIe),A)}function l5e(A){return lC(),ai((D$A(),RIe),A)}function u5e(A){return Ux(),ai((p_A(),LIe),A)}function w5e(A){return nw(),ai((N_A(),XIe),A)}function Q5e(A){return hu(),ai((m_A(),qIe),A)}function E5e(A){return Gl(),ai((y_A(),hCe),A)}function f5e(A){return nC(),ai((U_A(),ICe),A)}function I5e(A){return hm(),ai((X$A(),CCe),A)}function C5e(A){return r3(),ai(($Ae(),FCe),A)}function d5e(A){return Rz(),ai((x_A(),kCe),A)}function F5e(A){return N7(),ai((H_A(),LCe),A)}function M5e(A){return Sz(),ai((b_A(),RCe),A)}function Y5e(A){return X7(),ai((y$A(),PCe),A)}function D5e(A){return i7(),ai((G_A(),OCe),A)}function y5e(A){return ZT(),ai((p$A(),WCe),A)}function p5e(A){return uP(),ai((q$A(),sde),A)}function N5e(A){return H7(),ai((m$A(),ode),A)}function m5e(A){return V7(),ai((N$A(),ade),A)}function U5e(A){return Mm(),ai((MAe(),mde),A)}function b5e(A){return t8(),ai((U$A(),Ude),A)}function H5e(A){return A6(),ai((WqA(),bde),A)}function x5e(A){return e6(),ai((OqA(),xde),A)}function G5e(A){return MT(),ai((k_A(),Gde),A)}function J5e(A){return Q8(),ai((dAe(),Jde),A)}function k5e(A){return kH(),ai((KqA(),qde),A)}function R5e(A){return WT(),ai((J_A(),_de),A)}function T5e(A){return vl(),ai((FAe(),iFe),A)}function v5e(A){return N1(),ai((Kee(),cFe),A)}function j5e(A){return zw(),ai((KAe(),sFe),A)}function S5e(A){return FF(),ai((WAe(),lFe),A)}function L5e(A){return ys(),ai((COA(),h0e),A)}function z5e(A){return ON(),ai((I_A(),g0e),A)}function P5e(A){return Hs(),ai((DAe(),NFe),A)}function O5e(A){return Eu(),ai((H$A(),mFe),A)}function W5e(A){return mQ(),ai((tAe(),UFe),A)}function K5e(A){return YP(),ai((eee(),bFe),A)}function V5e(A){return pQ(),ai((b$A(),xFe),A)}function X5e(A){return Ug(),ai((eAe(),JFe),A)}function Z5e(A){return yF(),ai((tte(),kFe),A)}function q5e(A){return HY(),ai((yAe(),RFe),A)}function _5e(A){return kc(),ai((SAe(),TFe),A)}function $5e(A){return RB(),ai((Aee(),vFe),A)}function ALe(A){return wg(),ai((iAe(),OFe),A)}function eLe(A){return _B(),ai((Ite(),WFe),A)}function tLe(A){return De(),ai((pAe(),jFe),A)}function nLe(A){return _7(),ai((nAe(),KFe),A)}function iLe(A){return ug(),ai((AAe(),ZFe),A)}function rLe(A){return Cm(),ai((Vee(),aMe),A)}function cLe(A,e){return jt(A),A+(jt(e),e)}function sLe(A,e){return Gw(),Kn(ee(A.a),e)}function oLe(A,e){return Gw(),Kn(ee(A.a),e)}function JiA(A,e){this.c=A,this.a=e,this.b=e-A}function PKA(A,e,n){this.a=A,this.b=e,this.c=n}function VCA(A,e,n){this.a=A,this.b=e,this.c=n}function XCA(A,e,n){this.a=A,this.b=e,this.c=n}function OKA(A,e,n){this.a=A,this.b=e,this.c=n}function WKA(A,e,n){this.a=A,this.b=e,this.c=n}function u1(A,e,n){this.e=A,this.a=e,this.c=n}function KKA(A,e,n){Wg(),sFA.call(this,A,e,n)}function kiA(A,e,n){Wg(),OdA.call(this,A,e,n)}function ZCA(A,e,n){Wg(),OdA.call(this,A,e,n)}function qCA(A,e,n){Wg(),OdA.call(this,A,e,n)}function VKA(A,e,n){Wg(),kiA.call(this,A,e,n)}function _CA(A,e,n){Wg(),kiA.call(this,A,e,n)}function XKA(A,e,n){Wg(),_CA.call(this,A,e,n)}function ZKA(A,e,n){Wg(),ZCA.call(this,A,e,n)}function qKA(A,e,n){Wg(),qCA.call(this,A,e,n)}function nT(A,e){return On(A),On(e),new f7A(A,e)}function By(A,e){return On(A),On(e),new BVA(A,e)}function aLe(A,e){return On(A),On(e),new gVA(A,e)}function BLe(A,e){return On(A),On(e),new C7A(A,e)}function g(A,e){return hx(A==null||fsA(A,e)),A}function QN(A){var e;return e=new Ee,gcA(e,A),e}function gLe(A){var e;return e=new uc,gcA(e,A),e}function _KA(A){var e;return e=new ifA,DcA(e,A),e}function iT(A){var e;return e=new Mr,DcA(e,A),e}function hLe(A){return!A.e&&(A.e=new Ee),A.e}function lLe(A){return!A.c&&(A.c=new Jd),A.c}function Qe(A,e){return A.c[A.c.length]=e,!0}function $KA(A,e){this.c=A,this.b=e,this.a=!1}function $CA(A){this.d=A,KtA(this),this.b=r9e(A.d)}function AVA(){this.a=";,;",this.b="",this.c=""}function uLe(A,e,n){eXA.call(this,e,n),this.a=A}function eVA(A,e,n){this.b=A,wOA.call(this,e,n)}function AdA(A,e,n){this.c=A,o6.call(this,e,n)}function edA(A,e,n){M2A(n,0,A,e,n.length,!1)}function kw(A,e,n,r,o){A.b=e,A.c=n,A.d=r,A.a=o}function wLe(A,e){e&&(A.b=e,A.a=(S0(e),e.a))}function tdA(A,e,n,r,o){A.d=e,A.c=n,A.a=r,A.b=o}function ndA(A){var e,n;e=A.b,n=A.c,A.b=n,A.c=e}function idA(A){var e,n;n=A.d,e=A.a,A.d=e,A.a=n}function rdA(A){return W0(d9e(go(A)?fh(A):A))}function QLe(A,e){return Za(EVA(A.d),EVA(e.d))}function ELe(A,e){return e==(De(),Wt)?A.c:A.d}function EN(){EN=_,Y3A=(De(),Wt),TK=$t}function tVA(){this.b=re(Ne(Re((Sl(),chA))))}function nVA(A){return Af(),TA(on,ke,1,A,5,1)}function fLe(A){return new Pe(A.c+A.b,A.d+A.a)}function ILe(A,e){return $9(),Za(A.d.p,e.d.p)}function RiA(A){return an(A.b!=0),_g(A,A.a.a)}function CLe(A){return an(A.b!=0),_g(A,A.c.b)}function cdA(A,e){if(!A)throw oA(new hzA(e))}function Z6(A,e){if(!A)throw oA(new Lt(e))}function sdA(A,e,n){aN.call(this,A,e),this.b=n}function rT(A,e,n){FIA.call(this,A,e),this.c=n}function iVA(A,e,n){JAe.call(this,e,n),this.d=A}function odA(A){SCA(),m4.call(this),this.th(A)}function rVA(A,e,n){this.a=A,hY.call(this,e,n)}function cVA(A,e,n){this.a=A,hY.call(this,e,n)}function q6(A,e,n){FIA.call(this,A,e),this.c=n}function sVA(){HN(),v9e.call(this,(b0(),Rh))}function oVA(A){return A!=null&&!isA(A,qG,_G)}function dLe(A,e){return(Ene(A)<<4|Ene(e))&Wr}function FLe(A,e){return dz(),ysA(A,e),new JXA(A,e)}function tf(A,e){var n;A.n&&(n=e,Qe(A.f,n))}function fN(A,e,n){var r;r=new nF(n),kl(A,e,r)}function MLe(A,e){var n;return n=A.c,yMA(A,e),n}function adA(A,e){return e<0?A.g=-1:A.g=e,A}function _6(A,e){return sWe(A),A.a*=e,A.b*=e,A}function aVA(A,e,n,r,o){A.c=e,A.d=n,A.b=r,A.a=o}function di(A,e){return vr(A,e,A.c.b,A.c),!0}function BdA(A){A.a.b=A.b,A.b.a=A.a,A.a=A.b=null}function TiA(A){this.b=A,this.a=ZI(this.b.a).Ed()}function BVA(A,e){this.b=A,this.a=e,rH.call(this)}function gVA(A,e){this.a=A,this.b=e,rH.call(this)}function hVA(A,e){eXA.call(this,e,1040),this.a=A}function cT(A){return A==0||isNaN(A)?A:A<0?-1:1}function YLe(A){return Qy(),Pw(A)==yr(q0(A))}function DLe(A){return Qy(),q0(A)==yr(Pw(A))}function XI(A,e){return n3(A,new aN(e.a,e.b))}function yLe(A){return!Bs(A)&&A.c.i.c==A.d.i.c}function $6(A){var e;return e=A.n,A.a.b+e.d+e.a}function lVA(A){var e;return e=A.n,A.e.b+e.d+e.a}function gdA(A){var e;return e=A.n,A.e.a+e.b+e.c}function uVA(A){return Gi(),new Rw(0,A)}function pLe(A){return A.a?A.a:frA(A)}function hx(A){if(!A)throw oA(new $4(null))}function wVA(){wVA=_,PuA=(ft(),new G(IgA))}function Az(){Az=_,new oDA((lnA(),bgA),(unA(),UgA))}function QVA(){QVA=_,xmA=TA(ss,Be,19,256,0,1)}function viA(A,e,n,r){RYA.call(this,A,e,n,r,0,0)}function NLe(A,e,n){return Li(A.b,g(n.b,17),e)}function mLe(A,e,n){return Li(A.b,g(n.b,17),e)}function ULe(A,e){return Qe(A,new Pe(e.a,e.b))}function bLe(A,e){return A.c =e)throw oA(new AfA)}function l9e(A,e,n){return Dr(e,0,wdA(e[0],n[0])),e}function u9e(A,e,n){e.Ye(n,re(Ne(hn(A.b,n)))*A.a)}function AXA(A,e,n){return PY(),WN(A,e)&&WN(A,n)}function Ex(A){return RB(),!A.Hc(SQ)&&!A.Hc(FE)}function uz(A){return new Pe(A.c+A.b/2,A.d+A.a/2)}function qiA(A,e){return e.kh()?X0(A.b,g(e,49)):e}function bdA(A,e){this.e=A,this.d=e&64?e|cw:e}function eXA(A,e){this.c=0,this.d=A,this.b=e|64|cw}function wz(A){this.b=new Na(11),this.a=(CY(),A)}function _iA(A){this.b=null,this.a=(CY(),A||KmA)}function tXA(A){this.a=Die(A.a),this.b=new dB(A.b)}function nXA(A){this.b=A,cy.call(this,A),cWA(this)}function iXA(A){this.b=A,KR.call(this,A),sWA(this)}function tF(A,e,n){this.a=A,oy.call(this,e,n,5,6)}function HdA(A,e,n,r){this.b=A,$r.call(this,e,n,r)}function Dc(A,e,n,r,o){ncA.call(this,A,e,n,r,o,-1)}function fx(A,e,n,r,o){yT.call(this,A,e,n,r,o,-1)}function Ie(A,e,n,r){$r.call(this,A,e,n),this.b=r}function Qz(A,e,n,r){rT.call(this,A,e,n),this.b=r}function rXA(A){oOA.call(this,A,!1),this.a=!1}function cXA(A,e){this.b=A,MtA.call(this,A.b),this.a=e}function sXA(A,e){iF(),E8e.call(this,A,P7(new sg(e)))}function Ez(A,e){return Gi(),new WdA(A,e,0)}function $iA(A,e){return Gi(),new WdA(6,A,e)}function w9e(A,e){return ht(A.substr(0,e.length),e)}function gg(A,e){return Uc(e)?drA(A,e):!!to(A.f,e)}function Lc(A,e){for(jt(e);A.Ob();)e.td(A.Pb())}function fY(A,e,n){AE(),this.e=A,this.d=e,this.a=n}function w1(A,e,n,r){var o;o=A.i,o.i=e,o.a=n,o.b=r}function xdA(A){var e;for(e=A;e.f;)e=e.f;return e}function ly(A){var e;return e=Sx(A),an(e!=null),e}function Q9e(A){var e;return e=eXe(A),an(e!=null),e}function CN(A,e){var n;return n=A.a.gc(),PFA(e,n),n-e}function GdA(A,e){var n;for(n=0;n 0?w.Math.log(A/e):-100}function oXA(A,e){return Zo(A,e)<0?-1:Zo(A,e)>0?1:0}function vdA(A,e,n){return $ae(A,g(e,46),g(n,167))}function aXA(A,e){return g(mdA(ZI(A.a)).Xb(e),42).cd()}function D9e(A,e){return VOe(e,A.length),new hVA(A,e)}function nrA(A,e){this.d=A,Qn.call(this,A),this.e=e}function qI(A){this.d=(jt(A),A),this.a=0,this.c=eO}function jdA(A,e){HI.call(this,1),this.a=A,this.b=e}function BXA(A,e){return A.c?BXA(A.c,e):Qe(A.b,e),A}function y9e(A,e,n){var r;return r=BF(A,e),SrA(A,e,n),r}function SdA(A,e){var n;return n=A.slice(0,e),iMA(n,A)}function gXA(A,e,n){var r;for(r=0;r =A.g}function hrA(A,e,n){var r;return r=McA(A,e,n),wyA(A,r)}function uy(A,e){var n;n=A.a.length,BF(A,n),SrA(A,n,e)}function yXA(A,e){var n;n=console[A],n.call(console,e)}function pXA(A,e){var n;++A.j,n=A.Vi(),A.Ii(A.oi(n,e))}function T9e(A,e,n){g(e.b,65),tB(e.a,new VCA(A,n,e))}function OdA(A,e,n){b9.call(this,e),this.a=A,this.b=n}function WdA(A,e,n){HI.call(this,A),this.a=e,this.b=n}function KdA(A,e,n){this.a=A,WEA.call(this,e),this.b=n}function NXA(A,e,n){this.a=A,MFA.call(this,8,e,null,n)}function v9e(A){this.a=(jt(gi),gi),this.b=A,new lfA}function mXA(A){this.c=A,this.b=this.c.a,this.a=this.c.e}function VdA(A){this.c=A,this.b=A.a.d.a,wCA(A.a.e,this)}function hg(A){Xd(A.c!=-1),A.d.$c(A.c),A.b=A.c,A.c=-1}function dx(A){return w.Math.sqrt(A.a*A.a+A.b*A.b)}function $I(A,e){return IN(e,A.a.c.length),je(A.a,e)}function tw(A,e){return qA(A)===qA(e)||A!=null&&Si(A,e)}function j9e(A){return 0>=A?new jfA:yWe(A-1)}function S9e(A){return QM?drA(QM,A):!1}function UXA(A){return A?A.dc():!A.Kc().Ob()}function is(A){return!A.a&&A.c?A.c.b:A.a}function L9e(A){return!A.a&&(A.a=new $r(ME,A,4)),A.a}function AC(A){return!A.d&&(A.d=new $r(Rs,A,1)),A.d}function jt(A){if(A==null)throw oA(new FH);return A}function Fx(A){A.c?A.c.He():(A.d=!0,Xit(A))}function S0(A){A.c?S0(A.c):(df(A),A.d=!0)}function bXA(A){_dA(A.a),A.b=TA(on,ke,1,A.b.length,5,1)}function z9e(A,e){return Za(e.j.c.length,A.j.c.length)}function P9e(A,e){A.c<0||A.b.b =0?A.Bh(n):D2A(A,e)}function HXA(A){var e,n;return e=A.c.i.c,n=A.d.i.c,e==n}function W9e(A){if(A.p!=4)throw oA(new EB);return A.e}function K9e(A){if(A.p!=3)throw oA(new EB);return A.e}function V9e(A){if(A.p!=6)throw oA(new EB);return A.f}function X9e(A){if(A.p!=6)throw oA(new EB);return A.k}function Z9e(A){if(A.p!=3)throw oA(new EB);return A.j}function q9e(A){if(A.p!=4)throw oA(new EB);return A.j}function XdA(A){return!A.b&&(A.b=new H9(new hnA)),A.b}function eC(A){return A.c==-2&&V4(A,wAt(A.g,A.b)),A.c}function MN(A,e){var n;return n=srA("",A),n.n=e,n.i=1,n}function _9e(A,e){WiA(g(e.b,65),A),tB(e.a,new fi(A))}function $9e(A,e){Kn((!A.a&&(A.a=new _R(A,A)),A.a),e)}function xXA(A,e){this.b=A,nrA.call(this,A,e),cWA(this)}function GXA(A,e){this.b=A,TCA.call(this,A,e),sWA(this)}function ZdA(A,e,n,r){SI.call(this,A,e),this.d=n,this.a=r}function Cz(A,e,n,r){SI.call(this,A,n),this.a=e,this.f=r}function JXA(A,e){xve.call(this,pWe(On(A),On(e))),this.a=e}function kXA(){n2A.call(this,Rf,(vzA(),RMe)),Mat(this)}function RXA(){n2A.call(this,yh,(nN(),pkA)),Hot(this)}function TXA(){si.call(this,"DELAUNAY_TRIANGULATION",0)}function A6e(A){return String.fromCharCode.apply(null,A)}function Li(A,e,n){return Uc(e)?Ks(A,e,n):ja(A.f,e,n)}function qdA(A){return ft(),A?A.ve():(CY(),CY(),XmA)}function e6e(A,e,n){return Ny(),n.pg(A,g(e.cd(),146))}function vXA(A,e){return Az(),new oDA(new CWA(A),new IWA(e))}function t6e(A){return Ng(A,_oA),h7(ns(ns(5,A),A/10|0))}function dz(){dz=_,kwe=new wnA(wA(uA(Tf,1),tO,42,0,[]))}function jXA(A){return!A.d&&(A.d=new y(A.c.Cc())),A.d}function YN(A){return!A.a&&(A.a=new CzA(A.c.vc())),A.a}function SXA(A){return!A.b&&(A.b=new AN(A.c.ec())),A.b}function vw(A,e){for(;e-- >0;)A=A<<1|(A<0?1:0);return A}function Ba(A,e){return qA(A)===qA(e)||A!=null&&Si(A,e)}function n6e(A,e){return Pt(),g(e.b,19).ar&&++r,r}function fQ(A){var e,n;return n=(e=new xI,e),TN(n,A),n}function ErA(A){var e,n;return n=(e=new xI,e),c2A(n,A),n}function f6e(A,e){var n;return n=hn(A.f,e),RMA(e,n),null}function frA(A){var e;return e=mWe(A),e||null}function qXA(A){return!A.b&&(A.b=new Ie(dc,A,12,3)),A.b}function I6e(A){return A!=null&&pR(pV,A.toLowerCase())}function C6e(A,e){return ec(FB(A)*Bg(A),FB(e)*Bg(e))}function d6e(A,e){return ec(FB(A)*Bg(A),FB(e)*Bg(e))}function F6e(A,e){return ec(A.d.c+A.d.b/2,e.d.c+e.d.b/2)}function M6e(A,e){return ec(A.g.c+A.g.b/2,e.g.c+e.g.b/2)}function _XA(A,e,n){n.a?iB(A,e.b-A.f/2):nB(A,e.a-A.g/2)}function $XA(A,e,n,r){this.a=A,this.b=e,this.c=n,this.d=r}function AZA(A,e,n,r){this.a=A,this.b=e,this.c=n,this.d=r}function cf(A,e,n,r){this.e=A,this.a=e,this.c=n,this.d=r}function eZA(A,e,n,r){this.a=A,this.c=e,this.d=n,this.b=r}function tZA(A,e,n,r){Wg(),V_A.call(this,e,n,r),this.a=A}function nZA(A,e,n,r){Wg(),V_A.call(this,e,n,r),this.a=A}function iZA(A,e){this.a=A,mje.call(this,A,g(A.d,15).Zc(e))}function IrA(A){this.f=A,this.c=this.f.e,A.f>0&&Qre(this)}function rZA(A,e,n,r){this.b=A,this.c=r,riA.call(this,e,n)}function cZA(A){return an(A.b =0&&ht(A.substr(n,e.length),e)}function L0(A,e,n,r,o,B,u){return new zrA(A.e,e,n,r,o,B,u)}function MZA(A,e,n,r,o,B){this.a=A,QcA.call(this,e,n,r,o,B)}function YZA(A,e,n,r,o,B){this.a=A,QcA.call(this,e,n,r,o,B)}function DZA(A,e){this.g=A,this.d=wA(uA($w,1),U1,10,0,[e])}function Q1(A,e){this.e=A,this.a=on,this.b=Voe(e),this.c=e}function yZA(A,e){O6.call(this),hMA(this),this.a=A,this.c=e}function lT(A,e,n,r){Dr(A.c[e.g],n.g,r),Dr(A.c[n.g],e.g,r)}function YrA(A,e,n,r){Dr(A.c[e.g],e.g,n),Dr(A.b[e.g],e.g,r)}function O6e(){return FT(),wA(uA(w3A,1),ue,376,0,[blA,Pv])}function W6e(){return NT(),wA(uA(sHA,1),ue,479,0,[cHA,cK])}function K6e(){return kT(),wA(uA(iHA,1),ue,419,0,[iK,nHA])}function V6e(){return t7(),wA(uA(ZbA,1),ue,422,0,[XbA,HhA])}function X6e(){return Oz(),wA(uA(CHA,1),ue,420,0,[KhA,IHA])}function Z6e(){return HT(),wA(uA(g3A,1),ue,421,0,[NlA,mlA])}function q6e(){return Ux(),wA(uA(SIe,1),ue,523,0,[pG,yG])}function _6e(){return Gl(),wA(uA(gCe,1),ue,520,0,[cM,QE])}function $6e(){return nw(),wA(uA(VIe,1),ue,516,0,[$C,R1])}function Aze(){return hu(),wA(uA(ZIe,1),ue,515,0,[Kf,Uu])}function eze(){return nC(),wA(uA(fCe,1),ue,455,0,[EE,DD])}function tze(){return Sz(),wA(uA(v3A,1),ue,425,0,[WlA,T3A])}function nze(){return Rz(),wA(uA(R3A,1),ue,480,0,[OlA,k3A])}function ize(){return N7(),wA(uA(j3A,1),ue,495,0,[VK,yU])}function rze(){return i7(),wA(uA(L3A,1),ue,426,0,[S3A,ZlA])}function cze(){return WT(),wA(uA(OGA,1),ue,429,0,[nV,PGA])}function sze(){return MT(),wA(uA(MGA,1),ue,430,0,[ruA,eV])}function oze(){return iP(),wA(uA(oUA,1),ue,428,0,[WgA,sUA])}function aze(){return B7(),wA(uA(BUA,1),ue,427,0,[aUA,KgA])}function Bze(){return g7(),wA(uA(TUA,1),ue,424,0,[ihA,pW])}function gze(){return ON(),wA(uA(B0e,1),ue,511,0,[pv,EhA])}function Hz(A,e,n,r){return n>=0?A.jh(e,n,r):A.Sg(null,n,r)}function DrA(A){return A.b.b==0?A.a.$e():RiA(A.b)}function hze(A){if(A.p!=5)throw oA(new EB);return Pn(A.f)}function lze(A){if(A.p!=5)throw oA(new EB);return Pn(A.k)}function cFA(A){return qA(A.a)===qA((ycA(),SuA))&&Qat(A),A.a}function pZA(A){this.a=g(On(A),271),this.b=(ft(),new $IA(A))}function NZA(A,e){vEA(this,new Pe(A.a,A.b)),C9(this,iT(e))}function nC(){nC=_,EE=new uIA(Py,0),DD=new uIA(Oy,1)}function nw(){nw=_,$C=new hIA(Oy,0),R1=new hIA(Py,1)}function iC(){MTe.call(this,new $2(gF(12))),XIA(!0),this.a=2}function yrA(A,e,n){Gi(),HI.call(this,A),this.b=e,this.a=n}function sFA(A,e,n){Wg(),b9.call(this,e),this.a=A,this.b=n}function mZA(A){O6.call(this),hMA(this),this.a=A,this.c=!0}function UZA(A){var e;e=A.c.d.b,A.b=e,A.a=A.c.d,e.a=A.c.d.b=A}function xz(A){var e;CWe(A.a),SOA(A.a),e=new un(A.a),kYA(e)}function uze(A,e){voe(A,!0),tB(A.e.wf(),new PCA(A,!0,e))}function Gz(A,e){return a_A(e),EWe(A,TA(Sn,li,25,e,15,1),e)}function wze(A,e){return Qy(),A==yr(Pw(e))||A==yr(q0(e))}function ga(A,e){return e==null?bo(to(A.f,null)):vH(A.g,e)}function Qze(A){return A.b==0?null:(an(A.b!=0),_g(A,A.a.a))}function zr(A){return Math.max(Math.min(A,Ti),-2147483648)|0}function Eze(A,e){var n=kgA[A.charCodeAt(0)];return n??A}function Jz(A,e){return pz(A,"set1"),pz(e,"set2"),new y7A(A,e)}function fze(A,e){var n;return n=hWe(A.f,e),Xi(z6(n),A.f.d)}function Yx(A,e){var n,r;return n=e,r=new Le,pBe(A,n,r),r.d}function prA(A,e,n,r){var o;o=new EKA,e.a[n.g]=o,gy(A.b,r,o)}function oFA(A,e,n){var r;r=A.Yg(e),r>=0?A.sh(r,n):q2A(A,e,n)}function dY(A,e,n){Tz(),A&&Li(TuA,A,e),A&&Li(Cj,A,n)}function bZA(A,e,n){this.i=new Ee,this.b=A,this.g=e,this.a=n}function kz(A,e,n){this.c=new Ee,this.e=A,this.f=e,this.b=n}function aFA(A,e,n){this.a=new Ee,this.e=A,this.f=e,this.c=n}function HZA(A,e){x6(this),this.f=e,this.g=A,yz(this),this._d()}function uT(A,e){var n;n=A.q.getHours(),A.q.setDate(e),l3(A,n)}function xZA(A,e){var n;for(On(e),n=A.a;n;n=n.c)e.Od(n.g,n.i)}function GZA(A){var e;return e=new O9(gF(A.length)),AYA(e,A),e}function Ize(A){function e(){}return e.prototype=A||{},new e}function Cze(A,e){return ate(A,e)?(see(A),!0):!1}function IQ(A,e){if(e==null)throw oA(new FH);return EZe(A,e)}function dze(A){if(A.qe())return null;var e=A.n;return BW[e]}function wT(A){return A.Db>>16!=3?null:g(A.Cb,33)}function gu(A){return A.Db>>16!=9?null:g(A.Cb,33)}function JZA(A){return A.Db>>16!=6?null:g(A.Cb,79)}function kZA(A){return A.Db>>16!=7?null:g(A.Cb,235)}function RZA(A){return A.Db>>16!=7?null:g(A.Cb,160)}function yr(A){return A.Db>>16!=11?null:g(A.Cb,33)}function TZA(A,e){var n;return n=A.Yg(e),n>=0?A.lh(n):toA(A,e)}function vZA(A,e){var n;return n=new udA(e),jre(n,A),new dB(n)}function BFA(A){var e;return e=A.d,e=A.si(A.f),Kn(A,e),e.Ob()}function jZA(A,e){return A.b+=e.b,A.c+=e.c,A.d+=e.d,A.a+=e.a,A}function NrA(A,e){return w.Math.abs(A) 0}function SZA(){this.a=new wQ,this.e=new uc,this.g=0,this.i=0}function LZA(A){this.a=A,this.b=TA(TIe,Be,1944,A.e.length,0,2)}function mrA(A,e,n){var r;r=mte(A,e,n),A.b=new p7(r.c.length)}function hu(){hu=_,Kf=new gIA(JaA,0),Uu=new gIA("UP",1)}function Rz(){Rz=_,OlA=new wIA(tle,0),k3A=new wIA("FAN",1)}function Tz(){Tz=_,TuA=new Ln,Cj=new Ln,L8e(AQe,new zb)}function Mze(A){if(A.p!=0)throw oA(new EB);return $H(A.f,0)}function Yze(A){if(A.p!=0)throw oA(new EB);return $H(A.k,0)}function zZA(A){return A.Db>>16!=3?null:g(A.Cb,147)}function NN(A){return A.Db>>16!=6?null:g(A.Cb,235)}function rF(A){return A.Db>>16!=17?null:g(A.Cb,26)}function PZA(A,e){var n=A.a=A.a||[];return n[e]||(n[e]=A.le(e))}function Dze(A,e){var n;return n=A.a.get(e),n??new Array}function yze(A,e){var n;n=A.q.getHours(),A.q.setMonth(e),l3(A,n)}function Ks(A,e,n){return e==null?ja(A.f,null,n):EC(A.g,e,n)}function Dx(A,e,n,r,o,B){return new MQ(A.e,e,A.aj(),n,r,o,B)}function QT(A,e,n){return A.a=Mg(A.a,0,e)+(""+n)+OR(A.a,e),A}function pze(A,e,n){return Qe(A.a,(dz(),ysA(e,n),new SI(e,n))),A}function gFA(A){return qIA(A.c),A.e=A.a=A.c,A.c=A.c.c,++A.d,A.a.f}function OZA(A){return qIA(A.e),A.c=A.a=A.e,A.e=A.e.e,--A.d,A.a.f}function Gc(A,e){A.d&&AB(A.d.e,A),A.d=e,A.d&&Qe(A.d.e,A)}function ts(A,e){A.c&&AB(A.c.g,A),A.c=e,A.c&&Qe(A.c.g,A)}function Vs(A,e){A.c&&AB(A.c.a,A),A.c=e,A.c&&Qe(A.c.a,A)}function Co(A,e){A.i&&AB(A.i.j,A),A.i=e,A.i&&Qe(A.i.j,A)}function WZA(A,e,n){this.a=e,this.c=A,this.b=(On(n),new dB(n))}function KZA(A,e,n){this.a=e,this.c=A,this.b=(On(n),new dB(n))}function VZA(A,e){this.a=A,this.c=Ho(this.a),this.b=new bz(e)}function Nze(A){var e;return df(A),e=new uc,cr(A,new Ve(e))}function cF(A,e){if(A<0||A>e)throw oA(new Os(QpA+A+EpA+e))}function hFA(A,e){return TVA(A.a,e)?kdA(A,g(e,22).g,null):null}function mze(A){return WcA(),Pt(),g(A.a,81).d.e!=0}function XZA(){XZA=_,vwe=Bi((R9(),wA(uA(Twe,1),ue,538,0,[GgA])))}function ZZA(){ZZA=_,DIe=GB(new wc,(hs(),ro),(ys(),Nv))}function lFA(){lFA=_,yIe=GB(new wc,(hs(),ro),(ys(),Nv))}function qZA(){qZA=_,NIe=GB(new wc,(hs(),ro),(ys(),Nv))}function _ZA(){_ZA=_,zIe=Ri(new wc,(hs(),ro),(ys(),rG))}function Yg(){Yg=_,WIe=Ri(new wc,(hs(),ro),(ys(),rG))}function $ZA(){$ZA=_,KIe=Ri(new wc,(hs(),ro),(ys(),rG))}function UrA(){UrA=_,_Ie=Ri(new wc,(hs(),ro),(ys(),rG))}function AqA(){AqA=_,TCe=GB(new wc,(hm(),mG),(r3(),klA))}function of(A,e,n,r){this.c=A,this.d=r,HrA(this,e),xrA(this,n)}function fy(A){this.c=new Mr,this.b=A.b,this.d=A.c,this.a=A.a}function brA(A){this.a=w.Math.cos(A),this.b=w.Math.sin(A)}function HrA(A,e){A.a&&AB(A.a.k,A),A.a=e,A.a&&Qe(A.a.k,A)}function xrA(A,e){A.b&&AB(A.b.f,A),A.b=e,A.b&&Qe(A.b.f,A)}function eqA(A,e){T9e(A,A.b,A.c),g(A.b.b,65),e&&g(e.b,65).b}function Uze(A,e){mYA(A,e),yA(A.Cb,88)&&DF(KB(g(A.Cb,88)),2)}function GrA(A,e){yA(A.Cb,88)&&DF(KB(g(A.Cb,88)),4),ma(A,e)}function vz(A,e){yA(A.Cb,179)&&(g(A.Cb,179).tb=null),ma(A,e)}function ha(A,e){return Ms(),BcA(e)?new ez(e,A):new PR(e,A)}function bze(A,e){var n,r;n=e.c,r=n!=null,r&&uy(A,new nF(e.c))}function tqA(A){var e,n;return n=(nN(),e=new xI,e),TN(n,A),n}function nqA(A){var e,n;return n=(nN(),e=new xI,e),TN(n,A),n}function iqA(A,e){var n;return n=new Qh(A),e.c[e.c.length]=n,n}function rqA(A,e){var n;return n=g(QF(Ey(A.a),e),14),n?n.gc():0}function cqA(A){var e;return df(A),e=(CY(),CY(),VmA),u7(A,e)}function sqA(A){for(var e;;)if(e=A.Pb(),!A.Ob())return e}function uFA(A,e){dTe.call(this,new $2(gF(A))),Ng(e,Cge),this.a=e}function jw(A,e,n){une(e,n,A.gc()),this.c=A,this.a=e,this.b=n-e}function oqA(A,e,n){var r;une(e,n,A.c.length),r=n-e,TfA(A.c,e,r)}function Hze(A,e){rWA(A,Pn(ac(R0(e,24),rO)),Pn(ac(e,rO)))}function bt(A,e){if(A<0||A>=e)throw oA(new Os(QpA+A+EpA+e))}function Ai(A,e){if(A<0||A>=e)throw oA(new yfA(QpA+A+EpA+e))}function Nt(A,e){this.b=(jt(A),A),this.a=e&GF?e:e|64|cw}function aqA(A){jOA(this),C6A(this.a,_MA(w.Math.max(8,A))<<1)}function lu(A){return Mo(wA(uA(Cc,1),Be,8,0,[A.i.n,A.n,A.a]))}function xze(){return Cu(),wA(uA(Ag,1),ue,132,0,[iUA,Jg,zF])}function Gze(){return Rl(),wA(uA(PF,1),ue,232,0,[Jo,xa,ko])}function Jze(){return kB(),wA(uA(MQe,1),ue,461,0,[Ew,aE,cl])}function kze(){return eB(),wA(uA(DQe,1),ue,462,0,[Pl,BE,sl])}function Rze(){return QC(),wA(uA(tbA,1),ue,423,0,[BD,ebA,uhA])}function Tze(){return Hx(),wA(uA(_UA,1),ue,379,0,[ohA,shA,ahA])}function vze(){return Lx(),wA(uA(e3A,1),ue,378,0,[FlA,A3A,xK])}function jze(){return yy(),wA(uA(_bA,1),ue,314,0,[ip,Uv,qbA])}function Sze(){return C7(),wA(uA(AHA,1),ue,337,0,[$bA,nK,xhA])}function Lze(){return Ef(),wA(uA(v0e,1),ue,450,0,[khA,hU,uD])}function zze(){return uC(),wA(uA(MhA,1),ue,361,0,[zC,hE,LC])}function Pze(){return YQ(),wA(uA(K0e,1),ue,303,0,[Hv,QD,rp])}function Oze(){return ZN(),wA(uA(WhA,1),ue,292,0,[PhA,OhA,bv])}function Wze(){return bs(),wA(uA(fIe,1),ue,452,0,[MG,vB,Ga])}function Kze(){return yQ(),wA(uA(B3A,1),ue,339,0,[wE,a3A,plA])}function Vze(){return x7(),wA(uA(u3A,1),ue,375,0,[h3A,UlA,l3A])}function Xze(){return T7(),wA(uA(d3A,1),ue,377,0,[GlA,YU,rM])}function Zze(){return nm(),wA(uA(E3A,1),ue,336,0,[HlA,Q3A,YG])}function qze(){return b7(),wA(uA(C3A,1),ue,338,0,[I3A,xlA,f3A])}function _ze(){return lC(),wA(uA(kIe,1),ue,454,0,[Ov,DG,RK])}function $ze(){return X7(),wA(uA(zCe,1),ue,442,0,[XlA,KlA,VlA])}function A7e(){return ZT(),wA(uA(O3A,1),ue,380,0,[XK,z3A,P3A])}function e7e(){return V7(),wA(uA(aGA,1),ue,381,0,[oGA,euA,sGA])}function t7e(){return H7(),wA(uA(rGA,1),ue,293,0,[AuA,iGA,nGA])}function n7e(){return t8(),wA(uA(tuA,1),ue,437,0,[_K,$K,AV])}function i7e(){return pQ(),wA(uA(_JA,1),ue,334,0,[lV,S1,LG])}function r7e(){return Eu(),wA(uA(jJA,1),ue,272,0,[mU,aM,UU])}function c7e(A,e){return mnt(A,e,yA(e,99)&&(g(e,18).Bb&us)!=0)}function s7e(A,e,n){var r;return r=Q3(A,e,!1),r.b<=e&&r.a<=n}function BqA(A,e,n){var r;r=new L$,r.b=e,r.a=n,++e.b,Qe(A.d,r)}function o7e(A,e){var n;return n=(jt(A),A).g,aCA(!!n),jt(e),n(e)}function wFA(A,e){var n,r;return r=CN(A,e),n=A.a.Zc(r),new D7A(A,n)}function a7e(A){return A.Db>>16!=6?null:g(roA(A),235)}function B7e(A){if(A.p!=2)throw oA(new EB);return Pn(A.f)&Wr}function g7e(A){if(A.p!=2)throw oA(new EB);return Pn(A.k)&Wr}function h7e(A){return A.a==(HN(),bV)&&ztA(A,Ont(A.g,A.b)),A.a}function Iy(A){return A.d==(HN(),bV)&&QH(A,Tct(A.g,A.b)),A.d}function tA(A){return an(A.a r?1:0}function gqA(A,e){var n,r;return n=rcA(e),r=n,g(hn(A.c,r),19).a}function hqA(A,e){var n;for(n=A+"";n.length 0&&A.a[--A.d]==0;);A.a[A.d++]==0&&(A.e=0)}function bqA(A){return A.a?A.e.length==0?A.a.a:A.a.a+(""+A.e):A.c}function M7e(A){return!!A.a&&VB(A.a.a).i!=0&&!(A.b&&MsA(A.b))}function Y7e(A){return!!A.u&&ra(A.u.a).i!=0&&!(A.n&&FsA(A.n))}function HqA(A){return SiA(A.e.Hd().gc()*A.c.Hd().gc(),16,new T2(A))}function D7e(A,e){return oXA(rB(A.q.getTime()),rB(e.q.getTime()))}function iw(A){return g(du(A,TA(whA,qaA,17,A.c.length,0,1)),474)}function ET(A){return g(du(A,TA($w,U1,10,A.c.length,0,1)),193)}function y7e(A){return Yg(),!Bs(A)&&!(!Bs(A)&&A.c.i.c==A.d.i.c)}function xqA(A,e,n){var r;r=(On(A),new dB(A)),t_e(new WZA(r,e,n))}function fT(A,e,n){var r;r=(On(A),new dB(A)),n_e(new KZA(r,e,n))}function GqA(A,e){var n;return n=1-e,A.a[n]=y7(A.a[n],n),y7(A,e)}function JqA(A,e){var n;A.e=new IfA,n=NF(e),Yc(n,A.c),Noe(A,n,0)}function Jc(A,e,n,r){var o;o=new EL,o.a=e,o.b=n,o.c=r,di(A.a,o)}function me(A,e,n,r){var o;o=new EL,o.a=e,o.b=n,o.c=r,di(A.b,o)}function $h(A){var e,n,r;return e=new wXA,n=YoA(e,A),lBt(e),r=n,r}function dFA(){var A,e,n;return e=(n=(A=new xI,A),n),Qe(RkA,e),e}function Lz(A){return A.j.c=TA(on,ke,1,0,5,1),_dA(A.c),c6e(A.a),A}function FY(A){return JH(),yA(A.g,10)?g(A.g,10):null}function p7e(A){return IY(A).dc()?!1:(yve(A,new iA),!0)}function N7e(A){if(!("stack"in A))try{throw A}catch{}return A}function IT(A,e){if(A<0||A>=e)throw oA(new Os(zet(A,e)));return A}function kqA(A,e,n){if(A<0||en)throw oA(new Os(het(A,e,n)))}function TrA(A,e){if(oc(A.a,e),e.d)throw oA(new fo(Lge));e.d=A}function vrA(A,e){if(e.$modCount!=A.$modCount)throw oA(new Og)}function RqA(A,e){return yA(e,42)?NsA(A.a,g(e,42)):!1}function TqA(A,e){return yA(e,42)?NsA(A.a,g(e,42)):!1}function vqA(A,e){return yA(e,42)?NsA(A.a,g(e,42)):!1}function m7e(A,e){return A.a<=A.b?(e.ud(A.a++),!0):!1}function cC(A){var e;return go(A)?(e=A,e==-0?0:e):TOe(A)}function zz(A){var e;return S0(A),e=new be,sY(A.a,new Qt(e)),e}function jqA(A){var e;return S0(A),e=new mt,sY(A.a,new Ye(e)),e}function Sc(A,e){this.a=A,z2.call(this,A),cF(e,A.gc()),this.b=e}function FFA(A){this.e=A,this.b=this.e.a.entries(),this.a=new Array}function U7e(A){return SiA(A.e.Hd().gc()*A.c.Hd().gc(),273,new u9(A))}function Pz(A){return new Na((Ng(A,_oA),h7(ns(ns(5,A),A/10|0))))}function SqA(A){return g(du(A,TA(s0e,Ihe,11,A.c.length,0,1)),1943)}function b7e(A,e,n){return n.f.c.length>0?vdA(A.a,e,n):vdA(A.b,e,n)}function H7e(A,e,n){A.d&&AB(A.d.e,A),A.d=e,A.d&&AF(A.d.e,n,A)}function jrA(A,e){pgt(e,A),idA(A.d),idA(g(q(A,(He(),yK)),207))}function px(A,e){ygt(e,A),ndA(A.d),ndA(g(q(A,(He(),yK)),207))}function sC(A,e){var n,r;return n=IQ(A,e),r=null,n&&(r=n.fe()),r}function mN(A,e){var n,r;return n=BF(A,e),r=null,n&&(r=n.ie()),r}function Nx(A,e){var n,r;return n=IQ(A,e),r=null,n&&(r=n.ie()),r}function CQ(A,e){var n,r;return n=IQ(A,e),r=null,n&&(r=l2A(n)),r}function x7e(A,e,n){var r;return r=Bm(n),SP(A.g,r,e),SP(A.i,e,n),e}function G7e(A,e,n){var r;r=oZe();try{return vje(A,e,n)}finally{O7e(r)}}function LqA(A){var e;e=A.Wg(),this.a=yA(e,69)?g(e,69).Zh():e.Kc()}function wc(){tzA.call(this),this.j.c=TA(on,ke,1,0,5,1),this.a=-1}function MFA(A,e,n,r){this.d=A,this.n=e,this.g=n,this.o=r,this.p=-1}function zqA(A,e,n,r){this.e=r,this.d=null,this.c=A,this.a=e,this.b=n}function YFA(A,e,n){this.d=new m9(this),this.e=A,this.i=e,this.f=n}function Oz(){Oz=_,KhA=new sIA(Rm,0),IHA=new sIA("TOP_LEFT",1)}function PqA(){PqA=_,M3A=vXA(de(1),de(4)),F3A=vXA(de(1),de(2))}function OqA(){OqA=_,xde=Bi((e6(),wA(uA(Hde,1),ue,551,0,[iuA])))}function WqA(){WqA=_,bde=Bi((A6(),wA(uA(FGA,1),ue,482,0,[nuA])))}function KqA(){KqA=_,qde=Bi((kH(),wA(uA(zGA,1),ue,530,0,[qv])))}function VqA(){VqA=_,n1e=Bi((_9(),wA(uA(bUA,1),ue,481,0,[$gA])))}function J7e(){return wC(),wA(uA(ZQe,1),ue,406,0,[fv,Ev,qgA,_gA])}function k7e(){return r7(),wA(uA(fW,1),ue,297,0,[zgA,AUA,eUA,tUA])}function R7e(){return _x(),wA(uA(e1e,1),ue,394,0,[Mv,MW,YW,Yv])}function T7e(){return xy(),wA(uA(_Qe,1),ue,323,0,[Cv,Iv,dv,Fv])}function v7e(){return qN(),wA(uA(X1e,1),ue,405,0,[SC,WF,OF,aD])}function j7e(){return R7(),wA(uA(u0e,1),ue,360,0,[dhA,ZW,qW,mv])}function XqA(A,e,n,r){return yA(n,54)?new JWA(A,e,n,r):new NdA(A,e,n,r)}function S7e(){return Iu(),wA(uA(M0e,1),ue,411,0,[np,sU,oU,FhA])}function L7e(A){var e;return A.j==(De(),Jn)&&(e=Ese(A),CB(e,$t))}function z7e(A,e){var n;n=e.a,ts(n,e.c.d),Gc(n,e.d.d),lF(n.a,A.n)}function ZqA(A,e){return g(VI(hz(g(Vi(A.k,e),15).Oc(),gD)),113)}function qqA(A,e){return g(VI(lz(g(Vi(A.k,e),15).Oc(),gD)),113)}function P7e(A){return new Nt(SWe(g(A.a.dd(),14).gc(),A.a.cd()),16)}function UN(A){return yA(A,14)?g(A,14).dc():!A.Kc().Ob()}function Cy(A){return JH(),yA(A.g,145)?g(A.g,145):null}function _qA(A){if(A.e.g!=A.b)throw oA(new Og);return!!A.c&&A.d>0}function Ii(A){return an(A.b!=A.d.c),A.c=A.b,A.b=A.b.a,++A.a,A.c.c}function DFA(A,e){jt(e),Dr(A.a,A.c,e),A.c=A.c+1&A.a.length-1,$ie(A)}function z0(A,e){jt(e),A.b=A.b-1&A.a.length-1,Dr(A.a,A.b,e),$ie(A)}function $qA(A,e){var n;for(n=A.j.c.length;n 0&&sa(A.g,0,e,0,A.i),e}function n_A(A,e){i6();var n;return n=g(hn(yV,A),55),!n||n.wj(e)}function nPe(A){if(A.p!=1)throw oA(new EB);return Pn(A.f)<<24>>24}function iPe(A){if(A.p!=1)throw oA(new EB);return Pn(A.k)<<24>>24}function rPe(A){if(A.p!=7)throw oA(new EB);return Pn(A.k)<<16>>16}function cPe(A){if(A.p!=7)throw oA(new EB);return Pn(A.f)<<16>>16}function dQ(A){var e;for(e=0;A.Ob();)A.Pb(),e=ns(e,1);return h7(e)}function i_A(A,e){var n;return n=new zd,A.xd(n),n.a+="..",e.yd(n),n.a}function sPe(A,e,n){var r;r=g(hn(A.g,n),57),Qe(A.a.c,new jc(e,r))}function oPe(A,e,n){return ZiA(Ne(bo(to(A.f,e))),Ne(bo(to(A.f,n))))}function Wz(A,e,n){return zP(A,e,n,yA(e,99)&&(g(e,18).Bb&us)!=0)}function aPe(A,e,n){return ym(A,e,n,yA(e,99)&&(g(e,18).Bb&us)!=0)}function BPe(A,e,n){return Jnt(A,e,n,yA(e,99)&&(g(e,18).Bb&us)!=0)}function NFA(A,e){return A==(en(),ic)&&e==ic?4:A==ic||e==ic?8:32}function r_A(A,e){return qA(e)===qA(A)?"(this Map)":e==null?sB:uo(e)}function gPe(A,e){return g(e==null?bo(to(A.f,null)):vH(A.g,e),281)}function c_A(A,e,n){var r;return r=Bm(n),Li(A.b,r,e),Li(A.c,e,n),e}function s_A(A,e){var n;for(n=e;n;)Zd(A,n.i,n.j),n=yr(n);return A}function mFA(A,e){var n;return n=gT(QN(new ccA(A,e))),nz(new ccA(A,e)),n}function Sw(A,e){Ms();var n;return n=g(A,66).Mj(),OAt(n,e),n.Ok(e)}function hPe(A,e,n,r,o){var B;B=jnt(o,n,r),Qe(e,Ret(o,B)),pAt(A,o,e)}function o_A(A,e,n){A.i=0,A.e=0,e!=n&&(xte(A,e,n),Hte(A,e,n))}function UFA(A,e){var n;n=A.q.getHours(),A.q.setFullYear(e+nE),l3(A,n)}function lPe(A,e,n){if(n){var r=n.ee();A.a[e]=r(n)}else delete A.a[e]}function SrA(A,e,n){if(n){var r=n.ee();n=r(n)}else n=void 0;A.a[e]=n}function a_A(A){if(A<0)throw oA(new uzA("Negative array size: "+A))}function ra(A){return A.n||(KB(A),A.n=new LVA(A,Rs,A),eo(A)),A.n}function mx(A){return an(A.a =0&&A.a[n]===e[n];n--);return n<0}function u_A(A,e){tm();var n;return n=A.j.g-e.j.g,n!=0?n:0}function w_A(A,e){return jt(e),A.a!=null?_Le(e.Kb(A.a)):EW}function Kz(A){var e;return A?new udA(A):(e=new wQ,DcA(e,A),e)}function yg(A,e){var n;return e.b.Kb(sAe(A,e.c.Ee(),(n=new vt(e),n)))}function Vz(A){qDA(),rWA(this,Pn(ac(R0(A,24),rO)),Pn(ac(A,rO)))}function Q_A(){Q_A=_,EQe=Bi((iP(),wA(uA(oUA,1),ue,428,0,[WgA,sUA])))}function E_A(){E_A=_,fQe=Bi((B7(),wA(uA(BUA,1),ue,427,0,[aUA,KgA])))}function f_A(){f_A=_,C1e=Bi((g7(),wA(uA(TUA,1),ue,424,0,[ihA,pW])))}function I_A(){I_A=_,g0e=Bi((ON(),wA(uA(B0e,1),ue,511,0,[pv,EhA])))}function C_A(){C_A=_,T0e=Bi((kT(),wA(uA(iHA,1),ue,419,0,[iK,nHA])))}function d_A(){d_A=_,L0e=Bi((NT(),wA(uA(sHA,1),ue,479,0,[cHA,cK])))}function F_A(){F_A=_,dIe=Bi((FT(),wA(uA(w3A,1),ue,376,0,[blA,Pv])))}function M_A(){M_A=_,EIe=Bi((HT(),wA(uA(g3A,1),ue,421,0,[NlA,mlA])))}function Y_A(){Y_A=_,G0e=Bi((t7(),wA(uA(ZbA,1),ue,422,0,[XbA,HhA])))}function D_A(){D_A=_,X0e=Bi((Oz(),wA(uA(CHA,1),ue,420,0,[KhA,IHA])))}function y_A(){y_A=_,hCe=Bi((Gl(),wA(uA(gCe,1),ue,520,0,[cM,QE])))}function p_A(){p_A=_,LIe=Bi((Ux(),wA(uA(SIe,1),ue,523,0,[pG,yG])))}function N_A(){N_A=_,XIe=Bi((nw(),wA(uA(VIe,1),ue,516,0,[$C,R1])))}function m_A(){m_A=_,qIe=Bi((hu(),wA(uA(ZIe,1),ue,515,0,[Kf,Uu])))}function U_A(){U_A=_,ICe=Bi((nC(),wA(uA(fCe,1),ue,455,0,[EE,DD])))}function b_A(){b_A=_,RCe=Bi((Sz(),wA(uA(v3A,1),ue,425,0,[WlA,T3A])))}function H_A(){H_A=_,LCe=Bi((N7(),wA(uA(j3A,1),ue,495,0,[VK,yU])))}function x_A(){x_A=_,kCe=Bi((Rz(),wA(uA(R3A,1),ue,480,0,[OlA,k3A])))}function G_A(){G_A=_,OCe=Bi((i7(),wA(uA(L3A,1),ue,426,0,[S3A,ZlA])))}function J_A(){J_A=_,_de=Bi((WT(),wA(uA(OGA,1),ue,429,0,[nV,PGA])))}function k_A(){k_A=_,Gde=Bi((MT(),wA(uA(MGA,1),ue,430,0,[ruA,eV])))}function Ux(){Ux=_,pG=new BIA("UPPER",0),yG=new BIA("LOWER",1)}function EPe(A,e){var n;n=new Z2,sf(n,"x",e.a),sf(n,"y",e.b),uy(A,n)}function fPe(A,e){var n;n=new Z2,sf(n,"x",e.a),sf(n,"y",e.b),uy(A,n)}function IPe(A,e){var n,r;r=!1;do n=Yte(A,e),r=r|n;while(n);return r}function xFA(A,e){var n,r;for(n=e,r=0;n>0;)r+=A.a[n],n-=n&-n;return r}function R_A(A,e){var n;for(n=e;n;)Zd(A,-n.i,-n.j),n=yr(n);return A}function Pc(A,e){var n,r;for(jt(e),r=A.Kc();r.Ob();)n=r.Pb(),e.td(n)}function T_A(A,e){var n;return n=e.cd(),new SI(n,A.e.pc(n,g(e.dd(),14)))}function vr(A,e,n,r){var o;o=new jA,o.c=e,o.b=n,o.a=r,r.b=n.a=o,++A.b}function Zg(A,e,n){var r;return r=(bt(e,A.c.length),A.c[e]),A.c[e]=n,r}function CPe(A,e,n){return g(e==null?ja(A.f,null,n):EC(A.g,e,n),281)}function OrA(A){return A.c&&A.d?QFA(A.c)+"->"+QFA(A.d):"e_"+WI(A)}function bN(A,e){return(df(A),HH(new yt(A,new nMA(e,A.a)))).sd(tU)}function dPe(){return hs(),wA(uA($UA,1),ue,356,0,[fw,gE,La,Ea,ro])}function FPe(){return De(),wA(uA(ws,1),qo,61,0,[po,St,$t,Jn,Wt])}function MPe(A){return S9(),function(){return G7e(A,this,arguments)}}function YPe(){return Date.now?Date.now():new Date().getTime()}function Bs(A){return!A.c||!A.d?!1:!!A.c.i&&A.c.i==A.d.i}function v_A(A){if(!A.c.Sb())throw oA(new Lo);return A.a=!0,A.c.Ub()}function CT(A){A.i=0,HR(A.b,null),HR(A.c,null),A.a=null,A.e=null,++A.g}function GFA(A){b8e.call(this,A==null?sB:uo(A),yA(A,78)?g(A,78):null)}function j_A(A){gge(),B6A(this),this.a=new Mr,sYA(this,A),di(this.a,A)}function S_A(){BiA(this),this.b=new Pe(Hr,Hr),this.a=new Pe(qr,qr)}function L_A(A,e){this.c=0,this.b=e,QOA.call(this,A,17493),this.a=this.c}function WrA(A){Xz(),!pu&&(this.c=A,this.e=!0,this.a=new Ee)}function Xz(){Xz=_,pu=!0,sQe=!1,oQe=!1,BQe=!1,aQe=!1}function JFA(A,e){return yA(e,149)?ht(A.c,g(e,149).c):!1}function kFA(A,e){var n;return n=0,A&&(n+=A.f.a/2),e&&(n+=e.f.a/2),n}function KrA(A,e){var n;return n=g(oC(A.d,e),23),n||g(oC(A.e,e),23)}function z_A(A){this.b=A,Qn.call(this,A),this.a=g(Jt(this.b.a,4),126)}function P_A(A){this.b=A,sy.call(this,A),this.a=g(Jt(this.b.a,4),126)}function KB(A){return A.t||(A.t=new A6A(A),Wx(new lzA(A),0,A.t)),A.t}function DPe(){return Hs(),wA(uA(jG,1),ue,103,0,[AQ,al,Uh,TQ,vQ])}function yPe(){return HY(),wA(uA(PG,1),ue,249,0,[CE,gj,$JA,zG,AkA])}function pPe(){return vl(),wA(uA(j1,1),ue,175,0,[_t,pc,dw,Vf,v1])}function NPe(){return Q8(),wA(uA(pGA,1),ue,316,0,[YGA,cuA,yGA,suA,DGA])}function mPe(){return $x(),wA(uA(n3A,1),ue,315,0,[t3A,DlA,ylA,dG,FG])}function UPe(){return Df(),wA(uA(tHA,1),ue,335,0,[GhA,eHA,JhA,oG,sG])}function bPe(){return Mm(),wA(uA(Nde,1),ue,355,0,[yD,wp,JG,GG,kG])}function HPe(){return TY(),wA(uA(D0e,1),ue,363,0,[$W,eK,tK,AK,_W])}function xPe(){return eh(),wA(uA(xHA,1),ue,163,0,[Rv,lG,lE,uG,ZF])}function HN(){HN=_;var A,e;UV=(nN(),e=new G9,e),bV=(A=new anA,A)}function O_A(A){var e;return A.c||(e=A.r,yA(e,88)&&(A.c=g(e,26))),A.c}function GPe(A){return A.e=3,A.d=A.Yb(),A.e!=2?(A.e=0,!0):!1}function VrA(A){var e,n,r;return e=A&$B,n=A>>22&$B,r=A<0?GQ:0,Ta(e,n,r)}function JPe(A){var e,n,r,o;for(n=A,r=0,o=n.length;r 0?zne(A,e):goe(A,-e)}function RFA(A,e){return e==0||A.e==0?A:e>0?goe(A,e):zne(A,-e)}function Wn(A){if(ii(A))return A.c=A.a,A.a.Pb();throw oA(new Lo)}function K_A(A){var e,n;return e=A.c.i,n=A.d.i,e.k==(en(),Vr)&&n.k==Vr}function XrA(A){var e;return e=new tC,no(e,A),ae(e,(He(),_s),null),e}function ZrA(A,e,n){var r;return r=A.Yg(e),r>=0?A._g(r,n,!0):DC(A,e,n)}function TFA(A,e,n,r){var o;for(o=0;o e)throw oA(new Os(C2A(A,e,"index")));return A}function qrA(A,e,n,r){var o;return o=TA(Sn,li,25,e,15,1),V$e(o,A,e,n,r),o}function RPe(A,e){var n;n=A.q.getHours()+(e/60|0),A.q.setMinutes(e),l3(A,n)}function TPe(A,e){return w.Math.min(P0(e.a,A.d.d.c),P0(e.b,A.d.d.c))}function My(A,e){return Uc(e)?e==null?R2A(A.f,null):cte(A.g,e):R2A(A.f,e)}function Qu(A){this.c=A,this.a=new m(this.c.a),this.b=new m(this.c.b)}function Zz(){this.e=new Ee,this.c=new Ee,this.d=new Ee,this.b=new Ee}function __A(){this.g=new tfA,this.b=new tfA,this.a=new Ee,this.k=new Ee}function $_A(A,e,n){this.a=A,this.c=e,this.d=n,Qe(e.e,this),Qe(n.b,this)}function A$A(A,e){wOA.call(this,e.rd(),e.qd()&-6),jt(A),this.a=A,this.b=e}function e$A(A,e){QOA.call(this,e.rd(),e.qd()&-6),jt(A),this.a=A,this.b=e}function OFA(A,e){riA.call(this,e.rd(),e.qd()&-6),jt(A),this.a=A,this.b=e}function qz(A,e,n){this.a=A,this.b=e,this.c=n,Qe(A.t,this),Qe(e.i,this)}function _z(){this.b=new Mr,this.a=new Mr,this.b=new Mr,this.a=new Mr}function $z(){$z=_,RG=new ur("org.eclipse.elk.labels.labelManager")}function t$A(){t$A=_,PbA=new sc("separateLayerConnections",(R7(),dhA))}function Gl(){Gl=_,cM=new lIA("REGULAR",0),QE=new lIA("CRITICAL",1)}function FT(){FT=_,blA=new aIA("STACKED",0),Pv=new aIA("SEQUENCED",1)}function MT(){MT=_,ruA=new IIA("FIXED",0),eV=new IIA("CENTER_NODE",1)}function vPe(A,e){var n;return n=Oat(A,e),A.b=new p7(n.c.length),nat(A,n)}function jPe(A,e,n){var r;return++A.e,--A.f,r=g(A.d[e].$c(n),133),r.dd()}function n$A(A){var e;return A.a||(e=A.r,yA(e,148)&&(A.a=g(e,148))),A.a}function WFA(A){if(A.a){if(A.e)return WFA(A.e)}else return A;return null}function SPe(A,e){return A.p e.p?-1:0}function A7(A,e){return jt(e),A.c =0,"Initial capacity must not be negative")}function c$A(){c$A=_,FQe=Bi((Rl(),wA(uA(PF,1),ue,232,0,[Jo,xa,ko])))}function s$A(){s$A=_,YQe=Bi((kB(),wA(uA(MQe,1),ue,461,0,[Ew,aE,cl])))}function o$A(){o$A=_,yQe=Bi((eB(),wA(uA(DQe,1),ue,462,0,[Pl,BE,sl])))}function a$A(){a$A=_,gQe=Bi((Cu(),wA(uA(Ag,1),ue,132,0,[iUA,Jg,zF])))}function B$A(){B$A=_,S1e=Bi((Hx(),wA(uA(_UA,1),ue,379,0,[ohA,shA,ahA])))}function g$A(){g$A=_,t0e=Bi((QC(),wA(uA(tbA,1),ue,423,0,[BD,ebA,uhA])))}function h$A(){h$A=_,J0e=Bi((yy(),wA(uA(_bA,1),ue,314,0,[ip,Uv,qbA])))}function l$A(){l$A=_,k0e=Bi((C7(),wA(uA(AHA,1),ue,337,0,[$bA,nK,xhA])))}function u$A(){u$A=_,j0e=Bi((Ef(),wA(uA(v0e,1),ue,450,0,[khA,hU,uD])))}function w$A(){w$A=_,b0e=Bi((uC(),wA(uA(MhA,1),ue,361,0,[zC,hE,LC])))}function Q$A(){Q$A=_,V0e=Bi((YQ(),wA(uA(K0e,1),ue,303,0,[Hv,QD,rp])))}function E$A(){E$A=_,W0e=Bi((ZN(),wA(uA(WhA,1),ue,292,0,[PhA,OhA,bv])))}function f$A(){f$A=_,hIe=Bi((Lx(),wA(uA(e3A,1),ue,378,0,[FlA,A3A,xK])))}function I$A(){I$A=_,CIe=Bi((x7(),wA(uA(u3A,1),ue,375,0,[h3A,UlA,l3A])))}function C$A(){C$A=_,QIe=Bi((yQ(),wA(uA(B3A,1),ue,339,0,[wE,a3A,plA])))}function d$A(){d$A=_,IIe=Bi((bs(),wA(uA(fIe,1),ue,452,0,[MG,vB,Ga])))}function F$A(){F$A=_,YIe=Bi((T7(),wA(uA(d3A,1),ue,377,0,[GlA,YU,rM])))}function M$A(){M$A=_,FIe=Bi((nm(),wA(uA(E3A,1),ue,336,0,[HlA,Q3A,YG])))}function Y$A(){Y$A=_,MIe=Bi((b7(),wA(uA(C3A,1),ue,338,0,[I3A,xlA,f3A])))}function D$A(){D$A=_,RIe=Bi((lC(),wA(uA(kIe,1),ue,454,0,[Ov,DG,RK])))}function y$A(){y$A=_,PCe=Bi((X7(),wA(uA(zCe,1),ue,442,0,[XlA,KlA,VlA])))}function p$A(){p$A=_,WCe=Bi((ZT(),wA(uA(O3A,1),ue,380,0,[XK,z3A,P3A])))}function N$A(){N$A=_,ade=Bi((V7(),wA(uA(aGA,1),ue,381,0,[oGA,euA,sGA])))}function m$A(){m$A=_,ode=Bi((H7(),wA(uA(rGA,1),ue,293,0,[AuA,iGA,nGA])))}function U$A(){U$A=_,Ude=Bi((t8(),wA(uA(tuA,1),ue,437,0,[_K,$K,AV])))}function b$A(){b$A=_,xFe=Bi((pQ(),wA(uA(_JA,1),ue,334,0,[lV,S1,LG])))}function H$A(){H$A=_,mFe=Bi((Eu(),wA(uA(jJA,1),ue,272,0,[mU,aM,UU])))}function VPe(){return kc(),wA(uA(ekA,1),ue,98,0,[dE,Hu,HU,_f,nQ,Ca])}function gf(A,e){return!A.o&&(A.o=new lg((ba(),YE),ed,A,0)),osA(A.o,e)}function XPe(A){return!A.g&&(A.g=new p4),!A.g.d&&(A.g.d=new q9A(A)),A.g.d}function ZPe(A){return!A.g&&(A.g=new p4),!A.g.a&&(A.g.a=new _9A(A)),A.g.a}function qPe(A){return!A.g&&(A.g=new p4),!A.g.b&&(A.g.b=new Z9A(A)),A.g.b}function YT(A){return!A.g&&(A.g=new p4),!A.g.c&&(A.g.c=new $9A(A)),A.g.c}function _Pe(A,e,n){var r,o;for(o=new XN(e,A),r=0;r n||e=0?A._g(n,!0,!0):DC(A,e,!0)}function wOe(A,e){return ec(re(Ne(q(A,(le(),KC)))),re(Ne(q(e,KC))))}function v$A(){v$A=_,vCe=dC(dC(n6(new wc,(hm(),NG)),(r3(),LK)),RlA)}function QOe(A,e,n){var r;return r=mte(A,e,n),A.b=new p7(r.c.length),oyA(A,r)}function EOe(A){if(A.b<=0)throw oA(new Lo);return--A.b,A.a-=A.c.c,de(A.a)}function fOe(A){var e;if(!A.a)throw oA(new zXA);return e=A.a,A.a=yr(A.a),e}function IOe(A){for(;!A.a;)if(!pKA(A.c,new Oe(A)))return!1;return!0}function Dy(A){var e;return On(A),yA(A,198)?(e=g(A,198),e):new FtA(A)}function COe(A){n7(),g(A.We((Ni(),oM)),174).Fc((RB(),hj)),A.Ye(yuA,null)}function n7(){n7=_,eFe=new JAA,nFe=new kAA,tFe=iVe((Ni(),yuA),eFe,fE,nFe)}function i7(){i7=_,S3A=new fIA("LEAF_NUMBER",0),ZlA=new fIA("NODE_SIZE",1)}function dOe(A,e,n){A.a=e,A.c=n,A.b.a.$b(),Eh(A.d),A.e.a.c=TA(on,ke,1,0,5,1)}function icA(A){A.a=TA(Sn,li,25,A.b+1,15,1),A.c=TA(Sn,li,25,A.b,15,1),A.d=0}function FOe(A,e){A.a.ue(e.d,A.b)>0&&(Qe(A.c,new sdA(e.c,e.d,A.d)),A.b=e.d)}function tMA(A,e){if(A.g==null||e>=A.i)throw oA(new ciA(e,A.i));return A.g[e]}function j$A(A,e,n){if(Am(A,n),n!=null&&!A.wj(n))throw oA(new cnA);return n}function S$A(A){var e;if(A.Ek())for(e=A.i-1;e>=0;--e)NA(A,e);return pFA(A)}function MOe(A){var e,n;if(!A.b)return null;for(n=A.b;e=n.a[0];)n=e;return n}function YOe(A,e){var n,r;return a_A(e),n=(r=A.slice(0,e),iMA(r,A)),n.length=e,n}function JN(A,e,n,r){var o;r=(CY(),r||KmA),o=A.slice(e,n),d2A(o,A,e,n,-e,r)}function qg(A,e,n,r,o){return e<0?DC(A,n,r):g(n,66).Nj().Pj(A,A.yh(),e,r,o)}function DOe(A){return yA(A,172)?""+g(A,172).a:A==null?null:uo(A)}function yOe(A){return yA(A,172)?""+g(A,172).a:A==null?null:uo(A)}function L$A(A,e){if(e.a)throw oA(new fo(Lge));oc(A.a,e),e.a=A,!A.j&&(A.j=e)}function nMA(A,e){riA.call(this,e.rd(),e.qd()&-16449),jt(A),this.a=A,this.c=e}function z$A(A,e){var n,r;return r=e/A.c.Hd().gc()|0,n=e%A.c.Hd().gc(),Yy(A,r,n)}function kB(){kB=_,Ew=new xnA(Py,0),aE=new xnA(Rm,1),cl=new xnA(Oy,2)}function r7(){r7=_,zgA=new s6("All",0),AUA=new TOA,eUA=new ZOA,tUA=new vOA}function P$A(){P$A=_,rQe=Bi((r7(),wA(uA(fW,1),ue,297,0,[zgA,AUA,eUA,tUA])))}function O$A(){O$A=_,Z1e=Bi((qN(),wA(uA(X1e,1),ue,405,0,[SC,WF,OF,aD])))}function W$A(){W$A=_,qQe=Bi((wC(),wA(uA(ZQe,1),ue,406,0,[fv,Ev,qgA,_gA])))}function K$A(){K$A=_,$Qe=Bi((xy(),wA(uA(_Qe,1),ue,323,0,[Cv,Iv,dv,Fv])))}function V$A(){V$A=_,t1e=Bi((_x(),wA(uA(e1e,1),ue,394,0,[Mv,MW,YW,Yv])))}function X$A(){X$A=_,CCe=Bi((hm(),wA(uA(y3A,1),ue,393,0,[SK,NG,Kv,mG])))}function Z$A(){Z$A=_,w0e=Bi((R7(),wA(uA(u0e,1),ue,360,0,[dhA,ZW,qW,mv])))}function q$A(){q$A=_,sde=Bi((uP(),wA(uA(tGA,1),ue,340,0,[$lA,AGA,eGA,$3A])))}function _$A(){_$A=_,Y0e=Bi((Iu(),wA(uA(M0e,1),ue,411,0,[np,sU,oU,FhA])))}function $$A(){$$A=_,lIe=Bi((IF(),wA(uA(YlA,1),ue,197,0,[GK,MlA,YD,MD])))}function AAe(){AAe=_,ZFe=Bi((ug(),wA(uA(XFe,1),ue,396,0,[jg,akA,okA,BkA])))}function eAe(){eAe=_,JFe=Bi((Ug(),wA(uA(GFe,1),ue,285,0,[Bj,eQ,IE,aj])))}function tAe(){tAe=_,UFe=Bi((mQ(),wA(uA(UuA,1),ue,218,0,[muA,oj,bU,Cp])))}function nAe(){nAe=_,KFe=Bi((_7(),wA(uA(skA,1),ue,311,0,[xuA,ikA,ckA,rkA])))}function iAe(){iAe=_,OFe=Bi((wg(),wA(uA(KG,1),ue,374,0,[uj,$f,lj,BM])))}function rAe(){rAe=_,PP(),OkA=Hr,_Me=qr,WkA=new tY(Hr),$Me=new tY(qr)}function NT(){NT=_,cHA=new cIA(JQ,0),cK=new cIA("IMPROVE_STRAIGHTNESS",1)}function pOe(A,e){return EN(),Qe(A,new jc(e,de(e.e.c.length+e.g.c.length)))}function NOe(A,e){return EN(),Qe(A,new jc(e,de(e.e.c.length+e.g.c.length)))}function iMA(A,e){return xT(e)!=10&&wA(XB(e),e.hm,e.__elementTypeId$,xT(e),A),A}function AB(A,e){var n;return n=ho(A,e,0),n==-1?!1:(E1(A,n),!0)}function cAe(A,e){var n;return n=g(My(A.e,e),387),n?(BdA(n),n.e):null}function kN(A){var e;return go(A)&&(e=0-A,!isNaN(e))?e:W0(_N(A))}function ho(A,e,n){for(;n =0?aP(A,n,!0,!0):DC(A,e,!0)}function aMA(A,e){JH();var n,r;return n=Cy(A),r=Cy(e),!!n&&!!r&&!Fie(n.k,r.k)}function bOe(A,e){nB(A,e==null||K6((jt(e),e))||isNaN((jt(e),e))?0:(jt(e),e))}function HOe(A,e){iB(A,e==null||K6((jt(e),e))||isNaN((jt(e),e))?0:(jt(e),e))}function xOe(A,e){hC(A,e==null||K6((jt(e),e))||isNaN((jt(e),e))?0:(jt(e),e))}function GOe(A,e){gC(A,e==null||K6((jt(e),e))||isNaN((jt(e),e))?0:(jt(e),e))}function gAe(A){(this.q?this.q:(ft(),ft(),_w)).Ac(A.q?A.q:(ft(),ft(),_w))}function JOe(A,e){return yA(e,99)&&g(e,18).Bb&us?new siA(e,A):new XN(e,A)}function kOe(A,e){return yA(e,99)&&g(e,18).Bb&us?new siA(e,A):new XN(e,A)}function hAe(A,e){mUA=new vc,A1e=e,eG=A,g(eG.b,65),XFA(eG,mUA,null),rBe(eG)}function acA(A,e,n){var r;return r=A.g[e],rx(A,e,A.oi(e,n)),A.gi(e,n,r),A.ci(),r}function a7(A,e){var n;return n=A.Xc(e),n>=0?(A.$c(n),!0):!1}function BcA(A){var e;return A.d!=A.r&&(e=Ch(A),A.e=!!e&&e.Cj()==Kue,A.d=e),A.e}function gcA(A,e){var n;for(On(A),On(e),n=!1;e.Ob();)n=n|A.Fc(e.Pb());return n}function oC(A,e){var n;return n=g(hn(A.e,e),387),n?(iWA(A,n),n.e):null}function lAe(A){var e,n;return e=A/60|0,n=A%60,n==0?""+e:""+e+":"+(""+n)}function Fo(A,e){var n,r;return df(A),r=new OFA(e,A.a),n=new UKA(r),new yt(A,n)}function BF(A,e){var n=A.a[e],r=(UcA(),TgA)[typeof n];return r?r(n):lYA(typeof n)}function ROe(A){switch(A.g){case 0:return Ti;case 1:return-1;default:return 0}}function TOe(A){return UDA(A,(RN(),NmA))<0?-Aje(_N(A)):A.l+A.m*zy+A.h*mf}function xT(A){return A.__elementTypeCategory$==null?10:A.__elementTypeCategory$}function hcA(A){var e;return e=A.b.c.length==0?null:je(A.b,0),e!=null&&FcA(A,0),e}function uAe(A,e){for(;e[0] =0;)++e[0]}function GT(A,e){this.e=e,this.a=ste(A),this.a<54?this.f=cC(A):this.c=c8(A)}function wAe(A,e,n,r){Gi(),HI.call(this,26),this.c=A,this.a=e,this.d=n,this.b=r}function Lw(A,e,n){var r,o;for(r=10,o=0;o A.a[r]&&(r=n);return r}function POe(A,e){var n;return n=fC(A.e.c,e.e.c),n==0?ec(A.e.d,e.e.d):n}function MY(A,e){return e.e==0||A.e==0?AU:(Im(),loA(A,e))}function OOe(A,e){if(!A)throw oA(new Lt(Zit("Enum constant undefined: %s",e)))}function xx(){xx=_,$1e=new n1,A0e=new MI,q1e=new uq,_1e=new KE,e0e=new wq}function B7(){B7=_,aUA=new AIA("BY_SIZE",0),KgA=new AIA("BY_SIZE_AND_SHAPE",1)}function g7(){g7=_,ihA=new eIA("EADES",0),pW=new eIA("FRUCHTERMAN_REINGOLD",1)}function kT(){kT=_,iK=new rIA("READING_DIRECTION",0),nHA=new rIA("ROTATION",1)}function EAe(){EAe=_,R0e=Bi((Df(),wA(uA(tHA,1),ue,335,0,[GhA,eHA,JhA,oG,sG])))}function fAe(){fAe=_,uIe=Bi(($x(),wA(uA(n3A,1),ue,315,0,[t3A,DlA,ylA,dG,FG])))}function IAe(){IAe=_,y0e=Bi((TY(),wA(uA(D0e,1),ue,363,0,[$W,eK,tK,AK,_W])))}function CAe(){CAe=_,Z0e=Bi((eh(),wA(uA(xHA,1),ue,163,0,[Rv,lG,lE,uG,ZF])))}function dAe(){dAe=_,Jde=Bi((Q8(),wA(uA(pGA,1),ue,316,0,[YGA,cuA,yGA,suA,DGA])))}function FAe(){FAe=_,iFe=Bi((vl(),wA(uA(j1,1),ue,175,0,[_t,pc,dw,Vf,v1])))}function MAe(){MAe=_,mde=Bi((Mm(),wA(uA(Nde,1),ue,355,0,[yD,wp,JG,GG,kG])))}function YAe(){YAe=_,O1e=Bi((hs(),wA(uA($UA,1),ue,356,0,[fw,gE,La,Ea,ro])))}function DAe(){DAe=_,NFe=Bi((Hs(),wA(uA(jG,1),ue,103,0,[AQ,al,Uh,TQ,vQ])))}function yAe(){yAe=_,RFe=Bi((HY(),wA(uA(PG,1),ue,249,0,[CE,gj,$JA,zG,AkA])))}function pAe(){pAe=_,jFe=Bi((De(),wA(uA(ws,1),qo,61,0,[po,St,$t,Jn,Wt])))}function lcA(A,e){var n;return n=g(hn(A.a,e),134),n||(n=new PM,Li(A.a,e,n)),n}function NAe(A){var e;return e=g(q(A,(le(),PC)),305),e?e.a==A:!1}function mAe(A){var e;return e=g(q(A,(le(),PC)),305),e?e.i==A:!1}function UAe(A,e){return jt(e),UdA(A),A.d.Ob()?(e.td(A.d.Pb()),!0):!1}function h7(A){return Zo(A,Ti)>0?Ti:Zo(A,_c)<0?_c:Pn(A)}function gF(A){return A<3?(Ng(A,Yge),A+1):A =0&&e =-.01&&A.a<=Yu&&(A.a=0),A.b>=-.01&&A.b<=Yu&&(A.b=0),A}function HAe(A,e){return e==(HiA(),HiA(),tQe)?A.toLocaleLowerCase():A.toLowerCase()}function gMA(A){return(A.i&2?"interface ":A.i&1?"":"class ")+(QQ(A),A.o)}function Zs(A){var e,n;n=(e=new BnA,e),Kn((!A.q&&(A.q=new Ie(kh,A,11,10)),A.q),n)}function WOe(A,e){var n;return n=e>0?e-1:e,NzA(c8e(nee(adA(new _4,n),A.n),A.j),A.k)}function KOe(A,e,n,r){var o;A.j=-1,G2A(A,u2A(A,e,n),(Ms(),o=g(e,66).Mj(),o.Ok(r)))}function xAe(A){this.g=A,this.f=new Ee,this.a=w.Math.min(this.g.c.c,this.g.d.c)}function GAe(A){this.b=new Ee,this.a=new Ee,this.c=new Ee,this.d=new Ee,this.e=A}function JAe(A,e){this.a=new Ln,this.e=new Ln,this.b=(Lx(),xK),this.c=A,this.b=e}function kAe(A,e,n){O6.call(this),hMA(this),this.a=A,this.c=n,this.b=e.d,this.f=e.e}function RAe(A){this.d=A,this.c=A.c.vc().Kc(),this.b=null,this.a=null,this.e=(R9(),GgA)}function aC(A){if(A<0)throw oA(new Lt("Illegal Capacity: "+A));this.g=this.ri(A)}function VOe(A,e){if(0>A||A>e)throw oA(new DfA("fromIndex: 0, toIndex: "+A+lpA+e))}function XOe(A){var e;if(A.a==A.b.a)throw oA(new Lo);return e=A.a,A.c=e,A.a=A.a.e,e}function l7(A){var e;Xd(!!A.c),e=A.c.a,_g(A.d,A.c),A.b==A.c?A.b=e:--A.a,A.c=null}function u7(A,e){var n;return df(A),n=new rZA(A,A.a.rd(),A.a.qd()|4,e),new yt(A,n)}function ZOe(A,e){var n,r;return n=g(QF(A.d,e),14),n?(r=e,A.e.pc(r,n)):null}function w7(A,e){var n,r;for(r=A.Kc();r.Ob();)n=g(r.Pb(),70),ae(n,(le(),ap),e)}function qOe(A){var e;return e=re(Ne(q(A,(He(),J1)))),e<0&&(e=0,ae(A,J1,e)),e}function _Oe(A,e,n){var r;r=w.Math.max(0,A.b/2-.5),e3(n,r,1),Qe(e,new aPA(n,r))}function $Oe(A,e,n){var r;return r=A.a.e[g(e.a,10).p]-A.a.e[g(n.a,10).p],zr(cT(r))}function TAe(A,e,n,r,o,B){var u;u=XrA(r),ts(u,o),Gc(u,B),gt(A.a,r,new V6(u,e,n.f))}function vAe(A,e){var n;if(n=y8(A.Tg(),e),!n)throw oA(new Lt(sE+e+qBA));return n}function hF(A,e){var n;for(n=A;yr(n);)if(n=yr(n),n==e)return!0;return!1}function AWe(A,e){var n,r,o;for(r=e.a.cd(),n=g(e.a.dd(),14).gc(),o=0;o 0&&(A.a/=e,A.b/=e),A}function pg(A){var e;return A.w?A.w:(e=a7e(A),e&&!e.kh()&&(A.w=e),e)}function oWe(A){var e;return A==null?null:(e=g(A,190),aAt(e,e.length))}function NA(A,e){if(A.g==null||e>=A.i)throw oA(new ciA(e,A.i));return A.li(e,A.g[e])}function aWe(A){var e,n;for(e=A.a.d.j,n=A.c.d.j;e!=n;)tl(A.b,e),e=W7(e);tl(A.b,e)}function BWe(A){var e;for(e=0;e =14&&e<=16))),A}function zAe(A,e,n){var r=function(){return A.apply(r,arguments)};return e.apply(r,n),r}function PAe(A,e,n){var r,o;r=e;do o=re(A.p[r.p])+n,A.p[r.p]=o,r=A.a[r.p];while(r!=e)}function TN(A,e){var n,r;r=A.a,n=PVe(A,e,null),r!=e&&!A.e&&(n=mm(A,e,n)),n&&n.Fi()}function lMA(A,e){return au(),el(tE),w.Math.abs(A-e)<=tE||A==e||isNaN(A)&&isNaN(e)}function uMA(A,e){return au(),el(tE),w.Math.abs(A-e)<=tE||A==e||isNaN(A)&&isNaN(e)}function lWe(A,e){return $0(),Za(A.b.c.length-A.e.c.length,e.b.c.length-e.e.c.length)}function YY(A,e){return g8e(kx(A,e,Pn(qc(Kw,vw(Pn(qc(e==null?0:hr(e),Vw)),15)))))}function OAe(){OAe=_,c0e=Bi((en(),wA(uA(QhA,1),ue,267,0,[ic,yc,Vr,fa,Qg,Nu])))}function WAe(){WAe=_,lFe=Bi((FF(),wA(uA(EuA,1),ue,291,0,[QuA,nj,tj,wuA,Aj,ej])))}function KAe(){KAe=_,sFe=Bi((zw(),wA(uA(ZGA,1),ue,248,0,[luA,_v,$v,cV,iV,rV])))}function VAe(){VAe=_,x0e=Bi((Jy(),wA(uA(gU,1),ue,227,0,[BU,cG,aU,KF,lD,hD])))}function XAe(){XAe=_,P0e=Bi((Em(),wA(uA(fHA,1),ue,275,0,[aG,uHA,EHA,QHA,wHA,lHA])))}function ZAe(){ZAe=_,z0e=Bi((u8(),wA(uA(hHA,1),ue,274,0,[sK,aHA,gHA,oHA,BHA,LhA])))}function qAe(){qAe=_,gIe=Bi((FP(),wA(uA($xA,1),ue,313,0,[dlA,qxA,ClA,ZxA,_xA,HK])))}function _Ae(){_Ae=_,S0e=Bi((yP(),wA(uA(rHA,1),ue,276,0,[ThA,RhA,jhA,vhA,ShA,rK])))}function $Ae(){$Ae=_,FCe=Bi((r3(),wA(uA(dCe,1),ue,327,0,[LK,RlA,vlA,TlA,jlA,klA])))}function Aee(){Aee=_,vFe=Bi((RB(),wA(uA(uV,1),ue,273,0,[FE,SQ,hj,WG,OG,dp])))}function eee(){eee=_,bFe=Bi((YP(),wA(uA(WJA,1),ue,312,0,[buA,zJA,OJA,SJA,PJA,LJA])))}function uWe(){return yF(),wA(uA(ks,1),ue,93,0,[Bl,jQ,gl,ll,tQ,Hh,Rg,hl,bh])}function E7(A,e){var n;n=A.a,A.a=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,0,n,A.a))}function f7(A,e){var n;n=A.b,A.b=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,1,n,A.b))}function vN(A,e){var n;n=A.b,A.b=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,3,n,A.b))}function gC(A,e){var n;n=A.f,A.f=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,3,n,A.f))}function hC(A,e){var n;n=A.g,A.g=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,4,n,A.g))}function nB(A,e){var n;n=A.i,A.i=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,5,n,A.i))}function iB(A,e){var n;n=A.j,A.j=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,6,n,A.j))}function jN(A,e){var n;n=A.j,A.j=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,1,n,A.j))}function SN(A,e){var n;n=A.c,A.c=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,4,n,A.c))}function LN(A,e){var n;n=A.k,A.k=e,A.Db&4&&!(A.Db&1)&&ji(A,new oF(A,2,n,A.k))}function wcA(A,e){var n;n=A.d,A.d=e,A.Db&4&&!(A.Db&1)&&ji(A,new LrA(A,2,n,A.d))}function C1(A,e){var n;n=A.s,A.s=e,A.Db&4&&!(A.Db&1)&&ji(A,new LrA(A,4,n,A.s))}function uF(A,e){var n;n=A.t,A.t=e,A.Db&4&&!(A.Db&1)&&ji(A,new LrA(A,5,n,A.t))}function zN(A,e){var n;n=A.F,A.F=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,5,n,e))}function RT(A,e){var n;return n=g(hn((i6(),yV),A),55),n?n.xj(e):TA(on,ke,1,e,5,1)}function DQ(A,e){var n,r;return n=e in A.a,n&&(r=IQ(A,e).he(),r)?r.a:null}function wWe(A,e){var n,r,o;return n=(r=(vI(),o=new Lb,o),e&&tyA(r,e),r),MMA(n,A),n}function tee(A,e,n){if(Am(A,n),!A.Bk()&&n!=null&&!A.wj(n))throw oA(new cnA);return n}function nee(A,e){return A.n=e,A.n?(A.f=new Ee,A.e=new Ee):(A.f=null,A.e=null),A}function ei(A,e,n,r,o,B){var u;return u=srA(A,e),ree(n,u),u.i=o?8:0,u.f=r,u.e=o,u.g=B,u}function wMA(A,e,n,r,o){this.d=e,this.k=r,this.f=o,this.o=-1,this.p=1,this.c=A,this.a=n}function QMA(A,e,n,r,o){this.d=e,this.k=r,this.f=o,this.o=-1,this.p=2,this.c=A,this.a=n}function EMA(A,e,n,r,o){this.d=e,this.k=r,this.f=o,this.o=-1,this.p=6,this.c=A,this.a=n}function fMA(A,e,n,r,o){this.d=e,this.k=r,this.f=o,this.o=-1,this.p=7,this.c=A,this.a=n}function IMA(A,e,n,r,o){this.d=e,this.j=r,this.e=o,this.o=-1,this.p=4,this.c=A,this.a=n}function iee(A,e){var n,r,o,B;for(r=e,o=0,B=r.length;o=0),wZe(A.d,A.c)<0&&(A.a=A.a-1&A.d.a.length-1,A.b=A.d.c),A.c=-1}function CMA(A){return A.a<54?A.f<0?-1:A.f>0?1:0:(!A.c&&(A.c=qT(A.f)),A.c).e}function el(A){if(!(A>=0))throw oA(new Lt("tolerance ("+A+") must be >= 0"));return A}function PN(){return guA||(guA=new Koe,mY(guA,wA(uA(oD,1),ke,130,0,[new d0]))),guA}function bs(){bs=_,MG=new OnA(y3,0),vB=new OnA("INPUT",1),Ga=new OnA("OUTPUT",2)}function C7(){C7=_,$bA=new vnA("ARD",0),nK=new vnA("MSD",1),xhA=new vnA("MANUAL",2)}function lC(){lC=_,Ov=new ZnA("BARYCENTER",0),DG=new ZnA(bhe,1),RK=new ZnA(Hhe,2)}function TT(A,e){var n;if(n=A.gc(),e<0||e>n)throw oA(new $d(e,n));return new TCA(A,e)}function oee(A,e){var n;return yA(e,42)?A.c.Mc(e):(n=osA(A,e),eP(A,e),n)}function Ss(A,e,n){return Cf(A,e),ma(A,n),C1(A,0),uF(A,1),Y1(A,!0),M1(A,!0),A}function Ng(A,e){if(A<0)throw oA(new Lt(e+" cannot be negative but was: "+A));return A}function aee(A,e){var n,r;for(n=0,r=A.gc();n 0?g(je(n.a,r-1),10):null}function Jx(A,e){var n;n=A.k,A.k=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,2,n,A.k))}function F7(A,e){var n;n=A.f,A.f=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,8,n,A.f))}function M7(A,e){var n;n=A.i,A.i=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,7,n,A.i))}function MMA(A,e){var n;n=A.a,A.a=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,8,n,A.a))}function YMA(A,e){var n;n=A.b,A.b=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,0,n,A.b))}function DMA(A,e){var n;n=A.b,A.b=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,0,n,A.b))}function yMA(A,e){var n;n=A.c,A.c=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,1,n,A.c))}function pMA(A,e){var n;n=A.c,A.c=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,1,n,A.c))}function EcA(A,e){var n;n=A.c,A.c=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,4,n,A.c))}function NMA(A,e){var n;n=A.d,A.d=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,1,n,A.d))}function fcA(A,e){var n;n=A.D,A.D=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,2,n,A.D))}function IcA(A,e){A.r>0&&A.c 0&&A.g!=0&&IcA(A.i,e/A.r*A.i.d))}function YWe(A,e,n){var r;A.b=e,A.a=n,r=(A.a&512)==512?new _6A:new nR,A.c=Lrt(r,A.b,A.a)}function fee(A,e){return HQ(A.e,e)?(Ms(),BcA(e)?new ez(e,A):new PR(e,A)):new BOA(e,A)}function Y7(A,e){return B8e(Rx(A.a,e,Pn(qc(Kw,vw(Pn(qc(e==null?0:hr(e),Vw)),15)))))}function DWe(A,e,n){return aF(A,new Ce(e),new lt,new Me(n),wA(uA(Ag,1),ue,132,0,[]))}function yWe(A){var e,n;return 0>A?new jfA:(e=A+1,n=new L_A(e,A),new ICA(null,n))}function pWe(A,e){ft();var n;return n=new $2(1),Uc(A)?Ks(n,A,e):ja(n.f,A,e),new L(n)}function NWe(A,e){var n,r;return n=A.o+A.p,r=e.o+e.p,n e?(e<<=1,e>0?e:d3):e}function CcA(A){switch(ZIA(A.e!=3),A.e){case 2:return!1;case 0:return!0}return GPe(A)}function Cee(A,e){var n;return yA(e,8)?(n=g(e,8),A.a==n.a&&A.b==n.b):!1}function dcA(A,e,n){var r,o,B;return B=e>>5,o=e&31,r=ac(eF(A.n[n][B],Pn(EQ(o,1))),3),r}function UWe(A,e){var n,r;for(r=e.vc().Kc();r.Ob();)n=g(r.Pb(),42),IP(A,n.cd(),n.dd())}function bWe(A,e){var n;n=new vc,g(e.b,65),g(e.b,65),g(e.b,65),tB(e.a,new XCA(A,n,e))}function mMA(A,e){var n;n=A.b,A.b=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,21,n,A.b))}function UMA(A,e){var n;n=A.d,A.d=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,11,n,A.d))}function D7(A,e){var n;n=A.j,A.j=e,A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,13,n,A.j))}function dee(A,e,n){var r,o,B;for(B=A.a.length-1,o=A.b,r=0;r >>31;r!=0&&(A[n]=r)}function SWe(A,e){ft();var n,r;for(r=new Ee,n=0;n0&&(this.g=this.ri(this.i+(this.i/8|0)+1),A.Qc(this.g))}function br(A,e){q6.call(this,bMe,A,e),this.b=this,this.a=Sa(A.Tg(),dt(this.e.Tg(),this.c))}function Tx(A,e){var n,r;for(jt(e),r=e.vc().Kc();r.Ob();)n=g(r.Pb(),42),A.zc(n.cd(),n.dd())}function qWe(A,e,n){var r;for(r=n.Kc();r.Ob();)if(!Wz(A,e,r.Pb()))return!1;return!0}function _We(A,e,n,r,o){var B;return n&&(B=wr(e.Tg(),A.c),o=n.gh(e,-1-(B==-1?r:B),null,o)),o}function $We(A,e,n,r,o){var B;return n&&(B=wr(e.Tg(),A.c),o=n.ih(e,-1-(B==-1?r:B),null,o)),o}function jee(A){var e;if(A.b==-2){if(A.e==0)e=-1;else for(e=0;A.a[e]==0;e++);A.b=e}return A.b}function See(A){switch(A.g){case 2:return De(),Wt;case 4:return De(),$t;default:return A}}function Lee(A){switch(A.g){case 1:return De(),Jn;case 3:return De(),St;default:return A}}function AKe(A){var e,n,r;return A.j==(De(),St)&&(e=Ese(A),n=CB(e,$t),r=CB(e,Wt),r||r&&n)}function eKe(A){var e,n;return e=g(A.e&&A.e(),9),n=g(SdA(e,e.length),9),new Kg(e,n,e.length)}function tKe(A,e){Gn(e,Uhe,1),kYA(F8e(new un((GH(),new wrA(A,!1,!1,new I5))))),dn(e)}function vT(A,e){return Pt(),Uc(A)?zFA(A,$n(e)):Vd(A)?ZiA(A,Ne(e)):Kd(A)?c9e(A,Se(e)):A.wd(e)}function kMA(A,e){e.q=A,A.d=w.Math.max(A.d,e.r),A.b+=e.d+(A.a.c.length==0?0:A.c),Qe(A.a,e)}function WN(A,e){var n,r,o,B;return o=A.c,n=A.c+A.b,B=A.d,r=A.d+A.a,e.a>o&&e.a B&&e.b 1||A.Ob())return++A.a,A.g=0,e=A.i,A.Ob(),e;throw oA(new Lo)}function uKe(A){zOA();var e;return $7A(JlA,A)||(e=new P$,e.a=A,yCA(JlA,A,e)),g(js(JlA,A),635)}function fh(A){var e,n,r,o;return o=A,r=0,o<0&&(o+=mf,r=GQ),n=zr(o/zy),e=zr(o-n*zy),Ta(e,n,r)}function jT(A){var e,n,r;for(r=0,n=new Ay(A.a);n.a >22),o=A.h+e.h+(r>>22),Ta(n&$B,r&$B,o&GQ)}function ote(A,e){var n,r,o;return n=A.l-e.l,r=A.m-e.m+(n>>22),o=A.h-e.h+(r>>22),Ta(n&$B,r&$B,o&GQ)}function PT(A){var e;return A<128?(e=(MVA(),HmA)[A],!e&&(e=HmA[A]=new Y9(A)),e):new Y9(A)}function Er(A){var e;return yA(A,78)?A:(e=A&&A.__java$exception,e||(e=new qte(A),u6A(e)),e)}function OT(A){if(yA(A,186))return g(A,118);if(A)return null;throw oA(new q2(nue))}function ate(A,e){if(e==null)return!1;for(;A.a!=A.b;)if(Si(e,z7(A)))return!0;return!1}function LMA(A){return A.a.Ob()?!0:A.a!=A.d?!1:(A.a=new FFA(A.e.f),A.a.Ob())}function Ac(A,e){var n,r;return n=e.Pc(),r=n.length,r==0?!1:(edA(A.c,A.c.length,n),!0)}function mKe(A,e,n){var r,o;for(o=e.vc().Kc();o.Ob();)r=g(o.Pb(),42),A.yc(r.cd(),r.dd(),n);return A}function Bte(A,e){var n,r;for(r=new m(A.b);r.a =0,"Negative initial capacity"),Z6(e>=0,"Non-positive load factor"),JB(this)}function bcA(A,e,n){return A>=128?!1:A<64?$H(ac(EQ(1,A),n),0):$H(ac(EQ(1,A-64),e),0)}function TKe(A,e){return!A||!e||A==e?!1:fC(A.b.c,e.b.c+e.b.b)<0&&fC(e.b.c,A.b.c+A.b.b)<0}function Fte(A){var e,n,r;return n=A.n,r=A.o,e=A.d,new Vg(n.a-e.b,n.b-e.d,r.a+(e.b+e.c),r.b+(e.d+e.a))}function vKe(A){var e,n,r,o;for(n=A.a,r=0,o=n.length;r r)throw oA(new $d(e,r));return A.hi()&&(n=vZA(A,n)),A.Vh(e,n)}function VT(A,e,n){return n==null?(!A.q&&(A.q=new Ln),My(A.q,e)):(!A.q&&(A.q=new Ln),Li(A.q,e,n)),A}function ae(A,e,n){return n==null?(!A.q&&(A.q=new Ln),My(A.q,e)):(!A.q&&(A.q=new Ln),Li(A.q,e,n)),A}function Mte(A){var e,n;return n=new Zz,no(n,A),ae(n,(O0(),tp),A),e=new Ln,Ost(A,n,e),EBt(A,n,e),n}function LKe(A){PY();var e,n,r;for(n=TA(Cc,Be,8,2,0,1),r=0,e=0;e<2;e++)r+=.5,n[e]=Mqe(r,A);return n}function Yte(A,e){var n,r,o,B;for(n=!1,r=A.a[e].length,B=0;B >=1);return e}function yte(A){var e,n;return n=F8(A.h),n==32?(e=F8(A.m),e==32?F8(A.l)+32:e+20-10):n-12}function Sx(A){var e;return e=A.a[A.b],e==null?null:(Dr(A.a,A.b,null),A.b=A.b+1&A.a.length-1,e)}function pte(A){var e,n;return e=A.t-A.k[A.o.p]*A.d+A.j[A.o.p]>A.f,n=A.u+A.e[A.o.p]*A.d>A.f*A.s*A.d,e||n}function v7(A,e,n){var r,o;return r=new ecA(e,n),o=new Le,A.b=foe(A,A.b,r,o),o.b||++A.c,A.b.b=!1,o.d}function Nte(A,e,n){var r,o,B,u;for(u=Px(e,n),B=0,o=u.Kc();o.Ob();)r=g(o.Pb(),11),Li(A.c,r,de(B++))}function K0(A){var e,n;for(n=new m(A.a.b);n.a n&&(n=A[e]);return n}function mte(A,e,n){var r;return r=new Ee,ryA(A,e,r,(De(),$t),!0,!1),ryA(A,n,r,Wt,!1,!1),r}function xcA(A,e,n){var r,o,B,u;return B=null,u=e,o=sC(u,"labels"),r=new XPA(A,n),B=(ant(r.a,r.b,o),o),B}function PKe(A,e,n,r){var o;return o=W2A(A,e,n,r),!o&&(o=OVe(A,n,r),o&&!KY(A,e,o))?null:o}function OKe(A,e,n,r){var o;return o=K2A(A,e,n,r),!o&&(o=ZcA(A,n,r),o&&!KY(A,e,o))?null:o}function Ute(A,e){var n;for(n=0;n 1||e>=0&&A.b<3)}function XT(A){var e,n,r;for(e=new fB,r=Ci(A,0);r.b!=r.d.c;)n=g(Ii(r),8),uN(e,0,new Ws(n));return e}function ff(A){var e,n;for(n=new m(A.a.b);n.a r?1:0}function sYA(A,e){return Aoe(A,e)?(gt(A.b,g(q(e,(le(),VF)),21),e),di(A.a,e),!0):!1}function nVe(A){var e,n;e=g(q(A,(le(),TB)),10),e&&(n=e.c,AB(n.a,e),n.a.c.length==0&&AB(is(e).b,n))}function kte(A){return pu?TA(cQe,Tge,572,0,0,1):g(du(A.a,TA(cQe,Tge,572,A.a.c.length,0,1)),842)}function iVe(A,e,n,r){return dz(),new wnA(wA(uA(Tf,1),tO,42,0,[(ysA(A,e),new SI(A,e)),(ysA(n,r),new SI(n,r))]))}function NY(A,e,n){var r,o;return o=(r=new BnA,r),Ss(o,e,n),Kn((!A.q&&(A.q=new Ie(kh,A,11,10)),A.q),o),o}function RcA(A){var e,n,r,o;for(o=U8e(cMe,A),n=o.length,r=TA(Ge,Be,2,n,6,1),e=0;e =A.b.c.length||(oYA(A,2*e+1),n=2*e+2,n =0&&A[r]===e[r];r--);return r<0?0:UnA(ac(A[r],Gs),ac(e[r],Gs))?-1:1}function rVe(A,e){var n,r;for(r=Ci(A,0);r.b!=r.d.c;)n=g(Ii(r),214),n.e.length>0&&(e.td(n),n.i&&$Ve(n))}function vcA(A,e){var n,r;return r=g(Jt(A.a,4),126),n=TA(vuA,ugA,415,e,0,1),r!=null&&sa(r,0,n,0,r.length),n}function Tte(A,e){var n;return n=new QoA((A.f&256)!=0,A.i,A.a,A.d,(A.f&16)!=0,A.j,A.g,e),A.e!=null||(n.c=A),n}function cVe(A,e){var n,r;for(r=A.Zb().Cc().Kc();r.Ob();)if(n=g(r.Pb(),14),n.Hc(e))return!0;return!1}function jcA(A,e,n,r,o){var B,u;for(u=n;u<=o;u++)for(B=e;B<=r;B++)if(GY(A,B,u))return!0;return!1}function vte(A,e,n){var r,o,B,u;for(jt(n),u=!1,B=A.Zc(e),o=n.Kc();o.Ob();)r=o.Pb(),B.Rb(r),u=!0;return u}function sVe(A,e){var n;return A===e?!0:yA(e,83)?(n=g(e,83),B2A(ZI(A),n.vc())):!1}function jte(A,e,n){var r,o;for(o=n.Kc();o.Ob();)if(r=g(o.Pb(),42),A.re(e,r.dd()))return!0;return!1}function Ste(A,e,n){return A.d[e.p][n.p]||(nqe(A,e,n),A.d[e.p][n.p]=!0,A.d[n.p][e.p]=!0),A.a[e.p][n.p]}function Am(A,e){if(!A.ai()&&e==null)throw oA(new Lt("The 'no null' constraint is violated"));return e}function em(A,e){A.D==null&&A.B!=null&&(A.D=A.B,A.B=null),fcA(A,e==null?null:(jt(e),e)),A.C&&A.yk(null)}function oVe(A,e){var n;return!A||A==e||!Ic(e,(le(),WC))?!1:(n=g(q(e,(le(),WC)),10),n!=A)}function ScA(A){switch(A.i){case 2:return!0;case 1:return!1;case-1:++A.c;default:return A.pl()}}function Lte(A){switch(A.i){case-2:return!0;case-1:return!1;case 1:--A.c;default:return A.ql()}}function zte(A){HZA.call(this,"The given string does not match the expected format for individual spacings.",A)}function ug(){ug=_,jg=new F6("ELK",0),akA=new F6("JSON",1),okA=new F6("DOT",2),BkA=new F6("SVG",3)}function ZT(){ZT=_,XK=new _nA(JQ,0),z3A=new _nA("RADIAL_COMPACTION",1),P3A=new _nA("WEDGE_COMPACTION",2)}function Cu(){Cu=_,iUA=new bnA("CONCURRENT",0),Jg=new bnA("IDENTITY_FINISH",1),zF=new bnA("UNORDERED",2)}function LcA(){LcA=_,xUA=(_9(),$gA),HUA=new Ct(NpA,xUA),i1e=new ur(mpA),r1e=new ur(UpA),c1e=new ur(bpA)}function tm(){tm=_,WbA=new M2,KbA=new i_,f0e=new jk,E0e=new r_,Q0e=new c_,ObA=(jt(Q0e),new Fe)}function nm(){nm=_,HlA=new KnA("CONSERVATIVE",0),Q3A=new KnA("CONSERVATIVE_SOFT",1),YG=new KnA("SLOPPY",2)}function j7(){j7=_,qJA=new OI(15),HFe=new Ys((Ni(),Zf),qJA),SG=fp,KJA=wFe,VJA=Xf,ZJA=UD,XJA=aV}function zcA(A,e,n){var r,o,B;for(r=new Mr,B=Ci(n,0);B.b!=B.d.c;)o=g(Ii(B),8),di(r,new Ws(o));vte(A,e,r)}function aVe(A){var e,n,r;for(e=0,r=TA(Cc,Be,8,A.b,0,1),n=Ci(A,0);n.b!=n.d.c;)r[e++]=g(Ii(n),8);return r}function BYA(A){var e;return e=(!A.a&&(A.a=new Ie(LQ,A,9,5)),A.a),e.i!=0?p8e(g(NA(e,0),678)):null}function BVe(A,e){var n;return n=ns(A,e),UnA(JrA(A,e),0)|z8e(JrA(A,n),0)?n:ns(eO,JrA(eF(n,63),1))}function gVe(A,e){var n;n=Re((csA(),bK))!=null&&e.wg()!=null?re(Ne(e.wg()))/re(Ne(Re(bK))):1,Li(A.b,e,n)}function hVe(A,e){var n,r;return n=g(A.d.Bc(e),14),n?(r=A.e.hc(),r.Gc(n),A.e.d-=n.gc(),n.$b(),r):null}function gYA(A,e){var n,r;if(r=A.c[e],r!=0)for(A.c[e]=0,A.d-=r,n=e+1;n 0)return IN(e-1,A.a.c.length),E1(A.a,e-1);throw oA(new Q6A)}function lVe(A,e,n){if(e<0)throw oA(new Os(lle+e));e e)throw oA(new Lt(cO+A+vge+e));if(A<0||e>n)throw oA(new DfA(cO+A+wpA+e+lpA+n))}function Wte(A){if(!A.a||!(A.a.i&8))throw oA(new Bo("Enumeration class expected for layout option "+A.f))}function wF(A){var e;++A.j,A.i==0?A.g=null:A.i JO?A-n>JO:n-A>JO}function OcA(A,e){return!A||e&&!A.j||yA(A,124)&&g(A,124).a.b==0?0:A.Re()}function L7(A,e){return!A||e&&!A.k||yA(A,124)&&g(A,124).a.a==0?0:A.Se()}function qT(A){return AE(),A<0?A!=-1?new cDA(-1,-A):SgA:A<=10?WmA[zr(A)]:new cDA(1,A)}function lYA(A){throw UcA(),oA(new azA("Unexpected typeof result '"+A+"'; please report this bug to the GWT team"))}function qte(A){wzA(),x6(this),yz(this),this.e=A,Boe(this,A),this.g=A==null?sB:uo(A),this.a="",this.b=A,this.a=""}function uYA(){this.a=new YAA,this.f=new i9A(this),this.b=new r9A(this),this.i=new c9A(this),this.e=new s9A(this)}function _te(){FTe.call(this,new qFA(gF(16))),Ng(2,Cge),this.b=2,this.a=new ZdA(null,null,0,null),CR(this.a,this.a)}function Lx(){Lx=_,FlA=new znA("DUMMY_NODE_OVER",0),A3A=new znA("DUMMY_NODE_UNDER",1),xK=new znA("EQUAL",2)}function WcA(){WcA=_,ghA=GZA(wA(uA(jG,1),ue,103,0,[(Hs(),Uh),al])),hhA=GZA(wA(uA(jG,1),ue,103,0,[vQ,TQ]))}function KcA(A){return(De(),aB).Hc(A.j)?re(Ne(q(A,(le(),EU)))):Mo(wA(uA(Cc,1),Be,8,0,[A.i.n,A.n,A.a])).b}function fVe(A){var e,n,r,o;for(r=A.b.a,n=r.a.ec().Kc();n.Ob();)e=g(n.Pb(),561),o=new Pse(e,A.e,A.f),Qe(A.g,o)}function Cf(A,e){var n,r,o;r=A.nk(e,null),o=null,e&&(o=(nN(),n=new xI,n),TN(o,A.r)),r=Fu(A,o,r),r&&r.Fi()}function IVe(A,e){var n,r;for(r=qB(A.d,1)!=0,n=!0;n;)n=!1,n=e.c.Tf(e.e,r),n=n|p8(A,e,r,!1),r=!r;HMA(A)}function wYA(A,e){var n,r,o;return r=!1,n=e.q.d,e.d o&&(Yre(e.q,o),r=n!=e.q.d)),r}function $te(A,e){var n,r,o,B,u,E,C,Y;return C=e.i,Y=e.j,r=A.f,o=r.i,B=r.j,u=C-o,E=Y-B,n=w.Math.sqrt(u*u+E*E),n}function QYA(A,e){var n,r;return r=tP(A),r||(n=(voA(),Dce(e)),r=new s6A(n),Kn(r.Vk(),A)),r}function _T(A,e){var n,r;return n=g(A.c.Bc(e),14),n?(r=A.hc(),r.Gc(n),A.d-=n.gc(),n.$b(),A.mc(r)):A.jc()}function Ane(A,e){var n;for(n=0;n =A.c.b:A.a<=A.c.b))throw oA(new Lo);return e=A.a,A.a+=A.c.c,++A.b,de(e)}function FVe(A){var e;return e=new xAe(A),fT(A.a,e0e,new sg(wA(uA(yv,1),ke,369,0,[e]))),e.d&&Qe(e.f,e.d),e.f}function VcA(A){var e;return e=new RIA(A.a),no(e,A),ae(e,(le(),Pi),A),e.o.a=A.g,e.o.b=A.f,e.n.a=A.i,e.n.b=A.j,e}function MVe(A,e,n,r){var o,B;for(B=A.Kc();B.Ob();)o=g(B.Pb(),70),o.n.a=e.a+(r.a-o.o.a)/2,o.n.b=e.b,e.b+=o.o.b+n}function YVe(A,e,n){var r,o;for(o=e.a.a.ec().Kc();o.Ob();)if(r=g(o.Pb(),57),lZA(A,r,n))return!0;return!1}function DVe(A){var e,n;for(n=new m(A.r);n.a =0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(o*=n,r-=1);return e<0?1/o:o}function mVe(A,e){var n,r,o;for(o=1,n=A,r=e>=0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(o*=n,r-=1);return e<0?1/o:o}function sne(A){var e,n;if(A!=null)for(n=0;n 0&&(n=g(je(A.a,A.a.c.length-1),570),sYA(n,e))||Qe(A.a,new j_A(e))}function GVe(A){qh();var e,n;e=A.d.c-A.e.c,n=g(A.g,145),tB(n.b,new fH(e)),tB(n.c,new qE(e)),Pc(n.i,new y9(e))}function gne(A){var e;return e=new p0,e.a+="VerticalSegment ",zo(e,A.e),e.a+=" ",oi(e,KIA(new MnA,new m(A.k))),e.a}function JVe(A){var e;return e=g(oC(A.c.c,""),229),e||(e=new fy(tN(eN(new Hd,""),"Other")),Mf(A.c.c,"",e)),e}function zx(A){var e;return A.Db&64?nl(A):(e=new wh(nl(A)),e.a+=" (name: ",vs(e,A.zb),e.a+=")",e.a)}function dYA(A,e,n){var r,o;return o=A.sb,A.sb=e,A.Db&4&&!(A.Db&1)&&(r=new Dc(A,1,4,o,e),n?n.Ei(r):n=r),n}function XcA(A,e){var n,r,o;for(n=0,o=Yo(A,e).Kc();o.Ob();)r=g(o.Pb(),11),n+=q(r,(le(),TB))!=null?1:0;return n}function UY(A,e,n){var r,o,B;for(r=0,B=Ci(A,0);B.b!=B.d.c&&(o=re(Ne(Ii(B))),!(o>n));)o>=e&&++r;return r}function kVe(A,e,n){var r,o;return r=new MQ(A.e,3,13,null,(o=e.c,o||(ut(),Gu)),D1(A,e),!1),n?n.Ei(r):n=r,n}function RVe(A,e,n){var r,o;return r=new MQ(A.e,4,13,(o=e.c,o||(ut(),Gu)),null,D1(A,e),!1),n?n.Ei(r):n=r,n}function FYA(A,e,n){var r,o;return o=A.r,A.r=e,A.Db&4&&!(A.Db&1)&&(r=new Dc(A,1,8,o,A.r),n?n.Ei(r):n=r),n}function F1(A,e){var n,r;return n=g(e,676),r=n.vk(),!r&&n.wk(r=yA(e,88)?new sOA(A,g(e,26)):new NqA(A,g(e,148))),r}function $T(A,e,n){var r;A.qi(A.i+1),r=A.oi(e,n),e!=A.i&&sa(A.g,e,A.g,e+1,A.i-e),Dr(A.g,e,r),++A.i,A.bi(e,n),A.ci()}function TVe(A,e){var n;return e.a&&(n=e.a.a.length,A.a?oi(A.a,A.b):A.a=new Fg(A.d),UqA(A.a,e.a,e.d.length,n)),A}function vVe(A,e){var n,r,o,B;if(e.vi(A.a),B=g(Jt(A.a,8),1936),B!=null)for(n=B,r=0,o=n.length;r n)throw oA(new Os(cO+A+wpA+e+", size: "+n));if(A>e)throw oA(new Lt(cO+A+vge+e))}function Ah(A,e,n){if(e<0)D2A(A,n);else{if(!n.Ij())throw oA(new Lt(sE+n.ne()+j3));g(n,66).Nj().Vj(A,A.yh(),e)}}function LVe(A,e,n,r,o,B,u,E){var C;for(C=n;B=r||e =65&&A<=70?A-65+10:A>=97&&A<=102?A-97+10:A>=48&&A<=57?A-48:0}function fne(A){var e;return A.Db&64?nl(A):(e=new wh(nl(A)),e.a+=" (source: ",vs(e,A.d),e.a+=")",e.a)}function PVe(A,e,n){var r,o;return o=A.a,A.a=e,A.Db&4&&!(A.Db&1)&&(r=new Dc(A,1,5,o,A.a),n?ODA(n,r):n=r),n}function M1(A,e){var n;n=(A.Bb&256)!=0,e?A.Bb|=256:A.Bb&=-257,A.Db&4&&!(A.Db&1)&&ji(A,new Al(A,1,2,n,e))}function YYA(A,e){var n;n=(A.Bb&256)!=0,e?A.Bb|=256:A.Bb&=-257,A.Db&4&&!(A.Db&1)&&ji(A,new Al(A,1,8,n,e))}function O7(A,e){var n;n=(A.Bb&256)!=0,e?A.Bb|=256:A.Bb&=-257,A.Db&4&&!(A.Db&1)&&ji(A,new Al(A,1,8,n,e))}function Y1(A,e){var n;n=(A.Bb&512)!=0,e?A.Bb|=512:A.Bb&=-513,A.Db&4&&!(A.Db&1)&&ji(A,new Al(A,1,3,n,e))}function DYA(A,e){var n;n=(A.Bb&512)!=0,e?A.Bb|=512:A.Bb&=-513,A.Db&4&&!(A.Db&1)&&ji(A,new Al(A,1,9,n,e))}function Ox(A,e){var n;return A.b==-1&&A.a&&(n=A.a.Gj(),A.b=n?A.c.Xg(A.a.aj(),n):wr(A.c.Tg(),A.a)),A.c.Og(A.b,e)}function de(A){var e,n;return A>-129&&A<128?(e=A+128,n=(QVA(),xmA)[e],!n&&(n=xmA[e]=new QR(A)),n):new QR(A)}function im(A){var e,n;return A>-129&&A<128?(e=A+128,n=(FVA(),RmA)[e],!n&&(n=RmA[e]=new D9(A)),n):new D9(A)}function yYA(A){var e,n;return e=A.k,e==(en(),Vr)?(n=g(q(A,(le(),Ro)),61),n==(De(),St)||n==Jn):!1}function OVe(A,e,n){var r,o,B;return B=(o=dm(A.b,e),o),B&&(r=g(KP(bT(A,B),""),26),r)?W2A(A,r,e,n):null}function ZcA(A,e,n){var r,o,B;return B=(o=dm(A.b,e),o),B&&(r=g(KP(bT(A,B),""),26),r)?K2A(A,r,e,n):null}function Ine(A,e){var n,r;for(r=new Qn(A);r.e!=r.i.gc();)if(n=g(pn(r),138),qA(e)===qA(n))return!0;return!1}function Wx(A,e,n){var r;if(r=A.gc(),e>r)throw oA(new $d(e,r));if(A.hi()&&A.Hc(n))throw oA(new Lt(ov));A.Xh(e,n)}function WVe(A,e){var n;if(n=YY(A.i,e),n==null)throw oA(new Zu("Node did not exist in input."));return RMA(e,n),null}function KVe(A,e){var n;if(n=y8(A,e),yA(n,322))return g(n,34);throw oA(new Lt(sE+e+"' is not a valid attribute"))}function VVe(A,e,n){var r,o;for(o=yA(e,99)&&g(e,18).Bb&us?new siA(e,A):new XN(e,A),r=0;r e?1:A==e?A==0?ec(1/A,1/e):0:isNaN(A)?isNaN(e)?0:1:-1}function nXe(A,e){Gn(e,"Sort end labels",1),Rr(cr(Fo(new yt(null,new Nt(A.b,16)),new d5),new I2),new Gq),dn(e)}function Kx(A,e,n){var r,o;return A.ej()?(o=A.fj(),r=noA(A,e,n),A.$i(A.Zi(7,de(n),r,e,o)),r):noA(A,e,n)}function qcA(A,e){var n,r,o;A.d==null?(++A.e,--A.f):(o=e.cd(),n=e.Sh(),r=(n&Ti)%A.d.length,jPe(A,r,Rse(A,r,n,o)))}function rm(A,e){var n;n=(A.Bb&rl)!=0,e?A.Bb|=rl:A.Bb&=-1025,A.Db&4&&!(A.Db&1)&&ji(A,new Al(A,1,10,n,e))}function cm(A,e){var n;n=(A.Bb&GF)!=0,e?A.Bb|=GF:A.Bb&=-4097,A.Db&4&&!(A.Db&1)&&ji(A,new Al(A,1,12,n,e))}function sm(A,e){var n;n=(A.Bb&pB)!=0,e?A.Bb|=pB:A.Bb&=-8193,A.Db&4&&!(A.Db&1)&&ji(A,new Al(A,1,15,n,e))}function om(A,e){var n;n=(A.Bb&LF)!=0,e?A.Bb|=LF:A.Bb&=-2049,A.Db&4&&!(A.Db&1)&&ji(A,new Al(A,1,11,n,e))}function iXe(A,e){var n;return n=ec(A.b.c,e.b.c),n!=0||(n=ec(A.a.a,e.a.a),n!=0)?n:ec(A.a.b,e.a.b)}function rXe(A,e){var n;if(n=hn(A.k,e),n==null)throw oA(new Zu("Port did not exist in input."));return RMA(e,n),null}function cXe(A){var e,n;for(n=Lse(pg(A)).Kc();n.Ob();)if(e=$n(n.Pb()),h3(A,e))return uPe((q7A(),fMe),e);return null}function sXe(A,e){var n,r,o,B,u;for(u=Sa(A.e.Tg(),e),B=0,n=g(A.g,119),o=0;o >10)+O8&Wr,e[1]=(A&1023)+56320&Wr,Ih(e,0,e.length)}function K7(A){var e,n;return n=g(q(A,(He(),kg)),103),n==(Hs(),AQ)?(e=re(Ne(q(A,QK))),e>=1?al:TQ):n}function BXe(A){switch(g(q(A,(He(),RQ)),218).g){case 1:return new A$;case 3:return new r$;default:return new $_}}function df(A){if(A.c)df(A.c);else if(A.d)throw oA(new Bo("Stream already terminated, can't be modified or used"))}function AsA(A){var e;return A.Db&64?nl(A):(e=new wh(nl(A)),e.a+=" (identifier: ",vs(e,A.k),e.a+=")",e.a)}function Mne(A,e,n){var r,o;return r=(vI(),o=new f0,o),E7(r,e),f7(r,n),A&&Kn((!A.a&&(A.a=new $r(Gh,A,5)),A.a),r),r}function esA(A,e,n,r){var o,B;return jt(r),jt(n),o=A.xc(e),B=o==null?n:T7A(g(o,15),g(n,14)),B==null?A.Bc(e):A.zc(e,B),B}function Bt(A){var e,n,r,o;return n=(e=g(Hl((r=A.gm,o=r.f,o==ci?r:o)),9),new Kg(e,g(Zh(e,e.length),9),0)),tl(n,A),n}function gXe(A,e,n){var r,o;for(o=A.a.ec().Kc();o.Ob();)if(r=g(o.Pb(),10),zT(n,g(je(e,r.p),14)))return r;return null}function hXe(A,e,n){var r;try{WKe(A,e,n)}catch(o){throw o=Er(o),yA(o,597)?(r=o,oA(new GFA(r))):oA(o)}return e}function Z0(A,e){var n;return go(A)&&go(e)&&(n=A-e,P8 >1,A.k=n-1>>1}function tsA(){qDA();var A,e,n;n=Bht+++Date.now(),A=zr(w.Math.floor(n*K8))&rO,e=zr(n-A*hpA),this.a=A^1502,this.b=e^paA}function NQ(A){var e,n,r;for(e=new Ee,r=new m(A.j);r.a 34028234663852886e22?Hr:e<-34028234663852886e22?qr:e}function Yne(A){return A-=A>>1&1431655765,A=(A>>2&858993459)+(A&858993459),A=(A>>4)+A&252645135,A+=A>>8,A+=A>>16,A&63}function Dne(A){var e,n,r,o;for(e=new rKA(A.Hd().gc()),o=0,r=Dy(A.Hd().Kc());r.Ob();)n=r.Pb(),pze(e,n,de(o++));return _At(e.a)}function fXe(A,e){var n,r,o;for(o=new Ln,r=e.vc().Kc();r.Ob();)n=g(r.Pb(),42),Li(o,n.cd(),aKe(A,g(n.dd(),15)));return o}function HYA(A,e){A.n.c.length==0&&Qe(A.n,new kz(A.s,A.t,A.i)),Qe(A.b,e),uDA(g(je(A.n,A.n.c.length-1),211),e),Jae(A,e)}function bY(A){return(A.c!=A.b.b||A.i!=A.g.b)&&(A.a.c=TA(on,ke,1,0,5,1),Ac(A.a,A.b),Ac(A.a,A.g),A.c=A.b.b,A.i=A.g.b),A.a}function nsA(A,e){var n,r,o;for(o=0,r=g(e.Kb(A),20).Kc();r.Ob();)n=g(r.Pb(),17),ze(Se(q(n,(le(),mu))))||++o;return o}function IXe(A,e){var n,r,o;r=FY(e),o=re(Ne(fF(r,(He(),ol)))),n=w.Math.max(0,o/2-.5),e3(e,n,1),Qe(A,new EPA(e,n))}function eh(){eh=_,Rv=new RR(JQ,0),lG=new RR("FIRST",1),lE=new RR(xhe,2),uG=new RR("LAST",3),ZF=new RR(Ghe,4)}function mQ(){mQ=_,muA=new f6(y3,0),oj=new f6("POLYLINE",1),bU=new f6("ORTHOGONAL",2),Cp=new f6("SPLINES",3)}function V7(){V7=_,oGA=new AiA("ASPECT_RATIO_DRIVEN",0),euA=new AiA("MAX_SCALE_DRIVEN",1),sGA=new AiA("AREA_DRIVEN",2)}function t8(){t8=_,_K=new eiA("P1_STRUCTURE",0),$K=new eiA("P2_PROCESSING_ORDER",1),AV=new eiA("P3_EXECUTION",2)}function X7(){X7=_,XlA=new qnA("OVERLAP_REMOVAL",0),KlA=new qnA("COMPACTION",1),VlA=new qnA("GRAPH_SIZE_CALCULATION",2)}function fC(A,e){return au(),el(tE),w.Math.abs(A-e)<=tE||A==e||isNaN(A)&&isNaN(e)?0:A e?1:PI(isNaN(A),isNaN(e))}function yne(A,e){var n,r;for(n=Ci(A,0);n.b!=n.d.c;){if(r=FR(Ne(Ii(n))),r==e)return;if(r>e){RrA(n);break}}oT(n,e)}function ot(A,e){var n,r,o,B,u;if(n=e.f,Mf(A.c.d,n,e),e.g!=null)for(o=e.g,B=0,u=o.length;Be&&r.ue(A[B-1],A[B])>0;--B)u=A[B],Dr(A,B,A[B-1]),Dr(A,B-1,u)}function th(A,e,n,r){if(e<0)q2A(A,n,r);else{if(!n.Ij())throw oA(new Lt(sE+n.ne()+j3));g(n,66).Nj().Tj(A,A.yh(),e,r)}}function Z7(A,e){if(e==A.d)return A.e;if(e==A.e)return A.d;throw oA(new Lt("Node "+e+" not part of edge "+A))}function dXe(A,e){switch(e.g){case 2:return A.b;case 1:return A.c;case 4:return A.d;case 3:return A.a;default:return!1}}function pne(A,e){switch(e.g){case 2:return A.b;case 1:return A.c;case 4:return A.d;case 3:return A.a;default:return!1}}function xYA(A,e,n,r){switch(e){case 3:return A.f;case 4:return A.g;case 5:return A.i;case 6:return A.j}return MYA(A,e,n,r)}function FXe(A){return A.k!=(en(),ic)?!1:bN(new yt(null,new qI(new Cn(Mn(tc(A).a.Kc(),new j)))),new $5)}function MXe(A){return A.e==null?A:(!A.c&&(A.c=new QoA((A.f&256)!=0,A.i,A.a,A.d,(A.f&16)!=0,A.j,A.g,null)),A.c)}function YXe(A,e){return A.h==z8&&A.m==0&&A.l==0?(e&&(oE=Ta(0,0,0)),NOA((RN(),pmA))):(e&&(oE=Ta(A.l,A.m,A.h)),Ta(0,0,0))}function uo(A){var e;return Array.isArray(A)&&A.im===JA?m0(XB(A))+"@"+(e=hr(A)>>>0,e.toString(16)):A.toString()}function Vx(A){var e;this.a=(e=g(A.e&&A.e(),9),new Kg(e,g(Zh(e,e.length),9),0)),this.b=TA(on,ke,1,this.a.a.length,5,1)}function DXe(A){var e,n,r;for(this.a=new wQ,r=new m(A);r.a 0&&(Ai(e-1,A.length),A.charCodeAt(e-1)==58)&&!isA(A,qG,_G))}function isA(A,e,n){var r,o;for(r=0,o=A.length;r =o)return e.c+n;return e.c+e.b.gc()}function UXe(A,e){wN();var n,r,o,B;for(r=S$A(A),o=e,JN(r,0,r.length,o),n=0;n 0&&(r+=o,++n);return n>1&&(r+=A.d*(n-1)),r}function JYA(A){var e,n,r;for(r=new B1,r.a+="[",e=0,n=A.gc();e 0&&this.b>0&&QdA(this.c,this.b,this.a)}function TYA(A){csA(),this.c=wu(wA(uA(Nht,1),ke,831,0,[aIe])),this.b=new Ln,this.a=A,Li(this.b,bK,1),tB(BIe,new Q9A(this))}function Nne(A,e){var n;return A.d?gg(A.b,e)?g(hn(A.b,e),51):(n=e.Kf(),Li(A.b,e,n),n):e.Kf()}function vYA(A,e){var n;return qA(A)===qA(e)?!0:yA(e,91)?(n=g(e,91),A.e==n.e&&A.d==n.d&&QPe(A,n.a)):!1}function Uy(A){switch(De(),A.g){case 4:return St;case 1:return $t;case 3:return Jn;case 2:return Wt;default:return po}}function jYA(A,e){switch(e){case 3:return A.f!=0;case 4:return A.g!=0;case 5:return A.i!=0;case 6:return A.j!=0}return vMA(A,e)}function kXe(A){switch(A.g){case 0:return new CAA;case 1:return new lL;default:throw oA(new Lt(kBA+(A.f!=null?A.f:""+A.g)))}}function mne(A){switch(A.g){case 0:return new hL;case 1:return new uL;default:throw oA(new Lt(_aA+(A.f!=null?A.f:""+A.g)))}}function Une(A){switch(A.g){case 0:return new ffA;case 1:return new S6A;default:throw oA(new Lt(vO+(A.f!=null?A.f:""+A.g)))}}function RXe(A){switch(A.g){case 1:return new wAA;case 2:return new KWA;default:throw oA(new Lt(kBA+(A.f!=null?A.f:""+A.g)))}}function TXe(A){var e,n;if(A.b)return A.b;for(n=pu?null:A.d;n;){if(e=pu?null:n.b,e)return e;n=pu?null:n.d}return oN(),nUA}function vXe(A){var e,n,r;return A.e==0?0:(e=A.d<<5,n=A.a[A.d-1],A.e<0&&(r=jee(A),r==A.d-1&&(--n,n=n|0)),e-=F8(n),e)}function jXe(A){var e,n,r;return A >5,e=A&31,r=TA(Sn,li,25,n+1,15,1),r[n]=1< 3;)o*=10,--B;A=(A+(o>>1))/o|0}return r.i=A,!0}function LXe(A){return WcA(),Pt(),!!(pne(g(A.a,81).j,g(A.b,103))||g(A.a,81).d.e!=0&&pne(g(A.a,81).j,g(A.b,103)))}function zXe(A){n7(),g(A.We((Ni(),fE)),174).Hc((_B(),EV))&&(g(A.We(oM),174).Fc((RB(),dp)),g(A.We(fE),174).Mc(EV))}function Hne(A,e){var n,r;if(e){for(n=0;n =0;--r)for(e=n[r],o=0;o >1,this.k=e-1>>1}function XXe(A,e){Gn(e,"End label post-processing",1),Rr(cr(Fo(new yt(null,new Nt(A.b,16)),new Nq),new mq),new Uq),dn(e)}function ZXe(A,e,n){var r,o;return r=re(A.p[e.i.p])+re(A.d[e.i.p])+e.n.b+e.a.b,o=re(A.p[n.i.p])+re(A.d[n.i.p])+n.n.b+n.a.b,o-r}function qXe(A,e,n){var r,o;for(r=ac(n,Gs),o=0;Zo(r,0)!=0&&o 0&&(Ai(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function $Xe(A){var e;return A==null?null:new J0((e=wa(A,!0),e.length>0&&(Ai(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function KYA(A,e){var n;return A.i>0&&(e.length A.i&&Dr(e,A.i,null),e}function Ua(A,e,n){var r,o,B;return A.ej()?(r=A.i,B=A.fj(),$T(A,r,e),o=A.Zi(3,null,e,r,B),n?n.Ei(o):n=o):$T(A,A.i,e),n}function AZe(A,e,n){var r,o;return r=new MQ(A.e,4,10,(o=e.c,yA(o,88)?g(o,26):(ut(),Th)),null,D1(A,e),!1),n?n.Ei(r):n=r,n}function eZe(A,e,n){var r,o;return r=new MQ(A.e,3,10,null,(o=e.c,yA(o,88)?g(o,26):(ut(),Th)),D1(A,e),!1),n?n.Ei(r):n=r,n}function Jne(A){qd();var e;return e=new Ws(g(A.e.We((Ni(),UD)),8)),A.B.Hc((_B(),xU))&&(e.a<=0&&(e.a=20),e.b<=0&&(e.b=20)),e}function kne(A){IF();var e;return(A.q?A.q:(ft(),ft(),_w))._b((He(),XC))?e=g(q(A,XC),197):e=g(q(is(A),fG),197),e}function fF(A,e){var n,r;return r=null,Ic(A,(He(),mK))&&(n=g(q(A,mK),94),n.Xe(e)&&(r=n.We(e))),r==null&&(r=q(is(A),e)),r}function Rne(A,e){var n,r,o;return yA(e,42)?(n=g(e,42),r=n.cd(),o=QF(A.Rc(),r),tw(o,n.dd())&&(o!=null||A.Rc()._b(r))):!1}function osA(A,e){var n,r,o;return A.f>0?(A.qj(),r=e==null?0:hr(e),o=(r&Ti)%A.d.length,n=Rse(A,o,r,e),n!=-1):!1}function Tl(A,e){var n,r,o;return A.f>0&&(A.qj(),r=e==null?0:hr(e),o=(r&Ti)%A.d.length,n=b2A(A,o,r,e),n)?n.dd():null}function n8(A,e){var n,r,o,B;for(B=Sa(A.e.Tg(),e),n=g(A.g,119),o=0;o 1?uu(EQ(e.a[1],32),ac(e.a[0],Gs)):ac(e.a[0],Gs),cC(qc(e.e,n))))}function i8(A,e){var n;return go(A)&&go(e)&&(n=A%e,P8 >5,e&=31,o=A.d+n+(e==0?0:1),r=TA(Sn,li,25,o,15,1),tAt(r,A.a,n,e),B=new fY(A.e,o,r),yx(B),B}function XYA(A,e,n){var r,o;r=g(ga(kU,e),117),o=g(ga(iJ,e),117),n?(Ks(kU,A,r),Ks(iJ,A,o)):(Ks(iJ,A,r),Ks(kU,A,o))}function Pne(A,e,n){var r,o,B;for(o=null,B=A.b;B;){if(r=A.a.ue(e,B.d),n&&r==0)return B;r>=0?B=B.a[1]:(o=B,B=B.a[0])}return o}function One(A,e,n){var r,o,B;for(o=null,B=A.b;B;){if(r=A.a.ue(e,B.d),n&&r==0)return B;r<=0?B=B.a[0]:(o=B,B=B.a[1])}return o}function cZe(A,e,n,r){var o,B,u;return o=!1,zat(A.f,n,r)&&(bZe(A.f,A.a[e][n],A.a[e][r]),B=A.a[e],u=B[r],B[r]=B[n],B[n]=u,o=!0),o}function ZYA(A,e,n,r,o){var B,u,E;for(u=o;e.b!=e.c;)B=g(ly(e),10),E=g(Yo(B,r).Xb(0),11),A.d[E.p]=u++,n.c[n.c.length]=E;return u}function qYA(A,e,n){var r,o,B,u,E;return u=A.k,E=e.k,r=n[u.g][E.g],o=Ne(fF(A,r)),B=Ne(fF(e,r)),w.Math.max((jt(o),o),(jt(B),B))}function sZe(A,e,n){var r,o,B,u;for(r=n/A.c.length,o=0,u=new m(A);u.a 2e3&&(Lwe=A,hW=w.setTimeout(u8e,10))),gW++==0?(LOe((MfA(),YmA)),!0):!1}function aZe(A,e){var n,r,o;for(r=new Cn(Mn(tc(A).a.Kc(),new j));ii(r);)if(n=g(Wn(r),17),o=n.d.i,o.c==e)return!1;return!0}function _YA(A,e){var n,r;if(yA(e,245)){r=g(e,245);try{return n=A.vd(r),n==0}catch(o){if(o=Er(o),!yA(o,205))throw oA(o)}}return!1}function BZe(){return Error.stackTraceLimit>0?(w.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function gZe(A,e){return au(),au(),el(tE),(w.Math.abs(A-e)<=tE||A==e||isNaN(A)&&isNaN(e)?0:A e?1:PI(isNaN(A),isNaN(e)))>0}function $YA(A,e){return au(),au(),el(tE),(w.Math.abs(A-e)<=tE||A==e||isNaN(A)&&isNaN(e)?0:A e?1:PI(isNaN(A),isNaN(e)))<0}function Vne(A,e){return au(),au(),el(tE),(w.Math.abs(A-e)<=tE||A==e||isNaN(A)&&isNaN(e)?0:A e?1:PI(isNaN(A),isNaN(e)))<=0}function BsA(A,e){for(var n=0;!e[n]||e[n]=="";)n++;for(var r=e[n++];n FaA)return n.fh();if(r=n.Zg(),r||n==A)break}return r}function ADA(A){return Tz(),yA(A,156)?g(hn(Cj,AQe),288).vg(A):gg(Cj,XB(A))?g(hn(Cj,XB(A)),288).vg(A):null}function lZe(A){if(nP(Om,A))return Pt(),_m;if(nP(VBA,A))return Pt(),vf;throw oA(new Lt("Expecting true or false"))}function uZe(A,e){if(e.c==A)return e.d;if(e.d==A)return e.c;throw oA(new Lt("Input edge is not connected to the input port."))}function Aie(A,e){return A.e>e.e?1:A.e e.d?A.e:A.d =48&&A<48+w.Math.min(10,10)?A-48:A>=97&&A<97?A-97+10:A>=65&&A<65?A-65+10:-1}function tie(A,e){var n;return qA(e)===qA(A)?!0:!yA(e,21)||(n=g(e,21),n.gc()!=A.gc())?!1:A.Ic(n)}function wZe(A,e){var n,r,o,B;return r=A.a.length-1,n=e-A.b&r,B=A.c-e&r,o=A.c-A.b&r,HWA(n =B?(uVe(A,e),-1):(wVe(A,e),1)}function QZe(A,e){var n,r;for(n=(Ai(e,A.length),A.charCodeAt(e)),r=e+1;r e.e?1:A.f e.f?1:hr(A)-hr(e)}function nP(A,e){return jt(A),e==null?!1:ht(A,e)?!0:A.length==e.length&&ht(A.toLowerCase(),e.toLowerCase())}function DZe(A,e){var n,r,o,B;for(r=0,o=e.gc();r 0&&Zo(A,128)<0?(e=Pn(A)+128,n=(dVA(),GmA)[e],!n&&(n=GmA[e]=new vd(A)),n):new vd(A)}function iie(A,e){var n,r;return n=e.Hh(A.a),n&&(r=$n(Tl((!n.b&&(n.b=new ag((ut(),Qs),To,n)),n.b),pi)),r!=null)?r:e.ne()}function yZe(A,e){var n,r;return n=e.Hh(A.a),n&&(r=$n(Tl((!n.b&&(n.b=new ag((ut(),Qs),To,n)),n.b),pi)),r!=null)?r:e.ne()}function pZe(A,e){UrA();var n,r;for(r=new Cn(Mn(NQ(A).a.Kc(),new j));ii(r);)if(n=g(Wn(r),17),n.d.i==e||n.c.i==e)return n;return null}function nDA(A,e,n){this.c=A,this.f=new Ee,this.e=new Zc,this.j=new hdA,this.n=new hdA,this.b=e,this.g=new Vg(e.c,e.d,e.b,e.a),this.a=n}function gsA(A){var e,n,r,o;for(this.a=new wQ,this.d=new uc,this.e=0,n=A,r=0,o=n.length;r 0):!1}function sie(A){var e;qA(We(A,(Ni(),pD)))===qA((pQ(),lV))&&(yr(A)?(e=g(We(yr(A),pD),334),Ls(A,pD,e)):Ls(A,pD,LG))}function bZe(A,e,n){var r,o;WsA(A.e,e,n,(De(),Wt)),WsA(A.i,e,n,$t),A.a&&(o=g(q(e,(le(),Pi)),11),r=g(q(n,Pi),11),krA(A.g,o,r))}function oie(A,e,n){var r,o,B;r=e.c.p,B=e.p,A.b[r][B]=new DZA(A,e),n&&(A.a[r][B]=new Z4(e),o=g(q(e,(le(),WC)),10),o&>(A.d,o,e))}function aie(A,e){var n,r,o;if(Qe(yW,A),e.Fc(A),n=g(hn(nhA,A),21),n)for(o=n.Kc();o.Ob();)r=g(o.Pb(),33),ho(yW,r,0)!=-1||aie(r,e)}function HZe(A,e,n){var r;(sQe?(TXe(A),!0):oQe||BQe?(oN(),!0):aQe&&(oN(),!1))&&(r=new RKA(e),r.b=n,JAt(A,r))}function hsA(A,e){var n;n=!A.A.Hc((wg(),$f))||A.q==(kc(),Ca),A.u.Hc((RB(),SQ))?n?tgt(A,e):vBe(A,e):A.u.Hc(FE)&&(n?dBt(A,e):$Be(A,e))}function gm(A,e){var n,r;if(++A.j,e!=null&&(n=(r=A.a.Cb,yA(r,97)?g(r,97).Jg():null),mtt(e,n))){by(A.a,4,n);return}by(A.a,4,g(e,126))}function Bie(A,e,n){return new Vg(w.Math.min(A.a,e.a)-n/2,w.Math.min(A.b,e.b)-n/2,w.Math.abs(A.a-e.a)+n,w.Math.abs(A.b-e.b)+n)}function xZe(A,e){var n,r;return n=Za(A.a.c.p,e.a.c.p),n!=0?n:(r=Za(A.a.d.i.p,e.a.d.i.p),r!=0?r:Za(e.a.d.p,A.a.d.p))}function GZe(A,e,n){var r,o,B,u;return B=e.j,u=n.j,B!=u?B.g-u.g:(r=A.f[e.p],o=A.f[n.p],r==0&&o==0?0:r==0?-1:o==0?1:ec(r,o))}function gie(A,e,n){var r,o,B;if(!n[e.d])for(n[e.d]=!0,o=new m(bY(e));o.a =o)return o;for(e=e>0?e:0;e r&&Dr(e,r,null),e}function lie(A,e){var n,r;for(r=A.a.length,e.length r&&Dr(e,r,null),e}function Mf(A,e,n){var r,o,B;return o=g(hn(A.e,e),387),o?(B=pCA(o,n),iWA(A,o),B):(r=new AdA(A,e,n),Li(A.e,e,r),UZA(r),null)}function RZe(A){var e;if(A==null)return null;if(e=xnt(wa(A,!0)),e==null)throw oA(new CnA("Invalid hexBinary value: '"+A+"'"));return e}function c8(A){return AE(),Zo(A,0)<0?Zo(A,-1)!=0?new LDA(-1,kN(A)):SgA:Zo(A,10)<=0?WmA[Pn(A)]:new LDA(1,A)}function usA(){return $P(),wA(uA(VQe,1),ue,159,0,[WQe,OQe,KQe,RQe,kQe,TQe,SQe,jQe,vQe,PQe,zQe,LQe,GQe,xQe,JQe,bQe,UQe,HQe,NQe,pQe,mQe,ZgA])}function uie(A){var e;this.d=new Ee,this.j=new Zc,this.g=new Zc,e=A.g.b,this.f=g(q(is(e),(He(),kg)),103),this.e=re(Ne(cP(e,iM)))}function wie(A){this.b=new Ee,this.e=new Ee,this.d=A,this.a=!HH(cr(new yt(null,new qI(new Qu(A.b))),new oe(new AL))).sd((Af(),tU))}function vl(){vl=_,_t=new jR("PARENTS",0),pc=new jR("NODES",1),dw=new jR("EDGES",2),Vf=new jR("PORTS",3),v1=new jR("LABELS",4)}function HY(){HY=_,CE=new LR("DISTRIBUTED",0),gj=new LR("JUSTIFIED",1),$JA=new LR("BEGIN",2),zG=new LR(Rm,3),AkA=new LR("END",4)}function TZe(A){var e;switch(e=A.yi(null),e){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}function wsA(A){switch(A.g){case 1:return Hs(),vQ;case 4:return Hs(),Uh;case 2:return Hs(),al;case 3:return Hs(),TQ}return Hs(),AQ}function vZe(A,e,n){var r;switch(r=n.q.getFullYear()-nE+nE,r<0&&(r=-r),e){case 1:A.a+=r;break;case 2:Lw(A,r%100,2);break;default:Lw(A,r,e)}}function Ci(A,e){var n,r;if(cF(e,A.b),e>=A.b>>1)for(r=A.c,n=A.b;n>e;--n)r=r.b;else for(r=A.a.a,n=0;n =64&&e<128&&(o=uu(o,EQ(1,e-64)));return o}function cP(A,e){var n,r;return r=null,Ic(A,(Ni(),Ip))&&(n=g(q(A,Ip),94),n.Xe(e)&&(r=n.We(e))),r==null&&is(A)&&(r=q(is(A),e)),r}function fie(A,e){var n,r,o;o=e.d.i,r=o.k,!(r==(en(),ic)||r==Nu)&&(n=new Cn(Mn(tc(o).a.Kc(),new j)),ii(n)&&Li(A.k,e,g(Wn(n),17)))}function QsA(A,e){var n,r,o;return r=dt(A.Tg(),e),n=e-A.Ah(),n<0?(o=A.Yg(r),o>=0?A.lh(o):toA(A,r)):n<0?toA(A,r):g(r,66).Nj().Sj(A,A.yh(),n)}function Re(A){var e;if(yA(A.a,4)){if(e=ADA(A.a),e==null)throw oA(new Bo(wle+A.b+"'. "+ule+(QQ(dj),dj.k)+GNA));return e}else return A.a}function LZe(A){var e;if(A==null)return null;if(e=Bgt(wa(A,!0)),e==null)throw oA(new CnA("Invalid base64Binary value: '"+A+"'"));return e}function pn(A){var e;try{return e=A.i.Xb(A.e),A.mj(),A.g=A.e++,e}catch(n){throw n=Er(n),yA(n,73)?(A.mj(),oA(new Lo)):oA(n)}}function EsA(A){var e;try{return e=A.c.ki(A.e),A.mj(),A.g=A.e++,e}catch(n){throw n=Er(n),yA(n,73)?(A.mj(),oA(new Lo)):oA(n)}}function qx(){qx=_,kUA=(Ni(),HJA),ehA=BJA,s1e=Ep,JUA=Zf,g1e=(fP(),uUA),B1e=hUA,h1e=QUA,a1e=gUA,o1e=(LcA(),HUA),AhA=i1e,GUA=r1e,DW=c1e}function sP(A){switch(zfA(),this.c=new Ee,this.d=A,A.g){case 0:case 2:this.a=qdA(AbA),this.b=Hr;break;case 3:case 1:this.a=AbA,this.b=qr}}function Iie(A,e,n){var r,o;if(A.c)nB(A.c,A.c.i+e),iB(A.c,A.c.j+n);else for(o=new m(A.b);o.a 0&&(Qe(A.b,new $KA(e.a,n)),r=e.a.length,0 r&&(e.a+=nWA(TA(ah,sw,25,-r,15,1))))}function Cie(A,e){var n,r,o;for(n=A.o,o=g(g(Vi(A.r,e),21),84).Kc();o.Ob();)r=g(o.Pb(),111),r.e.a=Oqe(r,n.a),r.e.b=n.b*re(Ne(r.b.We(FW)))}function PZe(A,e){var n,r,o,B;return o=A.k,n=re(Ne(q(A,(le(),KC)))),B=e.k,r=re(Ne(q(e,KC))),B!=(en(),Vr)?-1:o!=Vr?1:n==r?0:n =0?A.hh(e,n,r):(A.eh()&&(r=(o=A.Vg(),o>=0?A.Qg(r):A.eh().ih(A,-1-o,null,r))),A.Sg(e,n,r))}function rDA(A,e){switch(e){case 7:!A.e&&(A.e=new pt(dc,A,7,4)),vn(A.e);return;case 8:!A.d&&(A.d=new pt(dc,A,8,5)),vn(A.d);return}OYA(A,e)}function jl(A,e){var n;n=A.Zc(e);try{return n.Pb()}catch(r){throw r=Er(r),yA(r,109)?oA(new Os("Can't get element "+e)):oA(r)}}function cDA(A,e){this.e=A,e =0&&(n.d=A.t);break;case 3:A.t>=0&&(n.a=A.t)}A.C&&(n.b=A.C.b,n.c=A.C.c)}function xy(){xy=_,Cv=new B6(oO,0),Iv=new B6(kaA,1),dv=new B6(RaA,2),Fv=new B6(TaA,3),Cv.a=!1,Iv.a=!0,dv.a=!1,Fv.a=!0}function _x(){_x=_,Mv=new a6(oO,0),MW=new a6(kaA,1),YW=new a6(RaA,2),Yv=new a6(TaA,3),Mv.a=!1,MW.a=!0,YW.a=!1,Yv.a=!0}function XZe(A){var e;e=A.a;do e=g(Wn(new Cn(Mn(lo(e).a.Kc(),new j))),17).c.i,e.k==(en(),yc)&&A.b.Fc(e);while(e.k==(en(),yc));A.b=uf(A.b)}function ZZe(A){var e,n,r;for(r=A.c.a,A.p=(On(r),new dB(r)),n=new m(r);n.a n.b)return!0}return!1}function fsA(A,e){return Uc(A)?!!Jwe[e]:A.hm?!!A.hm[e]:Vd(A)?!!Gwe[e]:Kd(A)?!!xwe[e]:!1}function Ls(A,e,n){return n==null?(!A.o&&(A.o=new lg((ba(),YE),ed,A,0)),eP(A.o,e)):(!A.o&&(A.o=new lg((ba(),YE),ed,A,0)),IP(A.o,e,n)),A}function Aqe(A,e,n,r){var o,B;B=e.Xe((Ni(),mD))?g(e.We(mD),21):A.j,o=zVe(B),o!=($P(),ZgA)&&(n&&!eDA(o)||g2A(Gnt(A,o,r),e))}function aP(A,e,n,r){var o,B,u;return B=dt(A.Tg(),e),o=e-A.Ah(),o<0?(u=A.Yg(B),u>=0?A._g(u,n,!0):DC(A,B,n)):g(B,66).Nj().Pj(A,A.yh(),o,n,r)}function eqe(A,e,n,r){var o,B,u;n.mh(e)&&(Ms(),BcA(e)?(o=g(n.ah(e),153),DZe(A,o)):(B=(u=e,u?g(r,49).xh(u):null),B&&nTe(n.ah(e),B)))}function tqe(A){switch(A.g){case 1:return wC(),fv;case 3:return wC(),Ev;case 2:return wC(),_gA;case 4:return wC(),qgA;default:return null}}function sDA(A){switch(typeof A){case VoA:return y1(A);case npA:return zr(A);case jy:return Pt(),A?1231:1237;default:return A==null?0:WI(A)}}function nqe(A,e,n){if(A.e)switch(A.b){case 1:H6e(A.c,e,n);break;case 0:x6e(A.c,e,n)}else o_A(A.c,e,n);A.a[e.p][n.p]=A.c.i,A.a[n.p][e.p]=A.c.e}function Die(A){var e,n;if(A==null)return null;for(n=TA($w,Be,193,A.length,0,2),e=0;e =0)return o;if(A.Fk()){for(r=0;r =o)throw oA(new $d(e,o));if(A.hi()&&(r=A.Xc(n),r>=0&&r!=e))throw oA(new Lt(ov));return A.mi(e,n)}function oDA(A,e){if(this.a=g(On(A),245),this.b=g(On(e),245),A.vd(e)>0||A==(unA(),UgA)||e==(lnA(),bgA))throw oA(new Lt("Invalid range: "+i_A(A,e)))}function yie(A){var e,n;for(this.b=new Ee,this.c=A,this.a=!1,n=new m(A.a);n.a 0),(e&-e)==e)return zr(e*qB(A,31)*4656612873077393e-25);do n=qB(A,31),r=n%e;while(n-r+(e-1)<0);return zr(r)}function y1(A){TKA();var e,n,r;return n=":"+A,r=IW[n],r!=null?zr((jt(r),r)):(r=rUA[n],e=r==null?qit(A):zr((jt(r),r)),Y6e(),IW[n]=e,e)}function Nie(A,e,n){Gn(n,"Compound graph preprocessor",1),A.a=new iC,GBe(A,e,null),Tot(A,e),Cit(A),ae(e,(le(),YHA),A.a),A.a=null,JB(A.b),dn(n)}function cqe(A,e,n){switch(n.g){case 1:A.a=e.a/2,A.b=0;break;case 2:A.a=e.a,A.b=e.b/2;break;case 3:A.a=e.a/2,A.b=e.b;break;case 4:A.a=0,A.b=e.b/2}}function sqe(A){var e,n,r;for(r=g(Vi(A.a,(TY(),eK)),15).Kc();r.Ob();)n=g(r.Pb(),101),e=dDA(n),dN(A,n,e[0],(uC(),LC),0),dN(A,n,e[1],zC,1)}function oqe(A){var e,n,r;for(r=g(Vi(A.a,(TY(),tK)),15).Kc();r.Ob();)n=g(r.Pb(),101),e=dDA(n),dN(A,n,e[0],(uC(),LC),0),dN(A,n,e[1],zC,1)}function IsA(A){switch(A.g){case 0:return null;case 1:return new Nee;case 2:return new IfA;default:throw oA(new Lt(kBA+(A.f!=null?A.f:""+A.g)))}}function s8(A,e,n){var r,o;for(UKe(A,e-A.s,n-A.t),o=new m(A.n);o.a 1&&(B=rqe(A,e)),B}function CsA(A){var e;return A.f&&A.f.kh()&&(e=g(A.f,49),A.f=g(X0(A,e),82),A.f!=e&&A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,9,8,e,A.f))),A.f}function dsA(A){var e;return A.i&&A.i.kh()&&(e=g(A.i,49),A.i=g(X0(A,e),82),A.i!=e&&A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,9,7,e,A.i))),A.i}function Ds(A){var e;return A.b&&A.b.Db&64&&(e=A.b,A.b=g(X0(A,e),18),A.b!=e&&A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,9,21,e,A.b))),A.b}function hP(A,e){var n,r,o;A.d==null?(++A.e,++A.f):(r=e.Sh(),pit(A,A.f+1),o=(r&Ti)%A.d.length,n=A.d[o],!n&&(n=A.d[o]=A.uj()),n.Fc(e),++A.f)}function gDA(A,e,n){var r;return e.Kj()?!1:e.Zj()!=-2?(r=e.zj(),r==null?n==null:Si(r,n)):e.Hj()==A.e.Tg()&&n==null}function lP(){var A;Ng(16,Yge),A=Iee(16),this.b=TA(xgA,S8,317,A,0,1),this.c=TA(xgA,S8,317,A,0,1),this.a=null,this.e=null,this.i=0,this.f=A-1,this.g=0}function UQ(A){mCA.call(this),this.k=(en(),ic),this.j=(Ng(6,xF),new Na(6)),this.b=(Ng(2,xF),new Na(2)),this.d=new onA,this.f=new BfA,this.a=A}function Bqe(A){var e,n;A.c.length<=1||(e=yoe(A,(De(),Jn)),uce(A,g(e.a,19).a,g(e.b,19).a),n=yoe(A,Wt),uce(A,g(n.a,19).a,g(n.b,19).a))}function $x(){$x=_,t3A=new kR("SIMPLE",0),DlA=new kR(ABA,1),ylA=new kR("LINEAR_SEGMENTS",2),dG=new kR("BRANDES_KOEPF",3),FG=new kR(Zhe,4)}function hDA(A,e,n){ay(g(q(e,(He(),Gr)),98))||(cMA(A,e,p1(e,n)),cMA(A,e,p1(e,(De(),Jn))),cMA(A,e,p1(e,St)),ft(),Yc(e.j,new fR(A)))}function mie(A,e,n,r){var o,B,u;for(o=g(Vi(r?A.a:A.b,e),21),u=o.Kc();u.Ob();)if(B=g(u.Pb(),33),RP(A,n,B))return!0;return!1}function FsA(A){var e,n;for(n=new Qn(A);n.e!=n.i.gc();)if(e=g(pn(n),87),e.e||(!e.d&&(e.d=new $r(Rs,e,1)),e.d).i!=0)return!0;return!1}function MsA(A){var e,n;for(n=new Qn(A);n.e!=n.i.gc();)if(e=g(pn(n),87),e.e||(!e.d&&(e.d=new $r(Rs,e,1)),e.d).i!=0)return!0;return!1}function gqe(A){var e,n,r;for(e=0,r=new m(A.c.a);r.a 102?-1:A<=57?A-48:A<65?-1:A<=70?A-65+10:A<97?-1:A-97+10}function ysA(A,e){if(A==null)throw oA(new q2("null key in entry: null="+e));if(e==null)throw oA(new q2("null value in entry: "+A+"=null"))}function hqe(A,e){for(var n,r;A.Ob();)if(!e.Ob()||(n=A.Pb(),r=e.Pb(),!(qA(n)===qA(r)||n!=null&&Si(n,r))))return!1;return!e.Ob()}function bie(A,e){var n;return n=wA(uA(xc,1),zs,25,15,[OcA(A.a[0],e),OcA(A.a[1],e),OcA(A.a[2],e)]),A.d&&(n[0]=w.Math.max(n[0],n[2]),n[2]=n[0]),n}function Hie(A,e){var n;return n=wA(uA(xc,1),zs,25,15,[L7(A.a[0],e),L7(A.a[1],e),L7(A.a[2],e)]),A.d&&(n[0]=w.Math.max(n[0],n[2]),n[2]=n[0]),n}function Df(){Df=_,GhA=new JR("GREEDY",0),eHA=new JR(khe,1),JhA=new JR(ABA,2),oG=new JR("MODEL_ORDER",3),sG=new JR("GREEDY_MODEL_ORDER",4)}function xie(A,e){var n,r,o;for(A.b[e.g]=1,r=Ci(e.d,0);r.b!=r.d.c;)n=g(Ii(r),188),o=n.c,A.b[o.g]==1?di(A.a,n):A.b[o.g]==2?A.b[o.g]=1:xie(A,o)}function lqe(A,e){var n,r,o;for(o=new Na(e.gc()),r=e.Kc();r.Ob();)n=g(r.Pb(),286),n.c==n.f?fm(A,n,n.c):get(A,n)||(o.c[o.c.length]=n);return o}function uqe(A,e,n){var r,o,B,u,E;for(E=A.r+e,A.r+=e,A.d+=n,r=n/A.n.c.length,o=0,u=new m(A.n);u.a B&&Dr(e,B,null),e}function Nqe(A,e){var n,r;if(r=A.gc(),e==null){for(n=0;n 0&&(C+=o),Y[p]=u,u+=E*(C+r)}function Sie(A){var e,n,r;for(r=A.f,A.n=TA(xc,zs,25,r,15,1),A.d=TA(xc,zs,25,r,15,1),e=0;e 0?A.c:0),++o;A.b=r,A.d=B}function Jqe(A,e){var n,r,o,B,u;for(r=0,o=0,n=0,u=new m(e);u.a 0?A.g:0),++n;A.c=o,A.d=r}function Wie(A,e){var n;return n=wA(uA(xc,1),zs,25,15,[BDA(A,(Rl(),Jo),e),BDA(A,xa,e),BDA(A,ko,e)]),A.f&&(n[0]=w.Math.max(n[0],n[2]),n[2]=n[0]),n}function kqe(A,e,n){var r;try{jP(A,e+A.j,n+A.k,!1,!0)}catch(o){throw o=Er(o),yA(o,73)?(r=o,oA(new Os(r.g+BO+e+ls+n+")."))):oA(o)}}function Rqe(A,e,n){var r;try{jP(A,e+A.j,n+A.k,!0,!1)}catch(o){throw o=Er(o),yA(o,73)?(r=o,oA(new Os(r.g+BO+e+ls+n+")."))):oA(o)}}function Kie(A){var e;Ic(A,(He(),VC))&&(e=g(q(A,VC),21),e.Hc((yF(),Bl))?(e.Mc(Bl),e.Fc(gl)):e.Hc(gl)&&(e.Mc(gl),e.Fc(Bl)))}function Vie(A){var e;Ic(A,(He(),VC))&&(e=g(q(A,VC),21),e.Hc((yF(),ll))?(e.Mc(ll),e.Fc(Hh)):e.Hc(Hh)&&(e.Mc(Hh),e.Fc(ll)))}function Tqe(A,e,n){Gn(n,"Self-Loop ordering",1),Rr(_a(cr(cr(Fo(new yt(null,new Nt(e.b,16)),new H5),new a_),new B_),new g_),new jd(A)),dn(n)}function a8(A,e,n,r){var o,B;for(o=e;o 0&&(o.b+=e),o}function QP(A,e){var n,r,o;for(o=new Zc,r=A.Kc();r.Ob();)n=g(r.Pb(),37),g3(n,0,o.b),o.b+=n.f.b+e,o.a=w.Math.max(o.a,n.f.a);return o.a>0&&(o.a+=e),o}function Zie(A){var e,n,r;for(r=Ti,n=new m(A.a);n.a >16==6?A.Cb.ih(A,5,Wl,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||A.zh()),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function zqe(A){pN();var e=A.e;if(e&&e.stack){var n=e.stack,r=e+``;return n.substring(0,r.length)==r&&(n=n.substring(r.length)),n.split(``)}return[]}function Pqe(A){var e;return e=(lee(),Kwe),e[A>>>28]|e[A>>24&15]<<4|e[A>>20&15]<<8|e[A>>16&15]<<12|e[A>>12&15]<<16|e[A>>8&15]<<20|e[A>>4&15]<<24|e[A&15]<<28}function $ie(A){var e,n,r;A.b==A.c&&(r=A.a.length,n=_MA(w.Math.max(8,r))<<1,A.b!=0?(e=Zh(A.a,n),dee(A,e,r),A.a=e,A.b=0):C6A(A.a,n),A.c=r)}function Oqe(A,e){var n;return n=A.b,n.Xe((Ni(),eg))?n.Hf()==(De(),Wt)?-n.rf().a-re(Ne(n.We(eg))):e+re(Ne(n.We(eg))):n.Hf()==(De(),Wt)?-n.rf().a:e}function B8(A){var e;return A.b.c.length!=0&&g(je(A.b,0),70).a?g(je(A.b,0),70).a:(e=frA(A),e??""+(A.c?ho(A.c.a,A,0):-1))}function EP(A){var e;return A.f.c.length!=0&&g(je(A.f,0),70).a?g(je(A.f,0),70).a:(e=frA(A),e??""+(A.i?ho(A.i.j,A,0):-1))}function Wqe(A,e){var n,r;if(e<0||e>=A.gc())return null;for(n=e;n 0?A.c:0),o=w.Math.max(o,e.d),++r;A.e=B,A.b=o}function Vqe(A){var e,n;if(!A.b)for(A.b=Pz(g(A.f,118).Ag().i),n=new Qn(g(A.f,118).Ag());n.e!=n.i.gc();)e=g(pn(n),137),Qe(A.b,new InA(e));return A.b}function Xqe(A,e){var n,r,o;if(e.dc())return wN(),wN(),Fj;for(n=new tKA(A,e.gc()),o=new Qn(A);o.e!=o.i.gc();)r=pn(o),e.Hc(r)&&Kn(n,r);return n}function IDA(A,e,n,r){return e==0?r?(!A.o&&(A.o=new lg((ba(),YE),ed,A,0)),A.o):(!A.o&&(A.o=new lg((ba(),YE),ed,A,0)),YT(A.o)):aP(A,e,n,r)}function GsA(A){var e,n;if(A.rb)for(e=0,n=A.rb.i;e >22),o+=r>>22,o<0)?!1:(A.l=n&$B,A.m=r&$B,A.h=o&GQ,!0)}function $qe(A,e,n,r,o,B,u){var E,C;return!(e.Ae()&&(C=A.a.ue(n,r),C<0||!o&&C==0)||e.Be()&&(E=A.a.ue(n,B),E>0||!u&&E==0))}function A_e(A,e){tm();var n;if(n=A.j.g-e.j.g,n!=0)return 0;switch(A.j.g){case 2:return nsA(e,KbA)-nsA(A,KbA);case 4:return nsA(A,WbA)-nsA(e,WbA)}return 0}function e_e(A){switch(A.g){case 0:return RhA;case 1:return ThA;case 2:return vhA;case 3:return jhA;case 4:return rK;case 5:return ShA;default:return null}}function qs(A,e,n){var r,o;return r=(o=new gnA,Cf(o,e),ma(o,n),Kn((!A.c&&(A.c=new Ie(td,A,12,10)),A.c),o),o),C1(r,0),uF(r,1),Y1(r,!0),M1(r,!0),r}function Gy(A,e){var n,r;if(e>=A.i)throw oA(new ciA(e,A.i));return++A.j,n=A.g[e],r=A.i-e-1,r>0&&sa(A.g,e+1,A.g,e,r),Dr(A.g,--A.i,null),A.fi(e,n),A.ci(),n}function Are(A,e){var n,r;return A.Db>>16==17?A.Cb.ih(A,21,Jh,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||A.zh()),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function t_e(A){var e,n,r,o;for(ft(),Yc(A.c,A.a),o=new m(A.c);o.a n.a.c.length))throw oA(new Lt("index must be >= 0 and <= layer node count"));A.c&&AB(A.c.a,A),A.c=n,n&&AF(n.a,e,A)}function rre(A,e){var n,r,o;for(r=new Cn(Mn(NQ(A).a.Kc(),new j));ii(r);)return n=g(Wn(r),17),o=g(e.Kb(n),10),new L4(On(o.n.b+o.o.b/2));return YH(),YH(),mgA}function cre(A,e){this.c=new Ln,this.a=A,this.b=e,this.d=g(q(A,(le(),ID)),304),qA(q(A,(He(),HxA)))===qA((NT(),cK))?this.e=new R6A:this.e=new k6A}function o_e(A,e){var n,r,o,B;for(B=0,r=new m(A);r.a >16==6?A.Cb.ih(A,6,dc,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ba(),IV)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function DDA(A,e){var n,r;return A.Db>>16==7?A.Cb.ih(A,1,Ej,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ba(),hkA)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function yDA(A,e){var n,r;return A.Db>>16==9?A.Cb.ih(A,9,Nr,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ba(),ukA)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function ore(A,e){var n,r;return A.Db>>16==5?A.Cb.ih(A,9,NV,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ut(),z1)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function pDA(A,e){var n,r;return A.Db>>16==3?A.Cb.ih(A,0,Ij,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ut(),L1)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function are(A,e){var n,r;return A.Db>>16==7?A.Cb.ih(A,6,Wl,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ut(),O1)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function Bre(){this.a=new CL,this.g=new lP,this.j=new lP,this.b=new Ln,this.d=new lP,this.i=new lP,this.k=new Ln,this.c=new Ln,this.e=new Ln,this.f=new Ln}function h_e(A,e,n){var r,o,B;for(n<0&&(n=0),B=A.i,o=n;oFaA)return lm(A,r);if(r==A)return!0}}return!1}function u_e(A){switch(T6(),A.q.g){case 5:Vce(A,(De(),St)),Vce(A,Jn);break;case 4:zse(A,(De(),St)),zse(A,Jn);break;default:zBe(A,(De(),St)),zBe(A,Jn)}}function w_e(A){switch(T6(),A.q.g){case 5:ase(A,(De(),$t)),ase(A,Wt);break;case 4:Cie(A,(De(),$t)),Cie(A,Wt);break;default:PBe(A,(De(),$t)),PBe(A,Wt)}}function Q_e(A){var e,n;e=g(q(A,(Sl(),N1e)),19),e?(n=e.a,n==0?ae(A,(O0(),UW),new tsA):ae(A,(O0(),UW),new Vz(n))):ae(A,(O0(),UW),new Vz(1))}function E_e(A,e){var n;switch(n=A.i,e.g){case 1:return-(A.n.b+A.o.b);case 2:return A.n.a-n.o.a;case 3:return A.n.b-n.o.b;case 4:return-(A.n.a+A.o.a)}return 0}function f_e(A,e){switch(A.g){case 0:return e==(eh(),lE)?ZW:qW;case 1:return e==(eh(),lE)?ZW:mv;case 2:return e==(eh(),lE)?mv:qW;default:return mv}}function h8(A,e){var n,r,o;for(AB(A.a,e),A.e-=e.r+(A.a.c.length==0?0:A.c),o=lNA,r=new m(A.a);r.a >16==3?A.Cb.ih(A,12,Nr,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ba(),gkA)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function mDA(A,e){var n,r;return A.Db>>16==11?A.Cb.ih(A,10,Nr,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ba(),lkA)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function gre(A,e){var n,r;return A.Db>>16==10?A.Cb.ih(A,11,Jh,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ut(),P1)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function hre(A,e){var n,r;return A.Db>>16==10?A.Cb.ih(A,12,kh,e):(r=Ds(g(dt((n=g(Jt(A,16),26),n||(ut(),wM)),A.Db>>16),18)),A.Cb.ih(A,r.n,r.f,e))}function Ch(A){var e;return!(A.Bb&1)&&A.r&&A.r.kh()&&(e=g(A.r,49),A.r=g(X0(A,e),138),A.r!=e&&A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,9,8,e,A.r))),A.r}function ksA(A,e,n){var r;return r=wA(uA(xc,1),zs,25,15,[A2A(A,(Rl(),Jo),e,n),A2A(A,xa,e,n),A2A(A,ko,e,n)]),A.f&&(r[0]=w.Math.max(r[0],r[2]),r[2]=r[0]),r}function I_e(A,e){var n,r,o;if(o=lqe(A,e),o.c.length!=0)for(Yc(o,new $q),n=o.c.length,r=0;r >19,Y=e.h>>19,C!=Y?Y-C:(o=A.h,E=e.h,o!=E?o-E:(r=A.m,u=e.m,r!=u?r-u:(n=A.l,B=e.l,n-B)))}function fP(){fP=_,EUA=(TP(),VgA),QUA=new Ct(fpA,EUA),wUA=(B7(),KgA),uUA=new Ct(IpA,wUA),lUA=(iP(),WgA),hUA=new Ct(CpA,lUA),gUA=new Ct(dpA,(Pt(),!0))}function e3(A,e,n){var r,o;r=e*n,yA(A.g,145)?(o=Cy(A),o.f.d?o.f.a||(A.d.a+=r+Yu):(A.d.d-=r+Yu,A.d.a+=r+Yu)):yA(A.g,10)&&(A.d.d-=r,A.d.a+=2*r)}function lre(A,e,n){var r,o,B,u,E;for(o=A[n.g],E=new m(e.d);E.a 0?A.g:0),++n;e.b=r,e.e=o}function ure(A){var e,n,r;if(r=A.b,k7A(A.i,r.length)){for(n=r.length*2,A.b=TA(xgA,S8,317,n,0,1),A.c=TA(xgA,S8,317,n,0,1),A.f=n-1,A.i=0,e=A.a;e;e=e.c)I8(A,e,e);++A.g}}function p_e(A,e,n,r){var o,B,u,E;for(o=0;o u&&(E=u/r),o>B&&(C=B/o),$u(A,w.Math.min(E,C)),A}function m_e(){PP();var A,e;try{if(e=g(jDA((b0(),Rh),Km),2014),e)return e}catch(n){if(n=Er(n),yA(n,102))A=n,pdA((qn(),A));else throw oA(n)}return new U2}function U_e(){rAe();var A,e;try{if(e=g(jDA((b0(),Rh),Rf),2024),e)return e}catch(n){if(n=Er(n),yA(n,102))A=n,pdA((qn(),A));else throw oA(n)}return new Rd}function b_e(){PP();var A,e;try{if(e=g(jDA((b0(),Rh),yh),1941),e)return e}catch(n){if(n=Er(n),yA(n,102))A=n,pdA((qn(),A));else throw oA(n)}return new heA}function H_e(A,e,n){var r,o;return o=A.e,A.e=e,A.Db&4&&!(A.Db&1)&&(r=new Dc(A,1,4,o,e),n?n.Ei(r):n=r),o!=e&&(e?n=mm(A,bP(A,e),n):n=mm(A,A.a,n)),n}function wre(){Z9.call(this),this.e=-1,this.a=!1,this.p=_c,this.k=-1,this.c=-1,this.b=-1,this.g=!1,this.f=-1,this.j=-1,this.n=-1,this.i=-1,this.d=-1,this.o=_c}function x_e(A,e){var n,r,o;if(r=A.b.d.d,A.a||(r+=A.b.d.a),o=e.b.d.d,e.a||(o+=e.b.d.a),n=ec(r,o),n==0){if(!A.a&&e.a)return-1;if(!e.a&&A.a)return 1}return n}function G_e(A,e){var n,r,o;if(r=A.b.b.d,A.a||(r+=A.b.b.a),o=e.b.b.d,e.a||(o+=e.b.b.a),n=ec(r,o),n==0){if(!A.a&&e.a)return-1;if(!e.a&&A.a)return 1}return n}function J_e(A,e){var n,r,o;if(r=A.b.g.d,A.a||(r+=A.b.g.a),o=e.b.g.d,e.a||(o+=e.b.g.a),n=ec(r,o),n==0){if(!A.a&&e.a)return-1;if(!e.a&&A.a)return 1}return n}function bDA(){bDA=_,L1e=GB(Ri(Ri(Ri(new wc,(hs(),Ea),(ys(),HbA)),Ea,xbA),ro,GbA),ro,dbA),P1e=Ri(Ri(new wc,Ea,ubA),Ea,FbA),z1e=GB(new wc,ro,YbA)}function k_e(A){var e,n,r,o,B;for(e=g(q(A,(le(),hG)),83),B=A.n,r=e.Cc().Kc();r.Ob();)n=g(r.Pb(),306),o=n.i,o.c+=B.a,o.d+=B.b,n.c?boe(n):Hoe(n);ae(A,hG,null)}function R_e(A,e,n){var r,o;switch(o=A.b,r=o.d,e.g){case 1:return-r.d-n;case 2:return o.o.a+r.c+n;case 3:return o.o.b+r.a+n;case 4:return-r.b-n;default:return-1}}function T_e(A){var e,n,r,o,B;if(r=0,o=vm,A.b)for(e=0;e<360;e++)n=e*.017453292519943295,dyA(A,A.d,0,0,eD,n),B=A.b.ig(A.d),B 0&&(u=(B&Ti)%A.d.length,o=b2A(A,u,B,e),o)?(E=o.ed(n),E):(r=A.tj(B,e,n),A.c.Fc(r),null)}function GDA(A,e){var n,r,o,B;switch(F1(A,e)._k()){case 3:case 2:{for(n=WY(e),o=0,B=n.i;o=0;r--)if(ht(A[r].d,e)||ht(A[r].d,n)){A.length>=r+1&&A.splice(0,r+1);break}return A}function l8(A,e){var n;return go(A)&&go(e)&&(n=A/e,P8 0&&(A.b+=2,A.a+=r):(A.b+=1,A.a+=w.Math.min(r,o))}function Fre(A,e){var n,r;if(r=!1,Uc(e)&&(r=!0,uy(A,new nF($n(e)))),r||yA(e,236)&&(r=!0,uy(A,(n=jCA(g(e,236)),new lH(n)))),!r)throw oA(new EnA(XNA))}function t$e(A,e,n,r){var o,B,u;return o=new MQ(A.e,1,10,(u=e.c,yA(u,88)?g(u,26):(ut(),Th)),(B=n.c,yA(B,88)?g(B,26):(ut(),Th)),D1(A,e),!1),r?r.Ei(o):r=o,r}function RDA(A){var e,n;switch(g(q(is(A),(He(),YxA)),420).g){case 0:return e=A.n,n=A.o,new Pe(e.a+n.a/2,e.b+n.b/2);case 1:return new Ws(A.n);default:return null}}function u8(){u8=_,sK=new PH(JQ,0),aHA=new PH("LEFTUP",1),gHA=new PH("RIGHTUP",2),oHA=new PH("LEFTDOWN",3),BHA=new PH("RIGHTDOWN",4),LhA=new PH("BALANCED",5)}function n$e(A,e,n){var r,o,B;if(r=ec(A.a[e.p],A.a[n.p]),r==0){if(o=g(q(e,(le(),op)),15),B=g(q(n,op),15),o.Hc(n))return-1;if(B.Hc(e))return 1}return r}function i$e(A){switch(A.g){case 1:return new EAA;case 2:return new fAA;case 3:return new QAA;case 0:return null;default:throw oA(new Lt(kBA+(A.f!=null?A.f:""+A.g)))}}function TDA(A,e,n){switch(e){case 1:!A.n&&(A.n=new Ie(Qo,A,1,7)),vn(A.n),!A.n&&(A.n=new Ie(Qo,A,1,7)),Ur(A.n,g(n,14));return;case 2:Jx(A,$n(n));return}iYA(A,e,n)}function vDA(A,e,n){switch(e){case 3:gC(A,re(Ne(n)));return;case 4:hC(A,re(Ne(n)));return;case 5:nB(A,re(Ne(n)));return;case 6:iB(A,re(Ne(n)));return}TDA(A,e,n)}function CP(A,e,n){var r,o,B;B=(r=new gnA,r),o=Fu(B,e,null),o&&o.Fi(),ma(B,n),Kn((!A.c&&(A.c=new Ie(td,A,12,10)),A.c),B),C1(B,0),uF(B,1),Y1(B,!0),M1(B,!0)}function jDA(A,e){var n,r,o;return n=vH(A.g,e),yA(n,235)?(o=g(n,235),o.Qh()==null,o.Nh()):yA(n,498)?(r=g(n,1938),o=r.b,o):null}function r$e(A,e,n,r){var o,B;return On(e),On(n),B=g(gx(A.d,e),19),BAe(!!B,"Row %s not in %s",e,A.e),o=g(gx(A.b,n),19),BAe(!!o,"Column %s not in %s",n,A.c),wte(A,B.a,o.a,r)}function Mre(A,e,n,r,o,B,u){var E,C,Y,p,H;if(p=o[B],Y=B==u-1,E=Y?r:0,H=Pie(E,p),r!=10&&wA(uA(A,u-B),e[B],n[B],E,H),!Y)for(++B,C=0;C 1||E==-1?(B=g(C,15),o.Wb(hZe(A,B))):o.Wb(YoA(A,g(C,56)))))}function h$e(A,e,n,r){B7A();var o=NgA;function B(){for(var u=0;u
xBA)return n;o>-1e-6&&++n}return n}function zDA(A,e){var n;e!=A.b?(n=null,A.b&&(n=Hz(A.b,A,-4,n)),e&&(n=Hy(e,A,-4,n)),n=rne(A,e,n),n&&n.Fi()):A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,3,e,e))}function yre(A,e){var n;e!=A.f?(n=null,A.f&&(n=Hz(A.f,A,-1,n)),e&&(n=Hy(e,A,-1,n)),n=cne(A,e,n),n&&n.Fi()):A.Db&4&&!(A.Db&1)&&ji(A,new Dc(A,1,0,e,e))}function pre(A){var e,n,r;if(A==null)return null;if(n=g(A,15),n.dc())return"";for(r=new B1,e=n.Kc();e.Ob();)vs(r,(_i(),$n(e.Pb()))),r.a+=" ";return oiA(r,r.a.length-1)}function Nre(A){var e,n,r;if(A==null)return null;if(n=g(A,15),n.dc())return"";for(r=new B1,e=n.Kc();e.Ob();)vs(r,(_i(),$n(e.Pb()))),r.a+=" ";return oiA(r,r.a.length-1)}function C$e(A,e,n){var r,o;return r=A.c[e.c.p][e.p],o=A.c[n.c.p][n.p],r.a!=null&&o.a!=null?ZiA(r.a,o.a):r.a!=null?-1:o.a!=null?1:0}function d$e(A,e){var n,r,o,B,u,E;if(e)for(B=e.a.length,n=new rf(B),E=(n.b-n.a)*n.c<0?(H0(),mE):new k0(n);E.Ob();)u=g(E.Pb(),19),o=mN(e,u.a),r=new m9A(A),B6e(r.a,o)}function F$e(A,e){var n,r,o,B,u,E;if(e)for(B=e.a.length,n=new rf(B),E=(n.b-n.a)*n.c<0?(H0(),mE):new k0(n);E.Ob();)u=g(E.Pb(),19),o=mN(e,u.a),r=new C9A(A),a6e(r.a,o)}function M$e(A){var e;if(A!=null&&A.length>0&&zc(A,A.length-1)==33)try{return e=Dce(Mg(A,0,A.length-1)),e.e==null}catch(n){if(n=Er(n),!yA(n,32))throw oA(n)}return!1}function mre(A,e,n){var r,o,B;return r=e.ak(),B=e.dd(),o=r.$j()?L0(A,3,r,null,B,ym(A,r,B,yA(r,99)&&(g(r,18).Bb&us)!=0),!0):L0(A,1,r,r.zj(),B,-1,!0),n?n.Ei(o):n=o,n}function Y$e(){var A,e,n;for(e=0,A=0;A<1;A++){if(n=J2A((Ai(A,1),"X".charCodeAt(A))),n==0)throw oA(new _n("Unknown Option: "+"X".substr(A)));e|=n}return e}function D$e(A,e,n){var r,o,B;switch(r=is(e),o=K7(r),B=new ca,Co(B,e),n.g){case 1:Bc(B,e8(Uy(o)));break;case 2:Bc(B,Uy(o))}return ae(B,(He(),eM),Ne(q(A,eM))),B}function PDA(A){var e,n;return e=g(Wn(new Cn(Mn(lo(A.a).a.Kc(),new j))),17),n=g(Wn(new Cn(Mn(tc(A.a).a.Kc(),new j))),17),ze(Se(q(e,(le(),mu))))||ze(Se(q(n,mu)))}function TY(){TY=_,$W=new GR("ONE_SIDE",0),eK=new GR("TWO_SIDES_CORNER",1),tK=new GR("TWO_SIDES_OPPOSING",2),AK=new GR("THREE_SIDES",3),_W=new GR("FOUR_SIDES",4)}function jsA(A,e,n,r,o){var B,u;B=g(yg(cr(e.Oc(),new Z_),hf(new ye,new ie,new Gt,wA(uA(Ag,1),ue,132,0,[(Cu(),Jg)]))),15),u=g(wf(A.b,n,r),15),o==0?u.Wc(0,B):u.Gc(B)}function y$e(A,e){var n,r,o,B,u;for(B=new m(e.a);B.a 0&&ere(this,this.c-1,(De(),$t)),this.c 0&&A[0].length>0&&(this.c=ze(Se(q(is(A[0][0]),(le(),yHA))))),this.a=TA(HIe,Be,2018,A.length,0,2),this.b=TA(xIe,Be,2019,A.length,0,2),this.d=new _te}function b$e(A){return A.c.length==0?!1:(bt(0,A.c.length),g(A.c[0],17)).c.i.k==(en(),yc)?!0:bN(_a(new yt(null,new Nt(A,16)),new D$),new y$)}function H$e(A,e,n){return Gn(n,"Tree layout",1),Lz(A.b),Tw(A.b,(hm(),SK),SK),Tw(A.b,NG,NG),Tw(A.b,Kv,Kv),Tw(A.b,mG,mG),A.a=VP(A.b,e),art(A,e,la(n,1)),dn(n),e}function bre(A,e){var n,r,o,B,u,E,C;for(E=NF(e),B=e.f,C=e.g,u=w.Math.sqrt(B*B+C*C),o=0,r=new m(E);r.a =0?(n=l8(A,iO),r=i8(A,iO)):(e=eF(A,1),n=l8(e,5e8),r=i8(e,5e8),r=ns(EQ(r,1),ac(A,1))),uu(EQ(r,32),ac(n,Gs))}function Gre(A,e,n){var r,o;switch(r=(an(e.b!=0),g(_g(e,e.a.a),8)),n.g){case 0:r.b=0;break;case 2:r.b=A.f;break;case 3:r.a=0;break;default:r.a=A.g}return o=Ci(e,0),oT(o,r),e}function Jre(A,e,n,r){var o,B,u,E,C;switch(C=A.b,B=e.d,u=B.j,E=iDA(u,C.d[u.g],n),o=Xi(Ho(B.n),B.a),B.j.g){case 1:case 3:E.a+=o.a;break;case 2:case 4:E.b+=o.b}vr(r,E,r.c.b,r.c)}function P$e(A,e,n){var r,o,B,u;for(u=ho(A.e,e,0),B=new ofA,B.b=n,r=new Sc(A.e,u);r.b 1;e>>=1)e&1&&(r=MY(r,n)),n.d==1?n=MY(n,n):n=new rie(uae(n.a,n.d,TA(Sn,li,25,n.d<<1,15,1)));return r=MY(r,n),r}function qDA(){qDA=_;var A,e,n,r;for(_mA=TA(xc,zs,25,25,15,1),$mA=TA(xc,zs,25,33,15,1),r=152587890625e-16,e=32;e>=0;e--)$mA[e]=r,r*=.5;for(n=1,A=24;A>=0;A--)_mA[A]=n,n*=.5}function Z$e(A){var e,n;if(ze(Se(We(A,(He(),AM))))){for(n=new Cn(Mn(bQ(A).a.Kc(),new j));ii(n);)if(e=g(Wn(n),79),YC(e)&&ze(Se(We(e,zf))))return!0}return!1}function kre(A,e){var n,r,o;oc(A.f,e)&&(e.b=A,r=e.c,ho(A.j,r,0)!=-1||Qe(A.j,r),o=e.d,ho(A.j,o,0)!=-1||Qe(A.j,o),n=e.a.b,n.c.length!=0&&(!A.i&&(A.i=new uie(A)),hKe(A.i,n)))}function q$e(A){var e,n,r,o,B;return n=A.c.d,r=n.j,o=A.d.d,B=o.j,r==B?n.p =0&&ht(A.substr(e,3),"GMT")||e>=0&&ht(A.substr(e,3),"UTC"))&&(n[0]=e+3),YyA(A,n,r)}function $$e(A,e){var n,r,o,B,u;for(B=A.g.a,u=A.g.b,r=new m(A.d);r.a n;B--)A[B]|=e[B-n-1]>>>u,A[B-1]=e[B-n-1]< =A.f)break;B.c[B.c.length]=n}return B}function $DA(A){var e,n,r,o;for(e=null,o=new m(A.wf());o.a 0&&sa(A.g,e,A.g,e+r,E),u=n.Kc(),A.i+=r,o=0;o B&&w9e(Y,HAe(n[E],ZmA))&&(o=E,B=C);return o>=0&&(r[0]=e+B),o}function cAt(A,e){var n;if(n=mOA(A.b.Hf(),e.b.Hf()),n!=0)return n;switch(A.b.Hf().g){case 1:case 2:return Za(A.b.sf(),e.b.sf());case 3:case 4:return Za(e.b.sf(),A.b.sf())}return 0}function sAt(A){var e,n,r;for(r=A.e.c.length,A.a=nf(Sn,[Be,li],[48,25],15,[r,r],2),n=new m(A.c);n.a >4&15,B=A[r]&15,u[o++]=wkA[n],u[o++]=wkA[B];return Ih(u,0,u.length)}function BAt(A,e,n){var r,o,B;return r=e.ak(),B=e.dd(),o=r.$j()?L0(A,4,r,B,null,ym(A,r,B,yA(r,99)&&(g(r,18).Bb&us)!=0),!0):L0(A,r.Kj()?2:1,r,B,r.zj(),-1,!0),n?n.Ei(o):n=o,n}function cB(A){var e,n;return A>=us?(e=O8+(A-us>>10&1023)&Wr,n=56320+(A-us&1023)&Wr,String.fromCharCode(e)+(""+String.fromCharCode(n))):String.fromCharCode(A&Wr)}function gAt(A,e){qd();var n,r,o,B;return o=g(g(Vi(A.r,e),21),84),o.gc()>=2?(r=g(o.Kc().Pb(),111),n=A.u.Hc((RB(),WG)),B=A.u.Hc(dp),!r.a&&!n&&(o.gc()==2||B)):!1}function vre(A,e,n,r,o){var B,u,E;for(B=Foe(A,e,n,r,o),E=!1;!B;)mP(A,o,!0),E=!0,B=Foe(A,e,n,r,o);E&&mP(A,o,!1),u=mcA(o),u.c.length!=0&&(A.d&&A.d.lg(u),vre(A,o,n,r,u))}function YP(){YP=_,buA=new ZH(JQ,0),zJA=new ZH("DIRECTED",1),OJA=new ZH("UNDIRECTED",2),SJA=new ZH("ASSOCIATION",3),PJA=new ZH("GENERALIZATION",4),LJA=new ZH("DEPENDENCY",5)}function hAt(A,e){var n;if(!gu(A))throw oA(new Bo(Gle));switch(n=gu(A),e.g){case 1:return-(A.j+A.f);case 2:return A.i-n.g;case 3:return A.j-n.f;case 4:return-(A.i+A.g)}return 0}function Qm(A,e){var n,r;for(jt(e),r=A.b.c.length,Qe(A.b,e);r>0;){if(n=r,r=(r-1)/2|0,A.a.ue(je(A.b,r),e)<=0)return Zg(A.b,n,e),!0;Zg(A.b,n,je(A.b,r))}return Zg(A.b,r,e),!0}function A2A(A,e,n,r){var o,B;if(o=0,n)o=L7(A.a[n.g][e.g],r);else for(B=0;B =E)}function e2A(A,e,n,r){var o;if(o=!1,Uc(r)&&(o=!0,fN(e,n,$n(r))),o||Kd(r)&&(o=!0,e2A(A,e,n,r)),o||yA(r,236)&&(o=!0,sf(e,n,g(r,236))),!o)throw oA(new EnA(XNA))}function uAt(A,e){var n,r,o;if(n=e.Hh(A.a),n&&(o=Tl((!n.b&&(n.b=new ag((ut(),Qs),To,n)),n.b),Dh),o!=null)){for(r=1;r<(YB(),vkA).length;++r)if(ht(vkA[r],o))return r}return 0}function wAt(A,e){var n,r,o;if(n=e.Hh(A.a),n&&(o=Tl((!n.b&&(n.b=new ag((ut(),Qs),To,n)),n.b),Dh),o!=null)){for(r=1;r<(YB(),jkA).length;++r)if(ht(jkA[r],o))return r}return 0}function jre(A,e){var n,r,o,B;if(jt(e),B=A.a.gc(),B 0?1:0;B.a[o]!=n;)B=B.a[o],o=A.a.ue(n.d,B.d)>0?1:0;B.a[o]=r,r.b=n.b,r.a[0]=n.a[0],r.a[1]=n.a[1],n.a[0]=null,n.a[1]=null}function fAt(A){RB();var e,n;return e=sr(SQ,wA(uA(uV,1),ue,273,0,[FE])),!(jT(Jz(e,A))>1||(n=sr(WG,wA(uA(uV,1),ue,273,0,[OG,dp])),jT(Jz(n,A))>1))}function n2A(A,e){var n;n=ga((b0(),Rh),A),yA(n,498)?Ks(Rh,A,new rOA(this,e)):Ks(Rh,A,this),KsA(this,e),e==(nN(),pkA)?(this.wb=g(this,1939),g(e,1941)):this.wb=(j0(),Ht)}function IAt(A){var e,n,r;if(A==null)return null;for(e=null,n=0;n