From 7386bd847d111563531531366177c2617ee8b22c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 24 Feb 2024 18:42:48 +0000 Subject: [PATCH] Deployed b9ca555 with MkDocs version: 1.5.3 --- .nojekyll | 0 404.html | 497 ++ __pycache__/build_hooks.cpython-312.pyc | Bin 0 -> 693 bytes assets/images/favicon.png | Bin 0 -> 1870 bytes assets/javascripts/bundle.8fd75fb4.min.js | 29 + assets/javascripts/bundle.8fd75fb4.min.js.map | 7 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.el.min.js | 1 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.he.min.js | 1 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.b8dbb3d2.min.js | 42 + .../workers/search.b8dbb3d2.min.js.map | 7 + assets/stylesheets/main.7e359304.min.css | 1 + assets/stylesheets/main.7e359304.min.css.map | 1 + assets/stylesheets/palette.06af60db.min.css | 1 + .../stylesheets/palette.06af60db.min.css.map | 1 + build_hooks.py | 11 + cli/index.html | 610 ++ command/index.html | 645 ++ config/index.html | 1700 +++++ img/pb_help.png | Bin 0 -> 69113 bytes img/pb_welcome.png | Bin 0 -> 50466 bytes index.html | 540 ++ js/mermaid-10.8.0.min.js | 1759 +++++ quick_start/index.html | 904 +++ reference/index.html | 560 ++ requirements.optional.txt | 5 + requirements.txt | 10 + search/search_index.json | 1 + sitemap.xml | 87 + sitemap.xml.gz | Bin 0 -> 441 bytes zh/cli/index.html | 610 ++ zh/command/index.html | 645 ++ zh/config/index.html | 1700 +++++ zh/img/pb_help.png | Bin 0 -> 58630 bytes zh/img/pb_welcome.png | Bin 0 -> 41095 bytes zh/index.html | 540 ++ zh/quick_start/index.html | 904 +++ zh/reference/index.html | 560 ++ 69 files changed, 19578 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 __pycache__/build_hooks.cpython-312.pyc create mode 100644 assets/images/favicon.png create mode 100644 assets/javascripts/bundle.8fd75fb4.min.js create mode 100644 assets/javascripts/bundle.8fd75fb4.min.js.map create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.el.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.he.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.b8dbb3d2.min.js create mode 100644 assets/javascripts/workers/search.b8dbb3d2.min.js.map create mode 100644 assets/stylesheets/main.7e359304.min.css create mode 100644 assets/stylesheets/main.7e359304.min.css.map create mode 100644 assets/stylesheets/palette.06af60db.min.css create mode 100644 assets/stylesheets/palette.06af60db.min.css.map create mode 100644 build_hooks.py create mode 100644 cli/index.html create mode 100644 command/index.html create mode 100644 config/index.html create mode 100644 img/pb_help.png create mode 100644 img/pb_welcome.png create mode 100644 index.html create mode 100644 js/mermaid-10.8.0.min.js create mode 100644 quick_start/index.html create mode 100644 reference/index.html create mode 100644 requirements.optional.txt create mode 100644 requirements.txt create mode 100644 search/search_index.json create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz create mode 100644 zh/cli/index.html create mode 100644 zh/command/index.html create mode 100644 zh/config/index.html create mode 100644 zh/img/pb_help.png create mode 100644 zh/img/pb_welcome.png create mode 100644 zh/index.html create mode 100644 zh/quick_start/index.html create mode 100644 zh/reference/index.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..217124b --- /dev/null +++ b/404.html @@ -0,0 +1,497 @@ + + + + + + + + + + + + + + + + + + + + + + + Prime Backup 文档 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ +

404 - Not found

+ +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + \ No newline at end of file diff --git a/__pycache__/build_hooks.cpython-312.pyc b/__pycache__/build_hooks.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a9fcc6611ab2df00c186dde4d70f535c281e7baa GIT binary patch literal 693 zcmZuu&ubGw6n->wiF~bGtvvK%$0rd7j9RwQL` zT9`Yya+Dv=U;j|Jkrhwu)n9;cDcd;3*2~hf(ti8s_HcITZSf<%^;46ckqiUJV(ROJ z8Ote!!PexVmglL?Jx>^MgUKHf`dYbGW~$t{?mJ+!$}UJcv+j1OpN3?WU6MyN&E%$} q9~wgFGuU6C_|=?wwf6k!Cv$OVE@t|PJ^yC&^=6hI85$~$GyMi_+MfRa literal 0 HcmV?d00001 diff --git a/assets/images/favicon.png b/assets/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..1cf13b9f9d978896599290a74f77d5dbe7d1655c GIT binary patch literal 1870 zcmV-U2eJ5xP)Gc)JR9QMau)O=X#!i9;T z37kk-upj^(fsR36MHs_+1RCI)NNu9}lD0S{B^g8PN?Ww(5|~L#Ng*g{WsqleV}|#l zz8@ri&cTzw_h33bHI+12+kK6WN$h#n5cD8OQt`5kw6p~9H3()bUQ8OS4Q4HTQ=1Ol z_JAocz`fLbT2^{`8n~UAo=#AUOf=SOq4pYkt;XbC&f#7lb$*7=$na!mWCQ`dBQsO0 zLFBSPj*N?#u5&pf2t4XjEGH|=pPQ8xh7tpx;US5Cx_Ju;!O`ya-yF`)b%TEt5>eP1ZX~}sjjA%FJF?h7cX8=b!DZl<6%Cv z*G0uvvU+vmnpLZ2paivG-(cd*y3$hCIcsZcYOGh{$&)A6*XX&kXZd3G8m)G$Zz-LV z^GF3VAW^Mdv!)4OM8EgqRiz~*Cji;uzl2uC9^=8I84vNp;ltJ|q-*uQwGp2ma6cY7 z;`%`!9UXO@fr&Ebapfs34OmS9^u6$)bJxrucutf>`dKPKT%%*d3XlFVKunp9 zasduxjrjs>f8V=D|J=XNZp;_Zy^WgQ$9WDjgY=z@stwiEBm9u5*|34&1Na8BMjjgf3+SHcr`5~>oz1Y?SW^=K z^bTyO6>Gar#P_W2gEMwq)ot3; zREHn~U&Dp0l6YT0&k-wLwYjb?5zGK`W6S2v+K>AM(95m2C20L|3m~rN8dprPr@t)5lsk9Hu*W z?pS990s;Ez=+Rj{x7p``4>+c0G5^pYnB1^!TL=(?HLHZ+HicG{~4F1d^5Awl_2!1jICM-!9eoLhbbT^;yHcefyTAaqRcY zmuctDopPT!%k+}x%lZRKnzykr2}}XfG_ne?nRQO~?%hkzo;@RN{P6o`&mMUWBYMTe z6i8ChtjX&gXl`nvrU>jah)2iNM%JdjqoaeaU%yVn!^70x-flljp6Q5tK}5}&X8&&G zX3fpb3E(!rH=zVI_9Gjl45w@{(ITqngWFe7@9{mX;tO25Z_8 zQHEpI+FkTU#4xu>RkN>b3Tnc3UpWzPXWm#o55GKF09j^Mh~)K7{QqbO_~(@CVq! zS<8954|P8mXN2MRs86xZ&Q4EfM@JB94b=(YGuk)s&^jiSF=t3*oNK3`rD{H`yQ?d; ztE=laAUoZx5?RC8*WKOj`%LXEkgDd>&^Q4M^z`%u0rg-It=hLCVsq!Z%^6eB-OvOT zFZ28TN&cRmgU}Elrnk43)!>Z1FCPL2K$7}gwzIc48NX}#!A1BpJP?#v5wkNprhV** z?Cpalt1oH&{r!o3eSKc&ap)iz2BTn_VV`4>9M^b3;(YY}4>#ML6{~(4mH+?%07*qo IM6N<$f(jP3KmY&$ literal 0 HcmV?d00001 diff --git a/assets/javascripts/bundle.8fd75fb4.min.js b/assets/javascripts/bundle.8fd75fb4.min.js new file mode 100644 index 0000000..2f2f130 --- /dev/null +++ b/assets/javascripts/bundle.8fd75fb4.min.js @@ -0,0 +1,29 @@ +"use strict";(()=>{var _i=Object.create;var br=Object.defineProperty;var Ai=Object.getOwnPropertyDescriptor;var Ci=Object.getOwnPropertyNames,Ft=Object.getOwnPropertySymbols,ki=Object.getPrototypeOf,vr=Object.prototype.hasOwnProperty,eo=Object.prototype.propertyIsEnumerable;var Zr=(e,t,r)=>t in e?br(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,F=(e,t)=>{for(var r in t||(t={}))vr.call(t,r)&&Zr(e,r,t[r]);if(Ft)for(var r of Ft(t))eo.call(t,r)&&Zr(e,r,t[r]);return e};var to=(e,t)=>{var r={};for(var o in e)vr.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(e!=null&&Ft)for(var o of Ft(e))t.indexOf(o)<0&&eo.call(e,o)&&(r[o]=e[o]);return r};var gr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Hi=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Ci(t))!vr.call(e,n)&&n!==r&&br(e,n,{get:()=>t[n],enumerable:!(o=Ai(t,n))||o.enumerable});return e};var jt=(e,t,r)=>(r=e!=null?_i(ki(e)):{},Hi(t||!e||!e.__esModule?br(r,"default",{value:e,enumerable:!0}):r,e));var ro=(e,t,r)=>new Promise((o,n)=>{var i=c=>{try{a(r.next(c))}catch(p){n(p)}},s=c=>{try{a(r.throw(c))}catch(p){n(p)}},a=c=>c.done?o(c.value):Promise.resolve(c.value).then(i,s);a((r=r.apply(e,t)).next())});var no=gr((xr,oo)=>{(function(e,t){typeof xr=="object"&&typeof oo!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(xr,function(){"use strict";function e(r){var o=!0,n=!1,i=null,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function a(C){return!!(C&&C!==document&&C.nodeName!=="HTML"&&C.nodeName!=="BODY"&&"classList"in C&&"contains"in C.classList)}function c(C){var ct=C.type,Ne=C.tagName;return!!(Ne==="INPUT"&&s[ct]&&!C.readOnly||Ne==="TEXTAREA"&&!C.readOnly||C.isContentEditable)}function p(C){C.classList.contains("focus-visible")||(C.classList.add("focus-visible"),C.setAttribute("data-focus-visible-added",""))}function l(C){C.hasAttribute("data-focus-visible-added")&&(C.classList.remove("focus-visible"),C.removeAttribute("data-focus-visible-added"))}function f(C){C.metaKey||C.altKey||C.ctrlKey||(a(r.activeElement)&&p(r.activeElement),o=!0)}function u(C){o=!1}function h(C){a(C.target)&&(o||c(C.target))&&p(C.target)}function w(C){a(C.target)&&(C.target.classList.contains("focus-visible")||C.target.hasAttribute("data-focus-visible-added"))&&(n=!0,window.clearTimeout(i),i=window.setTimeout(function(){n=!1},100),l(C.target))}function A(C){document.visibilityState==="hidden"&&(n&&(o=!0),Z())}function Z(){document.addEventListener("mousemove",J),document.addEventListener("mousedown",J),document.addEventListener("mouseup",J),document.addEventListener("pointermove",J),document.addEventListener("pointerdown",J),document.addEventListener("pointerup",J),document.addEventListener("touchmove",J),document.addEventListener("touchstart",J),document.addEventListener("touchend",J)}function te(){document.removeEventListener("mousemove",J),document.removeEventListener("mousedown",J),document.removeEventListener("mouseup",J),document.removeEventListener("pointermove",J),document.removeEventListener("pointerdown",J),document.removeEventListener("pointerup",J),document.removeEventListener("touchmove",J),document.removeEventListener("touchstart",J),document.removeEventListener("touchend",J)}function J(C){C.target.nodeName&&C.target.nodeName.toLowerCase()==="html"||(o=!1,te())}document.addEventListener("keydown",f,!0),document.addEventListener("mousedown",u,!0),document.addEventListener("pointerdown",u,!0),document.addEventListener("touchstart",u,!0),document.addEventListener("visibilitychange",A,!0),Z(),r.addEventListener("focus",h,!0),r.addEventListener("blur",w,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var zr=gr((kt,Vr)=>{/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */(function(t,r){typeof kt=="object"&&typeof Vr=="object"?Vr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof kt=="object"?kt.ClipboardJS=r():t.ClipboardJS=r()})(kt,function(){return function(){var e={686:function(o,n,i){"use strict";i.d(n,{default:function(){return Li}});var s=i(279),a=i.n(s),c=i(370),p=i.n(c),l=i(817),f=i.n(l);function u(D){try{return document.execCommand(D)}catch(M){return!1}}var h=function(M){var O=f()(M);return u("cut"),O},w=h;function A(D){var M=document.documentElement.getAttribute("dir")==="rtl",O=document.createElement("textarea");O.style.fontSize="12pt",O.style.border="0",O.style.padding="0",O.style.margin="0",O.style.position="absolute",O.style[M?"right":"left"]="-9999px";var I=window.pageYOffset||document.documentElement.scrollTop;return O.style.top="".concat(I,"px"),O.setAttribute("readonly",""),O.value=D,O}var Z=function(M,O){var I=A(M);O.container.appendChild(I);var W=f()(I);return u("copy"),I.remove(),W},te=function(M){var O=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},I="";return typeof M=="string"?I=Z(M,O):M instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(M==null?void 0:M.type)?I=Z(M.value,O):(I=f()(M),u("copy")),I},J=te;function C(D){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?C=function(O){return typeof O}:C=function(O){return O&&typeof Symbol=="function"&&O.constructor===Symbol&&O!==Symbol.prototype?"symbol":typeof O},C(D)}var ct=function(){var M=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},O=M.action,I=O===void 0?"copy":O,W=M.container,K=M.target,Ce=M.text;if(I!=="copy"&&I!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(K!==void 0)if(K&&C(K)==="object"&&K.nodeType===1){if(I==="copy"&&K.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(I==="cut"&&(K.hasAttribute("readonly")||K.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(Ce)return J(Ce,{container:W});if(K)return I==="cut"?w(K):J(K,{container:W})},Ne=ct;function Pe(D){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Pe=function(O){return typeof O}:Pe=function(O){return O&&typeof Symbol=="function"&&O.constructor===Symbol&&O!==Symbol.prototype?"symbol":typeof O},Pe(D)}function xi(D,M){if(!(D instanceof M))throw new TypeError("Cannot call a class as a function")}function Xr(D,M){for(var O=0;O0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof W.action=="function"?W.action:this.defaultAction,this.target=typeof W.target=="function"?W.target:this.defaultTarget,this.text=typeof W.text=="function"?W.text:this.defaultText,this.container=Pe(W.container)==="object"?W.container:document.body}},{key:"listenClick",value:function(W){var K=this;this.listener=p()(W,"click",function(Ce){return K.onClick(Ce)})}},{key:"onClick",value:function(W){var K=W.delegateTarget||W.currentTarget,Ce=this.action(K)||"copy",It=Ne({action:Ce,container:this.container,target:this.target(K),text:this.text(K)});this.emit(It?"success":"error",{action:Ce,text:It,trigger:K,clearSelection:function(){K&&K.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(W){return hr("action",W)}},{key:"defaultTarget",value:function(W){var K=hr("target",W);if(K)return document.querySelector(K)}},{key:"defaultText",value:function(W){return hr("text",W)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(W){var K=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return J(W,K)}},{key:"cut",value:function(W){return w(W)}},{key:"isSupported",value:function(){var W=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],K=typeof W=="string"?[W]:W,Ce=!!document.queryCommandSupported;return K.forEach(function(It){Ce=Ce&&!!document.queryCommandSupported(It)}),Ce}}]),O}(a()),Li=Mi},828:function(o){var n=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function s(a,c){for(;a&&a.nodeType!==n;){if(typeof a.matches=="function"&&a.matches(c))return a;a=a.parentNode}}o.exports=s},438:function(o,n,i){var s=i(828);function a(l,f,u,h,w){var A=p.apply(this,arguments);return l.addEventListener(u,A,w),{destroy:function(){l.removeEventListener(u,A,w)}}}function c(l,f,u,h,w){return typeof l.addEventListener=="function"?a.apply(null,arguments):typeof u=="function"?a.bind(null,document).apply(null,arguments):(typeof l=="string"&&(l=document.querySelectorAll(l)),Array.prototype.map.call(l,function(A){return a(A,f,u,h,w)}))}function p(l,f,u,h){return function(w){w.delegateTarget=s(w.target,f),w.delegateTarget&&h.call(l,w)}}o.exports=c},879:function(o,n){n.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},n.nodeList=function(i){var s=Object.prototype.toString.call(i);return i!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in i&&(i.length===0||n.node(i[0]))},n.string=function(i){return typeof i=="string"||i instanceof String},n.fn=function(i){var s=Object.prototype.toString.call(i);return s==="[object Function]"}},370:function(o,n,i){var s=i(879),a=i(438);function c(u,h,w){if(!u&&!h&&!w)throw new Error("Missing required arguments");if(!s.string(h))throw new TypeError("Second argument must be a String");if(!s.fn(w))throw new TypeError("Third argument must be a Function");if(s.node(u))return p(u,h,w);if(s.nodeList(u))return l(u,h,w);if(s.string(u))return f(u,h,w);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function p(u,h,w){return u.addEventListener(h,w),{destroy:function(){u.removeEventListener(h,w)}}}function l(u,h,w){return Array.prototype.forEach.call(u,function(A){A.addEventListener(h,w)}),{destroy:function(){Array.prototype.forEach.call(u,function(A){A.removeEventListener(h,w)})}}}function f(u,h,w){return a(document.body,u,h,w)}o.exports=c},817:function(o){function n(i){var s;if(i.nodeName==="SELECT")i.focus(),s=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var a=i.hasAttribute("readonly");a||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),a||i.removeAttribute("readonly"),s=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var c=window.getSelection(),p=document.createRange();p.selectNodeContents(i),c.removeAllRanges(),c.addRange(p),s=c.toString()}return s}o.exports=n},279:function(o){function n(){}n.prototype={on:function(i,s,a){var c=this.e||(this.e={});return(c[i]||(c[i]=[])).push({fn:s,ctx:a}),this},once:function(i,s,a){var c=this;function p(){c.off(i,p),s.apply(a,arguments)}return p._=s,this.on(i,p,a)},emit:function(i){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[i]||[]).slice(),c=0,p=a.length;for(c;c{"use strict";/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var Va=/["'&<>]/;qn.exports=za;function za(e){var t=""+e,r=Va.exec(t);if(!r)return t;var o,n="",i=0,s=0;for(i=r.index;i0&&i[i.length-1])&&(p[0]===6||p[0]===2)){r=0;continue}if(p[0]===3&&(!i||p[1]>i[0]&&p[1]=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function V(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var o=r.call(e),n,i=[],s;try{for(;(t===void 0||t-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(a){s={error:a}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(s)throw s.error}}return i}function z(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,i;o1||a(u,h)})})}function a(u,h){try{c(o[u](h))}catch(w){f(i[0][3],w)}}function c(u){u.value instanceof ot?Promise.resolve(u.value.v).then(p,l):f(i[0][2],u)}function p(u){a("next",u)}function l(u){a("throw",u)}function f(u,h){u(h),i.shift(),i.length&&a(i[0][0],i[0][1])}}function so(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof ue=="function"?ue(e):e[Symbol.iterator](),r={},o("next"),o("throw"),o("return"),r[Symbol.asyncIterator]=function(){return this},r);function o(i){r[i]=e[i]&&function(s){return new Promise(function(a,c){s=e[i](s),n(a,c,s.done,s.value)})}}function n(i,s,a,c){Promise.resolve(c).then(function(p){i({value:p,done:a})},s)}}function k(e){return typeof e=="function"}function pt(e){var t=function(o){Error.call(o),o.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var Wt=pt(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(o,n){return n+1+") "+o.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function Ve(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Ie=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,o,n,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=ue(s),c=a.next();!c.done;c=a.next()){var p=c.value;p.remove(this)}}catch(A){t={error:A}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var l=this.initialTeardown;if(k(l))try{l()}catch(A){i=A instanceof Wt?A.errors:[A]}var f=this._finalizers;if(f){this._finalizers=null;try{for(var u=ue(f),h=u.next();!h.done;h=u.next()){var w=h.value;try{co(w)}catch(A){i=i!=null?i:[],A instanceof Wt?i=z(z([],V(i)),V(A.errors)):i.push(A)}}}catch(A){o={error:A}}finally{try{h&&!h.done&&(n=u.return)&&n.call(u)}finally{if(o)throw o.error}}}if(i)throw new Wt(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)co(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Ve(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Ve(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var Er=Ie.EMPTY;function Dt(e){return e instanceof Ie||e&&"closed"in e&&k(e.remove)&&k(e.add)&&k(e.unsubscribe)}function co(e){k(e)?e():e.unsubscribe()}var ke={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var lt={setTimeout:function(e,t){for(var r=[],o=2;o0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var o=this,n=this,i=n.hasError,s=n.isStopped,a=n.observers;return i||s?Er:(this.currentObservers=null,a.push(r),new Ie(function(){o.currentObservers=null,Ve(a,r)}))},t.prototype._checkFinalizedStatuses=function(r){var o=this,n=o.hasError,i=o.thrownError,s=o.isStopped;n?r.error(i):s&&r.complete()},t.prototype.asObservable=function(){var r=new j;return r.source=this,r},t.create=function(r,o){return new vo(r,o)},t}(j);var vo=function(e){se(t,e);function t(r,o){var n=e.call(this)||this;return n.destination=r,n.source=o,n}return t.prototype.next=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.next)===null||n===void 0||n.call(o,r)},t.prototype.error=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.error)===null||n===void 0||n.call(o,r)},t.prototype.complete=function(){var r,o;(o=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||o===void 0||o.call(r)},t.prototype._subscribe=function(r){var o,n;return(n=(o=this.source)===null||o===void 0?void 0:o.subscribe(r))!==null&&n!==void 0?n:Er},t}(v);var St={now:function(){return(St.delegate||Date).now()},delegate:void 0};var Ot=function(e){se(t,e);function t(r,o,n){r===void 0&&(r=1/0),o===void 0&&(o=1/0),n===void 0&&(n=St);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=o,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=o===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,o),i}return t.prototype.next=function(r){var o=this,n=o.isStopped,i=o._buffer,s=o._infiniteTimeWindow,a=o._timestampProvider,c=o._windowTime;n||(i.push(r),!s&&i.push(a.now()+c)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var o=this._innerSubscribe(r),n=this,i=n._infiniteTimeWindow,s=n._buffer,a=s.slice(),c=0;c0?e.prototype.requestAsyncId.call(this,r,o,n):(r.actions.push(this),r._scheduled||(r._scheduled=ut.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,o,n){var i;if(n===void 0&&(n=0),n!=null?n>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,o,n);var s=r.actions;o!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==o&&(ut.cancelAnimationFrame(o),r._scheduled=void 0)},t}(zt);var yo=function(e){se(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var o=this._scheduled;this._scheduled=void 0;var n=this.actions,i;r=r||n.shift();do if(i=r.execute(r.state,r.delay))break;while((r=n[0])&&r.id===o&&n.shift());if(this._active=!1,i){for(;(r=n[0])&&r.id===o&&n.shift();)r.unsubscribe();throw i}},t}(qt);var de=new yo(xo);var L=new j(function(e){return e.complete()});function Kt(e){return e&&k(e.schedule)}function _r(e){return e[e.length-1]}function Je(e){return k(_r(e))?e.pop():void 0}function Ae(e){return Kt(_r(e))?e.pop():void 0}function Qt(e,t){return typeof _r(e)=="number"?e.pop():t}var dt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Yt(e){return k(e==null?void 0:e.then)}function Bt(e){return k(e[ft])}function Gt(e){return Symbol.asyncIterator&&k(e==null?void 0:e[Symbol.asyncIterator])}function Jt(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function Di(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Xt=Di();function Zt(e){return k(e==null?void 0:e[Xt])}function er(e){return ao(this,arguments,function(){var r,o,n,i;return Ut(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,ot(r.read())];case 3:return o=s.sent(),n=o.value,i=o.done,i?[4,ot(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,ot(n)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function tr(e){return k(e==null?void 0:e.getReader)}function N(e){if(e instanceof j)return e;if(e!=null){if(Bt(e))return Ni(e);if(dt(e))return Vi(e);if(Yt(e))return zi(e);if(Gt(e))return Eo(e);if(Zt(e))return qi(e);if(tr(e))return Ki(e)}throw Jt(e)}function Ni(e){return new j(function(t){var r=e[ft]();if(k(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function Vi(e){return new j(function(t){for(var r=0;r=2;return function(o){return o.pipe(e?g(function(n,i){return e(n,i,o)}):ce,ye(1),r?Qe(t):jo(function(){return new or}))}}function $r(e){return e<=0?function(){return L}:x(function(t,r){var o=[];t.subscribe(S(r,function(n){o.push(n),e=2,!0))}function le(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new v}:t,o=e.resetOnError,n=o===void 0?!0:o,i=e.resetOnComplete,s=i===void 0?!0:i,a=e.resetOnRefCountZero,c=a===void 0?!0:a;return function(p){var l,f,u,h=0,w=!1,A=!1,Z=function(){f==null||f.unsubscribe(),f=void 0},te=function(){Z(),l=u=void 0,w=A=!1},J=function(){var C=l;te(),C==null||C.unsubscribe()};return x(function(C,ct){h++,!A&&!w&&Z();var Ne=u=u!=null?u:r();ct.add(function(){h--,h===0&&!A&&!w&&(f=Pr(J,c))}),Ne.subscribe(ct),!l&&h>0&&(l=new it({next:function(Pe){return Ne.next(Pe)},error:function(Pe){A=!0,Z(),f=Pr(te,n,Pe),Ne.error(Pe)},complete:function(){w=!0,Z(),f=Pr(te,s),Ne.complete()}}),N(C).subscribe(l))})(p)}}function Pr(e,t){for(var r=[],o=2;oe.next(document)),e}function R(e,t=document){return Array.from(t.querySelectorAll(e))}function P(e,t=document){let r=me(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function me(e,t=document){return t.querySelector(e)||void 0}function Re(){var e,t,r,o;return(o=(r=(t=(e=document.activeElement)==null?void 0:e.shadowRoot)==null?void 0:t.activeElement)!=null?r:document.activeElement)!=null?o:void 0}var la=T(d(document.body,"focusin"),d(document.body,"focusout")).pipe(be(1),q(void 0),m(()=>Re()||document.body),B(1));function vt(e){return la.pipe(m(t=>e.contains(t)),Y())}function Vo(e,t){return T(d(e,"mouseenter").pipe(m(()=>!0)),d(e,"mouseleave").pipe(m(()=>!1))).pipe(t?be(t):ce,q(!1))}function Ue(e){return{x:e.offsetLeft,y:e.offsetTop}}function zo(e){return T(d(window,"load"),d(window,"resize")).pipe(Me(0,de),m(()=>Ue(e)),q(Ue(e)))}function ir(e){return{x:e.scrollLeft,y:e.scrollTop}}function et(e){return T(d(e,"scroll"),d(window,"resize")).pipe(Me(0,de),m(()=>ir(e)),q(ir(e)))}function qo(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)qo(e,r)}function E(e,t,...r){let o=document.createElement(e);if(t)for(let n of Object.keys(t))typeof t[n]!="undefined"&&(typeof t[n]!="boolean"?o.setAttribute(n,t[n]):o.setAttribute(n,""));for(let n of r)qo(o,n);return o}function ar(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function gt(e){let t=E("script",{src:e});return H(()=>(document.head.appendChild(t),T(d(t,"load"),d(t,"error").pipe(b(()=>Ar(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(m(()=>{}),_(()=>document.head.removeChild(t)),ye(1))))}var Ko=new v,ma=H(()=>typeof ResizeObserver=="undefined"?gt("https://unpkg.com/resize-observer-polyfill"):$(void 0)).pipe(m(()=>new ResizeObserver(e=>{for(let t of e)Ko.next(t)})),b(e=>T(qe,$(e)).pipe(_(()=>e.disconnect()))),B(1));function pe(e){return{width:e.offsetWidth,height:e.offsetHeight}}function Ee(e){return ma.pipe(y(t=>t.observe(e)),b(t=>Ko.pipe(g(({target:r})=>r===e),_(()=>t.unobserve(e)),m(()=>pe(e)))),q(pe(e)))}function xt(e){return{width:e.scrollWidth,height:e.scrollHeight}}function sr(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}var Qo=new v,fa=H(()=>$(new IntersectionObserver(e=>{for(let t of e)Qo.next(t)},{threshold:0}))).pipe(b(e=>T(qe,$(e)).pipe(_(()=>e.disconnect()))),B(1));function yt(e){return fa.pipe(y(t=>t.observe(e)),b(t=>Qo.pipe(g(({target:r})=>r===e),_(()=>t.unobserve(e)),m(({isIntersecting:r})=>r))))}function Yo(e,t=16){return et(e).pipe(m(({y:r})=>{let o=pe(e),n=xt(e);return r>=n.height-o.height-t}),Y())}var cr={drawer:P("[data-md-toggle=drawer]"),search:P("[data-md-toggle=search]")};function Bo(e){return cr[e].checked}function Be(e,t){cr[e].checked!==t&&cr[e].click()}function We(e){let t=cr[e];return d(t,"change").pipe(m(()=>t.checked),q(t.checked))}function ua(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function da(){return T(d(window,"compositionstart").pipe(m(()=>!0)),d(window,"compositionend").pipe(m(()=>!1))).pipe(q(!1))}function Go(){let e=d(window,"keydown").pipe(g(t=>!(t.metaKey||t.ctrlKey)),m(t=>({mode:Bo("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),g(({mode:t,type:r})=>{if(t==="global"){let o=Re();if(typeof o!="undefined")return!ua(o,r)}return!0}),le());return da().pipe(b(t=>t?L:e))}function ve(){return new URL(location.href)}function st(e,t=!1){if(G("navigation.instant")&&!t){let r=E("a",{href:e.href});document.body.appendChild(r),r.click(),r.remove()}else location.href=e.href}function Jo(){return new v}function Xo(){return location.hash.slice(1)}function Zo(e){let t=E("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function ha(e){return T(d(window,"hashchange"),e).pipe(m(Xo),q(Xo()),g(t=>t.length>0),B(1))}function en(e){return ha(e).pipe(m(t=>me(`[id="${t}"]`)),g(t=>typeof t!="undefined"))}function At(e){let t=matchMedia(e);return nr(r=>t.addListener(()=>r(t.matches))).pipe(q(t.matches))}function tn(){let e=matchMedia("print");return T(d(window,"beforeprint").pipe(m(()=>!0)),d(window,"afterprint").pipe(m(()=>!1))).pipe(q(e.matches))}function Ur(e,t){return e.pipe(b(r=>r?t():L))}function Wr(e,t){return new j(r=>{let o=new XMLHttpRequest;return o.open("GET",`${e}`),o.responseType="blob",o.addEventListener("load",()=>{o.status>=200&&o.status<300?(r.next(o.response),r.complete()):r.error(new Error(o.statusText))}),o.addEventListener("error",()=>{r.error(new Error("Network error"))}),o.addEventListener("abort",()=>{r.complete()}),typeof(t==null?void 0:t.progress$)!="undefined"&&(o.addEventListener("progress",n=>{var i;if(n.lengthComputable)t.progress$.next(n.loaded/n.total*100);else{let s=(i=o.getResponseHeader("Content-Length"))!=null?i:0;t.progress$.next(n.loaded/+s*100)}}),t.progress$.next(5)),o.send(),()=>o.abort()})}function De(e,t){return Wr(e,t).pipe(b(r=>r.text()),m(r=>JSON.parse(r)),B(1))}function rn(e,t){let r=new DOMParser;return Wr(e,t).pipe(b(o=>o.text()),m(o=>r.parseFromString(o,"text/html")),B(1))}function on(e,t){let r=new DOMParser;return Wr(e,t).pipe(b(o=>o.text()),m(o=>r.parseFromString(o,"text/xml")),B(1))}function nn(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function an(){return T(d(window,"scroll",{passive:!0}),d(window,"resize",{passive:!0})).pipe(m(nn),q(nn()))}function sn(){return{width:innerWidth,height:innerHeight}}function cn(){return d(window,"resize",{passive:!0}).pipe(m(sn),q(sn()))}function pn(){return Q([an(),cn()]).pipe(m(([e,t])=>({offset:e,size:t})),B(1))}function pr(e,{viewport$:t,header$:r}){let o=t.pipe(X("size")),n=Q([o,r]).pipe(m(()=>Ue(e)));return Q([r,t,n]).pipe(m(([{height:i},{offset:s,size:a},{x:c,y:p}])=>({offset:{x:s.x-c,y:s.y-p+i},size:a})))}function ba(e){return d(e,"message",t=>t.data)}function va(e){let t=new v;return t.subscribe(r=>e.postMessage(r)),t}function ln(e,t=new Worker(e)){let r=ba(t),o=va(t),n=new v;n.subscribe(o);let i=o.pipe(ee(),oe(!0));return n.pipe(ee(),$e(r.pipe(U(i))),le())}var ga=P("#__config"),Et=JSON.parse(ga.textContent);Et.base=`${new URL(Et.base,ve())}`;function we(){return Et}function G(e){return Et.features.includes(e)}function ge(e,t){return typeof t!="undefined"?Et.translations[e].replace("#",t.toString()):Et.translations[e]}function Te(e,t=document){return P(`[data-md-component=${e}]`,t)}function ne(e,t=document){return R(`[data-md-component=${e}]`,t)}function xa(e){let t=P(".md-typeset > :first-child",e);return d(t,"click",{once:!0}).pipe(m(()=>P(".md-typeset",e)),m(r=>({hash:__md_hash(r.innerHTML)})))}function mn(e){if(!G("announce.dismiss")||!e.childElementCount)return L;if(!e.hidden){let t=P(".md-typeset",e);__md_hash(t.innerHTML)===__md_get("__announce")&&(e.hidden=!0)}return H(()=>{let t=new v;return t.subscribe(({hash:r})=>{e.hidden=!0,__md_set("__announce",r)}),xa(e).pipe(y(r=>t.next(r)),_(()=>t.complete()),m(r=>F({ref:e},r)))})}function ya(e,{target$:t}){return t.pipe(m(r=>({hidden:r!==e})))}function fn(e,t){let r=new v;return r.subscribe(({hidden:o})=>{e.hidden=o}),ya(e,t).pipe(y(o=>r.next(o)),_(()=>r.complete()),m(o=>F({ref:e},o)))}function Ct(e,t){return t==="inline"?E("div",{class:"md-tooltip md-tooltip--inline",id:e,role:"tooltip"},E("div",{class:"md-tooltip__inner md-typeset"})):E("div",{class:"md-tooltip",id:e,role:"tooltip"},E("div",{class:"md-tooltip__inner md-typeset"}))}function un(e,t){if(t=t?`${t}_annotation_${e}`:void 0,t){let r=t?`#${t}`:void 0;return E("aside",{class:"md-annotation",tabIndex:0},Ct(t),E("a",{href:r,class:"md-annotation__index",tabIndex:-1},E("span",{"data-md-annotation-id":e})))}else return E("aside",{class:"md-annotation",tabIndex:0},Ct(t),E("span",{class:"md-annotation__index",tabIndex:-1},E("span",{"data-md-annotation-id":e})))}function dn(e){return E("button",{class:"md-clipboard md-icon",title:ge("clipboard.copy"),"data-clipboard-target":`#${e} > code`})}function Dr(e,t){let r=t&2,o=t&1,n=Object.keys(e.terms).filter(c=>!e.terms[c]).reduce((c,p)=>[...c,E("del",null,p)," "],[]).slice(0,-1),i=we(),s=new URL(e.location,i.base);G("search.highlight")&&s.searchParams.set("h",Object.entries(e.terms).filter(([,c])=>c).reduce((c,[p])=>`${c} ${p}`.trim(),""));let{tags:a}=we();return E("a",{href:`${s}`,class:"md-search-result__link",tabIndex:-1},E("article",{class:"md-search-result__article md-typeset","data-md-score":e.score.toFixed(2)},r>0&&E("div",{class:"md-search-result__icon md-icon"}),r>0&&E("h1",null,e.title),r<=0&&E("h2",null,e.title),o>0&&e.text.length>0&&e.text,e.tags&&e.tags.map(c=>{let p=a?c in a?`md-tag-icon md-tag--${a[c]}`:"md-tag-icon":"";return E("span",{class:`md-tag ${p}`},c)}),o>0&&n.length>0&&E("p",{class:"md-search-result__terms"},ge("search.result.term.missing"),": ",...n)))}function hn(e){let t=e[0].score,r=[...e],o=we(),n=r.findIndex(l=>!`${new URL(l.location,o.base)}`.includes("#")),[i]=r.splice(n,1),s=r.findIndex(l=>l.scoreDr(l,1)),...c.length?[E("details",{class:"md-search-result__more"},E("summary",{tabIndex:-1},E("div",null,c.length>0&&c.length===1?ge("search.result.more.one"):ge("search.result.more.other",c.length))),...c.map(l=>Dr(l,1)))]:[]];return E("li",{class:"md-search-result__item"},p)}function bn(e){return E("ul",{class:"md-source__facts"},Object.entries(e).map(([t,r])=>E("li",{class:`md-source__fact md-source__fact--${t}`},typeof r=="number"?ar(r):r)))}function Nr(e){let t=`tabbed-control tabbed-control--${e}`;return E("div",{class:t,hidden:!0},E("button",{class:"tabbed-button",tabIndex:-1,"aria-hidden":"true"}))}function vn(e){return E("div",{class:"md-typeset__scrollwrap"},E("div",{class:"md-typeset__table"},e))}function Ea(e){let t=we(),r=new URL(`../${e.version}/`,t.base);return E("li",{class:"md-version__item"},E("a",{href:`${r}`,class:"md-version__link"},e.title))}function gn(e,t){return E("div",{class:"md-version"},E("button",{class:"md-version__current","aria-label":ge("select.version")},t.title),E("ul",{class:"md-version__list"},e.map(Ea)))}var wa=0;function Ta(e,t){document.body.append(e);let{width:r}=pe(e);e.style.setProperty("--md-tooltip-width",`${r}px`),e.remove();let o=sr(t),n=typeof o!="undefined"?et(o):$({x:0,y:0}),i=T(vt(t),Vo(t)).pipe(Y());return Q([i,n]).pipe(m(([s,a])=>{let{x:c,y:p}=Ue(t),l=pe(t),f=t.closest("table");return f&&t.parentElement&&(c+=f.offsetLeft+t.parentElement.offsetLeft,p+=f.offsetTop+t.parentElement.offsetTop),{active:s,offset:{x:c-a.x+l.width/2-r/2,y:p-a.y+l.height+8}}}))}function Ge(e){let t=e.title;if(!t.length)return L;let r=`__tooltip_${wa++}`,o=Ct(r,"inline"),n=P(".md-typeset",o);return n.innerHTML=t,H(()=>{let i=new v;return i.subscribe({next({offset:s}){o.style.setProperty("--md-tooltip-x",`${s.x}px`),o.style.setProperty("--md-tooltip-y",`${s.y}px`)},complete(){o.style.removeProperty("--md-tooltip-x"),o.style.removeProperty("--md-tooltip-y")}}),T(i.pipe(g(({active:s})=>s)),i.pipe(be(250),g(({active:s})=>!s))).subscribe({next({active:s}){s?(e.insertAdjacentElement("afterend",o),e.setAttribute("aria-describedby",r),e.removeAttribute("title")):(o.remove(),e.removeAttribute("aria-describedby"),e.setAttribute("title",t))},complete(){o.remove(),e.removeAttribute("aria-describedby"),e.setAttribute("title",t)}}),i.pipe(Me(16,de)).subscribe(({active:s})=>{o.classList.toggle("md-tooltip--active",s)}),i.pipe(_t(125,de),g(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:s})=>s)).subscribe({next(s){s?o.style.setProperty("--md-tooltip-0",`${-s}px`):o.style.removeProperty("--md-tooltip-0")},complete(){o.style.removeProperty("--md-tooltip-0")}}),Ta(o,e).pipe(y(s=>i.next(s)),_(()=>i.complete()),m(s=>F({ref:e},s)))}).pipe(ze(ie))}function Sa(e,t){let r=H(()=>Q([zo(e),et(t)])).pipe(m(([{x:o,y:n},i])=>{let{width:s,height:a}=pe(e);return{x:o-i.x+s/2,y:n-i.y+a/2}}));return vt(e).pipe(b(o=>r.pipe(m(n=>({active:o,offset:n})),ye(+!o||1/0))))}function xn(e,t,{target$:r}){let[o,n]=Array.from(e.children);return H(()=>{let i=new v,s=i.pipe(ee(),oe(!0));return i.subscribe({next({offset:a}){e.style.setProperty("--md-tooltip-x",`${a.x}px`),e.style.setProperty("--md-tooltip-y",`${a.y}px`)},complete(){e.style.removeProperty("--md-tooltip-x"),e.style.removeProperty("--md-tooltip-y")}}),yt(e).pipe(U(s)).subscribe(a=>{e.toggleAttribute("data-md-visible",a)}),T(i.pipe(g(({active:a})=>a)),i.pipe(be(250),g(({active:a})=>!a))).subscribe({next({active:a}){a?e.prepend(o):o.remove()},complete(){e.prepend(o)}}),i.pipe(Me(16,de)).subscribe(({active:a})=>{o.classList.toggle("md-tooltip--active",a)}),i.pipe(_t(125,de),g(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:a})=>a)).subscribe({next(a){a?e.style.setProperty("--md-tooltip-0",`${-a}px`):e.style.removeProperty("--md-tooltip-0")},complete(){e.style.removeProperty("--md-tooltip-0")}}),d(n,"click").pipe(U(s),g(a=>!(a.metaKey||a.ctrlKey))).subscribe(a=>{a.stopPropagation(),a.preventDefault()}),d(n,"mousedown").pipe(U(s),ae(i)).subscribe(([a,{active:c}])=>{var p;if(a.button!==0||a.metaKey||a.ctrlKey)a.preventDefault();else if(c){a.preventDefault();let l=e.parentElement.closest(".md-annotation");l instanceof HTMLElement?l.focus():(p=Re())==null||p.blur()}}),r.pipe(U(s),g(a=>a===o),Ye(125)).subscribe(()=>e.focus()),Sa(e,t).pipe(y(a=>i.next(a)),_(()=>i.complete()),m(a=>F({ref:e},a)))})}function Oa(e){return e.tagName==="CODE"?R(".c, .c1, .cm",e):[e]}function Ma(e){let t=[];for(let r of Oa(e)){let o=[],n=document.createNodeIterator(r,NodeFilter.SHOW_TEXT);for(let i=n.nextNode();i;i=n.nextNode())o.push(i);for(let i of o){let s;for(;s=/(\(\d+\))(!)?/.exec(i.textContent);){let[,a,c]=s;if(typeof c=="undefined"){let p=i.splitText(s.index);i=p.splitText(a.length),t.push(p)}else{i.textContent=a,t.push(i);break}}}}return t}function yn(e,t){t.append(...Array.from(e.childNodes))}function lr(e,t,{target$:r,print$:o}){let n=t.closest("[id]"),i=n==null?void 0:n.id,s=new Map;for(let a of Ma(t)){let[,c]=a.textContent.match(/\((\d+)\)/);me(`:scope > li:nth-child(${c})`,e)&&(s.set(c,un(c,i)),a.replaceWith(s.get(c)))}return s.size===0?L:H(()=>{let a=new v,c=a.pipe(ee(),oe(!0)),p=[];for(let[l,f]of s)p.push([P(".md-typeset",f),P(`:scope > li:nth-child(${l})`,e)]);return o.pipe(U(c)).subscribe(l=>{e.hidden=!l,e.classList.toggle("md-annotation-list",l);for(let[f,u]of p)l?yn(f,u):yn(u,f)}),T(...[...s].map(([,l])=>xn(l,t,{target$:r}))).pipe(_(()=>a.complete()),le())})}function En(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return En(t)}}function wn(e,t){return H(()=>{let r=En(e);return typeof r!="undefined"?lr(r,e,t):L})}var Tn=jt(zr());var La=0;function Sn(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return Sn(t)}}function _a(e){return Ee(e).pipe(m(({width:t})=>({scrollable:xt(e).width>t})),X("scrollable"))}function On(e,t){let{matches:r}=matchMedia("(hover)"),o=H(()=>{let n=new v,i=n.pipe($r(1));n.subscribe(({scrollable:c})=>{c&&r?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")});let s=[];if(Tn.default.isSupported()&&(e.closest(".copy")||G("content.code.copy")&&!e.closest(".no-copy"))){let c=e.closest("pre");c.id=`__code_${La++}`;let p=dn(c.id);c.insertBefore(p,e),G("content.tooltips")&&s.push(Ge(p))}let a=e.closest(".highlight");if(a instanceof HTMLElement){let c=Sn(a);if(typeof c!="undefined"&&(a.classList.contains("annotate")||G("content.code.annotate"))){let p=lr(c,e,t);s.push(Ee(a).pipe(U(i),m(({width:l,height:f})=>l&&f),Y(),b(l=>l?p:L)))}}return _a(e).pipe(y(c=>n.next(c)),_(()=>n.complete()),m(c=>F({ref:e},c)),$e(...s))});return G("content.lazy")?yt(e).pipe(g(n=>n),ye(1),b(()=>o)):o}function Aa(e,{target$:t,print$:r}){let o=!0;return T(t.pipe(m(n=>n.closest("details:not([open])")),g(n=>e===n),m(()=>({action:"open",reveal:!0}))),r.pipe(g(n=>n||!o),y(()=>o=e.open),m(n=>({action:n?"open":"close"}))))}function Mn(e,t){return H(()=>{let r=new v;return r.subscribe(({action:o,reveal:n})=>{e.toggleAttribute("open",o==="open"),n&&e.scrollIntoView()}),Aa(e,t).pipe(y(o=>r.next(o)),_(()=>r.complete()),m(o=>F({ref:e},o)))})}var Ln=".node circle,.node ellipse,.node path,.node polygon,.node rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}marker{fill:var(--md-mermaid-edge-color)!important}.edgeLabel .label rect{fill:#0000}.label{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.label foreignObject{line-height:normal;overflow:visible}.label div .edgeLabel{color:var(--md-mermaid-label-fg-color)}.edgeLabel,.edgeLabel rect,.label div .edgeLabel{background-color:var(--md-mermaid-label-bg-color)}.edgeLabel,.edgeLabel rect{fill:var(--md-mermaid-label-bg-color);color:var(--md-mermaid-edge-color)}.edgePath .path,.flowchart-link{stroke:var(--md-mermaid-edge-color);stroke-width:.05rem}.edgePath .arrowheadPath{fill:var(--md-mermaid-edge-color);stroke:none}.cluster rect{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}.cluster span{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}g #flowchart-circleEnd,g #flowchart-circleStart,g #flowchart-crossEnd,g #flowchart-crossStart,g #flowchart-pointEnd,g #flowchart-pointStart{stroke:none}g.classGroup line,g.classGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.classGroup text{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.classLabel .box{fill:var(--md-mermaid-label-bg-color);background-color:var(--md-mermaid-label-bg-color);opacity:1}.classLabel .label{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.node .divider{stroke:var(--md-mermaid-node-fg-color)}.relation{stroke:var(--md-mermaid-edge-color)}.cardinality{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.cardinality text{fill:inherit!important}defs #classDiagram-compositionEnd,defs #classDiagram-compositionStart,defs #classDiagram-dependencyEnd,defs #classDiagram-dependencyStart,defs #classDiagram-extensionEnd,defs #classDiagram-extensionStart{fill:var(--md-mermaid-edge-color)!important;stroke:var(--md-mermaid-edge-color)!important}defs #classDiagram-aggregationEnd,defs #classDiagram-aggregationStart{fill:var(--md-mermaid-label-bg-color)!important;stroke:var(--md-mermaid-edge-color)!important}g.stateGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.stateGroup .state-title{fill:var(--md-mermaid-label-fg-color)!important;font-family:var(--md-mermaid-font-family)}g.stateGroup .composit{fill:var(--md-mermaid-label-bg-color)}.nodeLabel,.nodeLabel p{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.node circle.state-end,.node circle.state-start,.start-state{fill:var(--md-mermaid-edge-color);stroke:none}.end-state-inner,.end-state-outer{fill:var(--md-mermaid-edge-color)}.end-state-inner,.node circle.state-end{stroke:var(--md-mermaid-label-bg-color)}.transition{stroke:var(--md-mermaid-edge-color)}[id^=state-fork] rect,[id^=state-join] rect{fill:var(--md-mermaid-edge-color)!important;stroke:none!important}.statediagram-cluster.statediagram-cluster .inner{fill:var(--md-default-bg-color)}.statediagram-cluster rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.statediagram-state rect.divider{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}defs #statediagram-barbEnd{stroke:var(--md-mermaid-edge-color)}.attributeBoxEven,.attributeBoxOdd{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityBox{fill:var(--md-mermaid-label-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityLabel{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.relationshipLabelBox{fill:var(--md-mermaid-label-bg-color);fill-opacity:1;background-color:var(--md-mermaid-label-bg-color);opacity:1}.relationshipLabel{fill:var(--md-mermaid-label-fg-color)}.relationshipLine{stroke:var(--md-mermaid-edge-color)}defs #ONE_OR_MORE_END *,defs #ONE_OR_MORE_START *,defs #ONLY_ONE_END *,defs #ONLY_ONE_START *,defs #ZERO_OR_MORE_END *,defs #ZERO_OR_MORE_START *,defs #ZERO_OR_ONE_END *,defs #ZERO_OR_ONE_START *{stroke:var(--md-mermaid-edge-color)!important}defs #ZERO_OR_MORE_END circle,defs #ZERO_OR_MORE_START circle{fill:var(--md-mermaid-label-bg-color)}.actor{fill:var(--md-mermaid-sequence-actor-bg-color);stroke:var(--md-mermaid-sequence-actor-border-color)}text.actor>tspan{fill:var(--md-mermaid-sequence-actor-fg-color);font-family:var(--md-mermaid-font-family)}line{stroke:var(--md-mermaid-sequence-actor-line-color)}.actor-man circle,.actor-man line{fill:var(--md-mermaid-sequence-actorman-bg-color);stroke:var(--md-mermaid-sequence-actorman-line-color)}.messageLine0,.messageLine1{stroke:var(--md-mermaid-sequence-message-line-color)}.note{fill:var(--md-mermaid-sequence-note-bg-color);stroke:var(--md-mermaid-sequence-note-border-color)}.loopText,.loopText>tspan,.messageText,.noteText>tspan{stroke:none;font-family:var(--md-mermaid-font-family)!important}.messageText{fill:var(--md-mermaid-sequence-message-fg-color)}.loopText,.loopText>tspan{fill:var(--md-mermaid-sequence-loop-fg-color)}.noteText>tspan{fill:var(--md-mermaid-sequence-note-fg-color)}#arrowhead path{fill:var(--md-mermaid-sequence-message-line-color);stroke:none}.loopLine{fill:var(--md-mermaid-sequence-loop-bg-color);stroke:var(--md-mermaid-sequence-loop-border-color)}.labelBox{fill:var(--md-mermaid-sequence-label-bg-color);stroke:none}.labelText,.labelText>span{fill:var(--md-mermaid-sequence-label-fg-color);font-family:var(--md-mermaid-font-family)}.sequenceNumber{fill:var(--md-mermaid-sequence-number-fg-color)}rect.rect{fill:var(--md-mermaid-sequence-box-bg-color);stroke:none}rect.rect+text.text{fill:var(--md-mermaid-sequence-box-fg-color)}defs #sequencenumber{fill:var(--md-mermaid-sequence-number-bg-color)!important}";var qr,ka=0;function Ha(){return typeof mermaid=="undefined"||mermaid instanceof Element?gt("https://unpkg.com/mermaid@10.7.0/dist/mermaid.min.js"):$(void 0)}function _n(e){return e.classList.remove("mermaid"),qr||(qr=Ha().pipe(y(()=>mermaid.initialize({startOnLoad:!1,themeCSS:Ln,sequence:{actorFontSize:"16px",messageFontSize:"16px",noteFontSize:"16px"}})),m(()=>{}),B(1))),qr.subscribe(()=>ro(this,null,function*(){e.classList.add("mermaid");let t=`__mermaid_${ka++}`,r=E("div",{class:"mermaid"}),o=e.textContent,{svg:n,fn:i}=yield mermaid.render(t,o),s=r.attachShadow({mode:"closed"});s.innerHTML=n,e.replaceWith(r),i==null||i(s)})),qr.pipe(m(()=>({ref:e})))}var An=E("table");function Cn(e){return e.replaceWith(An),An.replaceWith(vn(e)),$({ref:e})}function $a(e){let t=e.find(r=>r.checked)||e[0];return T(...e.map(r=>d(r,"change").pipe(m(()=>P(`label[for="${r.id}"]`))))).pipe(q(P(`label[for="${t.id}"]`)),m(r=>({active:r})))}function kn(e,{viewport$:t,target$:r}){let o=P(".tabbed-labels",e),n=R(":scope > input",e),i=Nr("prev");e.append(i);let s=Nr("next");return e.append(s),H(()=>{let a=new v,c=a.pipe(ee(),oe(!0));Q([a,Ee(e)]).pipe(U(c),Me(1,de)).subscribe({next([{active:p},l]){let f=Ue(p),{width:u}=pe(p);e.style.setProperty("--md-indicator-x",`${f.x}px`),e.style.setProperty("--md-indicator-width",`${u}px`);let h=ir(o);(f.xh.x+l.width)&&o.scrollTo({left:Math.max(0,f.x-16),behavior:"smooth"})},complete(){e.style.removeProperty("--md-indicator-x"),e.style.removeProperty("--md-indicator-width")}}),Q([et(o),Ee(o)]).pipe(U(c)).subscribe(([p,l])=>{let f=xt(o);i.hidden=p.x<16,s.hidden=p.x>f.width-l.width-16}),T(d(i,"click").pipe(m(()=>-1)),d(s,"click").pipe(m(()=>1))).pipe(U(c)).subscribe(p=>{let{width:l}=pe(o);o.scrollBy({left:l*p,behavior:"smooth"})}),r.pipe(U(c),g(p=>n.includes(p))).subscribe(p=>p.click()),o.classList.add("tabbed-labels--linked");for(let p of n){let l=P(`label[for="${p.id}"]`);l.replaceChildren(E("a",{href:`#${l.htmlFor}`,tabIndex:-1},...Array.from(l.childNodes))),d(l.firstElementChild,"click").pipe(U(c),g(f=>!(f.metaKey||f.ctrlKey)),y(f=>{f.preventDefault(),f.stopPropagation()})).subscribe(()=>{history.replaceState({},"",`#${l.htmlFor}`),l.click()})}return G("content.tabs.link")&&a.pipe(Le(1),ae(t)).subscribe(([{active:p},{offset:l}])=>{let f=p.innerText.trim();if(p.hasAttribute("data-md-switching"))p.removeAttribute("data-md-switching");else{let u=e.offsetTop-l.y;for(let w of R("[data-tabs]"))for(let A of R(":scope > input",w)){let Z=P(`label[for="${A.id}"]`);if(Z!==p&&Z.innerText.trim()===f){Z.setAttribute("data-md-switching",""),A.click();break}}window.scrollTo({top:e.offsetTop-u});let h=__md_get("__tabs")||[];__md_set("__tabs",[...new Set([f,...h])])}}),a.pipe(U(c)).subscribe(()=>{for(let p of R("audio, video",e))p.pause()}),$a(n).pipe(y(p=>a.next(p)),_(()=>a.complete()),m(p=>F({ref:e},p)))}).pipe(ze(ie))}function Hn(e,{viewport$:t,target$:r,print$:o}){return T(...R(".annotate:not(.highlight)",e).map(n=>wn(n,{target$:r,print$:o})),...R("pre:not(.mermaid) > code",e).map(n=>On(n,{target$:r,print$:o})),...R("pre.mermaid",e).map(n=>_n(n)),...R("table:not([class])",e).map(n=>Cn(n)),...R("details",e).map(n=>Mn(n,{target$:r,print$:o})),...R("[data-tabs]",e).map(n=>kn(n,{viewport$:t,target$:r})),...R("[title]",e).filter(()=>G("content.tooltips")).map(n=>Ge(n)))}function Ra(e,{alert$:t}){return t.pipe(b(r=>T($(!0),$(!1).pipe(Ye(2e3))).pipe(m(o=>({message:r,active:o})))))}function $n(e,t){let r=P(".md-typeset",e);return H(()=>{let o=new v;return o.subscribe(({message:n,active:i})=>{e.classList.toggle("md-dialog--active",i),r.textContent=n}),Ra(e,t).pipe(y(n=>o.next(n)),_(()=>o.complete()),m(n=>F({ref:e},n)))})}function Pa({viewport$:e}){if(!G("header.autohide"))return $(!1);let t=e.pipe(m(({offset:{y:n}})=>n),Ke(2,1),m(([n,i])=>[nMath.abs(i-n.y)>100),m(([,[n]])=>n),Y()),o=We("search");return Q([e,o]).pipe(m(([{offset:n},i])=>n.y>400&&!i),Y(),b(n=>n?r:$(!1)),q(!1))}function Rn(e,t){return H(()=>Q([Ee(e),Pa(t)])).pipe(m(([{height:r},o])=>({height:r,hidden:o})),Y((r,o)=>r.height===o.height&&r.hidden===o.hidden),B(1))}function Pn(e,{header$:t,main$:r}){return H(()=>{let o=new v,n=o.pipe(ee(),oe(!0));o.pipe(X("active"),je(t)).subscribe(([{active:s},{hidden:a}])=>{e.classList.toggle("md-header--shadow",s&&!a),e.hidden=a});let i=fe(R("[title]",e)).pipe(g(()=>G("content.tooltips")),re(s=>Ge(s)));return r.subscribe(o),t.pipe(U(n),m(s=>F({ref:e},s)),$e(i.pipe(U(n))))})}function Ia(e,{viewport$:t,header$:r}){return pr(e,{viewport$:t,header$:r}).pipe(m(({offset:{y:o}})=>{let{height:n}=pe(e);return{active:o>=n}}),X("active"))}function In(e,t){return H(()=>{let r=new v;r.subscribe({next({active:n}){e.classList.toggle("md-header__title--active",n)},complete(){e.classList.remove("md-header__title--active")}});let o=me(".md-content h1");return typeof o=="undefined"?L:Ia(o,t).pipe(y(n=>r.next(n)),_(()=>r.complete()),m(n=>F({ref:e},n)))})}function Fn(e,{viewport$:t,header$:r}){let o=r.pipe(m(({height:i})=>i),Y()),n=o.pipe(b(()=>Ee(e).pipe(m(({height:i})=>({top:e.offsetTop,bottom:e.offsetTop+i})),X("bottom"))));return Q([o,n,t]).pipe(m(([i,{top:s,bottom:a},{offset:{y:c},size:{height:p}}])=>(p=Math.max(0,p-Math.max(0,s-c,i)-Math.max(0,p+c-a)),{offset:s-i,height:p,active:s-i<=c})),Y((i,s)=>i.offset===s.offset&&i.height===s.height&&i.active===s.active))}function Fa(e){let t=__md_get("__palette")||{index:e.findIndex(o=>matchMedia(o.getAttribute("data-md-color-media")).matches)},r=Math.max(0,Math.min(t.index,e.length-1));return $(...e).pipe(re(o=>d(o,"change").pipe(m(()=>o))),q(e[r]),m(o=>({index:e.indexOf(o),color:{media:o.getAttribute("data-md-color-media"),scheme:o.getAttribute("data-md-color-scheme"),primary:o.getAttribute("data-md-color-primary"),accent:o.getAttribute("data-md-color-accent")}})),B(1))}function jn(e){let t=R("input",e),r=E("meta",{name:"theme-color"});document.head.appendChild(r);let o=E("meta",{name:"color-scheme"});document.head.appendChild(o);let n=At("(prefers-color-scheme: light)");return H(()=>{let i=new v;return i.subscribe(s=>{if(document.body.setAttribute("data-md-color-switching",""),s.color.media==="(prefers-color-scheme)"){let a=matchMedia("(prefers-color-scheme: light)"),c=document.querySelector(a.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");s.color.scheme=c.getAttribute("data-md-color-scheme"),s.color.primary=c.getAttribute("data-md-color-primary"),s.color.accent=c.getAttribute("data-md-color-accent")}for(let[a,c]of Object.entries(s.color))document.body.setAttribute(`data-md-color-${a}`,c);for(let a=0;a{let s=Te("header"),a=window.getComputedStyle(s);return o.content=a.colorScheme,a.backgroundColor.match(/\d+/g).map(c=>(+c).toString(16).padStart(2,"0")).join("")})).subscribe(s=>r.content=`#${s}`),i.pipe(Oe(ie)).subscribe(()=>{document.body.removeAttribute("data-md-color-switching")}),Fa(t).pipe(U(n.pipe(Le(1))),at(),y(s=>i.next(s)),_(()=>i.complete()),m(s=>F({ref:e},s)))})}function Un(e,{progress$:t}){return H(()=>{let r=new v;return r.subscribe(({value:o})=>{e.style.setProperty("--md-progress-value",`${o}`)}),t.pipe(y(o=>r.next({value:o})),_(()=>r.complete()),m(o=>({ref:e,value:o})))})}var Kr=jt(zr());function ja(e){e.setAttribute("data-md-copying","");let t=e.closest("[data-copy]"),r=t?t.getAttribute("data-copy"):e.innerText;return e.removeAttribute("data-md-copying"),r.trimEnd()}function Wn({alert$:e}){Kr.default.isSupported()&&new j(t=>{new Kr.default("[data-clipboard-target], [data-clipboard-text]",{text:r=>r.getAttribute("data-clipboard-text")||ja(P(r.getAttribute("data-clipboard-target")))}).on("success",r=>t.next(r))}).pipe(y(t=>{t.trigger.focus()}),m(()=>ge("clipboard.copied"))).subscribe(e)}function Dn(e,t){return e.protocol=t.protocol,e.hostname=t.hostname,e}function Ua(e,t){let r=new Map;for(let o of R("url",e)){let n=P("loc",o),i=[Dn(new URL(n.textContent),t)];r.set(`${i[0]}`,i);for(let s of R("[rel=alternate]",o)){let a=s.getAttribute("href");a!=null&&i.push(Dn(new URL(a),t))}}return r}function mr(e){return on(new URL("sitemap.xml",e)).pipe(m(t=>Ua(t,new URL(e))),he(()=>$(new Map)))}function Wa(e,t){if(!(e.target instanceof Element))return L;let r=e.target.closest("a");if(r===null)return L;if(r.target||e.metaKey||e.ctrlKey)return L;let o=new URL(r.href);return o.search=o.hash="",t.has(`${o}`)?(e.preventDefault(),$(new URL(r.href))):L}function Nn(e){let t=new Map;for(let r of R(":scope > *",e.head))t.set(r.outerHTML,r);return t}function Vn(e){for(let t of R("[href], [src]",e))for(let r of["href","src"]){let o=t.getAttribute(r);if(o&&!/^(?:[a-z]+:)?\/\//i.test(o)){t[r]=t[r];break}}return $(e)}function Da(e){for(let o of["[data-md-component=announce]","[data-md-component=container]","[data-md-component=header-topic]","[data-md-component=outdated]","[data-md-component=logo]","[data-md-component=skip]",...G("navigation.tabs.sticky")?["[data-md-component=tabs]"]:[]]){let n=me(o),i=me(o,e);typeof n!="undefined"&&typeof i!="undefined"&&n.replaceWith(i)}let t=Nn(document);for(let[o,n]of Nn(e))t.has(o)?t.delete(o):document.head.appendChild(n);for(let o of t.values())o.remove();let r=Te("container");return Fe(R("script",r)).pipe(b(o=>{let n=e.createElement("script");if(o.src){for(let i of o.getAttributeNames())n.setAttribute(i,o.getAttribute(i));return o.replaceWith(n),new j(i=>{n.onload=()=>i.complete()})}else return n.textContent=o.textContent,o.replaceWith(n),L}),ee(),oe(e))}function zn({location$:e,viewport$:t,progress$:r}){let o=we();if(location.protocol==="file:")return L;let n=mr(o.base);$(document).subscribe(Vn);let i=d(document.body,"click").pipe(je(n),b(([c,p])=>Wa(c,p)),le()),s=d(window,"popstate").pipe(m(ve),le());i.pipe(ae(t)).subscribe(([c,{offset:p}])=>{history.replaceState(p,""),history.pushState(null,"",c)}),T(i,s).subscribe(e);let a=e.pipe(X("pathname"),b(c=>rn(c,{progress$:r}).pipe(he(()=>(st(c,!0),L)))),b(Vn),b(Da),le());return T(a.pipe(ae(e,(c,p)=>p)),e.pipe(X("pathname"),b(()=>e),X("hash")),e.pipe(Y((c,p)=>c.pathname===p.pathname&&c.hash===p.hash),b(()=>i),y(()=>history.back()))).subscribe(c=>{var p,l;history.state!==null||!c.hash?window.scrollTo(0,(l=(p=history.state)==null?void 0:p.y)!=null?l:0):(history.scrollRestoration="auto",Zo(c.hash),history.scrollRestoration="manual")}),e.subscribe(()=>{history.scrollRestoration="manual"}),d(window,"beforeunload").subscribe(()=>{history.scrollRestoration="auto"}),t.pipe(X("offset"),be(100)).subscribe(({offset:c})=>{history.replaceState(c,"")}),a}var Qn=jt(Kn());function Yn(e){let t=e.separator.split("|").map(n=>n.replace(/(\(\?[!=<][^)]+\))/g,"").length===0?"\uFFFD":n).join("|"),r=new RegExp(t,"img"),o=(n,i,s)=>`${i}${s}`;return n=>{n=n.replace(/[\s*+\-:~^]+/g," ").trim();let i=new RegExp(`(^|${e.separator}|)(${n.replace(/[|\\{}()[\]^$+*?.-]/g,"\\$&").replace(r,"|")})`,"img");return s=>(0,Qn.default)(s).replace(i,o).replace(/<\/mark>(\s+)]*>/img,"$1")}}function Ht(e){return e.type===1}function fr(e){return e.type===3}function Bn(e,t){let r=ln(e);return T($(location.protocol!=="file:"),We("search")).pipe(He(o=>o),b(()=>t)).subscribe(({config:o,docs:n})=>r.next({type:0,data:{config:o,docs:n,options:{suggest:G("search.suggest")}}})),r}function Gn({document$:e}){let t=we(),r=De(new URL("../versions.json",t.base)).pipe(he(()=>L)),o=r.pipe(m(n=>{let[,i]=t.base.match(/([^/]+)\/?$/);return n.find(({version:s,aliases:a})=>s===i||a.includes(i))||n[0]}));r.pipe(m(n=>new Map(n.map(i=>[`${new URL(`../${i.version}/`,t.base)}`,i]))),b(n=>d(document.body,"click").pipe(g(i=>!i.metaKey&&!i.ctrlKey),ae(o),b(([i,s])=>{if(i.target instanceof Element){let a=i.target.closest("a");if(a&&!a.target&&n.has(a.href)){let c=a.href;return!i.target.closest(".md-version")&&n.get(c)===s?L:(i.preventDefault(),$(c))}}return L}),b(i=>{let{version:s}=n.get(i);return mr(new URL(i)).pipe(m(a=>{let p=ve().href.replace(t.base,"");return a.has(p.split("#")[0])?new URL(`../${s}/${p}`,t.base):new URL(i)}))})))).subscribe(n=>st(n,!0)),Q([r,o]).subscribe(([n,i])=>{P(".md-header__topic").appendChild(gn(n,i))}),e.pipe(b(()=>o)).subscribe(n=>{var s;let i=__md_get("__outdated",sessionStorage);if(i===null){i=!0;let a=((s=t.version)==null?void 0:s.default)||"latest";Array.isArray(a)||(a=[a]);e:for(let c of a)for(let p of n.aliases.concat(n.version))if(new RegExp(c,"i").test(p)){i=!1;break e}__md_set("__outdated",i,sessionStorage)}if(i)for(let a of ne("outdated"))a.hidden=!1})}function Ka(e,{worker$:t}){let{searchParams:r}=ve();r.has("q")&&(Be("search",!0),e.value=r.get("q"),e.focus(),We("search").pipe(He(i=>!i)).subscribe(()=>{let i=ve();i.searchParams.delete("q"),history.replaceState({},"",`${i}`)}));let o=vt(e),n=T(t.pipe(He(Ht)),d(e,"keyup"),o).pipe(m(()=>e.value),Y());return Q([n,o]).pipe(m(([i,s])=>({value:i,focus:s})),B(1))}function Jn(e,{worker$:t}){let r=new v,o=r.pipe(ee(),oe(!0));Q([t.pipe(He(Ht)),r],(i,s)=>s).pipe(X("value")).subscribe(({value:i})=>t.next({type:2,data:i})),r.pipe(X("focus")).subscribe(({focus:i})=>{i&&Be("search",i)}),d(e.form,"reset").pipe(U(o)).subscribe(()=>e.focus());let n=P("header [for=__search]");return d(n,"click").subscribe(()=>e.focus()),Ka(e,{worker$:t}).pipe(y(i=>r.next(i)),_(()=>r.complete()),m(i=>F({ref:e},i)),B(1))}function Xn(e,{worker$:t,query$:r}){let o=new v,n=Yo(e.parentElement).pipe(g(Boolean)),i=e.parentElement,s=P(":scope > :first-child",e),a=P(":scope > :last-child",e);We("search").subscribe(l=>a.setAttribute("role",l?"list":"presentation")),o.pipe(ae(r),Ir(t.pipe(He(Ht)))).subscribe(([{items:l},{value:f}])=>{switch(l.length){case 0:s.textContent=f.length?ge("search.result.none"):ge("search.result.placeholder");break;case 1:s.textContent=ge("search.result.one");break;default:let u=ar(l.length);s.textContent=ge("search.result.other",u)}});let c=o.pipe(y(()=>a.innerHTML=""),b(({items:l})=>T($(...l.slice(0,10)),$(...l.slice(10)).pipe(Ke(4),jr(n),b(([f])=>f)))),m(hn),le());return c.subscribe(l=>a.appendChild(l)),c.pipe(re(l=>{let f=me("details",l);return typeof f=="undefined"?L:d(f,"toggle").pipe(U(o),m(()=>f))})).subscribe(l=>{l.open===!1&&l.offsetTop<=i.scrollTop&&i.scrollTo({top:l.offsetTop})}),t.pipe(g(fr),m(({data:l})=>l)).pipe(y(l=>o.next(l)),_(()=>o.complete()),m(l=>F({ref:e},l)))}function Qa(e,{query$:t}){return t.pipe(m(({value:r})=>{let o=ve();return o.hash="",r=r.replace(/\s+/g,"+").replace(/&/g,"%26").replace(/=/g,"%3D"),o.search=`q=${r}`,{url:o}}))}function Zn(e,t){let r=new v,o=r.pipe(ee(),oe(!0));return r.subscribe(({url:n})=>{e.setAttribute("data-clipboard-text",e.href),e.href=`${n}`}),d(e,"click").pipe(U(o)).subscribe(n=>n.preventDefault()),Qa(e,t).pipe(y(n=>r.next(n)),_(()=>r.complete()),m(n=>F({ref:e},n)))}function ei(e,{worker$:t,keyboard$:r}){let o=new v,n=Te("search-query"),i=T(d(n,"keydown"),d(n,"focus")).pipe(Oe(ie),m(()=>n.value),Y());return o.pipe(je(i),m(([{suggest:a},c])=>{let p=c.split(/([\s-]+)/);if(a!=null&&a.length&&p[p.length-1]){let l=a[a.length-1];l.startsWith(p[p.length-1])&&(p[p.length-1]=l)}else p.length=0;return p})).subscribe(a=>e.innerHTML=a.join("").replace(/\s/g," ")),r.pipe(g(({mode:a})=>a==="search")).subscribe(a=>{switch(a.type){case"ArrowRight":e.innerText.length&&n.selectionStart===n.value.length&&(n.value=e.innerText);break}}),t.pipe(g(fr),m(({data:a})=>a)).pipe(y(a=>o.next(a)),_(()=>o.complete()),m(()=>({ref:e})))}function ti(e,{index$:t,keyboard$:r}){let o=we();try{let n=Bn(o.search,t),i=Te("search-query",e),s=Te("search-result",e);d(e,"click").pipe(g(({target:c})=>c instanceof Element&&!!c.closest("a"))).subscribe(()=>Be("search",!1)),r.pipe(g(({mode:c})=>c==="search")).subscribe(c=>{let p=Re();switch(c.type){case"Enter":if(p===i){let l=new Map;for(let f of R(":first-child [href]",s)){let u=f.firstElementChild;l.set(f,parseFloat(u.getAttribute("data-md-score")))}if(l.size){let[[f]]=[...l].sort(([,u],[,h])=>h-u);f.click()}c.claim()}break;case"Escape":case"Tab":Be("search",!1),i.blur();break;case"ArrowUp":case"ArrowDown":if(typeof p=="undefined")i.focus();else{let l=[i,...R(":not(details) > [href], summary, details[open] [href]",s)],f=Math.max(0,(Math.max(0,l.indexOf(p))+l.length+(c.type==="ArrowUp"?-1:1))%l.length);l[f].focus()}c.claim();break;default:i!==Re()&&i.focus()}}),r.pipe(g(({mode:c})=>c==="global")).subscribe(c=>{switch(c.type){case"f":case"s":case"/":i.focus(),i.select(),c.claim();break}});let a=Jn(i,{worker$:n});return T(a,Xn(s,{worker$:n,query$:a})).pipe($e(...ne("search-share",e).map(c=>Zn(c,{query$:a})),...ne("search-suggest",e).map(c=>ei(c,{worker$:n,keyboard$:r}))))}catch(n){return e.hidden=!0,qe}}function ri(e,{index$:t,location$:r}){return Q([t,r.pipe(q(ve()),g(o=>!!o.searchParams.get("h")))]).pipe(m(([o,n])=>Yn(o.config)(n.searchParams.get("h"))),m(o=>{var s;let n=new Map,i=document.createNodeIterator(e,NodeFilter.SHOW_TEXT);for(let a=i.nextNode();a;a=i.nextNode())if((s=a.parentElement)!=null&&s.offsetHeight){let c=a.textContent,p=o(c);p.length>c.length&&n.set(a,p)}for(let[a,c]of n){let{childNodes:p}=E("span",null,c);a.replaceWith(...Array.from(p))}return{ref:e,nodes:n}}))}function Ya(e,{viewport$:t,main$:r}){let o=e.closest(".md-grid"),n=o.offsetTop-o.parentElement.offsetTop;return Q([r,t]).pipe(m(([{offset:i,height:s},{offset:{y:a}}])=>(s=s+Math.min(n,Math.max(0,a-i))-n,{height:s,locked:a>=i+n})),Y((i,s)=>i.height===s.height&&i.locked===s.locked))}function Qr(e,o){var n=o,{header$:t}=n,r=to(n,["header$"]);let i=P(".md-sidebar__scrollwrap",e),{y:s}=Ue(i);return H(()=>{let a=new v,c=a.pipe(ee(),oe(!0)),p=a.pipe(Me(0,de));return p.pipe(ae(t)).subscribe({next([{height:l},{height:f}]){i.style.height=`${l-2*s}px`,e.style.top=`${f}px`},complete(){i.style.height="",e.style.top=""}}),p.pipe(He()).subscribe(()=>{for(let l of R(".md-nav__link--active[href]",e)){if(!l.clientHeight)continue;let f=l.closest(".md-sidebar__scrollwrap");if(typeof f!="undefined"){let u=l.offsetTop-f.offsetTop,{height:h}=pe(f);f.scrollTo({top:u-h/2})}}}),fe(R("label[tabindex]",e)).pipe(re(l=>d(l,"click").pipe(Oe(ie),m(()=>l),U(c)))).subscribe(l=>{let f=P(`[id="${l.htmlFor}"]`);P(`[aria-labelledby="${l.id}"]`).setAttribute("aria-expanded",`${f.checked}`)}),Ya(e,r).pipe(y(l=>a.next(l)),_(()=>a.complete()),m(l=>F({ref:e},l)))})}function oi(e,t){if(typeof t!="undefined"){let r=`https://api.github.com/repos/${e}/${t}`;return Lt(De(`${r}/releases/latest`).pipe(he(()=>L),m(o=>({version:o.tag_name})),Qe({})),De(r).pipe(he(()=>L),m(o=>({stars:o.stargazers_count,forks:o.forks_count})),Qe({}))).pipe(m(([o,n])=>F(F({},o),n)))}else{let r=`https://api.github.com/users/${e}`;return De(r).pipe(m(o=>({repositories:o.public_repos})),Qe({}))}}function ni(e,t){let r=`https://${e}/api/v4/projects/${encodeURIComponent(t)}`;return De(r).pipe(he(()=>L),m(({star_count:o,forks_count:n})=>({stars:o,forks:n})),Qe({}))}function ii(e){let t=e.match(/^.+github\.com\/([^/]+)\/?([^/]+)?/i);if(t){let[,r,o]=t;return oi(r,o)}if(t=e.match(/^.+?([^/]*gitlab[^/]+)\/(.+?)\/?$/i),t){let[,r,o]=t;return ni(r,o)}return L}var Ba;function Ga(e){return Ba||(Ba=H(()=>{let t=__md_get("__source",sessionStorage);if(t)return $(t);if(ne("consent").length){let o=__md_get("__consent");if(!(o&&o.github))return L}return ii(e.href).pipe(y(o=>__md_set("__source",o,sessionStorage)))}).pipe(he(()=>L),g(t=>Object.keys(t).length>0),m(t=>({facts:t})),B(1)))}function ai(e){let t=P(":scope > :last-child",e);return H(()=>{let r=new v;return r.subscribe(({facts:o})=>{t.appendChild(bn(o)),t.classList.add("md-source__repository--active")}),Ga(e).pipe(y(o=>r.next(o)),_(()=>r.complete()),m(o=>F({ref:e},o)))})}function Ja(e,{viewport$:t,header$:r}){return Ee(document.body).pipe(b(()=>pr(e,{header$:r,viewport$:t})),m(({offset:{y:o}})=>({hidden:o>=10})),X("hidden"))}function si(e,t){return H(()=>{let r=new v;return r.subscribe({next({hidden:o}){e.hidden=o},complete(){e.hidden=!1}}),(G("navigation.tabs.sticky")?$({hidden:!1}):Ja(e,t)).pipe(y(o=>r.next(o)),_(()=>r.complete()),m(o=>F({ref:e},o)))})}function Xa(e,{viewport$:t,header$:r}){let o=new Map,n=R(".md-nav__link",e);for(let a of n){let c=decodeURIComponent(a.hash.substring(1)),p=me(`[id="${c}"]`);typeof p!="undefined"&&o.set(a,p)}let i=r.pipe(X("height"),m(({height:a})=>{let c=Te("main"),p=P(":scope > :first-child",c);return a+.8*(p.offsetTop-c.offsetTop)}),le());return Ee(document.body).pipe(X("height"),b(a=>H(()=>{let c=[];return $([...o].reduce((p,[l,f])=>{for(;c.length&&o.get(c[c.length-1]).tagName>=f.tagName;)c.pop();let u=f.offsetTop;for(;!u&&f.parentElement;)f=f.parentElement,u=f.offsetTop;let h=f.offsetParent;for(;h;h=h.offsetParent)u+=h.offsetTop;return p.set([...c=[...c,l]].reverse(),u)},new Map))}).pipe(m(c=>new Map([...c].sort(([,p],[,l])=>p-l))),je(i),b(([c,p])=>t.pipe(Rr(([l,f],{offset:{y:u},size:h})=>{let w=u+h.height>=Math.floor(a.height);for(;f.length;){let[,A]=f[0];if(A-p=u&&!w)f=[l.pop(),...f];else break}return[l,f]},[[],[...c]]),Y((l,f)=>l[0]===f[0]&&l[1]===f[1])))))).pipe(m(([a,c])=>({prev:a.map(([p])=>p),next:c.map(([p])=>p)})),q({prev:[],next:[]}),Ke(2,1),m(([a,c])=>a.prev.length{let i=new v,s=i.pipe(ee(),oe(!0));if(i.subscribe(({prev:a,next:c})=>{for(let[p]of c)p.classList.remove("md-nav__link--passed"),p.classList.remove("md-nav__link--active");for(let[p,[l]]of a.entries())l.classList.add("md-nav__link--passed"),l.classList.toggle("md-nav__link--active",p===a.length-1)}),G("toc.follow")){let a=T(t.pipe(be(1),m(()=>{})),t.pipe(be(250),m(()=>"smooth")));i.pipe(g(({prev:c})=>c.length>0),je(o.pipe(Oe(ie))),ae(a)).subscribe(([[{prev:c}],p])=>{let[l]=c[c.length-1];if(l.offsetHeight){let f=sr(l);if(typeof f!="undefined"){let u=l.offsetTop-f.offsetTop,{height:h}=pe(f);f.scrollTo({top:u-h/2,behavior:p})}}})}return G("navigation.tracking")&&t.pipe(U(s),X("offset"),be(250),Le(1),U(n.pipe(Le(1))),at({delay:250}),ae(i)).subscribe(([,{prev:a}])=>{let c=ve(),p=a[a.length-1];if(p&&p.length){let[l]=p,{hash:f}=new URL(l.href);c.hash!==f&&(c.hash=f,history.replaceState({},"",`${c}`))}else c.hash="",history.replaceState({},"",`${c}`)}),Xa(e,{viewport$:t,header$:r}).pipe(y(a=>i.next(a)),_(()=>i.complete()),m(a=>F({ref:e},a)))})}function Za(e,{viewport$:t,main$:r,target$:o}){let n=t.pipe(m(({offset:{y:s}})=>s),Ke(2,1),m(([s,a])=>s>a&&a>0),Y()),i=r.pipe(m(({active:s})=>s));return Q([i,n]).pipe(m(([s,a])=>!(s&&a)),Y(),U(o.pipe(Le(1))),oe(!0),at({delay:250}),m(s=>({hidden:s})))}function pi(e,{viewport$:t,header$:r,main$:o,target$:n}){let i=new v,s=i.pipe(ee(),oe(!0));return i.subscribe({next({hidden:a}){e.hidden=a,a?(e.setAttribute("tabindex","-1"),e.blur()):e.removeAttribute("tabindex")},complete(){e.style.top="",e.hidden=!0,e.removeAttribute("tabindex")}}),r.pipe(U(s),X("height")).subscribe(({height:a})=>{e.style.top=`${a+16}px`}),d(e,"click").subscribe(a=>{a.preventDefault(),window.scrollTo({top:0})}),Za(e,{viewport$:t,main$:o,target$:n}).pipe(y(a=>i.next(a)),_(()=>i.complete()),m(a=>F({ref:e},a)))}function li({document$:e}){e.pipe(b(()=>R(".md-ellipsis")),re(t=>yt(t).pipe(U(e.pipe(Le(1))),g(r=>r),m(()=>t),ye(1))),g(t=>t.offsetWidth{let r=t.innerText,o=t.closest("a")||t;return o.title=r,Ge(o).pipe(U(e.pipe(Le(1))),_(()=>o.removeAttribute("title")))})).subscribe(),e.pipe(b(()=>R(".md-status")),re(t=>Ge(t))).subscribe()}function mi({document$:e,tablet$:t}){e.pipe(b(()=>R(".md-toggle--indeterminate")),y(r=>{r.indeterminate=!0,r.checked=!1}),re(r=>d(r,"change").pipe(Fr(()=>r.classList.contains("md-toggle--indeterminate")),m(()=>r))),ae(t)).subscribe(([r,o])=>{r.classList.remove("md-toggle--indeterminate"),o&&(r.checked=!1)})}function es(){return/(iPad|iPhone|iPod)/.test(navigator.userAgent)}function fi({document$:e}){e.pipe(b(()=>R("[data-md-scrollfix]")),y(t=>t.removeAttribute("data-md-scrollfix")),g(es),re(t=>d(t,"touchstart").pipe(m(()=>t)))).subscribe(t=>{let r=t.scrollTop;r===0?t.scrollTop=1:r+t.offsetHeight===t.scrollHeight&&(t.scrollTop=r-1)})}function ui({viewport$:e,tablet$:t}){Q([We("search"),t]).pipe(m(([r,o])=>r&&!o),b(r=>$(r).pipe(Ye(r?400:100))),ae(e)).subscribe(([r,{offset:{y:o}}])=>{if(r)document.body.setAttribute("data-md-scrolllock",""),document.body.style.top=`-${o}px`;else{let n=-1*parseInt(document.body.style.top,10);document.body.removeAttribute("data-md-scrolllock"),document.body.style.top="",n&&window.scrollTo(0,n)}})}Object.entries||(Object.entries=function(e){let t=[];for(let r of Object.keys(e))t.push([r,e[r]]);return t});Object.values||(Object.values=function(e){let t=[];for(let r of Object.keys(e))t.push(e[r]);return t});typeof Element!="undefined"&&(Element.prototype.scrollTo||(Element.prototype.scrollTo=function(e,t){typeof e=="object"?(this.scrollLeft=e.left,this.scrollTop=e.top):(this.scrollLeft=e,this.scrollTop=t)}),Element.prototype.replaceWith||(Element.prototype.replaceWith=function(...e){let t=this.parentNode;if(t){e.length===0&&t.removeChild(this);for(let r=e.length-1;r>=0;r--){let o=e[r];typeof o=="string"?o=document.createTextNode(o):o.parentNode&&o.parentNode.removeChild(o),r?t.insertBefore(this.previousSibling,o):t.replaceChild(o,this)}}}));function ts(){return location.protocol==="file:"?gt(`${new URL("search/search_index.js",Yr.base)}`).pipe(m(()=>__index),B(1)):De(new URL("search/search_index.json",Yr.base))}document.documentElement.classList.remove("no-js");document.documentElement.classList.add("js");var rt=No(),Rt=Jo(),wt=en(Rt),Br=Go(),_e=pn(),ur=At("(min-width: 960px)"),hi=At("(min-width: 1220px)"),bi=tn(),Yr=we(),vi=document.forms.namedItem("search")?ts():qe,Gr=new v;Wn({alert$:Gr});var Jr=new v;G("navigation.instant")&&zn({location$:Rt,viewport$:_e,progress$:Jr}).subscribe(rt);var di;((di=Yr.version)==null?void 0:di.provider)==="mike"&&Gn({document$:rt});T(Rt,wt).pipe(Ye(125)).subscribe(()=>{Be("drawer",!1),Be("search",!1)});Br.pipe(g(({mode:e})=>e==="global")).subscribe(e=>{switch(e.type){case"p":case",":let t=me("link[rel=prev]");typeof t!="undefined"&&st(t);break;case"n":case".":let r=me("link[rel=next]");typeof r!="undefined"&&st(r);break;case"Enter":let o=Re();o instanceof HTMLLabelElement&&o.click()}});li({document$:rt});mi({document$:rt,tablet$:ur});fi({document$:rt});ui({viewport$:_e,tablet$:ur});var tt=Rn(Te("header"),{viewport$:_e}),$t=rt.pipe(m(()=>Te("main")),b(e=>Fn(e,{viewport$:_e,header$:tt})),B(1)),rs=T(...ne("consent").map(e=>fn(e,{target$:wt})),...ne("dialog").map(e=>$n(e,{alert$:Gr})),...ne("header").map(e=>Pn(e,{viewport$:_e,header$:tt,main$:$t})),...ne("palette").map(e=>jn(e)),...ne("progress").map(e=>Un(e,{progress$:Jr})),...ne("search").map(e=>ti(e,{index$:vi,keyboard$:Br})),...ne("source").map(e=>ai(e))),os=H(()=>T(...ne("announce").map(e=>mn(e)),...ne("content").map(e=>Hn(e,{viewport$:_e,target$:wt,print$:bi})),...ne("content").map(e=>G("search.highlight")?ri(e,{index$:vi,location$:Rt}):L),...ne("header-title").map(e=>In(e,{viewport$:_e,header$:tt})),...ne("sidebar").map(e=>e.getAttribute("data-md-type")==="navigation"?Ur(hi,()=>Qr(e,{viewport$:_e,header$:tt,main$:$t})):Ur(ur,()=>Qr(e,{viewport$:_e,header$:tt,main$:$t}))),...ne("tabs").map(e=>si(e,{viewport$:_e,header$:tt})),...ne("toc").map(e=>ci(e,{viewport$:_e,header$:tt,main$:$t,target$:wt})),...ne("top").map(e=>pi(e,{viewport$:_e,header$:tt,main$:$t,target$:wt})))),gi=rt.pipe(b(()=>os),$e(rs),B(1));gi.subscribe();window.document$=rt;window.location$=Rt;window.target$=wt;window.keyboard$=Br;window.viewport$=_e;window.tablet$=ur;window.screen$=hi;window.print$=bi;window.alert$=Gr;window.progress$=Jr;window.component$=gi;})(); +//# sourceMappingURL=bundle.8fd75fb4.min.js.map + diff --git a/assets/javascripts/bundle.8fd75fb4.min.js.map b/assets/javascripts/bundle.8fd75fb4.min.js.map new file mode 100644 index 0000000..1a28789 --- /dev/null +++ b/assets/javascripts/bundle.8fd75fb4.min.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["node_modules/focus-visible/dist/focus-visible.js", "node_modules/clipboard/dist/clipboard.js", "node_modules/escape-html/index.js", "src/templates/assets/javascripts/bundle.ts", "node_modules/rxjs/node_modules/tslib/tslib.es6.js", "node_modules/rxjs/src/internal/util/isFunction.ts", "node_modules/rxjs/src/internal/util/createErrorClass.ts", "node_modules/rxjs/src/internal/util/UnsubscriptionError.ts", "node_modules/rxjs/src/internal/util/arrRemove.ts", "node_modules/rxjs/src/internal/Subscription.ts", "node_modules/rxjs/src/internal/config.ts", "node_modules/rxjs/src/internal/scheduler/timeoutProvider.ts", "node_modules/rxjs/src/internal/util/reportUnhandledError.ts", "node_modules/rxjs/src/internal/util/noop.ts", "node_modules/rxjs/src/internal/NotificationFactories.ts", "node_modules/rxjs/src/internal/util/errorContext.ts", "node_modules/rxjs/src/internal/Subscriber.ts", "node_modules/rxjs/src/internal/symbol/observable.ts", "node_modules/rxjs/src/internal/util/identity.ts", "node_modules/rxjs/src/internal/util/pipe.ts", "node_modules/rxjs/src/internal/Observable.ts", "node_modules/rxjs/src/internal/util/lift.ts", "node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts", "node_modules/rxjs/src/internal/scheduler/animationFrameProvider.ts", "node_modules/rxjs/src/internal/util/ObjectUnsubscribedError.ts", "node_modules/rxjs/src/internal/Subject.ts", "node_modules/rxjs/src/internal/scheduler/dateTimestampProvider.ts", "node_modules/rxjs/src/internal/ReplaySubject.ts", "node_modules/rxjs/src/internal/scheduler/Action.ts", "node_modules/rxjs/src/internal/scheduler/intervalProvider.ts", "node_modules/rxjs/src/internal/scheduler/AsyncAction.ts", "node_modules/rxjs/src/internal/Scheduler.ts", "node_modules/rxjs/src/internal/scheduler/AsyncScheduler.ts", "node_modules/rxjs/src/internal/scheduler/async.ts", "node_modules/rxjs/src/internal/scheduler/AnimationFrameAction.ts", "node_modules/rxjs/src/internal/scheduler/AnimationFrameScheduler.ts", "node_modules/rxjs/src/internal/scheduler/animationFrame.ts", "node_modules/rxjs/src/internal/observable/empty.ts", "node_modules/rxjs/src/internal/util/isScheduler.ts", "node_modules/rxjs/src/internal/util/args.ts", "node_modules/rxjs/src/internal/util/isArrayLike.ts", "node_modules/rxjs/src/internal/util/isPromise.ts", "node_modules/rxjs/src/internal/util/isInteropObservable.ts", "node_modules/rxjs/src/internal/util/isAsyncIterable.ts", "node_modules/rxjs/src/internal/util/throwUnobservableError.ts", "node_modules/rxjs/src/internal/symbol/iterator.ts", "node_modules/rxjs/src/internal/util/isIterable.ts", "node_modules/rxjs/src/internal/util/isReadableStreamLike.ts", "node_modules/rxjs/src/internal/observable/innerFrom.ts", "node_modules/rxjs/src/internal/util/executeSchedule.ts", "node_modules/rxjs/src/internal/operators/observeOn.ts", "node_modules/rxjs/src/internal/operators/subscribeOn.ts", "node_modules/rxjs/src/internal/scheduled/scheduleObservable.ts", "node_modules/rxjs/src/internal/scheduled/schedulePromise.ts", "node_modules/rxjs/src/internal/scheduled/scheduleArray.ts", "node_modules/rxjs/src/internal/scheduled/scheduleIterable.ts", "node_modules/rxjs/src/internal/scheduled/scheduleAsyncIterable.ts", "node_modules/rxjs/src/internal/scheduled/scheduleReadableStreamLike.ts", "node_modules/rxjs/src/internal/scheduled/scheduled.ts", "node_modules/rxjs/src/internal/observable/from.ts", "node_modules/rxjs/src/internal/observable/of.ts", "node_modules/rxjs/src/internal/observable/throwError.ts", "node_modules/rxjs/src/internal/util/EmptyError.ts", "node_modules/rxjs/src/internal/util/isDate.ts", "node_modules/rxjs/src/internal/operators/map.ts", "node_modules/rxjs/src/internal/util/mapOneOrManyArgs.ts", "node_modules/rxjs/src/internal/util/argsArgArrayOrObject.ts", "node_modules/rxjs/src/internal/util/createObject.ts", "node_modules/rxjs/src/internal/observable/combineLatest.ts", "node_modules/rxjs/src/internal/operators/mergeInternals.ts", "node_modules/rxjs/src/internal/operators/mergeMap.ts", "node_modules/rxjs/src/internal/operators/mergeAll.ts", "node_modules/rxjs/src/internal/operators/concatAll.ts", "node_modules/rxjs/src/internal/observable/concat.ts", "node_modules/rxjs/src/internal/observable/defer.ts", "node_modules/rxjs/src/internal/observable/fromEvent.ts", "node_modules/rxjs/src/internal/observable/fromEventPattern.ts", "node_modules/rxjs/src/internal/observable/timer.ts", "node_modules/rxjs/src/internal/observable/merge.ts", "node_modules/rxjs/src/internal/observable/never.ts", "node_modules/rxjs/src/internal/util/argsOrArgArray.ts", "node_modules/rxjs/src/internal/operators/filter.ts", "node_modules/rxjs/src/internal/observable/zip.ts", "node_modules/rxjs/src/internal/operators/audit.ts", "node_modules/rxjs/src/internal/operators/auditTime.ts", "node_modules/rxjs/src/internal/operators/bufferCount.ts", "node_modules/rxjs/src/internal/operators/catchError.ts", "node_modules/rxjs/src/internal/operators/scanInternals.ts", "node_modules/rxjs/src/internal/operators/combineLatest.ts", "node_modules/rxjs/src/internal/operators/combineLatestWith.ts", "node_modules/rxjs/src/internal/operators/debounceTime.ts", "node_modules/rxjs/src/internal/operators/defaultIfEmpty.ts", "node_modules/rxjs/src/internal/operators/take.ts", "node_modules/rxjs/src/internal/operators/ignoreElements.ts", "node_modules/rxjs/src/internal/operators/mapTo.ts", "node_modules/rxjs/src/internal/operators/delayWhen.ts", "node_modules/rxjs/src/internal/operators/delay.ts", "node_modules/rxjs/src/internal/operators/distinctUntilChanged.ts", "node_modules/rxjs/src/internal/operators/distinctUntilKeyChanged.ts", "node_modules/rxjs/src/internal/operators/throwIfEmpty.ts", "node_modules/rxjs/src/internal/operators/endWith.ts", "node_modules/rxjs/src/internal/operators/finalize.ts", "node_modules/rxjs/src/internal/operators/first.ts", "node_modules/rxjs/src/internal/operators/takeLast.ts", "node_modules/rxjs/src/internal/operators/merge.ts", "node_modules/rxjs/src/internal/operators/mergeWith.ts", "node_modules/rxjs/src/internal/operators/repeat.ts", "node_modules/rxjs/src/internal/operators/scan.ts", "node_modules/rxjs/src/internal/operators/share.ts", "node_modules/rxjs/src/internal/operators/shareReplay.ts", "node_modules/rxjs/src/internal/operators/skip.ts", "node_modules/rxjs/src/internal/operators/skipUntil.ts", "node_modules/rxjs/src/internal/operators/startWith.ts", "node_modules/rxjs/src/internal/operators/switchMap.ts", "node_modules/rxjs/src/internal/operators/takeUntil.ts", "node_modules/rxjs/src/internal/operators/takeWhile.ts", "node_modules/rxjs/src/internal/operators/tap.ts", "node_modules/rxjs/src/internal/operators/throttle.ts", "node_modules/rxjs/src/internal/operators/throttleTime.ts", "node_modules/rxjs/src/internal/operators/withLatestFrom.ts", "node_modules/rxjs/src/internal/operators/zip.ts", "node_modules/rxjs/src/internal/operators/zipWith.ts", "src/templates/assets/javascripts/browser/document/index.ts", "src/templates/assets/javascripts/browser/element/_/index.ts", "src/templates/assets/javascripts/browser/element/focus/index.ts", "src/templates/assets/javascripts/browser/element/hover/index.ts", "src/templates/assets/javascripts/browser/element/offset/_/index.ts", "src/templates/assets/javascripts/browser/element/offset/content/index.ts", "src/templates/assets/javascripts/utilities/h/index.ts", "src/templates/assets/javascripts/utilities/round/index.ts", "src/templates/assets/javascripts/browser/script/index.ts", "src/templates/assets/javascripts/browser/element/size/_/index.ts", "src/templates/assets/javascripts/browser/element/size/content/index.ts", "src/templates/assets/javascripts/browser/element/visibility/index.ts", "src/templates/assets/javascripts/browser/toggle/index.ts", "src/templates/assets/javascripts/browser/keyboard/index.ts", "src/templates/assets/javascripts/browser/location/_/index.ts", "src/templates/assets/javascripts/browser/location/hash/index.ts", "src/templates/assets/javascripts/browser/media/index.ts", "src/templates/assets/javascripts/browser/request/index.ts", "src/templates/assets/javascripts/browser/viewport/offset/index.ts", "src/templates/assets/javascripts/browser/viewport/size/index.ts", "src/templates/assets/javascripts/browser/viewport/_/index.ts", "src/templates/assets/javascripts/browser/viewport/at/index.ts", "src/templates/assets/javascripts/browser/worker/index.ts", "src/templates/assets/javascripts/_/index.ts", "src/templates/assets/javascripts/components/_/index.ts", "src/templates/assets/javascripts/components/announce/index.ts", "src/templates/assets/javascripts/components/consent/index.ts", "src/templates/assets/javascripts/templates/tooltip/index.tsx", "src/templates/assets/javascripts/templates/annotation/index.tsx", "src/templates/assets/javascripts/templates/clipboard/index.tsx", "src/templates/assets/javascripts/templates/search/index.tsx", "src/templates/assets/javascripts/templates/source/index.tsx", "src/templates/assets/javascripts/templates/tabbed/index.tsx", "src/templates/assets/javascripts/templates/table/index.tsx", "src/templates/assets/javascripts/templates/version/index.tsx", "src/templates/assets/javascripts/components/tooltip/index.ts", "src/templates/assets/javascripts/components/content/annotation/_/index.ts", "src/templates/assets/javascripts/components/content/annotation/list/index.ts", "src/templates/assets/javascripts/components/content/annotation/block/index.ts", "src/templates/assets/javascripts/components/content/code/_/index.ts", "src/templates/assets/javascripts/components/content/details/index.ts", "src/templates/assets/javascripts/components/content/mermaid/index.css", "src/templates/assets/javascripts/components/content/mermaid/index.ts", "src/templates/assets/javascripts/components/content/table/index.ts", "src/templates/assets/javascripts/components/content/tabs/index.ts", "src/templates/assets/javascripts/components/content/_/index.ts", "src/templates/assets/javascripts/components/dialog/index.ts", "src/templates/assets/javascripts/components/header/_/index.ts", "src/templates/assets/javascripts/components/header/title/index.ts", "src/templates/assets/javascripts/components/main/index.ts", "src/templates/assets/javascripts/components/palette/index.ts", "src/templates/assets/javascripts/components/progress/index.ts", "src/templates/assets/javascripts/integrations/clipboard/index.ts", "src/templates/assets/javascripts/integrations/sitemap/index.ts", "src/templates/assets/javascripts/integrations/instant/index.ts", "src/templates/assets/javascripts/integrations/search/highlighter/index.ts", "src/templates/assets/javascripts/integrations/search/worker/message/index.ts", "src/templates/assets/javascripts/integrations/search/worker/_/index.ts", "src/templates/assets/javascripts/integrations/version/index.ts", "src/templates/assets/javascripts/components/search/query/index.ts", "src/templates/assets/javascripts/components/search/result/index.ts", "src/templates/assets/javascripts/components/search/share/index.ts", "src/templates/assets/javascripts/components/search/suggest/index.ts", "src/templates/assets/javascripts/components/search/_/index.ts", "src/templates/assets/javascripts/components/search/highlight/index.ts", "src/templates/assets/javascripts/components/sidebar/index.ts", "src/templates/assets/javascripts/components/source/facts/github/index.ts", "src/templates/assets/javascripts/components/source/facts/gitlab/index.ts", "src/templates/assets/javascripts/components/source/facts/_/index.ts", "src/templates/assets/javascripts/components/source/_/index.ts", "src/templates/assets/javascripts/components/tabs/index.ts", "src/templates/assets/javascripts/components/toc/index.ts", "src/templates/assets/javascripts/components/top/index.ts", "src/templates/assets/javascripts/patches/ellipsis/index.ts", "src/templates/assets/javascripts/patches/indeterminate/index.ts", "src/templates/assets/javascripts/patches/scrollfix/index.ts", "src/templates/assets/javascripts/patches/scrolllock/index.ts", "src/templates/assets/javascripts/polyfills/index.ts"], + "sourcesContent": ["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (factory());\n}(this, (function () { 'use strict';\n\n /**\n * Applies the :focus-visible polyfill at the given scope.\n * A scope in this case is either the top-level Document or a Shadow Root.\n *\n * @param {(Document|ShadowRoot)} scope\n * @see https://github.com/WICG/focus-visible\n */\n function applyFocusVisiblePolyfill(scope) {\n var hadKeyboardEvent = true;\n var hadFocusVisibleRecently = false;\n var hadFocusVisibleRecentlyTimeout = null;\n\n var inputTypesAllowlist = {\n text: true,\n search: true,\n url: true,\n tel: true,\n email: true,\n password: true,\n number: true,\n date: true,\n month: true,\n week: true,\n time: true,\n datetime: true,\n 'datetime-local': true\n };\n\n /**\n * Helper function for legacy browsers and iframes which sometimes focus\n * elements like document, body, and non-interactive SVG.\n * @param {Element} el\n */\n function isValidFocusTarget(el) {\n if (\n el &&\n el !== document &&\n el.nodeName !== 'HTML' &&\n el.nodeName !== 'BODY' &&\n 'classList' in el &&\n 'contains' in el.classList\n ) {\n return true;\n }\n return false;\n }\n\n /**\n * Computes whether the given element should automatically trigger the\n * `focus-visible` class being added, i.e. whether it should always match\n * `:focus-visible` when focused.\n * @param {Element} el\n * @return {boolean}\n */\n function focusTriggersKeyboardModality(el) {\n var type = el.type;\n var tagName = el.tagName;\n\n if (tagName === 'INPUT' && inputTypesAllowlist[type] && !el.readOnly) {\n return true;\n }\n\n if (tagName === 'TEXTAREA' && !el.readOnly) {\n return true;\n }\n\n if (el.isContentEditable) {\n return true;\n }\n\n return false;\n }\n\n /**\n * Add the `focus-visible` class to the given element if it was not added by\n * the author.\n * @param {Element} el\n */\n function addFocusVisibleClass(el) {\n if (el.classList.contains('focus-visible')) {\n return;\n }\n el.classList.add('focus-visible');\n el.setAttribute('data-focus-visible-added', '');\n }\n\n /**\n * Remove the `focus-visible` class from the given element if it was not\n * originally added by the author.\n * @param {Element} el\n */\n function removeFocusVisibleClass(el) {\n if (!el.hasAttribute('data-focus-visible-added')) {\n return;\n }\n el.classList.remove('focus-visible');\n el.removeAttribute('data-focus-visible-added');\n }\n\n /**\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * Apply `focus-visible` to any current active element and keep track\n * of our keyboard modality state with `hadKeyboardEvent`.\n * @param {KeyboardEvent} e\n */\n function onKeyDown(e) {\n if (e.metaKey || e.altKey || e.ctrlKey) {\n return;\n }\n\n if (isValidFocusTarget(scope.activeElement)) {\n addFocusVisibleClass(scope.activeElement);\n }\n\n hadKeyboardEvent = true;\n }\n\n /**\n * If at any point a user clicks with a pointing device, ensure that we change\n * the modality away from keyboard.\n * This avoids the situation where a user presses a key on an already focused\n * element, and then clicks on a different element, focusing it with a\n * pointing device, while we still think we're in keyboard modality.\n * @param {Event} e\n */\n function onPointerDown(e) {\n hadKeyboardEvent = false;\n }\n\n /**\n * On `focus`, add the `focus-visible` class to the target if:\n * - the target received focus as a result of keyboard navigation, or\n * - the event target is an element that will likely require interaction\n * via the keyboard (e.g. a text box)\n * @param {Event} e\n */\n function onFocus(e) {\n // Prevent IE from focusing the document or HTML element.\n if (!isValidFocusTarget(e.target)) {\n return;\n }\n\n if (hadKeyboardEvent || focusTriggersKeyboardModality(e.target)) {\n addFocusVisibleClass(e.target);\n }\n }\n\n /**\n * On `blur`, remove the `focus-visible` class from the target.\n * @param {Event} e\n */\n function onBlur(e) {\n if (!isValidFocusTarget(e.target)) {\n return;\n }\n\n if (\n e.target.classList.contains('focus-visible') ||\n e.target.hasAttribute('data-focus-visible-added')\n ) {\n // To detect a tab/window switch, we look for a blur event followed\n // rapidly by a visibility change.\n // If we don't see a visibility change within 100ms, it's probably a\n // regular focus change.\n hadFocusVisibleRecently = true;\n window.clearTimeout(hadFocusVisibleRecentlyTimeout);\n hadFocusVisibleRecentlyTimeout = window.setTimeout(function() {\n hadFocusVisibleRecently = false;\n }, 100);\n removeFocusVisibleClass(e.target);\n }\n }\n\n /**\n * If the user changes tabs, keep track of whether or not the previously\n * focused element had .focus-visible.\n * @param {Event} e\n */\n function onVisibilityChange(e) {\n if (document.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n if (hadFocusVisibleRecently) {\n hadKeyboardEvent = true;\n }\n addInitialPointerMoveListeners();\n }\n }\n\n /**\n * Add a group of listeners to detect usage of any pointing devices.\n * These listeners will be added when the polyfill first loads, and anytime\n * the window is blurred, so that they are active when the window regains\n * focus.\n */\n function addInitialPointerMoveListeners() {\n document.addEventListener('mousemove', onInitialPointerMove);\n document.addEventListener('mousedown', onInitialPointerMove);\n document.addEventListener('mouseup', onInitialPointerMove);\n document.addEventListener('pointermove', onInitialPointerMove);\n document.addEventListener('pointerdown', onInitialPointerMove);\n document.addEventListener('pointerup', onInitialPointerMove);\n document.addEventListener('touchmove', onInitialPointerMove);\n document.addEventListener('touchstart', onInitialPointerMove);\n document.addEventListener('touchend', onInitialPointerMove);\n }\n\n function removeInitialPointerMoveListeners() {\n document.removeEventListener('mousemove', onInitialPointerMove);\n document.removeEventListener('mousedown', onInitialPointerMove);\n document.removeEventListener('mouseup', onInitialPointerMove);\n document.removeEventListener('pointermove', onInitialPointerMove);\n document.removeEventListener('pointerdown', onInitialPointerMove);\n document.removeEventListener('pointerup', onInitialPointerMove);\n document.removeEventListener('touchmove', onInitialPointerMove);\n document.removeEventListener('touchstart', onInitialPointerMove);\n document.removeEventListener('touchend', onInitialPointerMove);\n }\n\n /**\n * When the polfyill first loads, assume the user is in keyboard modality.\n * If any event is received from a pointing device (e.g. mouse, pointer,\n * touch), turn off keyboard modality.\n * This accounts for situations where focus enters the page from the URL bar.\n * @param {Event} e\n */\n function onInitialPointerMove(e) {\n // Work around a Safari quirk that fires a mousemove on whenever the\n // window blurs, even if you're tabbing out of the page. \u00AF\\_(\u30C4)_/\u00AF\n if (e.target.nodeName && e.target.nodeName.toLowerCase() === 'html') {\n return;\n }\n\n hadKeyboardEvent = false;\n removeInitialPointerMoveListeners();\n }\n\n // For some kinds of state, we are interested in changes at the global scope\n // only. For example, global pointer input, global key presses and global\n // visibility change should affect the state at every scope:\n document.addEventListener('keydown', onKeyDown, true);\n document.addEventListener('mousedown', onPointerDown, true);\n document.addEventListener('pointerdown', onPointerDown, true);\n document.addEventListener('touchstart', onPointerDown, true);\n document.addEventListener('visibilitychange', onVisibilityChange, true);\n\n addInitialPointerMoveListeners();\n\n // For focus and blur, we specifically care about state changes in the local\n // scope. This is because focus / blur events that originate from within a\n // shadow root are not re-dispatched from the host element if it was already\n // the active element in its own scope:\n scope.addEventListener('focus', onFocus, true);\n scope.addEventListener('blur', onBlur, true);\n\n // We detect that a node is a ShadowRoot by ensuring that it is a\n // DocumentFragment and also has a host property. This check covers native\n // implementation and polyfill implementation transparently. If we only cared\n // about the native implementation, we could just check if the scope was\n // an instance of a ShadowRoot.\n if (scope.nodeType === Node.DOCUMENT_FRAGMENT_NODE && scope.host) {\n // Since a ShadowRoot is a special kind of DocumentFragment, it does not\n // have a root element to add a class to. So, we add this attribute to the\n // host element instead:\n scope.host.setAttribute('data-js-focus-visible', '');\n } else if (scope.nodeType === Node.DOCUMENT_NODE) {\n document.documentElement.classList.add('js-focus-visible');\n document.documentElement.setAttribute('data-js-focus-visible', '');\n }\n }\n\n // It is important to wrap all references to global window and document in\n // these checks to support server-side rendering use cases\n // @see https://github.com/WICG/focus-visible/issues/199\n if (typeof window !== 'undefined' && typeof document !== 'undefined') {\n // Make the polyfill helper globally available. This can be used as a signal\n // to interested libraries that wish to coordinate with the polyfill for e.g.,\n // applying the polyfill to a shadow root:\n window.applyFocusVisiblePolyfill = applyFocusVisiblePolyfill;\n\n // Notify interested libraries of the polyfill's presence, in case the\n // polyfill was loaded lazily:\n var event;\n\n try {\n event = new CustomEvent('focus-visible-polyfill-ready');\n } catch (error) {\n // IE11 does not support using CustomEvent as a constructor directly:\n event = document.createEvent('CustomEvent');\n event.initCustomEvent('focus-visible-polyfill-ready', false, false, {});\n }\n\n window.dispatchEvent(event);\n }\n\n if (typeof document !== 'undefined') {\n // Apply the polyfill to the global document, so that no JavaScript\n // coordination is required to use the polyfill in the top-level document:\n applyFocusVisiblePolyfill(document);\n }\n\n})));\n", "/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '"';\n break;\n case 38: // &\n escape = '&';\n break;\n case 39: // '\n escape = ''';\n break;\n case 60: // <\n escape = '<';\n break;\n case 62: // >\n escape = '>';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n", "/*\n * Copyright (c) 2016-2024 Martin Donath \n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n * IN THE SOFTWARE.\n */\n\nimport \"focus-visible\"\n\nimport {\n EMPTY,\n NEVER,\n Observable,\n Subject,\n defer,\n delay,\n filter,\n map,\n merge,\n mergeWith,\n shareReplay,\n switchMap\n} from \"rxjs\"\n\nimport { configuration, feature } from \"./_\"\nimport {\n at,\n getActiveElement,\n getOptionalElement,\n requestJSON,\n setLocation,\n setToggle,\n watchDocument,\n watchKeyboard,\n watchLocation,\n watchLocationTarget,\n watchMedia,\n watchPrint,\n watchScript,\n watchViewport\n} from \"./browser\"\nimport {\n getComponentElement,\n getComponentElements,\n mountAnnounce,\n mountBackToTop,\n mountConsent,\n mountContent,\n mountDialog,\n mountHeader,\n mountHeaderTitle,\n mountPalette,\n mountProgress,\n mountSearch,\n mountSearchHiglight,\n mountSidebar,\n mountSource,\n mountTableOfContents,\n mountTabs,\n watchHeader,\n watchMain\n} from \"./components\"\nimport {\n SearchIndex,\n setupClipboardJS,\n setupInstantNavigation,\n setupVersionSelector\n} from \"./integrations\"\nimport {\n patchEllipsis,\n patchIndeterminate,\n patchScrollfix,\n patchScrolllock\n} from \"./patches\"\nimport \"./polyfills\"\n\n/* ----------------------------------------------------------------------------\n * Functions - @todo refactor\n * ------------------------------------------------------------------------- */\n\n/**\n * Fetch search index\n *\n * @returns Search index observable\n */\nfunction fetchSearchIndex(): Observable {\n if (location.protocol === \"file:\") {\n return watchScript(\n `${new URL(\"search/search_index.js\", config.base)}`\n )\n .pipe(\n // @ts-ignore - @todo fix typings\n map(() => __index),\n shareReplay(1)\n )\n } else {\n return requestJSON(\n new URL(\"search/search_index.json\", config.base)\n )\n }\n}\n\n/* ----------------------------------------------------------------------------\n * Application\n * ------------------------------------------------------------------------- */\n\n/* Yay, JavaScript is available */\ndocument.documentElement.classList.remove(\"no-js\")\ndocument.documentElement.classList.add(\"js\")\n\n/* Set up navigation observables and subjects */\nconst document$ = watchDocument()\nconst location$ = watchLocation()\nconst target$ = watchLocationTarget(location$)\nconst keyboard$ = watchKeyboard()\n\n/* Set up media observables */\nconst viewport$ = watchViewport()\nconst tablet$ = watchMedia(\"(min-width: 960px)\")\nconst screen$ = watchMedia(\"(min-width: 1220px)\")\nconst print$ = watchPrint()\n\n/* Retrieve search index, if search is enabled */\nconst config = configuration()\nconst index$ = document.forms.namedItem(\"search\")\n ? fetchSearchIndex()\n : NEVER\n\n/* Set up Clipboard.js integration */\nconst alert$ = new Subject()\nsetupClipboardJS({ alert$ })\n\n/* Set up progress indicator */\nconst progress$ = new Subject()\n\n/* Set up instant navigation, if enabled */\nif (feature(\"navigation.instant\"))\n setupInstantNavigation({ location$, viewport$, progress$ })\n .subscribe(document$)\n\n/* Set up version selector */\nif (config.version?.provider === \"mike\")\n setupVersionSelector({ document$ })\n\n/* Always close drawer and search on navigation */\nmerge(location$, target$)\n .pipe(\n delay(125)\n )\n .subscribe(() => {\n setToggle(\"drawer\", false)\n setToggle(\"search\", false)\n })\n\n/* Set up global keyboard handlers */\nkeyboard$\n .pipe(\n filter(({ mode }) => mode === \"global\")\n )\n .subscribe(key => {\n switch (key.type) {\n\n /* Go to previous page */\n case \"p\":\n case \",\":\n const prev = getOptionalElement(\"link[rel=prev]\")\n if (typeof prev !== \"undefined\")\n setLocation(prev)\n break\n\n /* Go to next page */\n case \"n\":\n case \".\":\n const next = getOptionalElement(\"link[rel=next]\")\n if (typeof next !== \"undefined\")\n setLocation(next)\n break\n\n /* Expand navigation, see https://bit.ly/3ZjG5io */\n case \"Enter\":\n const active = getActiveElement()\n if (active instanceof HTMLLabelElement)\n active.click()\n }\n })\n\n/* Set up patches */\npatchEllipsis({ document$ })\npatchIndeterminate({ document$, tablet$ })\npatchScrollfix({ document$ })\npatchScrolllock({ viewport$, tablet$ })\n\n/* Set up header and main area observable */\nconst header$ = watchHeader(getComponentElement(\"header\"), { viewport$ })\nconst main$ = document$\n .pipe(\n map(() => getComponentElement(\"main\")),\n switchMap(el => watchMain(el, { viewport$, header$ })),\n shareReplay(1)\n )\n\n/* Set up control component observables */\nconst control$ = merge(\n\n /* Consent */\n ...getComponentElements(\"consent\")\n .map(el => mountConsent(el, { target$ })),\n\n /* Dialog */\n ...getComponentElements(\"dialog\")\n .map(el => mountDialog(el, { alert$ })),\n\n /* Header */\n ...getComponentElements(\"header\")\n .map(el => mountHeader(el, { viewport$, header$, main$ })),\n\n /* Color palette */\n ...getComponentElements(\"palette\")\n .map(el => mountPalette(el)),\n\n /* Progress bar */\n ...getComponentElements(\"progress\")\n .map(el => mountProgress(el, { progress$ })),\n\n /* Search */\n ...getComponentElements(\"search\")\n .map(el => mountSearch(el, { index$, keyboard$ })),\n\n /* Repository information */\n ...getComponentElements(\"source\")\n .map(el => mountSource(el))\n)\n\n/* Set up content component observables */\nconst content$ = defer(() => merge(\n\n /* Announcement bar */\n ...getComponentElements(\"announce\")\n .map(el => mountAnnounce(el)),\n\n /* Content */\n ...getComponentElements(\"content\")\n .map(el => mountContent(el, { viewport$, target$, print$ })),\n\n /* Search highlighting */\n ...getComponentElements(\"content\")\n .map(el => feature(\"search.highlight\")\n ? mountSearchHiglight(el, { index$, location$ })\n : EMPTY\n ),\n\n /* Header title */\n ...getComponentElements(\"header-title\")\n .map(el => mountHeaderTitle(el, { viewport$, header$ })),\n\n /* Sidebar */\n ...getComponentElements(\"sidebar\")\n .map(el => el.getAttribute(\"data-md-type\") === \"navigation\"\n ? at(screen$, () => mountSidebar(el, { viewport$, header$, main$ }))\n : at(tablet$, () => mountSidebar(el, { viewport$, header$, main$ }))\n ),\n\n /* Navigation tabs */\n ...getComponentElements(\"tabs\")\n .map(el => mountTabs(el, { viewport$, header$ })),\n\n /* Table of contents */\n ...getComponentElements(\"toc\")\n .map(el => mountTableOfContents(el, {\n viewport$, header$, main$, target$\n })),\n\n /* Back-to-top button */\n ...getComponentElements(\"top\")\n .map(el => mountBackToTop(el, { viewport$, header$, main$, target$ }))\n))\n\n/* Set up component observables */\nconst component$ = document$\n .pipe(\n switchMap(() => content$),\n mergeWith(control$),\n shareReplay(1)\n )\n\n/* Subscribe to all components */\ncomponent$.subscribe()\n\n/* ----------------------------------------------------------------------------\n * Exports\n * ------------------------------------------------------------------------- */\n\nwindow.document$ = document$ /* Document observable */\nwindow.location$ = location$ /* Location subject */\nwindow.target$ = target$ /* Location target observable */\nwindow.keyboard$ = keyboard$ /* Keyboard observable */\nwindow.viewport$ = viewport$ /* Viewport observable */\nwindow.tablet$ = tablet$ /* Media tablet observable */\nwindow.screen$ = screen$ /* Media screen observable */\nwindow.print$ = print$ /* Media print observable */\nwindow.alert$ = alert$ /* Alert subject */\nwindow.progress$ = progress$ /* Progress indicator subject */\nwindow.component$ = component$ /* Component observable */\n", "/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n", "/**\n * Returns true if the object is a function.\n * @param value The value to check\n */\nexport function isFunction(value: any): value is (...args: any[]) => any {\n return typeof value === 'function';\n}\n", "/**\n * Used to create Error subclasses until the community moves away from ES5.\n *\n * This is because compiling from TypeScript down to ES5 has issues with subclassing Errors\n * as well as other built-in types: https://github.com/Microsoft/TypeScript/issues/12123\n *\n * @param createImpl A factory function to create the actual constructor implementation. The returned\n * function should be a named function that calls `_super` internally.\n */\nexport function createErrorClass(createImpl: (_super: any) => any): T {\n const _super = (instance: any) => {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n\n const ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n", "import { createErrorClass } from './createErrorClass';\n\nexport interface UnsubscriptionError extends Error {\n readonly errors: any[];\n}\n\nexport interface UnsubscriptionErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (errors: any[]): UnsubscriptionError;\n}\n\n/**\n * An error thrown when one or more errors have occurred during the\n * `unsubscribe` of a {@link Subscription}.\n */\nexport const UnsubscriptionError: UnsubscriptionErrorCtor = createErrorClass(\n (_super) =>\n function UnsubscriptionErrorImpl(this: any, errors: (Error | string)[]) {\n _super(this);\n this.message = errors\n ? `${errors.length} errors occurred during unsubscription:\n${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\\n ')}`\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n }\n);\n", "/**\n * Removes an item from an array, mutating it.\n * @param arr The array to remove the item from\n * @param item The item to remove\n */\nexport function arrRemove(arr: T[] | undefined | null, item: T) {\n if (arr) {\n const index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n", "import { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { SubscriptionLike, TeardownLogic, Unsubscribable } from './types';\nimport { arrRemove } from './util/arrRemove';\n\n/**\n * Represents a disposable resource, such as the execution of an Observable. A\n * Subscription has one important method, `unsubscribe`, that takes no argument\n * and just disposes the resource held by the subscription.\n *\n * Additionally, subscriptions may be grouped together through the `add()`\n * method, which will attach a child Subscription to the current Subscription.\n * When a Subscription is unsubscribed, all its children (and its grandchildren)\n * will be unsubscribed as well.\n *\n * @class Subscription\n */\nexport class Subscription implements SubscriptionLike {\n /** @nocollapse */\n public static EMPTY = (() => {\n const empty = new Subscription();\n empty.closed = true;\n return empty;\n })();\n\n /**\n * A flag to indicate whether this Subscription has already been unsubscribed.\n */\n public closed = false;\n\n private _parentage: Subscription[] | Subscription | null = null;\n\n /**\n * The list of registered finalizers to execute upon unsubscription. Adding and removing from this\n * list occurs in the {@link #add} and {@link #remove} methods.\n */\n private _finalizers: Exclude[] | null = null;\n\n /**\n * @param initialTeardown A function executed first as part of the finalization\n * process that is kicked off when {@link #unsubscribe} is called.\n */\n constructor(private initialTeardown?: () => void) {}\n\n /**\n * Disposes the resources held by the subscription. May, for instance, cancel\n * an ongoing Observable execution or cancel any other type of work that\n * started when the Subscription was created.\n * @return {void}\n */\n unsubscribe(): void {\n let errors: any[] | undefined;\n\n if (!this.closed) {\n this.closed = true;\n\n // Remove this from it's parents.\n const { _parentage } = this;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n for (const parent of _parentage) {\n parent.remove(this);\n }\n } else {\n _parentage.remove(this);\n }\n }\n\n const { initialTeardown: initialFinalizer } = this;\n if (isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n } catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n\n const { _finalizers } = this;\n if (_finalizers) {\n this._finalizers = null;\n for (const finalizer of _finalizers) {\n try {\n execFinalizer(finalizer);\n } catch (err) {\n errors = errors ?? [];\n if (err instanceof UnsubscriptionError) {\n errors = [...errors, ...err.errors];\n } else {\n errors.push(err);\n }\n }\n }\n }\n\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n }\n\n /**\n * Adds a finalizer to this subscription, so that finalization will be unsubscribed/called\n * when this subscription is unsubscribed. If this subscription is already {@link #closed},\n * because it has already been unsubscribed, then whatever finalizer is passed to it\n * will automatically be executed (unless the finalizer itself is also a closed subscription).\n *\n * Closed Subscriptions cannot be added as finalizers to any subscription. Adding a closed\n * subscription to a any subscription will result in no operation. (A noop).\n *\n * Adding a subscription to itself, or adding `null` or `undefined` will not perform any\n * operation at all. (A noop).\n *\n * `Subscription` instances that are added to this instance will automatically remove themselves\n * if they are unsubscribed. Functions and {@link Unsubscribable} objects that you wish to remove\n * will need to be removed manually with {@link #remove}\n *\n * @param teardown The finalization logic to add to this subscription.\n */\n add(teardown: TeardownLogic): void {\n // Only add the finalizer if it's not undefined\n // and don't add a subscription to itself.\n if (teardown && teardown !== this) {\n if (this.closed) {\n // If this subscription is already closed,\n // execute whatever finalizer is handed to it automatically.\n execFinalizer(teardown);\n } else {\n if (teardown instanceof Subscription) {\n // We don't add closed subscriptions, and we don't add the same subscription\n // twice. Subscription unsubscribe is idempotent.\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = this._finalizers ?? []).push(teardown);\n }\n }\n }\n\n /**\n * Checks to see if a this subscription already has a particular parent.\n * This will signal that this subscription has already been added to the parent in question.\n * @param parent the parent to check for\n */\n private _hasParent(parent: Subscription) {\n const { _parentage } = this;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n }\n\n /**\n * Adds a parent to this subscription so it can be removed from the parent if it\n * unsubscribes on it's own.\n *\n * NOTE: THIS ASSUMES THAT {@link _hasParent} HAS ALREADY BEEN CHECKED.\n * @param parent The parent subscription to add\n */\n private _addParent(parent: Subscription) {\n const { _parentage } = this;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n }\n\n /**\n * Called on a child when it is removed via {@link #remove}.\n * @param parent The parent to remove\n */\n private _removeParent(parent: Subscription) {\n const { _parentage } = this;\n if (_parentage === parent) {\n this._parentage = null;\n } else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n }\n\n /**\n * Removes a finalizer from this subscription that was previously added with the {@link #add} method.\n *\n * Note that `Subscription` instances, when unsubscribed, will automatically remove themselves\n * from every other `Subscription` they have been added to. This means that using the `remove` method\n * is not a common thing and should be used thoughtfully.\n *\n * If you add the same finalizer instance of a function or an unsubscribable object to a `Subscription` instance\n * more than once, you will need to call `remove` the same number of times to remove all instances.\n *\n * All finalizer instances are removed to free up memory upon unsubscription.\n *\n * @param teardown The finalizer to remove from this subscription\n */\n remove(teardown: Exclude): void {\n const { _finalizers } = this;\n _finalizers && arrRemove(_finalizers, teardown);\n\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n }\n}\n\nexport const EMPTY_SUBSCRIPTION = Subscription.EMPTY;\n\nexport function isSubscription(value: any): value is Subscription {\n return (\n value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe))\n );\n}\n\nfunction execFinalizer(finalizer: Unsubscribable | (() => void)) {\n if (isFunction(finalizer)) {\n finalizer();\n } else {\n finalizer.unsubscribe();\n }\n}\n", "import { Subscriber } from './Subscriber';\nimport { ObservableNotification } from './types';\n\n/**\n * The {@link GlobalConfig} object for RxJS. It is used to configure things\n * like how to react on unhandled errors.\n */\nexport const config: GlobalConfig = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n\n/**\n * The global configuration object for RxJS, used to configure things\n * like how to react on unhandled errors. Accessible via {@link config}\n * object.\n */\nexport interface GlobalConfig {\n /**\n * A registration point for unhandled errors from RxJS. These are errors that\n * cannot were not handled by consuming code in the usual subscription path. For\n * example, if you have this configured, and you subscribe to an observable without\n * providing an error handler, errors from that subscription will end up here. This\n * will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onUnhandledError: ((err: any) => void) | null;\n\n /**\n * A registration point for notifications that cannot be sent to subscribers because they\n * have completed, errored or have been explicitly unsubscribed. By default, next, complete\n * and error notifications sent to stopped subscribers are noops. However, sometimes callers\n * might want a different behavior. For example, with sources that attempt to report errors\n * to stopped subscribers, a caller can configure RxJS to throw an unhandled error instead.\n * This will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onStoppedNotification: ((notification: ObservableNotification, subscriber: Subscriber) => void) | null;\n\n /**\n * The promise constructor used by default for {@link Observable#toPromise toPromise} and {@link Observable#forEach forEach}\n * methods.\n *\n * @deprecated As of version 8, RxJS will no longer support this sort of injection of a\n * Promise constructor. If you need a Promise implementation other than native promises,\n * please polyfill/patch Promise as you see appropriate. Will be removed in v8.\n */\n Promise?: PromiseConstructorLike;\n\n /**\n * If true, turns on synchronous error rethrowing, which is a deprecated behavior\n * in v6 and higher. This behavior enables bad patterns like wrapping a subscribe\n * call in a try/catch block. It also enables producer interference, a nasty bug\n * where a multicast can be broken for all observers by a downstream consumer with\n * an unhandled error. DO NOT USE THIS FLAG UNLESS IT'S NEEDED TO BUY TIME\n * FOR MIGRATION REASONS.\n *\n * @deprecated As of version 8, RxJS will no longer support synchronous throwing\n * of unhandled errors. All errors will be thrown on a separate call stack to prevent bad\n * behaviors described above. Will be removed in v8.\n */\n useDeprecatedSynchronousErrorHandling: boolean;\n\n /**\n * If true, enables an as-of-yet undocumented feature from v5: The ability to access\n * `unsubscribe()` via `this` context in `next` functions created in observers passed\n * to `subscribe`.\n *\n * This is being removed because the performance was severely problematic, and it could also cause\n * issues when types other than POJOs are passed to subscribe as subscribers, as they will likely have\n * their `this` context overwritten.\n *\n * @deprecated As of version 8, RxJS will no longer support altering the\n * context of next functions provided as part of an observer to Subscribe. Instead,\n * you will have access to a subscription or a signal or token that will allow you to do things like\n * unsubscribe and test closed status. Will be removed in v8.\n */\n useDeprecatedNextContext: boolean;\n}\n", "import type { TimerHandle } from './timerHandle';\ntype SetTimeoutFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearTimeoutFunction = (handle: TimerHandle) => void;\n\ninterface TimeoutProvider {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n delegate:\n | {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n }\n | undefined;\n}\n\nexport const timeoutProvider: TimeoutProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setTimeout(handler: () => void, timeout?: number, ...args) {\n const { delegate } = timeoutProvider;\n if (delegate?.setTimeout) {\n return delegate.setTimeout(handler, timeout, ...args);\n }\n return setTimeout(handler, timeout, ...args);\n },\n clearTimeout(handle) {\n const { delegate } = timeoutProvider;\n return (delegate?.clearTimeout || clearTimeout)(handle as any);\n },\n delegate: undefined,\n};\n", "import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\n\n/**\n * Handles an error on another job either with the user-configured {@link onUnhandledError},\n * or by throwing it on that new job so it can be picked up by `window.onerror`, `process.on('error')`, etc.\n *\n * This should be called whenever there is an error that is out-of-band with the subscription\n * or when an error hits a terminal boundary of the subscription and no error handler was provided.\n *\n * @param err the error to report\n */\nexport function reportUnhandledError(err: any) {\n timeoutProvider.setTimeout(() => {\n const { onUnhandledError } = config;\n if (onUnhandledError) {\n // Execute the user-configured error handler.\n onUnhandledError(err);\n } else {\n // Throw so it is picked up by the runtime's uncaught error mechanism.\n throw err;\n }\n });\n}\n", "/* tslint:disable:no-empty */\nexport function noop() { }\n", "import { CompleteNotification, NextNotification, ErrorNotification } from './types';\n\n/**\n * A completion object optimized for memory use and created to be the\n * same \"shape\" as other notifications in v8.\n * @internal\n */\nexport const COMPLETE_NOTIFICATION = (() => createNotification('C', undefined, undefined) as CompleteNotification)();\n\n/**\n * Internal use only. Creates an optimized error notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function errorNotification(error: any): ErrorNotification {\n return createNotification('E', undefined, error) as any;\n}\n\n/**\n * Internal use only. Creates an optimized next notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function nextNotification(value: T) {\n return createNotification('N', value, undefined) as NextNotification;\n}\n\n/**\n * Ensures that all notifications created internally have the same \"shape\" in v8.\n *\n * TODO: This is only exported to support a crazy legacy test in `groupBy`.\n * @internal\n */\nexport function createNotification(kind: 'N' | 'E' | 'C', value: any, error: any) {\n return {\n kind,\n value,\n error,\n };\n}\n", "import { config } from '../config';\n\nlet context: { errorThrown: boolean; error: any } | null = null;\n\n/**\n * Handles dealing with errors for super-gross mode. Creates a context, in which\n * any synchronously thrown errors will be passed to {@link captureError}. Which\n * will record the error such that it will be rethrown after the call back is complete.\n * TODO: Remove in v8\n * @param cb An immediately executed function.\n */\nexport function errorContext(cb: () => void) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n const isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n const { errorThrown, error } = context!;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n } else {\n // This is the general non-deprecated path for everyone that\n // isn't crazy enough to use super-gross mode (useDeprecatedSynchronousErrorHandling)\n cb();\n }\n}\n\n/**\n * Captures errors only in super-gross mode.\n * @param err the error to capture\n */\nexport function captureError(err: any) {\n if (config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\n", "import { isFunction } from './util/isFunction';\nimport { Observer, ObservableNotification } from './types';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\n\n/**\n * Implements the {@link Observer} interface and extends the\n * {@link Subscription} class. While the {@link Observer} is the public API for\n * consuming the values of an {@link Observable}, all Observers get converted to\n * a Subscriber, in order to provide Subscription-like capabilities such as\n * `unsubscribe`. Subscriber is a common type in RxJS, and crucial for\n * implementing operators, but it is rarely used as a public API.\n *\n * @class Subscriber\n */\nexport class Subscriber extends Subscription implements Observer {\n /**\n * A static factory for a Subscriber, given a (potentially partial) definition\n * of an Observer.\n * @param next The `next` callback of an Observer.\n * @param error The `error` callback of an\n * Observer.\n * @param complete The `complete` callback of an\n * Observer.\n * @return A Subscriber wrapping the (partially defined)\n * Observer represented by the given arguments.\n * @nocollapse\n * @deprecated Do not use. Will be removed in v8. There is no replacement for this\n * method, and there is no reason to be creating instances of `Subscriber` directly.\n * If you have a specific use case, please file an issue.\n */\n static create(next?: (x?: T) => void, error?: (e?: any) => void, complete?: () => void): Subscriber {\n return new SafeSubscriber(next, error, complete);\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected isStopped: boolean = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected destination: Subscriber | Observer; // this `any` is the escape hatch to erase extra type param (e.g. R)\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * There is no reason to directly create an instance of Subscriber. This type is exported for typings reasons.\n */\n constructor(destination?: Subscriber | Observer) {\n super();\n if (destination) {\n this.destination = destination;\n // Automatically chain subscriptions together here.\n // if destination is a Subscription, then it is a Subscriber.\n if (isSubscription(destination)) {\n destination.add(this);\n }\n } else {\n this.destination = EMPTY_OBSERVER;\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `next` from\n * the Observable, with a value. The Observable may call this method 0 or more\n * times.\n * @param {T} [value] The `next` value.\n * @return {void}\n */\n next(value?: T): void {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n } else {\n this._next(value!);\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `error` from\n * the Observable, with an attached `Error`. Notifies the Observer that\n * the Observable has experienced an error condition.\n * @param {any} [err] The `error` exception.\n * @return {void}\n */\n error(err?: any): void {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n } else {\n this.isStopped = true;\n this._error(err);\n }\n }\n\n /**\n * The {@link Observer} callback to receive a valueless notification of type\n * `complete` from the Observable. Notifies the Observer that the Observable\n * has finished sending push-based notifications.\n * @return {void}\n */\n complete(): void {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n } else {\n this.isStopped = true;\n this._complete();\n }\n }\n\n unsubscribe(): void {\n if (!this.closed) {\n this.isStopped = true;\n super.unsubscribe();\n this.destination = null!;\n }\n }\n\n protected _next(value: T): void {\n this.destination.next(value);\n }\n\n protected _error(err: any): void {\n try {\n this.destination.error(err);\n } finally {\n this.unsubscribe();\n }\n }\n\n protected _complete(): void {\n try {\n this.destination.complete();\n } finally {\n this.unsubscribe();\n }\n }\n}\n\n/**\n * This bind is captured here because we want to be able to have\n * compatibility with monoid libraries that tend to use a method named\n * `bind`. In particular, a library called Monio requires this.\n */\nconst _bind = Function.prototype.bind;\n\nfunction bind any>(fn: Fn, thisArg: any): Fn {\n return _bind.call(fn, thisArg);\n}\n\n/**\n * Internal optimization only, DO NOT EXPOSE.\n * @internal\n */\nclass ConsumerObserver implements Observer {\n constructor(private partialObserver: Partial>) {}\n\n next(value: T): void {\n const { partialObserver } = this;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n\n error(err: any): void {\n const { partialObserver } = this;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n } catch (error) {\n handleUnhandledError(error);\n }\n } else {\n handleUnhandledError(err);\n }\n }\n\n complete(): void {\n const { partialObserver } = this;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n}\n\nexport class SafeSubscriber extends Subscriber {\n constructor(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((e?: any) => void) | null,\n complete?: (() => void) | null\n ) {\n super();\n\n let partialObserver: Partial>;\n if (isFunction(observerOrNext) || !observerOrNext) {\n // The first argument is a function, not an observer. The next\n // two arguments *could* be observers, or they could be empty.\n partialObserver = {\n next: (observerOrNext ?? undefined) as (((value: T) => void) | undefined),\n error: error ?? undefined,\n complete: complete ?? undefined,\n };\n } else {\n // The first argument is a partial observer.\n let context: any;\n if (this && config.useDeprecatedNextContext) {\n // This is a deprecated path that made `this.unsubscribe()` available in\n // next handler functions passed to subscribe. This only exists behind a flag\n // now, as it is *very* slow.\n context = Object.create(observerOrNext);\n context.unsubscribe = () => this.unsubscribe();\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context),\n error: observerOrNext.error && bind(observerOrNext.error, context),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context),\n };\n } else {\n // The \"normal\" path. Just use the partial observer directly.\n partialObserver = observerOrNext;\n }\n }\n\n // Wrap the partial observer to ensure it's a full observer, and\n // make sure proper error handling is accounted for.\n this.destination = new ConsumerObserver(partialObserver);\n }\n}\n\nfunction handleUnhandledError(error: any) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n } else {\n // Ideal path, we report this as an unhandled error,\n // which is thrown on a new call stack.\n reportUnhandledError(error);\n }\n}\n\n/**\n * An error handler used when no error handler was supplied\n * to the SafeSubscriber -- meaning no error handler was supplied\n * do the `subscribe` call on our observable.\n * @param err The error to handle\n */\nfunction defaultErrorHandler(err: any) {\n throw err;\n}\n\n/**\n * A handler for notifications that cannot be sent to a stopped subscriber.\n * @param notification The notification being sent\n * @param subscriber The stopped subscriber\n */\nfunction handleStoppedNotification(notification: ObservableNotification, subscriber: Subscriber) {\n const { onStoppedNotification } = config;\n onStoppedNotification && timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));\n}\n\n/**\n * The observer used as a stub for subscriptions where the user did not\n * pass any arguments to `subscribe`. Comes with the default error handling\n * behavior.\n */\nexport const EMPTY_OBSERVER: Readonly> & { closed: true } = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n", "/**\n * Symbol.observable or a string \"@@observable\". Used for interop\n *\n * @deprecated We will no longer be exporting this symbol in upcoming versions of RxJS.\n * Instead polyfill and use Symbol.observable directly *or* use https://www.npmjs.com/package/symbol-observable\n */\nexport const observable: string | symbol = (() => (typeof Symbol === 'function' && Symbol.observable) || '@@observable')();\n", "/**\n * This function takes one parameter and just returns it. Simply put,\n * this is like `(x: T): T => x`.\n *\n * ## Examples\n *\n * This is useful in some cases when using things like `mergeMap`\n *\n * ```ts\n * import { interval, take, map, range, mergeMap, identity } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(5));\n *\n * const result$ = source$.pipe(\n * map(i => range(i)),\n * mergeMap(identity) // same as mergeMap(x => x)\n * );\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * Or when you want to selectively apply an operator\n *\n * ```ts\n * import { interval, take, identity } from 'rxjs';\n *\n * const shouldLimit = () => Math.random() < 0.5;\n *\n * const source$ = interval(1000);\n *\n * const result$ = source$.pipe(shouldLimit() ? take(5) : identity);\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * @param x Any value that is returned by this function\n * @returns The value passed as the first parameter to this function\n */\nexport function identity(x: T): T {\n return x;\n}\n", "import { identity } from './identity';\nimport { UnaryFunction } from '../types';\n\nexport function pipe(): typeof identity;\nexport function pipe(fn1: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction, fn3: UnaryFunction): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction,\n ...fns: UnaryFunction[]\n): UnaryFunction;\n\n/**\n * pipe() can be called on one or more functions, each of which can take one argument (\"UnaryFunction\")\n * and uses it to return a value.\n * It returns a function that takes one argument, passes it to the first UnaryFunction, and then\n * passes the result to the next one, passes that result to the next one, and so on. \n */\nexport function pipe(...fns: Array>): UnaryFunction {\n return pipeFromArray(fns);\n}\n\n/** @internal */\nexport function pipeFromArray(fns: Array>): UnaryFunction {\n if (fns.length === 0) {\n return identity as UnaryFunction;\n }\n\n if (fns.length === 1) {\n return fns[0];\n }\n\n return function piped(input: T): R {\n return fns.reduce((prev: any, fn: UnaryFunction) => fn(prev), input as any);\n };\n}\n", "import { Operator } from './Operator';\nimport { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription, Subscription } from './Subscription';\nimport { TeardownLogic, OperatorFunction, Subscribable, Observer } from './types';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A representation of any set of values over any amount of time. This is the most basic building block\n * of RxJS.\n *\n * @class Observable\n */\nexport class Observable implements Subscribable {\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n source: Observable | undefined;\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n operator: Operator | undefined;\n\n /**\n * @constructor\n * @param {Function} subscribe the function that is called when the Observable is\n * initially subscribed to. This function is given a Subscriber, to which new values\n * can be `next`ed, or an `error` method can be called to raise an error, or\n * `complete` can be called to notify of a successful completion.\n */\n constructor(subscribe?: (this: Observable, subscriber: Subscriber) => TeardownLogic) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n\n // HACK: Since TypeScript inherits static properties too, we have to\n // fight against TypeScript here so Subject can have a different static create signature\n /**\n * Creates a new Observable by calling the Observable constructor\n * @owner Observable\n * @method create\n * @param {Function} subscribe? the subscriber function to be passed to the Observable constructor\n * @return {Observable} a new observable\n * @nocollapse\n * @deprecated Use `new Observable()` instead. Will be removed in v8.\n */\n static create: (...args: any[]) => any = (subscribe?: (subscriber: Subscriber) => TeardownLogic) => {\n return new Observable(subscribe);\n };\n\n /**\n * Creates a new Observable, with this Observable instance as the source, and the passed\n * operator defined as the new observable's operator.\n * @method lift\n * @param operator the operator defining the operation to take on the observable\n * @return a new observable with the Operator applied\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * If you have implemented an operator using `lift`, it is recommended that you create an\n * operator by simply returning `new Observable()` directly. See \"Creating new operators from\n * scratch\" section here: https://rxjs.dev/guide/operators\n */\n lift(operator?: Operator): Observable {\n const observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n }\n\n subscribe(observerOrNext?: Partial> | ((value: T) => void)): Subscription;\n /** @deprecated Instead of passing separate callback arguments, use an observer argument. Signatures taking separate callback arguments will be removed in v8. Details: https://rxjs.dev/deprecations/subscribe-arguments */\n subscribe(next?: ((value: T) => void) | null, error?: ((error: any) => void) | null, complete?: (() => void) | null): Subscription;\n /**\n * Invokes an execution of an Observable and registers Observer handlers for notifications it will emit.\n *\n * Use it when you have all these Observables, but still nothing is happening.\n *\n * `subscribe` is not a regular operator, but a method that calls Observable's internal `subscribe` function. It\n * might be for example a function that you passed to Observable's constructor, but most of the time it is\n * a library implementation, which defines what will be emitted by an Observable, and when it be will emitted. This means\n * that calling `subscribe` is actually the moment when Observable starts its work, not when it is created, as it is often\n * the thought.\n *\n * Apart from starting the execution of an Observable, this method allows you to listen for values\n * that an Observable emits, as well as for when it completes or errors. You can achieve this in two\n * of the following ways.\n *\n * The first way is creating an object that implements {@link Observer} interface. It should have methods\n * defined by that interface, but note that it should be just a regular JavaScript object, which you can create\n * yourself in any way you want (ES6 class, classic function constructor, object literal etc.). In particular, do\n * not attempt to use any RxJS implementation details to create Observers - you don't need them. Remember also\n * that your object does not have to implement all methods. If you find yourself creating a method that doesn't\n * do anything, you can simply omit it. Note however, if the `error` method is not provided and an error happens,\n * it will be thrown asynchronously. Errors thrown asynchronously cannot be caught using `try`/`catch`. Instead,\n * use the {@link onUnhandledError} configuration option or use a runtime handler (like `window.onerror` or\n * `process.on('error)`) to be notified of unhandled errors. Because of this, it's recommended that you provide\n * an `error` method to avoid missing thrown errors.\n *\n * The second way is to give up on Observer object altogether and simply provide callback functions in place of its methods.\n * This means you can provide three functions as arguments to `subscribe`, where the first function is equivalent\n * of a `next` method, the second of an `error` method and the third of a `complete` method. Just as in case of an Observer,\n * if you do not need to listen for something, you can omit a function by passing `undefined` or `null`,\n * since `subscribe` recognizes these functions by where they were placed in function call. When it comes\n * to the `error` function, as with an Observer, if not provided, errors emitted by an Observable will be thrown asynchronously.\n *\n * You can, however, subscribe with no parameters at all. This may be the case where you're not interested in terminal events\n * and you also handled emissions internally by using operators (e.g. using `tap`).\n *\n * Whichever style of calling `subscribe` you use, in both cases it returns a Subscription object.\n * This object allows you to call `unsubscribe` on it, which in turn will stop the work that an Observable does and will clean\n * up all resources that an Observable used. Note that cancelling a subscription will not call `complete` callback\n * provided to `subscribe` function, which is reserved for a regular completion signal that comes from an Observable.\n *\n * Remember that callbacks provided to `subscribe` are not guaranteed to be called asynchronously.\n * It is an Observable itself that decides when these functions will be called. For example {@link of}\n * by default emits all its values synchronously. Always check documentation for how given Observable\n * will behave when subscribed and if its default behavior can be modified with a `scheduler`.\n *\n * #### Examples\n *\n * Subscribe with an {@link guide/observer Observer}\n *\n * ```ts\n * import { of } from 'rxjs';\n *\n * const sumObserver = {\n * sum: 0,\n * next(value) {\n * console.log('Adding: ' + value);\n * this.sum = this.sum + value;\n * },\n * error() {\n * // We actually could just remove this method,\n * // since we do not really care about errors right now.\n * },\n * complete() {\n * console.log('Sum equals: ' + this.sum);\n * }\n * };\n *\n * of(1, 2, 3) // Synchronously emits 1, 2, 3 and then completes.\n * .subscribe(sumObserver);\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Subscribe with functions ({@link deprecations/subscribe-arguments deprecated})\n *\n * ```ts\n * import { of } from 'rxjs'\n *\n * let sum = 0;\n *\n * of(1, 2, 3).subscribe(\n * value => {\n * console.log('Adding: ' + value);\n * sum = sum + value;\n * },\n * undefined,\n * () => console.log('Sum equals: ' + sum)\n * );\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Cancel a subscription\n *\n * ```ts\n * import { interval } from 'rxjs';\n *\n * const subscription = interval(1000).subscribe({\n * next(num) {\n * console.log(num)\n * },\n * complete() {\n * // Will not be called, even when cancelling subscription.\n * console.log('completed!');\n * }\n * });\n *\n * setTimeout(() => {\n * subscription.unsubscribe();\n * console.log('unsubscribed!');\n * }, 2500);\n *\n * // Logs:\n * // 0 after 1s\n * // 1 after 2s\n * // 'unsubscribed!' after 2.5s\n * ```\n *\n * @param {Observer|Function} observerOrNext (optional) Either an observer with methods to be called,\n * or the first of three possible handlers, which is the handler for each value emitted from the subscribed\n * Observable.\n * @param {Function} error (optional) A handler for a terminal event resulting from an error. If no error handler is provided,\n * the error will be thrown asynchronously as unhandled.\n * @param {Function} complete (optional) A handler for a terminal event resulting from successful completion.\n * @return {Subscription} a subscription reference to the registered handlers\n * @method subscribe\n */\n subscribe(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((error: any) => void) | null,\n complete?: (() => void) | null\n ): Subscription {\n const subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n\n errorContext(() => {\n const { operator, source } = this;\n subscriber.add(\n operator\n ? // We're dealing with a subscription in the\n // operator chain to one of our lifted operators.\n operator.call(subscriber, source)\n : source\n ? // If `source` has a value, but `operator` does not, something that\n // had intimate knowledge of our API, like our `Subject`, must have\n // set it. We're going to just call `_subscribe` directly.\n this._subscribe(subscriber)\n : // In all other cases, we're likely wrapping a user-provided initializer\n // function, so we need to catch errors and handle them appropriately.\n this._trySubscribe(subscriber)\n );\n });\n\n return subscriber;\n }\n\n /** @internal */\n protected _trySubscribe(sink: Subscriber): TeardownLogic {\n try {\n return this._subscribe(sink);\n } catch (err) {\n // We don't need to return anything in this case,\n // because it's just going to try to `add()` to a subscription\n // above.\n sink.error(err);\n }\n }\n\n /**\n * Used as a NON-CANCELLABLE means of subscribing to an observable, for use with\n * APIs that expect promises, like `async/await`. You cannot unsubscribe from this.\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * #### Example\n *\n * ```ts\n * import { interval, take } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(4));\n *\n * async function getTotal() {\n * let total = 0;\n *\n * await source$.forEach(value => {\n * total += value;\n * console.log('observable -> ' + value);\n * });\n *\n * return total;\n * }\n *\n * getTotal().then(\n * total => console.log('Total: ' + total)\n * );\n *\n * // Expected:\n * // 'observable -> 0'\n * // 'observable -> 1'\n * // 'observable -> 2'\n * // 'observable -> 3'\n * // 'Total: 6'\n * ```\n *\n * @param next a handler for each value emitted by the observable\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n */\n forEach(next: (value: T) => void): Promise;\n\n /**\n * @param next a handler for each value emitted by the observable\n * @param promiseCtor a constructor function used to instantiate the Promise\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n * @deprecated Passing a Promise constructor will no longer be available\n * in upcoming versions of RxJS. This is because it adds weight to the library, for very\n * little benefit. If you need this functionality, it is recommended that you either\n * polyfill Promise, or you create an adapter to convert the returned native promise\n * to whatever promise implementation you wanted. Will be removed in v8.\n */\n forEach(next: (value: T) => void, promiseCtor: PromiseConstructorLike): Promise;\n\n forEach(next: (value: T) => void, promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n const subscriber = new SafeSubscriber({\n next: (value) => {\n try {\n next(value);\n } catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n this.subscribe(subscriber);\n }) as Promise;\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): TeardownLogic {\n return this.source?.subscribe(subscriber);\n }\n\n /**\n * An interop point defined by the es7-observable spec https://github.com/zenparsing/es-observable\n * @method Symbol.observable\n * @return {Observable} this instance of the observable\n */\n [Symbol_observable]() {\n return this;\n }\n\n /* tslint:disable:max-line-length */\n pipe(): Observable;\n pipe(op1: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction, op3: OperatorFunction): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction,\n ...operations: OperatorFunction[]\n ): Observable;\n /* tslint:enable:max-line-length */\n\n /**\n * Used to stitch together functional operators into a chain.\n * @method pipe\n * @return {Observable} the Observable result of all of the operators having\n * been called in the order they were passed in.\n *\n * ## Example\n *\n * ```ts\n * import { interval, filter, map, scan } from 'rxjs';\n *\n * interval(1000)\n * .pipe(\n * filter(x => x % 2 === 0),\n * map(x => x + x),\n * scan((acc, x) => acc + x)\n * )\n * .subscribe(x => console.log(x));\n * ```\n */\n pipe(...operations: OperatorFunction[]): Observable {\n return pipeFromArray(operations)(this);\n }\n\n /* tslint:disable:max-line-length */\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: typeof Promise): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: PromiseConstructorLike): Promise;\n /* tslint:enable:max-line-length */\n\n /**\n * Subscribe to this Observable and get a Promise resolving on\n * `complete` with the last emission (if any).\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * @method toPromise\n * @param [promiseCtor] a constructor function used to instantiate\n * the Promise\n * @return A Promise that resolves with the last value emit, or\n * rejects on an error. If there were no emissions, Promise\n * resolves with undefined.\n * @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise\n */\n toPromise(promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n let value: T | undefined;\n this.subscribe(\n (x: T) => (value = x),\n (err: any) => reject(err),\n () => resolve(value)\n );\n }) as Promise;\n }\n}\n\n/**\n * Decides between a passed promise constructor from consuming code,\n * A default configured promise constructor, and the native promise\n * constructor and returns it. If nothing can be found, it will throw\n * an error.\n * @param promiseCtor The optional promise constructor to passed by consuming code\n */\nfunction getPromiseCtor(promiseCtor: PromiseConstructorLike | undefined) {\n return promiseCtor ?? config.Promise ?? Promise;\n}\n\nfunction isObserver(value: any): value is Observer {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\n\nfunction isSubscriber(value: any): value is Subscriber {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n", "import { Observable } from '../Observable';\nimport { Subscriber } from '../Subscriber';\nimport { OperatorFunction } from '../types';\nimport { isFunction } from './isFunction';\n\n/**\n * Used to determine if an object is an Observable with a lift function.\n */\nexport function hasLift(source: any): source is { lift: InstanceType['lift'] } {\n return isFunction(source?.lift);\n}\n\n/**\n * Creates an `OperatorFunction`. Used to define operators throughout the library in a concise way.\n * @param init The logic to connect the liftedSource to the subscriber at the moment of subscription.\n */\nexport function operate(\n init: (liftedSource: Observable, subscriber: Subscriber) => (() => void) | void\n): OperatorFunction {\n return (source: Observable) => {\n if (hasLift(source)) {\n return source.lift(function (this: Subscriber, liftedSource: Observable) {\n try {\n return init(liftedSource, this);\n } catch (err) {\n this.error(err);\n }\n });\n }\n throw new TypeError('Unable to lift unknown Observable type');\n };\n}\n", "import { Subscriber } from '../Subscriber';\n\n/**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional teardown logic here. This will only be called on teardown if the\n * subscriber itself is not already closed. This is called after all other teardown logic is executed.\n */\nexport function createOperatorSubscriber(\n destination: Subscriber,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n onFinalize?: () => void\n): Subscriber {\n return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize);\n}\n\n/**\n * A generic helper for allowing operators to be created with a Subscriber and\n * use closures to capture necessary state from the operator function itself.\n */\nexport class OperatorSubscriber extends Subscriber {\n /**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional finalization logic here. This will only be called on finalization if the\n * subscriber itself is not already closed. This is called after all other finalization logic is executed.\n * @param shouldUnsubscribe An optional check to see if an unsubscribe call should truly unsubscribe.\n * NOTE: This currently **ONLY** exists to support the strange behavior of {@link groupBy}, where unsubscription\n * to the resulting observable does not actually disconnect from the source if there are active subscriptions\n * to any grouped observable. (DO NOT EXPOSE OR USE EXTERNALLY!!!)\n */\n constructor(\n destination: Subscriber,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n private onFinalize?: () => void,\n private shouldUnsubscribe?: () => boolean\n ) {\n // It's important - for performance reasons - that all of this class's\n // members are initialized and that they are always initialized in the same\n // order. This will ensure that all OperatorSubscriber instances have the\n // same hidden class in V8. This, in turn, will help keep the number of\n // hidden classes involved in property accesses within the base class as\n // low as possible. If the number of hidden classes involved exceeds four,\n // the property accesses will become megamorphic and performance penalties\n // will be incurred - i.e. inline caches won't be used.\n //\n // The reasons for ensuring all instances have the same hidden class are\n // further discussed in this blog post from Benedikt Meurer:\n // https://benediktmeurer.de/2018/03/23/impact-of-polymorphism-on-component-based-frameworks-like-react/\n super(destination);\n this._next = onNext\n ? function (this: OperatorSubscriber, value: T) {\n try {\n onNext(value);\n } catch (err) {\n destination.error(err);\n }\n }\n : super._next;\n this._error = onError\n ? function (this: OperatorSubscriber, err: any) {\n try {\n onError(err);\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._error;\n this._complete = onComplete\n ? function (this: OperatorSubscriber) {\n try {\n onComplete();\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._complete;\n }\n\n unsubscribe() {\n if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {\n const { closed } = this;\n super.unsubscribe();\n // Execute additional teardown if we have any and we didn't already do so.\n !closed && this.onFinalize?.();\n }\n }\n}\n", "import { Subscription } from '../Subscription';\n\ninterface AnimationFrameProvider {\n schedule(callback: FrameRequestCallback): Subscription;\n requestAnimationFrame: typeof requestAnimationFrame;\n cancelAnimationFrame: typeof cancelAnimationFrame;\n delegate:\n | {\n requestAnimationFrame: typeof requestAnimationFrame;\n cancelAnimationFrame: typeof cancelAnimationFrame;\n }\n | undefined;\n}\n\nexport const animationFrameProvider: AnimationFrameProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n schedule(callback) {\n let request = requestAnimationFrame;\n let cancel: typeof cancelAnimationFrame | undefined = cancelAnimationFrame;\n const { delegate } = animationFrameProvider;\n if (delegate) {\n request = delegate.requestAnimationFrame;\n cancel = delegate.cancelAnimationFrame;\n }\n const handle = request((timestamp) => {\n // Clear the cancel function. The request has been fulfilled, so\n // attempting to cancel the request upon unsubscription would be\n // pointless.\n cancel = undefined;\n callback(timestamp);\n });\n return new Subscription(() => cancel?.(handle));\n },\n requestAnimationFrame(...args) {\n const { delegate } = animationFrameProvider;\n return (delegate?.requestAnimationFrame || requestAnimationFrame)(...args);\n },\n cancelAnimationFrame(...args) {\n const { delegate } = animationFrameProvider;\n return (delegate?.cancelAnimationFrame || cancelAnimationFrame)(...args);\n },\n delegate: undefined,\n};\n", "import { createErrorClass } from './createErrorClass';\n\nexport interface ObjectUnsubscribedError extends Error {}\n\nexport interface ObjectUnsubscribedErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (): ObjectUnsubscribedError;\n}\n\n/**\n * An error thrown when an action is invalid because the object has been\n * unsubscribed.\n *\n * @see {@link Subject}\n * @see {@link BehaviorSubject}\n *\n * @class ObjectUnsubscribedError\n */\nexport const ObjectUnsubscribedError: ObjectUnsubscribedErrorCtor = createErrorClass(\n (_super) =>\n function ObjectUnsubscribedErrorImpl(this: any) {\n _super(this);\n this.name = 'ObjectUnsubscribedError';\n this.message = 'object unsubscribed';\n }\n);\n", "import { Operator } from './Operator';\nimport { Observable } from './Observable';\nimport { Subscriber } from './Subscriber';\nimport { Subscription, EMPTY_SUBSCRIPTION } from './Subscription';\nimport { Observer, SubscriptionLike, TeardownLogic } from './types';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { arrRemove } from './util/arrRemove';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A Subject is a special type of Observable that allows values to be\n * multicasted to many Observers. Subjects are like EventEmitters.\n *\n * Every Subject is an Observable and an Observer. You can subscribe to a\n * Subject, and you can call next to feed values as well as error and complete.\n */\nexport class Subject extends Observable implements SubscriptionLike {\n closed = false;\n\n private currentObservers: Observer[] | null = null;\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n observers: Observer[] = [];\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n isStopped = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n hasError = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n thrownError: any = null;\n\n /**\n * Creates a \"subject\" by basically gluing an observer to an observable.\n *\n * @nocollapse\n * @deprecated Recommended you do not use. Will be removed at some point in the future. Plans for replacement still under discussion.\n */\n static create: (...args: any[]) => any = (destination: Observer, source: Observable): AnonymousSubject => {\n return new AnonymousSubject(destination, source);\n };\n\n constructor() {\n // NOTE: This must be here to obscure Observable's constructor.\n super();\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n lift(operator: Operator): Observable {\n const subject = new AnonymousSubject(this, this);\n subject.operator = operator as any;\n return subject as any;\n }\n\n /** @internal */\n protected _throwIfClosed() {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n }\n\n next(value: T) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n if (!this.currentObservers) {\n this.currentObservers = Array.from(this.observers);\n }\n for (const observer of this.currentObservers) {\n observer.next(value);\n }\n }\n });\n }\n\n error(err: any) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.hasError = this.isStopped = true;\n this.thrownError = err;\n const { observers } = this;\n while (observers.length) {\n observers.shift()!.error(err);\n }\n }\n });\n }\n\n complete() {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.isStopped = true;\n const { observers } = this;\n while (observers.length) {\n observers.shift()!.complete();\n }\n }\n });\n }\n\n unsubscribe() {\n this.isStopped = this.closed = true;\n this.observers = this.currentObservers = null!;\n }\n\n get observed() {\n return this.observers?.length > 0;\n }\n\n /** @internal */\n protected _trySubscribe(subscriber: Subscriber): TeardownLogic {\n this._throwIfClosed();\n return super._trySubscribe(subscriber);\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n this._throwIfClosed();\n this._checkFinalizedStatuses(subscriber);\n return this._innerSubscribe(subscriber);\n }\n\n /** @internal */\n protected _innerSubscribe(subscriber: Subscriber) {\n const { hasError, isStopped, observers } = this;\n if (hasError || isStopped) {\n return EMPTY_SUBSCRIPTION;\n }\n this.currentObservers = null;\n observers.push(subscriber);\n return new Subscription(() => {\n this.currentObservers = null;\n arrRemove(observers, subscriber);\n });\n }\n\n /** @internal */\n protected _checkFinalizedStatuses(subscriber: Subscriber) {\n const { hasError, thrownError, isStopped } = this;\n if (hasError) {\n subscriber.error(thrownError);\n } else if (isStopped) {\n subscriber.complete();\n }\n }\n\n /**\n * Creates a new Observable with this Subject as the source. You can do this\n * to create custom Observer-side logic of the Subject and conceal it from\n * code that uses the Observable.\n * @return {Observable} Observable that the Subject casts to\n */\n asObservable(): Observable {\n const observable: any = new Observable();\n observable.source = this;\n return observable;\n }\n}\n\n/**\n * @class AnonymousSubject\n */\nexport class AnonymousSubject extends Subject {\n constructor(\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n public destination?: Observer,\n source?: Observable\n ) {\n super();\n this.source = source;\n }\n\n next(value: T) {\n this.destination?.next?.(value);\n }\n\n error(err: any) {\n this.destination?.error?.(err);\n }\n\n complete() {\n this.destination?.complete?.();\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n return this.source?.subscribe(subscriber) ?? EMPTY_SUBSCRIPTION;\n }\n}\n", "import { TimestampProvider } from '../types';\n\ninterface DateTimestampProvider extends TimestampProvider {\n delegate: TimestampProvider | undefined;\n}\n\nexport const dateTimestampProvider: DateTimestampProvider = {\n now() {\n // Use the variable rather than `this` so that the function can be called\n // without being bound to the provider.\n return (dateTimestampProvider.delegate || Date).now();\n },\n delegate: undefined,\n};\n", "import { Subject } from './Subject';\nimport { TimestampProvider } from './types';\nimport { Subscriber } from './Subscriber';\nimport { Subscription } from './Subscription';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\n\n/**\n * A variant of {@link Subject} that \"replays\" old values to new subscribers by emitting them when they first subscribe.\n *\n * `ReplaySubject` has an internal buffer that will store a specified number of values that it has observed. Like `Subject`,\n * `ReplaySubject` \"observes\" values by having them passed to its `next` method. When it observes a value, it will store that\n * value for a time determined by the configuration of the `ReplaySubject`, as passed to its constructor.\n *\n * When a new subscriber subscribes to the `ReplaySubject` instance, it will synchronously emit all values in its buffer in\n * a First-In-First-Out (FIFO) manner. The `ReplaySubject` will also complete, if it has observed completion; and it will\n * error if it has observed an error.\n *\n * There are two main configuration items to be concerned with:\n *\n * 1. `bufferSize` - This will determine how many items are stored in the buffer, defaults to infinite.\n * 2. `windowTime` - The amount of time to hold a value in the buffer before removing it from the buffer.\n *\n * Both configurations may exist simultaneously. So if you would like to buffer a maximum of 3 values, as long as the values\n * are less than 2 seconds old, you could do so with a `new ReplaySubject(3, 2000)`.\n *\n * ### Differences with BehaviorSubject\n *\n * `BehaviorSubject` is similar to `new ReplaySubject(1)`, with a couple of exceptions:\n *\n * 1. `BehaviorSubject` comes \"primed\" with a single value upon construction.\n * 2. `ReplaySubject` will replay values, even after observing an error, where `BehaviorSubject` will not.\n *\n * @see {@link Subject}\n * @see {@link BehaviorSubject}\n * @see {@link shareReplay}\n */\nexport class ReplaySubject extends Subject {\n private _buffer: (T | number)[] = [];\n private _infiniteTimeWindow = true;\n\n /**\n * @param bufferSize The size of the buffer to replay on subscription\n * @param windowTime The amount of time the buffered items will stay buffered\n * @param timestampProvider An object with a `now()` method that provides the current timestamp. This is used to\n * calculate the amount of time something has been buffered.\n */\n constructor(\n private _bufferSize = Infinity,\n private _windowTime = Infinity,\n private _timestampProvider: TimestampProvider = dateTimestampProvider\n ) {\n super();\n this._infiniteTimeWindow = _windowTime === Infinity;\n this._bufferSize = Math.max(1, _bufferSize);\n this._windowTime = Math.max(1, _windowTime);\n }\n\n next(value: T): void {\n const { isStopped, _buffer, _infiniteTimeWindow, _timestampProvider, _windowTime } = this;\n if (!isStopped) {\n _buffer.push(value);\n !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime);\n }\n this._trimBuffer();\n super.next(value);\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n this._throwIfClosed();\n this._trimBuffer();\n\n const subscription = this._innerSubscribe(subscriber);\n\n const { _infiniteTimeWindow, _buffer } = this;\n // We use a copy here, so reentrant code does not mutate our array while we're\n // emitting it to a new subscriber.\n const copy = _buffer.slice();\n for (let i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) {\n subscriber.next(copy[i] as T);\n }\n\n this._checkFinalizedStatuses(subscriber);\n\n return subscription;\n }\n\n private _trimBuffer() {\n const { _bufferSize, _timestampProvider, _buffer, _infiniteTimeWindow } = this;\n // If we don't have an infinite buffer size, and we're over the length,\n // use splice to truncate the old buffer values off. Note that we have to\n // double the size for instances where we're not using an infinite time window\n // because we're storing the values and the timestamps in the same array.\n const adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize;\n _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize);\n\n // Now, if we're not in an infinite time window, remove all values where the time is\n // older than what is allowed.\n if (!_infiniteTimeWindow) {\n const now = _timestampProvider.now();\n let last = 0;\n // Search the array for the first timestamp that isn't expired and\n // truncate the buffer up to that point.\n for (let i = 1; i < _buffer.length && (_buffer[i] as number) <= now; i += 2) {\n last = i;\n }\n last && _buffer.splice(0, last + 1);\n }\n }\n}\n", "import { Scheduler } from '../Scheduler';\nimport { Subscription } from '../Subscription';\nimport { SchedulerAction } from '../types';\n\n/**\n * A unit of work to be executed in a `scheduler`. An action is typically\n * created from within a {@link SchedulerLike} and an RxJS user does not need to concern\n * themselves about creating and manipulating an Action.\n *\n * ```ts\n * class Action extends Subscription {\n * new (scheduler: Scheduler, work: (state?: T) => void);\n * schedule(state?: T, delay: number = 0): Subscription;\n * }\n * ```\n *\n * @class Action\n */\nexport class Action extends Subscription {\n constructor(scheduler: Scheduler, work: (this: SchedulerAction, state?: T) => void) {\n super();\n }\n /**\n * Schedules this action on its parent {@link SchedulerLike} for execution. May be passed\n * some context object, `state`. May happen at some point in the future,\n * according to the `delay` parameter, if specified.\n * @param {T} [state] Some contextual data that the `work` function uses when\n * called by the Scheduler.\n * @param {number} [delay] Time to wait before executing the work, where the\n * time unit is implicit and defined by the Scheduler.\n * @return {void}\n */\n public schedule(state?: T, delay: number = 0): Subscription {\n return this;\n }\n}\n", "import type { TimerHandle } from './timerHandle';\ntype SetIntervalFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearIntervalFunction = (handle: TimerHandle) => void;\n\ninterface IntervalProvider {\n setInterval: SetIntervalFunction;\n clearInterval: ClearIntervalFunction;\n delegate:\n | {\n setInterval: SetIntervalFunction;\n clearInterval: ClearIntervalFunction;\n }\n | undefined;\n}\n\nexport const intervalProvider: IntervalProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setInterval(handler: () => void, timeout?: number, ...args) {\n const { delegate } = intervalProvider;\n if (delegate?.setInterval) {\n return delegate.setInterval(handler, timeout, ...args);\n }\n return setInterval(handler, timeout, ...args);\n },\n clearInterval(handle) {\n const { delegate } = intervalProvider;\n return (delegate?.clearInterval || clearInterval)(handle as any);\n },\n delegate: undefined,\n};\n", "import { Action } from './Action';\nimport { SchedulerAction } from '../types';\nimport { Subscription } from '../Subscription';\nimport { AsyncScheduler } from './AsyncScheduler';\nimport { intervalProvider } from './intervalProvider';\nimport { arrRemove } from '../util/arrRemove';\nimport { TimerHandle } from './timerHandle';\n\nexport class AsyncAction extends Action {\n public id: TimerHandle | undefined;\n public state?: T;\n // @ts-ignore: Property has no initializer and is not definitely assigned\n public delay: number;\n protected pending: boolean = false;\n\n constructor(protected scheduler: AsyncScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n public schedule(state?: T, delay: number = 0): Subscription {\n if (this.closed) {\n return this;\n }\n\n // Always replace the current state with the new state.\n this.state = state;\n\n const id = this.id;\n const scheduler = this.scheduler;\n\n //\n // Important implementation note:\n //\n // Actions only execute once by default, unless rescheduled from within the\n // scheduled callback. This allows us to implement single and repeat\n // actions via the same code path, without adding API surface area, as well\n // as mimic traditional recursion but across asynchronous boundaries.\n //\n // However, JS runtimes and timers distinguish between intervals achieved by\n // serial `setTimeout` calls vs. a single `setInterval` call. An interval of\n // serial `setTimeout` calls can be individually delayed, which delays\n // scheduling the next `setTimeout`, and so on. `setInterval` attempts to\n // guarantee the interval callback will be invoked more precisely to the\n // interval period, regardless of load.\n //\n // Therefore, we use `setInterval` to schedule single and repeat actions.\n // If the action reschedules itself with the same delay, the interval is not\n // canceled. If the action doesn't reschedule, or reschedules with a\n // different delay, the interval will be canceled after scheduled callback\n // execution.\n //\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, delay);\n }\n\n // Set the pending flag indicating that this action has been scheduled, or\n // has recursively rescheduled itself.\n this.pending = true;\n\n this.delay = delay;\n // If this action has already an async Id, don't request a new one.\n this.id = this.id ?? this.requestAsyncId(scheduler, this.id, delay);\n\n return this;\n }\n\n protected requestAsyncId(scheduler: AsyncScheduler, _id?: TimerHandle, delay: number = 0): TimerHandle {\n return intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);\n }\n\n protected recycleAsyncId(_scheduler: AsyncScheduler, id?: TimerHandle, delay: number | null = 0): TimerHandle | undefined {\n // If this action is rescheduled with the same delay time, don't clear the interval id.\n if (delay != null && this.delay === delay && this.pending === false) {\n return id;\n }\n // Otherwise, if the action's delay time is different from the current delay,\n // or the action has been rescheduled before it's executed, clear the interval id\n if (id != null) {\n intervalProvider.clearInterval(id);\n }\n\n return undefined;\n }\n\n /**\n * Immediately executes this action and the `work` it contains.\n * @return {any}\n */\n public execute(state: T, delay: number): any {\n if (this.closed) {\n return new Error('executing a cancelled action');\n }\n\n this.pending = false;\n const error = this._execute(state, delay);\n if (error) {\n return error;\n } else if (this.pending === false && this.id != null) {\n // Dequeue if the action didn't reschedule itself. Don't call\n // unsubscribe(), because the action could reschedule later.\n // For example:\n // ```\n // scheduler.schedule(function doWork(counter) {\n // /* ... I'm a busy worker bee ... */\n // var originalAction = this;\n // /* wait 100ms before rescheduling the action */\n // setTimeout(function () {\n // originalAction.schedule(counter + 1);\n // }, 100);\n // }, 1000);\n // ```\n this.id = this.recycleAsyncId(this.scheduler, this.id, null);\n }\n }\n\n protected _execute(state: T, _delay: number): any {\n let errored: boolean = false;\n let errorValue: any;\n try {\n this.work(state);\n } catch (e) {\n errored = true;\n // HACK: Since code elsewhere is relying on the \"truthiness\" of the\n // return here, we can't have it return \"\" or 0 or false.\n // TODO: Clean this up when we refactor schedulers mid-version-8 or so.\n errorValue = e ? e : new Error('Scheduled action threw falsy error');\n }\n if (errored) {\n this.unsubscribe();\n return errorValue;\n }\n }\n\n unsubscribe() {\n if (!this.closed) {\n const { id, scheduler } = this;\n const { actions } = scheduler;\n\n this.work = this.state = this.scheduler = null!;\n this.pending = false;\n\n arrRemove(actions, this);\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, null);\n }\n\n this.delay = null!;\n super.unsubscribe();\n }\n }\n}\n", "import { Action } from './scheduler/Action';\nimport { Subscription } from './Subscription';\nimport { SchedulerLike, SchedulerAction } from './types';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\n\n/**\n * An execution context and a data structure to order tasks and schedule their\n * execution. Provides a notion of (potentially virtual) time, through the\n * `now()` getter method.\n *\n * Each unit of work in a Scheduler is called an `Action`.\n *\n * ```ts\n * class Scheduler {\n * now(): number;\n * schedule(work, delay?, state?): Subscription;\n * }\n * ```\n *\n * @class Scheduler\n * @deprecated Scheduler is an internal implementation detail of RxJS, and\n * should not be used directly. Rather, create your own class and implement\n * {@link SchedulerLike}. Will be made internal in v8.\n */\nexport class Scheduler implements SchedulerLike {\n public static now: () => number = dateTimestampProvider.now;\n\n constructor(private schedulerActionCtor: typeof Action, now: () => number = Scheduler.now) {\n this.now = now;\n }\n\n /**\n * A getter method that returns a number representing the current time\n * (at the time this function was called) according to the scheduler's own\n * internal clock.\n * @return {number} A number that represents the current time. May or may not\n * have a relation to wall-clock time. May or may not refer to a time unit\n * (e.g. milliseconds).\n */\n public now: () => number;\n\n /**\n * Schedules a function, `work`, for execution. May happen at some point in\n * the future, according to the `delay` parameter, if specified. May be passed\n * some context object, `state`, which will be passed to the `work` function.\n *\n * The given arguments will be processed an stored as an Action object in a\n * queue of actions.\n *\n * @param {function(state: ?T): ?Subscription} work A function representing a\n * task, or some unit of work to be executed by the Scheduler.\n * @param {number} [delay] Time to wait before executing the work, where the\n * time unit is implicit and defined by the Scheduler itself.\n * @param {T} [state] Some contextual data that the `work` function uses when\n * called by the Scheduler.\n * @return {Subscription} A subscription in order to be able to unsubscribe\n * the scheduled work.\n */\n public schedule(work: (this: SchedulerAction, state?: T) => void, delay: number = 0, state?: T): Subscription {\n return new this.schedulerActionCtor(this, work).schedule(state, delay);\n }\n}\n", "import { Scheduler } from '../Scheduler';\nimport { Action } from './Action';\nimport { AsyncAction } from './AsyncAction';\nimport { TimerHandle } from './timerHandle';\n\nexport class AsyncScheduler extends Scheduler {\n public actions: Array> = [];\n /**\n * A flag to indicate whether the Scheduler is currently executing a batch of\n * queued actions.\n * @type {boolean}\n * @internal\n */\n public _active: boolean = false;\n /**\n * An internal ID used to track the latest asynchronous task such as those\n * coming from `setTimeout`, `setInterval`, `requestAnimationFrame`, and\n * others.\n * @type {any}\n * @internal\n */\n public _scheduled: TimerHandle | undefined;\n\n constructor(SchedulerAction: typeof Action, now: () => number = Scheduler.now) {\n super(SchedulerAction, now);\n }\n\n public flush(action: AsyncAction): void {\n const { actions } = this;\n\n if (this._active) {\n actions.push(action);\n return;\n }\n\n let error: any;\n this._active = true;\n\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions.shift()!)); // exhaust the scheduler queue\n\n this._active = false;\n\n if (error) {\n while ((action = actions.shift()!)) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n", "import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\n\n/**\n *\n * Async Scheduler\n *\n * Schedule task as if you used setTimeout(task, duration)\n *\n * `async` scheduler schedules tasks asynchronously, by putting them on the JavaScript\n * event loop queue. It is best used to delay tasks in time or to schedule tasks repeating\n * in intervals.\n *\n * If you just want to \"defer\" task, that is to perform it right after currently\n * executing synchronous code ends (commonly achieved by `setTimeout(deferredTask, 0)`),\n * better choice will be the {@link asapScheduler} scheduler.\n *\n * ## Examples\n * Use async scheduler to delay task\n * ```ts\n * import { asyncScheduler } from 'rxjs';\n *\n * const task = () => console.log('it works!');\n *\n * asyncScheduler.schedule(task, 2000);\n *\n * // After 2 seconds logs:\n * // \"it works!\"\n * ```\n *\n * Use async scheduler to repeat task in intervals\n * ```ts\n * import { asyncScheduler } from 'rxjs';\n *\n * function task(state) {\n * console.log(state);\n * this.schedule(state + 1, 1000); // `this` references currently executing Action,\n * // which we reschedule with new state and delay\n * }\n *\n * asyncScheduler.schedule(task, 3000, 0);\n *\n * // Logs:\n * // 0 after 3s\n * // 1 after 4s\n * // 2 after 5s\n * // 3 after 6s\n * ```\n */\n\nexport const asyncScheduler = new AsyncScheduler(AsyncAction);\n\n/**\n * @deprecated Renamed to {@link asyncScheduler}. Will be removed in v8.\n */\nexport const async = asyncScheduler;\n", "import { AsyncAction } from './AsyncAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\nimport { SchedulerAction } from '../types';\nimport { animationFrameProvider } from './animationFrameProvider';\nimport { TimerHandle } from './timerHandle';\n\nexport class AnimationFrameAction extends AsyncAction {\n constructor(protected scheduler: AnimationFrameScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n protected requestAsyncId(scheduler: AnimationFrameScheduler, id?: TimerHandle, delay: number = 0): TimerHandle {\n // If delay is greater than 0, request as an async action.\n if (delay !== null && delay > 0) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n // Push the action to the end of the scheduler queue.\n scheduler.actions.push(this);\n // If an animation frame has already been requested, don't request another\n // one. If an animation frame hasn't been requested yet, request one. Return\n // the current animation frame request id.\n return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider.requestAnimationFrame(() => scheduler.flush(undefined)));\n }\n\n protected recycleAsyncId(scheduler: AnimationFrameScheduler, id?: TimerHandle, delay: number = 0): TimerHandle | undefined {\n // If delay exists and is greater than 0, or if the delay is null (the\n // action wasn't rescheduled) but was originally scheduled as an async\n // action, then recycle as an async action.\n if (delay != null ? delay > 0 : this.delay > 0) {\n return super.recycleAsyncId(scheduler, id, delay);\n }\n // If the scheduler queue has no remaining actions with the same async id,\n // cancel the requested animation frame and set the scheduled flag to\n // undefined so the next AnimationFrameAction will request its own.\n const { actions } = scheduler;\n if (id != null && actions[actions.length - 1]?.id !== id) {\n animationFrameProvider.cancelAnimationFrame(id as number);\n scheduler._scheduled = undefined;\n }\n // Return undefined so the action knows to request a new async id if it's rescheduled.\n return undefined;\n }\n}\n", "import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\n\nexport class AnimationFrameScheduler extends AsyncScheduler {\n public flush(action?: AsyncAction): void {\n this._active = true;\n // The async id that effects a call to flush is stored in _scheduled.\n // Before executing an action, it's necessary to check the action's async\n // id to determine whether it's supposed to be executed in the current\n // flush.\n // Previous implementations of this method used a count to determine this,\n // but that was unsound, as actions that are unsubscribed - i.e. cancelled -\n // are removed from the actions array and that can shift actions that are\n // scheduled to be executed in a subsequent flush into positions at which\n // they are executed within the current flush.\n const flushId = this._scheduled;\n this._scheduled = undefined;\n\n const { actions } = this;\n let error: any;\n action = action || actions.shift()!;\n\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions[0]) && action.id === flushId && actions.shift());\n\n this._active = false;\n\n if (error) {\n while ((action = actions[0]) && action.id === flushId && actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n", "import { AnimationFrameAction } from './AnimationFrameAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\n\n/**\n *\n * Animation Frame Scheduler\n *\n * Perform task when `window.requestAnimationFrame` would fire\n *\n * When `animationFrame` scheduler is used with delay, it will fall back to {@link asyncScheduler} scheduler\n * behaviour.\n *\n * Without delay, `animationFrame` scheduler can be used to create smooth browser animations.\n * It makes sure scheduled task will happen just before next browser content repaint,\n * thus performing animations as efficiently as possible.\n *\n * ## Example\n * Schedule div height animation\n * ```ts\n * // html:
\n * import { animationFrameScheduler } from 'rxjs';\n *\n * const div = document.querySelector('div');\n *\n * animationFrameScheduler.schedule(function(height) {\n * div.style.height = height + \"px\";\n *\n * this.schedule(height + 1); // `this` references currently executing Action,\n * // which we reschedule with new state\n * }, 0, 0);\n *\n * // You will see a div element growing in height\n * ```\n */\n\nexport const animationFrameScheduler = new AnimationFrameScheduler(AnimationFrameAction);\n\n/**\n * @deprecated Renamed to {@link animationFrameScheduler}. Will be removed in v8.\n */\nexport const animationFrame = animationFrameScheduler;\n", "import { Observable } from '../Observable';\nimport { SchedulerLike } from '../types';\n\n/**\n * A simple Observable that emits no items to the Observer and immediately\n * emits a complete notification.\n *\n * Just emits 'complete', and nothing else.\n *\n * ![](empty.png)\n *\n * A simple Observable that only emits the complete notification. It can be used\n * for composing with other Observables, such as in a {@link mergeMap}.\n *\n * ## Examples\n *\n * Log complete notification\n *\n * ```ts\n * import { EMPTY } from 'rxjs';\n *\n * EMPTY.subscribe({\n * next: () => console.log('Next'),\n * complete: () => console.log('Complete!')\n * });\n *\n * // Outputs\n * // Complete!\n * ```\n *\n * Emit the number 7, then complete\n *\n * ```ts\n * import { EMPTY, startWith } from 'rxjs';\n *\n * const result = EMPTY.pipe(startWith(7));\n * result.subscribe(x => console.log(x));\n *\n * // Outputs\n * // 7\n * ```\n *\n * Map and flatten only odd numbers to the sequence `'a'`, `'b'`, `'c'`\n *\n * ```ts\n * import { interval, mergeMap, of, EMPTY } from 'rxjs';\n *\n * const interval$ = interval(1000);\n * const result = interval$.pipe(\n * mergeMap(x => x % 2 === 1 ? of('a', 'b', 'c') : EMPTY),\n * );\n * result.subscribe(x => console.log(x));\n *\n * // Results in the following to the console:\n * // x is equal to the count on the interval, e.g. (0, 1, 2, 3, ...)\n * // x will occur every 1000ms\n * // if x % 2 is equal to 1, print a, b, c (each on its own)\n * // if x % 2 is not equal to 1, nothing will be output\n * ```\n *\n * @see {@link Observable}\n * @see {@link NEVER}\n * @see {@link of}\n * @see {@link throwError}\n */\nexport const EMPTY = new Observable((subscriber) => subscriber.complete());\n\n/**\n * @param scheduler A {@link SchedulerLike} to use for scheduling\n * the emission of the complete notification.\n * @deprecated Replaced with the {@link EMPTY} constant or {@link scheduled} (e.g. `scheduled([], scheduler)`). Will be removed in v8.\n */\nexport function empty(scheduler?: SchedulerLike) {\n return scheduler ? emptyScheduled(scheduler) : EMPTY;\n}\n\nfunction emptyScheduled(scheduler: SchedulerLike) {\n return new Observable((subscriber) => scheduler.schedule(() => subscriber.complete()));\n}\n", "import { SchedulerLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport function isScheduler(value: any): value is SchedulerLike {\n return value && isFunction(value.schedule);\n}\n", "import { SchedulerLike } from '../types';\nimport { isFunction } from './isFunction';\nimport { isScheduler } from './isScheduler';\n\nfunction last(arr: T[]): T | undefined {\n return arr[arr.length - 1];\n}\n\nexport function popResultSelector(args: any[]): ((...args: unknown[]) => unknown) | undefined {\n return isFunction(last(args)) ? args.pop() : undefined;\n}\n\nexport function popScheduler(args: any[]): SchedulerLike | undefined {\n return isScheduler(last(args)) ? args.pop() : undefined;\n}\n\nexport function popNumber(args: any[], defaultValue: number): number {\n return typeof last(args) === 'number' ? args.pop()! : defaultValue;\n}\n", "export const isArrayLike = ((x: any): x is ArrayLike => x && typeof x.length === 'number' && typeof x !== 'function');", "import { isFunction } from \"./isFunction\";\n\n/**\n * Tests to see if the object is \"thennable\".\n * @param value the object to test\n */\nexport function isPromise(value: any): value is PromiseLike {\n return isFunction(value?.then);\n}\n", "import { InteropObservable } from '../types';\nimport { observable as Symbol_observable } from '../symbol/observable';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being Observable (but not necessary an Rx Observable) */\nexport function isInteropObservable(input: any): input is InteropObservable {\n return isFunction(input[Symbol_observable]);\n}\n", "import { isFunction } from './isFunction';\n\nexport function isAsyncIterable(obj: any): obj is AsyncIterable {\n return Symbol.asyncIterator && isFunction(obj?.[Symbol.asyncIterator]);\n}\n", "/**\n * Creates the TypeError to throw if an invalid object is passed to `from` or `scheduled`.\n * @param input The object that was passed.\n */\nexport function createInvalidObservableTypeError(input: any) {\n // TODO: We should create error codes that can be looked up, so this can be less verbose.\n return new TypeError(\n `You provided ${\n input !== null && typeof input === 'object' ? 'an invalid object' : `'${input}'`\n } where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`\n );\n}\n", "export function getSymbolIterator(): symbol {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator' as any;\n }\n\n return Symbol.iterator;\n}\n\nexport const iterator = getSymbolIterator();\n", "import { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being an Iterable */\nexport function isIterable(input: any): input is Iterable {\n return isFunction(input?.[Symbol_iterator]);\n}\n", "import { ReadableStreamLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport async function* readableStreamLikeToAsyncGenerator(readableStream: ReadableStreamLike): AsyncGenerator {\n const reader = readableStream.getReader();\n try {\n while (true) {\n const { value, done } = await reader.read();\n if (done) {\n return;\n }\n yield value!;\n }\n } finally {\n reader.releaseLock();\n }\n}\n\nexport function isReadableStreamLike(obj: any): obj is ReadableStreamLike {\n // We don't want to use instanceof checks because they would return\n // false for instances from another Realm, like an `},XBt=(i,a,f,g,w)=>{const v=i.append("div");v.attr("id",f),g&&v.attr("style",g);const b=v.append("svg").attr("id",a).attr("width","100%").attr("xmlns",WBe);return w&&b.attr("xmlns:xlink",w),b.append("g"),i};function QBt(i,a){return i.append("iframe").attr("id",a).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const lRe=(i,a,f,g)=>{var w,v,b;(w=i.getElementById(a))==null||w.remove(),(v=i.getElementById(f))==null||v.remove(),(b=i.getElementById(g))==null||b.remove()},hRe=async function(i,a,f){var V,Ot,It,jt,xt,Ft;Rgt();const g=WBt(a);a=g.code;const w=o1();Kt.debug(w),a.length>((w==null?void 0:w.maxTextSize)??VBe)&&(a=UBe);const v="#"+i,b="i"+i,E="#"+b,S="d"+i,_="#"+S;let M=Tr("body");const F=w.securityLevel===GBe,R=w.securityLevel===KBe,B=w.fontFamily;if(f!==void 0){if(f&&(f.innerHTML=""),F){const Ct=QBt(Tr(f),b);M=Tr(Ct.nodes()[0].contentDocument.body),M.node().style.margin=0}else M=Tr(f);XBt(M,i,S,`font-family: ${B}`,YBe)}else{if(lRe(document,i,S,b),F){const Ct=QBt(Tr("body"),b);M=Tr(Ct.nodes()[0].contentDocument.body),M.node().style.margin=0}else M=Tr("body");XBt(M,i,S)}let z,Y;try{z=await Ygt(a,{title:g.title})}catch(Ct){z=new vBt("error"),Y=Ct}const nt=M.select(_).node(),ot=z.type,ft=nt.firstChild,wt=ft.firstChild,mt=(Ot=(V=z.renderer).getClasses)==null?void 0:Ot.call(V,a,z),ct=oRe(w,ot,mt,v),rt=document.createElement("style");rt.innerHTML=ct,ft.insertBefore(rt,wt);try{await z.renderer.draw(a,i,jFt,z)}catch(Ct){throw yPe.draw(a,i,jFt),Ct}const it=M.select(`${_} svg`),gt=(jt=(It=z.db).getAccTitle)==null?void 0:jt.call(It),Q=(Ft=(xt=z.db).getAccDescription)==null?void 0:Ft.call(xt);dRe(ot,it,gt,Q),M.select(`[id="${i}"]`).selectAll("foreignobject > *").attr("xmlns",XBe);let dt=M.select(_).node().innerHTML;if(Kt.debug("config.arrowMarkerAbsolute",w.arrowMarkerAbsolute),dt=cRe(dt,F,j1(w.arrowMarkerAbsolute)),F){const Ct=M.select(_+" svg").node();dt=uRe(dt,Ct)}else R||(dt=QL.sanitize(dt,{ADD_TAGS:rRe,ADD_ATTR:iRe}));if(APe(),Y)throw Y;const yt=Tr(F?E:_).node();return yt&&"remove"in yt&&yt.remove(),{svg:dt,bindFunctions:z.db.bindFunctions}};function fRe(i={}){var f;i!=null&&i.fontFamily&&!((f=i.themeVariables)!=null&&f.fontFamily)&&(i.themeVariables||(i.themeVariables={}),i.themeVariables.fontFamily=i.fontFamily),zNe(i),i!=null&&i.theme&&i.theme in Lx?i.themeVariables=Lx[i.theme].getThemeVariables(i.themeVariables):i&&(i.themeVariables=Lx.default.getThemeVariables(i.themeVariables));const a=typeof i=="object"?$Ne(i):zFt();d0t(a.logLevel),Rgt()}const Ygt=(i,a={})=>{const{code:f}=KBt(i);return _Pe(f,a)};function dRe(i,a,f,g){WPe(a,i),YPe(a,f,g,a.attr("id"))}const S9=Object.freeze({render:hRe,parse:sRe,getDiagramFromText:Ygt,initialize:fRe,getConfig:o1,setConfig:qFt,getSiteConfig:zFt,updateSiteConfig:qNe,reset:()=>{wY()},globalReset:()=>{wY(cD)},defaultConfig:cD});d0t(o1().logLevel),wY(o1());const gRe=async()=>{Kt.debug("Loading registered diagrams");const a=(await Promise.allSettled(Object.entries(JL).map(async([f,{detector:g,loader:w}])=>{if(w)try{Bgt(f)}catch{try{const{diagram:b,id:E}=await w();yY(E,b,g)}catch(b){throw Kt.error(`Failed to load external diagram with key ${f}. Removing from detectors.`),delete JL[f],b}}}))).filter(f=>f.status==="rejected");if(a.length>0){Kt.error(`Failed to load ${a.length} external diagrams`);for(const f of a)Kt.error(f);throw new Error(`Failed to load ${a.length} external diagrams`)}},pRe=(i,a,f)=>{Kt.warn(i),DFt(i)?(f&&f(i.str,i.hash),a.push({...i,message:i.str,error:i})):(f&&f(i),i instanceof Error&&a.push({str:i.message,message:i.message,hash:i.name,error:i}))},JBt=async function(i={querySelector:".mermaid"}){try{await bRe(i)}catch(a){if(DFt(a)&&Kt.error(a.str),_2.parseError&&_2.parseError(a),!i.suppressErrors)throw Kt.error("Use the suppressErrors option to suppress these errors"),a}},bRe=async function({postRenderCallback:i,querySelector:a,nodes:f}={querySelector:".mermaid"}){const g=S9.getConfig();Kt.debug(`${i?"":"No "}Callback function found`);let w;if(f)w=f;else if(a)w=document.querySelectorAll(a);else throw new Error("Nodes and querySelector are both undefined");Kt.debug(`Found ${w.length} diagrams`),(g==null?void 0:g.startOnLoad)!==void 0&&(Kt.debug("Start On Load: "+(g==null?void 0:g.startOnLoad)),S9.updateSiteConfig({startOnLoad:g==null?void 0:g.startOnLoad}));const v=new uo.InitIDGenerator(g.deterministicIds,g.deterministicIDSeed);let b;const E=[];for(const S of Array.from(w)){Kt.info("Rendering diagram: "+S.id);/*! Check if previously processed */if(S.getAttribute("data-processed"))continue;S.setAttribute("data-processed","true");const _=`mermaid-${v.next()}`;b=S.innerHTML,b=BL(uo.entityDecode(b)).trim().replace(//gi,"
");const M=uo.detectInit(b);M&&Kt.debug("Detected early reinit: ",M);try{const{svg:F,bindFunctions:R}=await nRt(_,b,S);S.innerHTML=F,i&&await i(_),R&&R(S)}catch(F){pRe(F,E,_2.parseError)}}if(E.length>0)throw E[0]},ZBt=function(i){S9.initialize(i)},wRe=async function(i,a,f){Kt.warn("mermaid.init is deprecated. Please use run instead."),i&&ZBt(i);const g={postRenderCallback:f,querySelector:".mermaid"};typeof a=="string"?g.querySelector=a:a&&(a instanceof HTMLElement?g.nodes=[a]:g.nodes=a),await JBt(g)},mRe=async(i,{lazyLoad:a=!0}={})=>{UPt(...i),a===!1&&await gRe()},tRt=function(){if(_2.startOnLoad){const{startOnLoad:i}=S9.getConfig();i&&_2.run().catch(a=>Kt.error("Mermaid failed to initialize",a))}};if(typeof document<"u"){/*! + * Wait for document loaded before starting the execution + */window.addEventListener("load",tRt,!1)}const vRe=function(i){_2.parseError=i},CY=[];let Xgt=!1;const eRt=async()=>{if(!Xgt){for(Xgt=!0;CY.length>0;){const i=CY.shift();if(i)try{await i()}catch(a){Kt.error("Error executing queue",a)}}Xgt=!1}},yRe=async(i,a)=>new Promise((f,g)=>{const w=()=>new Promise((v,b)=>{S9.parse(i,a).then(E=>{v(E),f(E)},E=>{var S;Kt.error("Error parsing",E),(S=_2.parseError)==null||S.call(_2,E),b(E),g(E)})});CY.push(w),eRt().catch(g)}),nRt=(i,a,f)=>new Promise((g,w)=>{const v=()=>new Promise((b,E)=>{S9.render(i,a,f).then(S=>{b(S),g(S)},S=>{var _;Kt.error("Error parsing",S),(_=_2.parseError)==null||_.call(_2,S),E(S),w(S)})});CY.push(v),eRt().catch(w)}),_2={startOnLoad:!0,mermaidAPI:S9,parse:yRe,render:nRt,init:wRe,run:JBt,registerExternalDiagrams:mRe,initialize:ZBt,parseError:void 0,contentLoaded:tRt,setParseErrorHandler:vRe,detectType:QW};var SY=function(){var i=function(br,An,Nn,Bn){for(Nn=Nn||{},Bn=br.length;Bn--;Nn[br[Bn]]=An);return Nn},a=[1,24],f=[1,25],g=[1,26],w=[1,27],v=[1,28],b=[1,63],E=[1,64],S=[1,65],_=[1,66],M=[1,67],F=[1,68],R=[1,69],B=[1,29],z=[1,30],Y=[1,31],nt=[1,32],ot=[1,33],ft=[1,34],wt=[1,35],mt=[1,36],ct=[1,37],rt=[1,38],it=[1,39],gt=[1,40],Q=[1,41],dt=[1,42],K=[1,43],yt=[1,44],V=[1,45],Ot=[1,46],It=[1,47],jt=[1,48],xt=[1,50],Ft=[1,51],Ct=[1,52],kt=[1,53],Gt=[1,54],Fe=[1,55],Mt=[1,56],pn=[1,57],Ae=[1,58],ye=[1,59],tn=[1,60],sn=[14,42],be=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ne=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Xt=[1,82],_e=[1,83],xe=[1,84],Mn=[1,85],ce=[12,14,42],Br=[12,14,33,42],we=[12,14,33,42,76,77,79,80],Fi=[12,33],mi=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],ga={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:function(An,Nn,Bn,ke,pe,Je,an){var xn=Je.length-1;switch(pe){case 3:ke.setDirection("TB");break;case 4:ke.setDirection("BT");break;case 5:ke.setDirection("RL");break;case 6:ke.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:ke.setC4Type(Je[xn-3]);break;case 19:ke.setTitle(Je[xn].substring(6)),this.$=Je[xn].substring(6);break;case 20:ke.setAccDescription(Je[xn].substring(15)),this.$=Je[xn].substring(15);break;case 21:this.$=Je[xn].trim(),ke.setTitle(this.$);break;case 22:case 23:this.$=Je[xn].trim(),ke.setAccDescription(this.$);break;case 28:case 29:Je[xn].splice(2,0,"ENTERPRISE"),ke.addPersonOrSystemBoundary(...Je[xn]),this.$=Je[xn];break;case 30:ke.addPersonOrSystemBoundary(...Je[xn]),this.$=Je[xn];break;case 31:Je[xn].splice(2,0,"CONTAINER"),ke.addContainerBoundary(...Je[xn]),this.$=Je[xn];break;case 32:ke.addDeploymentNode("node",...Je[xn]),this.$=Je[xn];break;case 33:ke.addDeploymentNode("nodeL",...Je[xn]),this.$=Je[xn];break;case 34:ke.addDeploymentNode("nodeR",...Je[xn]),this.$=Je[xn];break;case 35:ke.popBoundaryParseStack();break;case 39:ke.addPersonOrSystem("person",...Je[xn]),this.$=Je[xn];break;case 40:ke.addPersonOrSystem("external_person",...Je[xn]),this.$=Je[xn];break;case 41:ke.addPersonOrSystem("system",...Je[xn]),this.$=Je[xn];break;case 42:ke.addPersonOrSystem("system_db",...Je[xn]),this.$=Je[xn];break;case 43:ke.addPersonOrSystem("system_queue",...Je[xn]),this.$=Je[xn];break;case 44:ke.addPersonOrSystem("external_system",...Je[xn]),this.$=Je[xn];break;case 45:ke.addPersonOrSystem("external_system_db",...Je[xn]),this.$=Je[xn];break;case 46:ke.addPersonOrSystem("external_system_queue",...Je[xn]),this.$=Je[xn];break;case 47:ke.addContainer("container",...Je[xn]),this.$=Je[xn];break;case 48:ke.addContainer("container_db",...Je[xn]),this.$=Je[xn];break;case 49:ke.addContainer("container_queue",...Je[xn]),this.$=Je[xn];break;case 50:ke.addContainer("external_container",...Je[xn]),this.$=Je[xn];break;case 51:ke.addContainer("external_container_db",...Je[xn]),this.$=Je[xn];break;case 52:ke.addContainer("external_container_queue",...Je[xn]),this.$=Je[xn];break;case 53:ke.addComponent("component",...Je[xn]),this.$=Je[xn];break;case 54:ke.addComponent("component_db",...Je[xn]),this.$=Je[xn];break;case 55:ke.addComponent("component_queue",...Je[xn]),this.$=Je[xn];break;case 56:ke.addComponent("external_component",...Je[xn]),this.$=Je[xn];break;case 57:ke.addComponent("external_component_db",...Je[xn]),this.$=Je[xn];break;case 58:ke.addComponent("external_component_queue",...Je[xn]),this.$=Je[xn];break;case 60:ke.addRel("rel",...Je[xn]),this.$=Je[xn];break;case 61:ke.addRel("birel",...Je[xn]),this.$=Je[xn];break;case 62:ke.addRel("rel_u",...Je[xn]),this.$=Je[xn];break;case 63:ke.addRel("rel_d",...Je[xn]),this.$=Je[xn];break;case 64:ke.addRel("rel_l",...Je[xn]),this.$=Je[xn];break;case 65:ke.addRel("rel_r",...Je[xn]),this.$=Je[xn];break;case 66:ke.addRel("rel_b",...Je[xn]),this.$=Je[xn];break;case 67:Je[xn].splice(0,1),ke.addRel("rel",...Je[xn]),this.$=Je[xn];break;case 68:ke.updateElStyle("update_el_style",...Je[xn]),this.$=Je[xn];break;case 69:ke.updateRelStyle("update_rel_style",...Je[xn]),this.$=Je[xn];break;case 70:ke.updateLayoutConfig("update_layout_config",...Je[xn]),this.$=Je[xn];break;case 71:this.$=[Je[xn]];break;case 72:Je[xn].unshift(Je[xn-1]),this.$=Je[xn];break;case 73:case 75:this.$=Je[xn].trim();break;case 74:let qa={};qa[Je[xn-1].trim()]=Je[xn].trim(),this.$=qa;break;case 76:this.$="";break}},table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:a,23:f,24:g,26:w,28:v,29:49,30:61,32:62,34:b,36:E,37:S,38:_,39:M,40:F,41:R,43:23,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt,51:mt,52:ct,53:rt,54:it,55:gt,56:Q,57:dt,58:K,59:yt,60:V,61:Ot,62:It,63:jt,64:xt,65:Ft,66:Ct,67:kt,68:Gt,69:Fe,70:Mt,71:pn,72:Ae,73:ye,74:tn},{13:70,19:20,20:21,21:22,22:a,23:f,24:g,26:w,28:v,29:49,30:61,32:62,34:b,36:E,37:S,38:_,39:M,40:F,41:R,43:23,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt,51:mt,52:ct,53:rt,54:it,55:gt,56:Q,57:dt,58:K,59:yt,60:V,61:Ot,62:It,63:jt,64:xt,65:Ft,66:Ct,67:kt,68:Gt,69:Fe,70:Mt,71:pn,72:Ae,73:ye,74:tn},{13:71,19:20,20:21,21:22,22:a,23:f,24:g,26:w,28:v,29:49,30:61,32:62,34:b,36:E,37:S,38:_,39:M,40:F,41:R,43:23,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt,51:mt,52:ct,53:rt,54:it,55:gt,56:Q,57:dt,58:K,59:yt,60:V,61:Ot,62:It,63:jt,64:xt,65:Ft,66:Ct,67:kt,68:Gt,69:Fe,70:Mt,71:pn,72:Ae,73:ye,74:tn},{13:72,19:20,20:21,21:22,22:a,23:f,24:g,26:w,28:v,29:49,30:61,32:62,34:b,36:E,37:S,38:_,39:M,40:F,41:R,43:23,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt,51:mt,52:ct,53:rt,54:it,55:gt,56:Q,57:dt,58:K,59:yt,60:V,61:Ot,62:It,63:jt,64:xt,65:Ft,66:Ct,67:kt,68:Gt,69:Fe,70:Mt,71:pn,72:Ae,73:ye,74:tn},{13:73,19:20,20:21,21:22,22:a,23:f,24:g,26:w,28:v,29:49,30:61,32:62,34:b,36:E,37:S,38:_,39:M,40:F,41:R,43:23,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt,51:mt,52:ct,53:rt,54:it,55:gt,56:Q,57:dt,58:K,59:yt,60:V,61:Ot,62:It,63:jt,64:xt,65:Ft,66:Ct,67:kt,68:Gt,69:Fe,70:Mt,71:pn,72:Ae,73:ye,74:tn},{14:[1,74]},i(sn,[2,13],{43:23,29:49,30:61,32:62,20:75,34:b,36:E,37:S,38:_,39:M,40:F,41:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt,51:mt,52:ct,53:rt,54:it,55:gt,56:Q,57:dt,58:K,59:yt,60:V,61:Ot,62:It,63:jt,64:xt,65:Ft,66:Ct,67:kt,68:Gt,69:Fe,70:Mt,71:pn,72:Ae,73:ye,74:tn}),i(sn,[2,14]),i(be,[2,16],{12:[1,76]}),i(sn,[2,36],{12:[1,77]}),i(Ne,[2,19]),i(Ne,[2,20]),{25:[1,78]},{27:[1,79]},i(Ne,[2,23]),{35:80,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:86,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:87,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:88,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:89,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:90,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:91,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:92,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:93,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:94,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:95,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:96,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:97,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:98,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:99,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:100,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:101,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:102,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:103,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:104,75:81,76:Xt,77:_e,79:xe,80:Mn},i(ce,[2,59]),{35:105,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:106,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:107,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:108,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:109,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:110,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:111,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:112,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:113,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:114,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:115,75:81,76:Xt,77:_e,79:xe,80:Mn},{20:116,29:49,30:61,32:62,34:b,36:E,37:S,38:_,39:M,40:F,41:R,43:23,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt,51:mt,52:ct,53:rt,54:it,55:gt,56:Q,57:dt,58:K,59:yt,60:V,61:Ot,62:It,63:jt,64:xt,65:Ft,66:Ct,67:kt,68:Gt,69:Fe,70:Mt,71:pn,72:Ae,73:ye,74:tn},{12:[1,118],33:[1,117]},{35:119,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:120,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:121,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:122,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:123,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:124,75:81,76:Xt,77:_e,79:xe,80:Mn},{35:125,75:81,76:Xt,77:_e,79:xe,80:Mn},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},i(sn,[2,15]),i(be,[2,17],{21:22,19:130,22:a,23:f,24:g,26:w,28:v}),i(sn,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:a,23:f,24:g,26:w,28:v,34:b,36:E,37:S,38:_,39:M,40:F,41:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt,51:mt,52:ct,53:rt,54:it,55:gt,56:Q,57:dt,58:K,59:yt,60:V,61:Ot,62:It,63:jt,64:xt,65:Ft,66:Ct,67:kt,68:Gt,69:Fe,70:Mt,71:pn,72:Ae,73:ye,74:tn}),i(Ne,[2,21]),i(Ne,[2,22]),i(ce,[2,39]),i(Br,[2,71],{75:81,35:132,76:Xt,77:_e,79:xe,80:Mn}),i(we,[2,73]),{78:[1,133]},i(we,[2,75]),i(we,[2,76]),i(ce,[2,40]),i(ce,[2,41]),i(ce,[2,42]),i(ce,[2,43]),i(ce,[2,44]),i(ce,[2,45]),i(ce,[2,46]),i(ce,[2,47]),i(ce,[2,48]),i(ce,[2,49]),i(ce,[2,50]),i(ce,[2,51]),i(ce,[2,52]),i(ce,[2,53]),i(ce,[2,54]),i(ce,[2,55]),i(ce,[2,56]),i(ce,[2,57]),i(ce,[2,58]),i(ce,[2,60]),i(ce,[2,61]),i(ce,[2,62]),i(ce,[2,63]),i(ce,[2,64]),i(ce,[2,65]),i(ce,[2,66]),i(ce,[2,67]),i(ce,[2,68]),i(ce,[2,69]),i(ce,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},i(Fi,[2,28]),i(Fi,[2,29]),i(Fi,[2,30]),i(Fi,[2,31]),i(Fi,[2,32]),i(Fi,[2,33]),i(Fi,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},i(be,[2,18]),i(sn,[2,38]),i(Br,[2,72]),i(we,[2,74]),i(ce,[2,24]),i(ce,[2,35]),i(mi,[2,25]),i(mi,[2,26],{12:[1,138]}),i(mi,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:function(An,Nn){if(Nn.recoverable)this.trace(An);else{var Bn=new Error(An);throw Bn.hash=Nn,Bn}},parse:function(An){var Nn=this,Bn=[0],ke=[],pe=[null],Je=[],an=this.table,xn="",qa=0,xo=0,ko=2,va=1,Ha=Je.slice.call(arguments,1),ds=Object.create(this.lexer),Fu={yy:{}};for(var Zs in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Zs)&&(Fu.yy[Zs]=this.yy[Zs]);ds.setInput(An,Fu.yy),Fu.yy.lexer=ds,Fu.yy.parser=this,typeof ds.yylloc>"u"&&(ds.yylloc={});var d1=ds.yylloc;Je.push(d1);var I2=ds.options&&ds.options.ranges;typeof Fu.yy.parseError=="function"?this.parseError=Fu.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ll(){var Zl;return Zl=ke.pop()||ds.lex()||va,typeof Zl!="number"&&(Zl instanceof Array&&(ke=Zl,Zl=ke.pop()),Zl=Nn.symbols_[Zl]||Zl),Zl}for(var Ic,wc,Ea,gu,ta={},fo,mc,ca,ya;;){if(wc=Bn[Bn.length-1],this.defaultActions[wc]?Ea=this.defaultActions[wc]:((Ic===null||typeof Ic>"u")&&(Ic=ll()),Ea=an[wc]&&an[wc][Ic]),typeof Ea>"u"||!Ea.length||!Ea[0]){var ea="";ya=[];for(fo in an[wc])this.terminals_[fo]&&fo>ko&&ya.push("'"+this.terminals_[fo]+"'");ds.showPosition?ea="Parse error on line "+(qa+1)+`: +`+ds.showPosition()+` +Expecting `+ya.join(", ")+", got '"+(this.terminals_[Ic]||Ic)+"'":ea="Parse error on line "+(qa+1)+": Unexpected "+(Ic==va?"end of input":"'"+(this.terminals_[Ic]||Ic)+"'"),this.parseError(ea,{text:ds.match,token:this.terminals_[Ic]||Ic,line:ds.yylineno,loc:d1,expected:ya})}if(Ea[0]instanceof Array&&Ea.length>1)throw new Error("Parse Error: multiple actions possible at state: "+wc+", token: "+Ic);switch(Ea[0]){case 1:Bn.push(Ic),pe.push(ds.yytext),Je.push(ds.yylloc),Bn.push(Ea[1]),Ic=null,xo=ds.yyleng,xn=ds.yytext,qa=ds.yylineno,d1=ds.yylloc;break;case 2:if(mc=this.productions_[Ea[1]][1],ta.$=pe[pe.length-mc],ta._$={first_line:Je[Je.length-(mc||1)].first_line,last_line:Je[Je.length-1].last_line,first_column:Je[Je.length-(mc||1)].first_column,last_column:Je[Je.length-1].last_column},I2&&(ta._$.range=[Je[Je.length-(mc||1)].range[0],Je[Je.length-1].range[1]]),gu=this.performAction.apply(ta,[xn,xo,qa,Fu.yy,Ea[1],pe,Je].concat(Ha)),typeof gu<"u")return gu;mc&&(Bn=Bn.slice(0,-1*mc*2),pe=pe.slice(0,-1*mc),Je=Je.slice(0,-1*mc)),Bn.push(this.productions_[Ea[1]][0]),pe.push(ta.$),Je.push(ta._$),ca=an[Bn[Bn.length-2]][Bn[Bn.length-1]],Bn.push(ca);break;case 3:return!0}}return!0}},Ss=function(){var br={EOF:1,parseError:function(Nn,Bn){if(this.yy.parser)this.yy.parser.parseError(Nn,Bn);else throw new Error(Nn)},setInput:function(An,Nn){return this.yy=Nn||this.yy||{},this._input=An,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 An=this._input[0];this.yytext+=An,this.yyleng++,this.offset++,this.match+=An,this.matched+=An;var Nn=An.match(/(?:\r\n?|\n).*/g);return Nn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),An},unput:function(An){var Nn=An.length,Bn=An.split(/(?:\r\n?|\n)/g);this._input=An+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Nn),this.offset-=Nn;var ke=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),Bn.length-1&&(this.yylineno-=Bn.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:Bn?(Bn.length===ke.length?this.yylloc.first_column:0)+ke[ke.length-Bn.length].length-Bn[0].length:this.yylloc.first_column-Nn},this.options.ranges&&(this.yylloc.range=[pe[0],pe[0]+this.yyleng-Nn]),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(An){this.unput(this.match.slice(An))},pastInput:function(){var An=this.matched.substr(0,this.matched.length-this.match.length);return(An.length>20?"...":"")+An.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var An=this.match;return An.length<20&&(An+=this._input.substr(0,20-An.length)),(An.substr(0,20)+(An.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var An=this.pastInput(),Nn=new Array(An.length+1).join("-");return An+this.upcomingInput()+` +`+Nn+"^"},test_match:function(An,Nn){var Bn,ke,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))),ke=An[0].match(/(?:\r\n?|\n).*/g),ke&&(this.yylineno+=ke.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ke?ke[ke.length-1].length-ke[ke.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+An[0].length},this.yytext+=An[0],this.match+=An[0],this.matches=An,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(An[0].length),this.matched+=An[0],Bn=this.performAction.call(this,this.yy,this,Nn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Bn)return Bn;if(this._backtrack){for(var Je in pe)this[Je]=pe[Je];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var An,Nn,Bn,ke;this._more||(this.yytext="",this.match="");for(var pe=this._currentRules(),Je=0;JeNn[0].length)){if(Nn=Bn,ke=Je,this.options.backtrack_lexer){if(An=this.test_match(Bn,pe[Je]),An!==!1)return An;if(this._backtrack){Nn=!1;continue}else return!1}else if(!this.options.flex)break}return Nn?(An=this.test_match(Nn,pe[ke]),An!==!1?An:!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 Nn=this.next();return Nn||this.lex()},begin:function(Nn){this.conditionStack.push(Nn)},popState:function(){var Nn=this.conditionStack.length-1;return Nn>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(Nn){return Nn=this.conditionStack.length-1-Math.abs(Nn||0),Nn>=0?this.conditionStack[Nn]:"INITIAL"},pushState:function(Nn){this.begin(Nn)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Nn,Bn,ke,pe){switch(ke){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),26;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:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;case 23:return this.begin("person"),44;case 24:return this.begin("system_ext_queue"),51;case 25:return this.begin("system_ext_db"),50;case 26:return this.begin("system_ext"),49;case 27:return this.begin("system_queue"),48;case 28:return this.begin("system_db"),47;case 29:return this.begin("system"),46;case 30:return this.begin("boundary"),37;case 31:return this.begin("enterprise_boundary"),34;case 32:return this.begin("system_boundary"),36;case 33:return this.begin("container_ext_queue"),57;case 34:return this.begin("container_ext_db"),56;case 35:return this.begin("container_ext"),55;case 36:return this.begin("container_queue"),54;case 37:return this.begin("container_db"),53;case 38:return this.begin("container"),52;case 39:return this.begin("container_boundary"),38;case 40:return this.begin("component_ext_queue"),63;case 41:return this.begin("component_ext_db"),62;case 42:return this.begin("component_ext"),61;case 43:return this.begin("component_queue"),60;case 44:return this.begin("component_db"),59;case 45:return this.begin("component"),58;case 46:return this.begin("node"),39;case 47:return this.begin("node"),39;case 48:return this.begin("node_l"),40;case 49:return this.begin("node_r"),41;case 50:return this.begin("rel"),64;case 51:return this.begin("birel"),65;case 52:return this.begin("rel_u"),66;case 53:return this.begin("rel_u"),66;case 54:return this.begin("rel_d"),67;case 55:return this.begin("rel_d"),67;case 56:return this.begin("rel_l"),68;case 57:return this.begin("rel_l"),68;case 58:return this.begin("rel_r"),69;case 59:return this.begin("rel_r"),69;case 60:return this.begin("rel_b"),70;case 61:return this.begin("rel_index"),71;case 62:return this.begin("update_el_style"),72;case 63:return this.begin("update_rel_style"),73;case 64:return this.begin("update_layout_config"),74;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return br}();ga.lexer=Ss;function za(){this.yy={}}return za.prototype=ga,ga.Parser=za,new za}();SY.parser=SY;const xRe=SY;let Wv=[],y8=[""],ep="global",Yv="",i4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],jF=[],Qgt="",Jgt=!1,_Y=4,AY=2;var rRt;const kRe=function(){return rRt},ERe=function(i){rRt=Ef(i,Re())},TRe=function(i,a,f,g,w,v,b,E,S){if(i==null||a===void 0||a===null||f===void 0||f===null||g===void 0||g===null)return;let _={};const M=jF.find(F=>F.from===a&&F.to===f);if(M?_=M:jF.push(_),_.type=i,_.from=a,_.to=f,_.label={text:g},w==null)_.techn={text:""};else if(typeof w=="object"){let[F,R]=Object.entries(w)[0];_[F]={text:R}}else _.techn={text:w};if(v==null)_.descr={text:""};else if(typeof v=="object"){let[F,R]=Object.entries(v)[0];_[F]={text:R}}else _.descr={text:v};if(typeof b=="object"){let[F,R]=Object.entries(b)[0];_[F]=R}else _.sprite=b;if(typeof E=="object"){let[F,R]=Object.entries(E)[0];_[F]=R}else _.tags=E;if(typeof S=="object"){let[F,R]=Object.entries(S)[0];_[F]=R}else _.link=S;_.wrap=x8()},CRe=function(i,a,f,g,w,v,b){if(a===null||f===null)return;let E={};const S=Wv.find(_=>_.alias===a);if(S&&a===S.alias?E=S:(E.alias=a,Wv.push(E)),f==null?E.label={text:""}:E.label={text:f},g==null)E.descr={text:""};else if(typeof g=="object"){let[_,M]=Object.entries(g)[0];E[_]={text:M}}else E.descr={text:g};if(typeof w=="object"){let[_,M]=Object.entries(w)[0];E[_]=M}else E.sprite=w;if(typeof v=="object"){let[_,M]=Object.entries(v)[0];E[_]=M}else E.tags=v;if(typeof b=="object"){let[_,M]=Object.entries(b)[0];E[_]=M}else E.link=b;E.typeC4Shape={text:i},E.parentBoundary=ep,E.wrap=x8()},SRe=function(i,a,f,g,w,v,b,E){if(a===null||f===null)return;let S={};const _=Wv.find(M=>M.alias===a);if(_&&a===_.alias?S=_:(S.alias=a,Wv.push(S)),f==null?S.label={text:""}:S.label={text:f},g==null)S.techn={text:""};else if(typeof g=="object"){let[M,F]=Object.entries(g)[0];S[M]={text:F}}else S.techn={text:g};if(w==null)S.descr={text:""};else if(typeof w=="object"){let[M,F]=Object.entries(w)[0];S[M]={text:F}}else S.descr={text:w};if(typeof v=="object"){let[M,F]=Object.entries(v)[0];S[M]=F}else S.sprite=v;if(typeof b=="object"){let[M,F]=Object.entries(b)[0];S[M]=F}else S.tags=b;if(typeof E=="object"){let[M,F]=Object.entries(E)[0];S[M]=F}else S.link=E;S.wrap=x8(),S.typeC4Shape={text:i},S.parentBoundary=ep},_Re=function(i,a,f,g,w,v,b,E){if(a===null||f===null)return;let S={};const _=Wv.find(M=>M.alias===a);if(_&&a===_.alias?S=_:(S.alias=a,Wv.push(S)),f==null?S.label={text:""}:S.label={text:f},g==null)S.techn={text:""};else if(typeof g=="object"){let[M,F]=Object.entries(g)[0];S[M]={text:F}}else S.techn={text:g};if(w==null)S.descr={text:""};else if(typeof w=="object"){let[M,F]=Object.entries(w)[0];S[M]={text:F}}else S.descr={text:w};if(typeof v=="object"){let[M,F]=Object.entries(v)[0];S[M]=F}else S.sprite=v;if(typeof b=="object"){let[M,F]=Object.entries(b)[0];S[M]=F}else S.tags=b;if(typeof E=="object"){let[M,F]=Object.entries(E)[0];S[M]=F}else S.link=E;S.wrap=x8(),S.typeC4Shape={text:i},S.parentBoundary=ep},ARe=function(i,a,f,g,w){if(i===null||a===null)return;let v={};const b=i4.find(E=>E.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,i4.push(v)),a==null?v.label={text:""}:v.label={text:a},f==null)v.type={text:"system"};else if(typeof f=="object"){let[E,S]=Object.entries(f)[0];v[E]={text:S}}else v.type={text:f};if(typeof g=="object"){let[E,S]=Object.entries(g)[0];v[E]=S}else v.tags=g;if(typeof w=="object"){let[E,S]=Object.entries(w)[0];v[E]=S}else v.link=w;v.parentBoundary=ep,v.wrap=x8(),Yv=ep,ep=i,y8.push(Yv)},LRe=function(i,a,f,g,w){if(i===null||a===null)return;let v={};const b=i4.find(E=>E.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,i4.push(v)),a==null?v.label={text:""}:v.label={text:a},f==null)v.type={text:"container"};else if(typeof f=="object"){let[E,S]=Object.entries(f)[0];v[E]={text:S}}else v.type={text:f};if(typeof g=="object"){let[E,S]=Object.entries(g)[0];v[E]=S}else v.tags=g;if(typeof w=="object"){let[E,S]=Object.entries(w)[0];v[E]=S}else v.link=w;v.parentBoundary=ep,v.wrap=x8(),Yv=ep,ep=i,y8.push(Yv)},DRe=function(i,a,f,g,w,v,b,E){if(a===null||f===null)return;let S={};const _=i4.find(M=>M.alias===a);if(_&&a===_.alias?S=_:(S.alias=a,i4.push(S)),f==null?S.label={text:""}:S.label={text:f},g==null)S.type={text:"node"};else if(typeof g=="object"){let[M,F]=Object.entries(g)[0];S[M]={text:F}}else S.type={text:g};if(w==null)S.descr={text:""};else if(typeof w=="object"){let[M,F]=Object.entries(w)[0];S[M]={text:F}}else S.descr={text:w};if(typeof b=="object"){let[M,F]=Object.entries(b)[0];S[M]=F}else S.tags=b;if(typeof E=="object"){let[M,F]=Object.entries(E)[0];S[M]=F}else S.link=E;S.nodeType=i,S.parentBoundary=ep,S.wrap=x8(),Yv=ep,ep=a,y8.push(Yv)},MRe=function(){ep=Yv,y8.pop(),Yv=y8.pop(),y8.push(Yv)},IRe=function(i,a,f,g,w,v,b,E,S,_,M){let F=Wv.find(R=>R.alias===a);if(!(F===void 0&&(F=i4.find(R=>R.alias===a),F===void 0))){if(f!=null)if(typeof f=="object"){let[R,B]=Object.entries(f)[0];F[R]=B}else F.bgColor=f;if(g!=null)if(typeof g=="object"){let[R,B]=Object.entries(g)[0];F[R]=B}else F.fontColor=g;if(w!=null)if(typeof w=="object"){let[R,B]=Object.entries(w)[0];F[R]=B}else F.borderColor=w;if(v!=null)if(typeof v=="object"){let[R,B]=Object.entries(v)[0];F[R]=B}else F.shadowing=v;if(b!=null)if(typeof b=="object"){let[R,B]=Object.entries(b)[0];F[R]=B}else F.shape=b;if(E!=null)if(typeof E=="object"){let[R,B]=Object.entries(E)[0];F[R]=B}else F.sprite=E;if(S!=null)if(typeof S=="object"){let[R,B]=Object.entries(S)[0];F[R]=B}else F.techn=S;if(_!=null)if(typeof _=="object"){let[R,B]=Object.entries(_)[0];F[R]=B}else F.legendText=_;if(M!=null)if(typeof M=="object"){let[R,B]=Object.entries(M)[0];F[R]=B}else F.legendSprite=M}},ORe=function(i,a,f,g,w,v,b){const E=jF.find(S=>S.from===a&&S.to===f);if(E!==void 0){if(g!=null)if(typeof g=="object"){let[S,_]=Object.entries(g)[0];E[S]=_}else E.textColor=g;if(w!=null)if(typeof w=="object"){let[S,_]=Object.entries(w)[0];E[S]=_}else E.lineColor=w;if(v!=null)if(typeof v=="object"){let[S,_]=Object.entries(v)[0];E[S]=parseInt(_)}else E.offsetX=parseInt(v);if(b!=null)if(typeof b=="object"){let[S,_]=Object.entries(b)[0];E[S]=parseInt(_)}else E.offsetY=parseInt(b)}},NRe=function(i,a,f){let g=_Y,w=AY;if(typeof a=="object"){const v=Object.values(a)[0];g=parseInt(v)}else g=parseInt(a);if(typeof f=="object"){const v=Object.values(f)[0];w=parseInt(v)}else w=parseInt(f);g>=1&&(_Y=g),w>=1&&(AY=w)},PRe=function(){return _Y},FRe=function(){return AY},BRe=function(){return ep},RRe=function(){return Yv},iRt=function(i){return i==null?Wv:Wv.filter(a=>a.parentBoundary===i)},jRe=function(i){return Wv.find(a=>a.alias===i)},$Re=function(i){return Object.keys(iRt(i))},zRe=function(i){return i==null?i4:i4.filter(a=>a.parentBoundary===i)},qRe=function(){return jF},HRe=function(){return Qgt},VRe=function(i){Jgt=i},x8=function(){return Jgt},Zgt={addPersonOrSystem:CRe,addPersonOrSystemBoundary:ARe,addContainer:SRe,addContainerBoundary:LRe,addComponent:_Re,addDeploymentNode:DRe,popBoundaryParseStack:MRe,addRel:TRe,updateElStyle:IRe,updateRelStyle:ORe,updateLayoutConfig:NRe,autoWrap:x8,setWrap:VRe,getC4ShapeArray:iRt,getC4Shape:jRe,getC4ShapeKeys:$Re,getBoundarys:zRe,getCurrentBoundaryParse:BRe,getParentBoundaryParse:RRe,getRels:qRe,getTitle:HRe,getC4Type:kRe,getC4ShapeInRow:PRe,getC4BoundaryInRow:FRe,setAccTitle:og,getAccTitle:Xg,getAccDescription:Jg,setAccDescription:Qg,getConfig:()=>Re().c4,clear:function(){Wv=[],i4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Yv="",ep="global",y8=[""],jF=[],y8=[""],Qgt="",Jgt=!1,_Y=4,AY=2},LINETYPE:{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},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:function(i){Qgt=Ef(i,Re())},setC4Type:ERe},LY=(i,a)=>{const f=i.append("rect");if(f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),a.rx!==void 0&&f.attr("rx",a.rx),a.ry!==void 0&&f.attr("ry",a.ry),a.attrs!==void 0)for(const g in a.attrs)f.attr(g,a.attrs[g]);return a.class!==void 0&&f.attr("class",a.class),f},sRt=(i,a)=>{const f={x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,stroke:a.stroke,class:"rect"};LY(i,f).lower()},URe=(i,a)=>{const f=a.text.replace(xF," "),g=i.append("text");g.attr("x",a.x),g.attr("y",a.y),g.attr("class","legend"),g.style("text-anchor",a.anchor),a.class!==void 0&&g.attr("class",a.class);const w=g.append("tspan");return w.attr("x",a.x+a.textMargin*2),w.text(f),g},GRe=(i,a,f,g)=>{const w=i.append("image");w.attr("x",a),w.attr("y",f);const v=h8(g);w.attr("xlink:href",v)},KRe=(i,a,f,g)=>{const w=i.append("use");w.attr("x",a),w.attr("y",f);const v=h8(g);w.attr("xlink:href",`#${v}`)},_9=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),tpt=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),ept=function(i,a){return LY(i,a)},aRt=function(i,a,f,g,w,v){const b=i.append("image");b.attr("width",a),b.attr("height",f),b.attr("x",g),b.attr("y",w);let E=v.startsWith("data:image/png;base64")?v:h8(v);b.attr("xlink:href",E)},WRe=(i,a,f)=>{const g=i.append("g");let w=0;for(let v of a){let b=v.textColor?v.textColor:"#444444",E=v.lineColor?v.lineColor:"#444444",S=v.offsetX?parseInt(v.offsetX):0,_=v.offsetY?parseInt(v.offsetY):0,M="";if(w===0){let R=g.append("line");R.attr("x1",v.startPoint.x),R.attr("y1",v.startPoint.y),R.attr("x2",v.endPoint.x),R.attr("y2",v.endPoint.y),R.attr("stroke-width","1"),R.attr("stroke",E),R.style("fill","none"),v.type!=="rel_b"&&R.attr("marker-end","url("+M+"#arrowhead)"),(v.type==="birel"||v.type==="rel_b")&&R.attr("marker-start","url("+M+"#arrowend)"),w=-1}else{let R=g.append("path");R.attr("fill","none").attr("stroke-width","1").attr("stroke",E).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",v.startPoint.x).replaceAll("starty",v.startPoint.y).replaceAll("controlx",v.startPoint.x+(v.endPoint.x-v.startPoint.x)/2-(v.endPoint.x-v.startPoint.x)/4).replaceAll("controly",v.startPoint.y+(v.endPoint.y-v.startPoint.y)/2).replaceAll("stopx",v.endPoint.x).replaceAll("stopy",v.endPoint.y)),v.type!=="rel_b"&&R.attr("marker-end","url("+M+"#arrowhead)"),(v.type==="birel"||v.type==="rel_b")&&R.attr("marker-start","url("+M+"#arrowend)")}let F=f.messageFont();Nx(f)(v.label.text,g,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+S,Math.min(v.startPoint.y,v.endPoint.y)+Math.abs(v.endPoint.y-v.startPoint.y)/2+_,v.label.width,v.label.height,{fill:b},F),v.techn&&v.techn.text!==""&&(F=f.messageFont(),Nx(f)("["+v.techn.text+"]",g,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+S,Math.min(v.startPoint.y,v.endPoint.y)+Math.abs(v.endPoint.y-v.startPoint.y)/2+f.messageFontSize+5+_,Math.max(v.label.width,v.techn.width),v.techn.height,{fill:b,"font-style":"italic"},F))}},YRe=function(i,a,f){const g=i.append("g");let w=a.bgColor?a.bgColor:"none",v=a.borderColor?a.borderColor:"#444444",b=a.fontColor?a.fontColor:"black",E={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};a.nodeType&&(E={"stroke-width":1});let S={x:a.x,y:a.y,fill:w,stroke:v,width:a.width,height:a.height,rx:2.5,ry:2.5,attrs:E};ept(g,S);let _=f.boundaryFont();_.fontWeight="bold",_.fontSize=_.fontSize+2,_.fontColor=b,Nx(f)(a.label.text,g,a.x,a.y+a.label.Y,a.width,a.height,{fill:"#444444"},_),a.type&&a.type.text!==""&&(_=f.boundaryFont(),_.fontColor=b,Nx(f)(a.type.text,g,a.x,a.y+a.type.Y,a.width,a.height,{fill:"#444444"},_)),a.descr&&a.descr.text!==""&&(_=f.boundaryFont(),_.fontSize=_.fontSize-2,_.fontColor=b,Nx(f)(a.descr.text,g,a.x,a.y+a.descr.Y,a.width,a.height,{fill:"#444444"},_))},XRe=function(i,a,f){var F;let g=a.bgColor?a.bgColor:f[a.typeC4Shape.text+"_bg_color"],w=a.borderColor?a.borderColor:f[a.typeC4Shape.text+"_border_color"],v=a.fontColor?a.fontColor:"#FFFFFF",b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(a.typeC4Shape.text){case"person":b="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":b="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 E=i.append("g");E.attr("class","person-man");const S=_9();switch(a.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":S.x=a.x,S.y=a.y,S.fill=g,S.width=a.width,S.height=a.height,S.stroke=w,S.rx=2.5,S.ry=2.5,S.attrs={"stroke-width":.5},ept(E,S);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":E.append("path").attr("fill",g).attr("stroke-width","0.5").attr("stroke",w).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",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2).replaceAll("height",a.height)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":E.append("path").attr("fill",g).attr("stroke-width","0.5").attr("stroke",w).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",a.x).replaceAll("starty",a.y).replaceAll("width",a.width).replaceAll("half",a.height/2)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",a.x+a.width).replaceAll("starty",a.y).replaceAll("half",a.height/2));break}let _=sje(f,a.typeC4Shape.text);switch(E.append("text").attr("fill",v).attr("font-family",_.fontFamily).attr("font-size",_.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",a.typeC4Shape.width).attr("x",a.x+a.width/2-a.typeC4Shape.width/2).attr("y",a.y+a.typeC4Shape.Y).text("<<"+a.typeC4Shape.text+">>"),a.typeC4Shape.text){case"person":case"external_person":aRt(E,48,48,a.x+a.width/2-24,a.y+a.image.Y,b);break}let M=f[a.typeC4Shape.text+"Font"]();return M.fontWeight="bold",M.fontSize=M.fontSize+2,M.fontColor=v,Nx(f)(a.label.text,E,a.x,a.y+a.label.Y,a.width,a.height,{fill:v},M),M=f[a.typeC4Shape.text+"Font"](),M.fontColor=v,a.techn&&((F=a.techn)==null?void 0:F.text)!==""?Nx(f)(a.techn.text,E,a.x,a.y+a.techn.Y,a.width,a.height,{fill:v,"font-style":"italic"},M):a.type&&a.type.text!==""&&Nx(f)(a.type.text,E,a.x,a.y+a.type.Y,a.width,a.height,{fill:v,"font-style":"italic"},M),a.descr&&a.descr.text!==""&&(M=f.personFont(),M.fontColor=v,Nx(f)(a.descr.text,E,a.x,a.y+a.descr.Y,a.width,a.height,{fill:v},M)),a.height},QRe=function(i){i.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")},JRe=function(i){i.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")},ZRe=function(i){i.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")},tje=function(i){i.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")},eje=function(i){i.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")},nje=function(i){i.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")},rje=function(i){i.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)},ije=function(i){const f=i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);f.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"),f.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")},sje=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),Nx=function(){function i(w,v,b,E,S,_,M){const F=v.append("text").attr("x",b+S/2).attr("y",E+_/2+5).style("text-anchor","middle").text(w);g(F,M)}function a(w,v,b,E,S,_,M,F){const{fontSize:R,fontFamily:B,fontWeight:z}=F,Y=w.split(ei.lineBreakRegex);for(let nt=0;nt=this.data.widthLimit||g>=this.data.widthLimit||this.nextData.cnt>oRt)&&(f=this.nextData.startx+a.margin+Cs.nextLinePaddingX,w=this.nextData.stopy+a.margin*2,this.nextData.stopx=g=f+a.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=v=w+a.height,this.nextData.cnt=1),a.x=f,a.y=w,this.updateVal(this.data,"startx",f,Math.min),this.updateVal(this.data,"starty",w,Math.min),this.updateVal(this.data,"stopx",g,Math.max),this.updateVal(this.data,"stopy",v,Math.max),this.updateVal(this.nextData,"startx",f,Math.min),this.updateVal(this.nextData,"starty",w,Math.min),this.updateVal(this.nextData,"stopx",g,Math.max),this.updateVal(this.nextData,"stopy",v,Math.max)}init(a){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},rpt(a.db.getConfig())}bumpLastMargin(a){this.data.stopx+=a,this.data.stopy+=a}}const rpt=function(i){Ld(Cs,i),i.fontFamily&&(Cs.personFontFamily=Cs.systemFontFamily=Cs.messageFontFamily=i.fontFamily),i.fontSize&&(Cs.personFontSize=Cs.systemFontSize=Cs.messageFontSize=i.fontSize),i.fontWeight&&(Cs.personFontWeight=Cs.systemFontWeight=Cs.messageFontWeight=i.fontWeight)},$F=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),IY=i=>({fontFamily:i.boundaryFontFamily,fontSize:i.boundaryFontSize,fontWeight:i.boundaryFontWeight}),aje=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight});function Xv(i,a,f,g,w){if(!a[i].width)if(f)a[i].text=LFt(a[i].text,w,g),a[i].textLines=a[i].text.split(ei.lineBreakRegex).length,a[i].width=w,a[i].height=Tgt(a[i].text,g);else{let v=a[i].text.split(ei.lineBreakRegex);a[i].textLines=v.length;let b=0;a[i].height=0,a[i].width=0;for(const E of v)a[i].width=Math.max(n4(E,g),a[i].width),b=Tgt(E,g),a[i].height=a[i].height+b}}const uRt=function(i,a,f){a.x=f.data.startx,a.y=f.data.starty,a.width=f.data.stopx-f.data.startx,a.height=f.data.stopy-f.data.starty,a.label.y=Cs.c4ShapeMargin-35;let g=a.wrap&&Cs.wrap,w=IY(Cs);w.fontSize=w.fontSize+2,w.fontWeight="bold";let v=n4(a.label.text,w);Xv("label",a,g,w,v),s4.drawBoundary(i,a,Cs)},lRt=function(i,a,f,g){let w=0;for(const v of g){w=0;const b=f[v];let E=$F(Cs,b.typeC4Shape.text);switch(E.fontSize=E.fontSize-2,b.typeC4Shape.width=n4("«"+b.typeC4Shape.text+"»",E),b.typeC4Shape.height=E.fontSize+2,b.typeC4Shape.Y=Cs.c4ShapePadding,w=b.typeC4Shape.Y+b.typeC4Shape.height-4,b.image={width:0,height:0,Y:0},b.typeC4Shape.text){case"person":case"external_person":b.image.width=48,b.image.height=48,b.image.Y=w,w=b.image.Y+b.image.height;break}b.sprite&&(b.image.width=48,b.image.height=48,b.image.Y=w,w=b.image.Y+b.image.height);let S=b.wrap&&Cs.wrap,_=Cs.width-Cs.c4ShapePadding*2,M=$F(Cs,b.typeC4Shape.text);if(M.fontSize=M.fontSize+2,M.fontWeight="bold",Xv("label",b,S,M,_),b.label.Y=w+8,w=b.label.Y+b.label.height,b.type&&b.type.text!==""){b.type.text="["+b.type.text+"]";let B=$F(Cs,b.typeC4Shape.text);Xv("type",b,S,B,_),b.type.Y=w+5,w=b.type.Y+b.type.height}else if(b.techn&&b.techn.text!==""){b.techn.text="["+b.techn.text+"]";let B=$F(Cs,b.techn.text);Xv("techn",b,S,B,_),b.techn.Y=w+5,w=b.techn.Y+b.techn.height}let F=w,R=b.label.width;if(b.descr&&b.descr.text!==""){let B=$F(Cs,b.typeC4Shape.text);Xv("descr",b,S,B,_),b.descr.Y=w+20,w=b.descr.Y+b.descr.height,R=Math.max(b.label.width,b.descr.width),F=w-b.descr.textLines*5}R=R+Cs.c4ShapePadding,b.width=Math.max(b.width||Cs.width,R,Cs.width),b.height=Math.max(b.height||Cs.height,F,Cs.height),b.margin=b.margin||Cs.c4ShapeMargin,i.insert(b),s4.drawC4Shape(a,b,Cs)}i.bumpLastMargin(Cs.c4ShapeMargin)};let Jw=class{constructor(a,f){this.x=a,this.y=f}},hRt=function(i,a){let f=i.x,g=i.y,w=a.x,v=a.y,b=f+i.width/2,E=g+i.height/2,S=Math.abs(f-w),_=Math.abs(g-v),M=_/S,F=i.height/i.width,R=null;return g==v&&fw?R=new Jw(f,E):f==w&&gv&&(R=new Jw(b,g)),f>w&&g=M?R=new Jw(f,E+M*i.width/2):R=new Jw(b-S/_*i.height/2,g+i.height):f=M?R=new Jw(f+i.width,E+M*i.width/2):R=new Jw(b+S/_*i.height/2,g+i.height):fv?F>=M?R=new Jw(f+i.width,E-M*i.width/2):R=new Jw(b+i.height/2*S/_,g):f>w&&g>v&&(F>=M?R=new Jw(f,E-i.width/2*M):R=new Jw(b-i.height/2*S/_,g)),R},oje=function(i,a){let f={x:0,y:0};f.x=a.x+a.width/2,f.y=a.y+a.height/2;let g=hRt(i,f);f.x=i.x+i.width/2,f.y=i.y+i.height/2;let w=hRt(a,f);return{startPoint:g,endPoint:w}};const cje=function(i,a,f,g){let w=0;for(let v of a){w=w+1;let b=v.wrap&&Cs.wrap,E=aje(Cs);g.db.getC4Type()==="C4Dynamic"&&(v.label.text=w+": "+v.label.text);let _=n4(v.label.text,E);Xv("label",v,b,E,_),v.techn&&v.techn.text!==""&&(_=n4(v.techn.text,E),Xv("techn",v,b,E,_)),v.descr&&v.descr.text!==""&&(_=n4(v.descr.text,E),Xv("descr",v,b,E,_));let M=f(v.from),F=f(v.to),R=oje(M,F);v.startPoint=R.startPoint,v.endPoint=R.endPoint}s4.drawRels(i,a,Cs)};function fRt(i,a,f,g,w){let v=new cRt(w);v.data.widthLimit=f.data.widthLimit/Math.min(npt,g.length);for(let[b,E]of g.entries()){let S=0;E.image={width:0,height:0,Y:0},E.sprite&&(E.image.width=48,E.image.height=48,E.image.Y=S,S=E.image.Y+E.image.height);let _=E.wrap&&Cs.wrap,M=IY(Cs);if(M.fontSize=M.fontSize+2,M.fontWeight="bold",Xv("label",E,_,M,v.data.widthLimit),E.label.Y=S+8,S=E.label.Y+E.label.height,E.type&&E.type.text!==""){E.type.text="["+E.type.text+"]";let z=IY(Cs);Xv("type",E,_,z,v.data.widthLimit),E.type.Y=S+5,S=E.type.Y+E.type.height}if(E.descr&&E.descr.text!==""){let z=IY(Cs);z.fontSize=z.fontSize-2,Xv("descr",E,_,z,v.data.widthLimit),E.descr.Y=S+20,S=E.descr.Y+E.descr.height}if(b==0||b%npt===0){let z=f.data.startx+Cs.diagramMarginX,Y=f.data.stopy+Cs.diagramMarginY+S;v.setData(z,z,Y,Y)}else{let z=v.data.stopx!==v.data.startx?v.data.stopx+Cs.diagramMarginX:v.data.startx,Y=v.data.starty;v.setData(z,z,Y,Y)}v.name=E.alias;let F=w.db.getC4ShapeArray(E.alias),R=w.db.getC4ShapeKeys(E.alias);R.length>0&&lRt(v,i,F,R),a=E.alias;let B=w.db.getBoundarys(a);B.length>0&&fRt(i,a,v,B,w),E.alias!=="global"&&uRt(i,E,v),f.data.stopy=Math.max(v.data.stopy+Cs.c4ShapeMargin,f.data.stopy),f.data.stopx=Math.max(v.data.stopx+Cs.c4ShapeMargin,f.data.stopx),DY=Math.max(DY,f.data.stopx),MY=Math.max(MY,f.data.stopy)}}const dRt={drawPersonOrSystemArray:lRt,drawBoundary:uRt,setConf:rpt,draw:function(i,a,f,g){Cs=Re().c4;const w=Re().securityLevel;let v;w==="sandbox"&&(v=Tr("#i"+a));const b=Tr(w==="sandbox"?v.nodes()[0].contentDocument.body:"body");let E=g.db;g.db.setWrap(Cs.wrap),oRt=E.getC4ShapeInRow(),npt=E.getC4BoundaryInRow(),Kt.debug(`C:${JSON.stringify(Cs,null,2)}`);const S=w==="sandbox"?b.select(`[id="${a}"]`):Tr(`[id="${a}"]`);s4.insertComputerIcon(S),s4.insertDatabaseIcon(S),s4.insertClockIcon(S);let _=new cRt(g);_.setData(Cs.diagramMarginX,Cs.diagramMarginX,Cs.diagramMarginY,Cs.diagramMarginY),_.data.widthLimit=screen.availWidth,DY=Cs.diagramMarginX,MY=Cs.diagramMarginY;const M=g.db.getTitle();let F=g.db.getBoundarys("");fRt(S,"",_,F,g),s4.insertArrowHead(S),s4.insertArrowEnd(S),s4.insertArrowCrossHead(S),s4.insertArrowFilledHead(S),cje(S,g.db.getRels(),g.db.getC4Shape,g),_.data.stopx=DY,_.data.stopy=MY;const R=_.data;let z=R.stopy-R.starty+2*Cs.diagramMarginY;const nt=R.stopx-R.startx+2*Cs.diagramMarginX;M&&S.append("text").text(M).attr("x",(R.stopx-R.startx)/2-4*Cs.diagramMarginX).attr("y",R.starty+Cs.diagramMarginY),sg(S,z,nt,Cs.useMaxWidth);const ot=M?60:0;S.attr("viewBox",R.startx-Cs.diagramMarginX+" -"+(Cs.diagramMarginY+ot)+" "+nt+" "+(z+ot)),Kt.debug("models:",R)}},uje=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:xRe,db:Zgt,renderer:dRt,styles:i=>`.person { + stroke: ${i.personBorder}; + fill: ${i.personBkg}; + } +`,init:({c4:i,wrap:a})=>{dRt.setConf(i),Zgt.setWrap(a)}}},Symbol.toStringTag,{value:"Module"}));var ipt=function(){var i=function(Od,cs,As,to){for(As=As||{},to=Od.length;to--;As[Od[to]]=cs);return As},a=[1,4],f=[1,3],g=[1,5],w=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],v=[2,2],b=[1,13],E=[1,14],S=[1,15],_=[1,16],M=[1,23],F=[1,25],R=[1,26],B=[1,27],z=[1,49],Y=[1,48],nt=[1,29],ot=[1,30],ft=[1,31],wt=[1,32],mt=[1,33],ct=[1,44],rt=[1,46],it=[1,42],gt=[1,47],Q=[1,43],dt=[1,50],K=[1,45],yt=[1,51],V=[1,52],Ot=[1,34],It=[1,35],jt=[1,36],xt=[1,37],Ft=[1,57],Ct=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],kt=[1,61],Gt=[1,60],Fe=[1,62],Mt=[8,9,11,73,75],pn=[1,88],Ae=[1,93],ye=[1,92],tn=[1,89],sn=[1,85],be=[1,91],Ne=[1,87],Xt=[1,94],_e=[1,90],xe=[1,95],Mn=[1,86],ce=[8,9,10,11,73,75],Br=[8,9,10,11,44,73,75],we=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],Fi=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],mi=[42,58,86,99,102,103,106,108,111,112,113],ga=[1,121],Ss=[1,120],za=[1,128],br=[1,142],An=[1,143],Nn=[1,144],Bn=[1,145],ke=[1,130],pe=[1,132],Je=[1,136],an=[1,137],xn=[1,138],qa=[1,139],xo=[1,140],ko=[1,141],va=[1,146],Ha=[1,147],ds=[1,126],Fu=[1,127],Zs=[1,134],d1=[1,129],I2=[1,133],ll=[1,131],Ic=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],wc=[1,149],Ea=[8,9,11],gu=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],ta=[1,169],fo=[1,165],mc=[1,166],ca=[1,170],ya=[1,167],ea=[1,168],Zl=[75,113,116],Uc=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],rm=[10,103],kh=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],Md=[1,235],w0=[1,233],Id=[1,237],m0=[1,231],hg=[1,232],Gi=[1,234],cn=[1,236],Nr=[1,238],Si=[1,255],vc=[8,9,11,103],Rc=[8,9,10,11,58,81,102,103,106,107,108,109],Eh={trace:function(){},yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeperator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,verticeStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING[value]",60:"PIPE",61:"CYLINDERSTART",62:"CYLINDEREND",63:"DIAMOND_START",64:"DIAMOND_STOP",65:"TAGEND",66:"TRAPSTART",67:"TRAPEND",68:"INVTRAPSTART",69:"INVTRAPEND",72:"TESTSTR",73:"START_LINK",75:"LINK",77:"STR",78:"MD_STR",81:"STYLE",82:"LINKSTYLE",83:"CLASSDEF",84:"CLASS",85:"CLICK",86:"DOWN",87:"UP",90:"idString[vertex]",91:"idString[class]",92:"CALLBACKNAME",93:"CALLBACKARGS",94:"HREF",95:"LINK_TARGET",96:"STR[link]",97:"STR[tooltip]",99:"DEFAULT",101:"INTERPOLATE",102:"NUM",103:"COMMA",106:"NODE_STRING",107:"UNIT",108:"BRKT",109:"PCT",111:"MINUS",112:"MULT",113:"UNICODE_TEXT",114:"TEXT",115:"TAGSTART",116:"EDGE_TEXT",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[20,3],[20,4],[20,2],[20,1],[40,1],[40,5],[41,1],[41,3],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,8],[43,4],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,4],[43,4],[43,1],[39,2],[39,3],[39,3],[39,1],[39,3],[74,1],[74,2],[74,1],[74,1],[70,1],[71,3],[30,1],[30,2],[30,1],[30,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[100,1],[100,3],[89,1],[89,3],[104,1],[104,2],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[79,1],[79,1],[79,1],[79,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[76,1],[76,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[45,1],[45,2],[98,1],[98,2],[33,1],[33,1],[33,1],[33,1]],performAction:function(cs,As,to,Ci,pu,Le,iy){var $e=Le.length-1;switch(pu){case 2:this.$=[];break;case 3:(!Array.isArray(Le[$e])||Le[$e].length>0)&&Le[$e-1].push(Le[$e]),this.$=Le[$e-1];break;case 4:case 176:this.$=Le[$e];break;case 11:Ci.setDirection("TB"),this.$="TB";break;case 12:Ci.setDirection(Le[$e-1]),this.$=Le[$e-1];break;case 27:this.$=Le[$e-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=Ci.addSubGraph(Le[$e-6],Le[$e-1],Le[$e-4]);break;case 34:this.$=Ci.addSubGraph(Le[$e-3],Le[$e-1],Le[$e-3]);break;case 35:this.$=Ci.addSubGraph(void 0,Le[$e-1],void 0);break;case 37:this.$=Le[$e].trim(),Ci.setAccTitle(this.$);break;case 38:case 39:this.$=Le[$e].trim(),Ci.setAccDescription(this.$);break;case 43:Ci.addLink(Le[$e-2].stmt,Le[$e],Le[$e-1]),this.$={stmt:Le[$e],nodes:Le[$e].concat(Le[$e-2].nodes)};break;case 44:Ci.addLink(Le[$e-3].stmt,Le[$e-1],Le[$e-2]),this.$={stmt:Le[$e-1],nodes:Le[$e-1].concat(Le[$e-3].nodes)};break;case 45:this.$={stmt:Le[$e-1],nodes:Le[$e-1]};break;case 46:this.$={stmt:Le[$e],nodes:Le[$e]};break;case 47:this.$=[Le[$e]];break;case 48:this.$=Le[$e-4].concat(Le[$e]);break;case 49:this.$=Le[$e];break;case 50:this.$=Le[$e-2],Ci.setClass(Le[$e-2],Le[$e]);break;case 51:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"square");break;case 52:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"doublecircle");break;case 53:this.$=Le[$e-5],Ci.addVertex(Le[$e-5],Le[$e-2],"circle");break;case 54:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"ellipse");break;case 55:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"stadium");break;case 56:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"subroutine");break;case 57:this.$=Le[$e-7],Ci.addVertex(Le[$e-7],Le[$e-1],"rect",void 0,void 0,void 0,Object.fromEntries([[Le[$e-5],Le[$e-3]]]));break;case 58:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"cylinder");break;case 59:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"round");break;case 60:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"diamond");break;case 61:this.$=Le[$e-5],Ci.addVertex(Le[$e-5],Le[$e-2],"hexagon");break;case 62:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"odd");break;case 63:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"trapezoid");break;case 64:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"inv_trapezoid");break;case 65:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"lean_right");break;case 66:this.$=Le[$e-3],Ci.addVertex(Le[$e-3],Le[$e-1],"lean_left");break;case 67:this.$=Le[$e],Ci.addVertex(Le[$e]);break;case 68:Le[$e-1].text=Le[$e],this.$=Le[$e-1];break;case 69:case 70:Le[$e-2].text=Le[$e-1],this.$=Le[$e-2];break;case 71:this.$=Le[$e];break;case 72:var g1=Ci.destructLink(Le[$e],Le[$e-2]);this.$={type:g1.type,stroke:g1.stroke,length:g1.length,text:Le[$e-1]};break;case 73:this.$={text:Le[$e],type:"text"};break;case 74:this.$={text:Le[$e-1].text+""+Le[$e],type:Le[$e-1].type};break;case 75:this.$={text:Le[$e],type:"string"};break;case 76:this.$={text:Le[$e],type:"markdown"};break;case 77:var g1=Ci.destructLink(Le[$e]);this.$={type:g1.type,stroke:g1.stroke,length:g1.length};break;case 78:this.$=Le[$e-1];break;case 79:this.$={text:Le[$e],type:"text"};break;case 80:this.$={text:Le[$e-1].text+""+Le[$e],type:Le[$e-1].type};break;case 81:this.$={text:Le[$e],type:"string"};break;case 82:case 97:this.$={text:Le[$e],type:"markdown"};break;case 94:this.$={text:Le[$e],type:"text"};break;case 95:this.$={text:Le[$e-1].text+""+Le[$e],type:Le[$e-1].type};break;case 96:this.$={text:Le[$e],type:"text"};break;case 98:this.$=Le[$e-4],Ci.addClass(Le[$e-2],Le[$e]);break;case 99:this.$=Le[$e-4],Ci.setClass(Le[$e-2],Le[$e]);break;case 100:case 108:this.$=Le[$e-1],Ci.setClickEvent(Le[$e-1],Le[$e]);break;case 101:case 109:this.$=Le[$e-3],Ci.setClickEvent(Le[$e-3],Le[$e-2]),Ci.setTooltip(Le[$e-3],Le[$e]);break;case 102:this.$=Le[$e-2],Ci.setClickEvent(Le[$e-2],Le[$e-1],Le[$e]);break;case 103:this.$=Le[$e-4],Ci.setClickEvent(Le[$e-4],Le[$e-3],Le[$e-2]),Ci.setTooltip(Le[$e-4],Le[$e]);break;case 104:this.$=Le[$e-2],Ci.setLink(Le[$e-2],Le[$e]);break;case 105:this.$=Le[$e-4],Ci.setLink(Le[$e-4],Le[$e-2]),Ci.setTooltip(Le[$e-4],Le[$e]);break;case 106:this.$=Le[$e-4],Ci.setLink(Le[$e-4],Le[$e-2],Le[$e]);break;case 107:this.$=Le[$e-6],Ci.setLink(Le[$e-6],Le[$e-4],Le[$e]),Ci.setTooltip(Le[$e-6],Le[$e-2]);break;case 110:this.$=Le[$e-1],Ci.setLink(Le[$e-1],Le[$e]);break;case 111:this.$=Le[$e-3],Ci.setLink(Le[$e-3],Le[$e-2]),Ci.setTooltip(Le[$e-3],Le[$e]);break;case 112:this.$=Le[$e-3],Ci.setLink(Le[$e-3],Le[$e-2],Le[$e]);break;case 113:this.$=Le[$e-5],Ci.setLink(Le[$e-5],Le[$e-4],Le[$e]),Ci.setTooltip(Le[$e-5],Le[$e-2]);break;case 114:this.$=Le[$e-4],Ci.addVertex(Le[$e-2],void 0,void 0,Le[$e]);break;case 115:this.$=Le[$e-4],Ci.updateLink([Le[$e-2]],Le[$e]);break;case 116:this.$=Le[$e-4],Ci.updateLink(Le[$e-2],Le[$e]);break;case 117:this.$=Le[$e-8],Ci.updateLinkInterpolate([Le[$e-6]],Le[$e-2]),Ci.updateLink([Le[$e-6]],Le[$e]);break;case 118:this.$=Le[$e-8],Ci.updateLinkInterpolate(Le[$e-6],Le[$e-2]),Ci.updateLink(Le[$e-6],Le[$e]);break;case 119:this.$=Le[$e-6],Ci.updateLinkInterpolate([Le[$e-4]],Le[$e]);break;case 120:this.$=Le[$e-6],Ci.updateLinkInterpolate(Le[$e-4],Le[$e]);break;case 121:case 123:this.$=[Le[$e]];break;case 122:case 124:Le[$e-2].push(Le[$e]),this.$=Le[$e-2];break;case 126:this.$=Le[$e-1]+Le[$e];break;case 174:this.$=Le[$e];break;case 175:this.$=Le[$e-1]+""+Le[$e];break;case 177:this.$=Le[$e-1]+""+Le[$e];break;case 178:this.$={stmt:"dir",value:"TB"};break;case 179:this.$={stmt:"dir",value:"BT"};break;case 180:this.$={stmt:"dir",value:"RL"};break;case 181:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,9:a,10:f,12:g},{1:[3]},i(w,v,{5:6}),{4:7,9:a,10:f,12:g},{4:8,9:a,10:f,12:g},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:b,9:E,10:S,11:_,20:17,22:18,23:19,24:20,25:21,26:22,27:M,33:24,34:F,36:R,38:B,40:28,41:38,42:z,43:39,45:40,58:Y,81:nt,82:ot,83:ft,84:wt,85:mt,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V,118:Ot,119:It,120:jt,121:xt},i(w,[2,9]),i(w,[2,10]),i(w,[2,11]),{8:[1,54],9:[1,55],10:Ft,15:53,18:56},i(Ct,[2,3]),i(Ct,[2,4]),i(Ct,[2,5]),i(Ct,[2,6]),i(Ct,[2,7]),i(Ct,[2,8]),{8:kt,9:Gt,11:Fe,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:kt,9:Gt,11:Fe,21:66},{8:kt,9:Gt,11:Fe,21:67},{8:kt,9:Gt,11:Fe,21:68},{8:kt,9:Gt,11:Fe,21:69},{8:kt,9:Gt,11:Fe,21:70},{8:kt,9:Gt,10:[1,71],11:Fe,21:72},i(Ct,[2,36]),{35:[1,73]},{37:[1,74]},i(Ct,[2,39]),i(Mt,[2,46],{18:75,10:Ft}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:pn,42:Ae,58:ye,77:[1,83],86:tn,92:[1,80],94:[1,81],98:82,102:sn,103:be,106:Ne,108:Xt,111:_e,112:xe,113:Mn,117:84},i(Ct,[2,178]),i(Ct,[2,179]),i(Ct,[2,180]),i(Ct,[2,181]),i(ce,[2,47]),i(ce,[2,49],{44:[1,96]}),i(Br,[2,67],{110:109,29:[1,97],42:z,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:Y,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:ct,99:rt,102:it,103:gt,106:Q,108:dt,111:K,112:yt,113:V}),i(we,[2,174]),i(we,[2,135]),i(we,[2,136]),i(we,[2,137]),i(we,[2,138]),i(we,[2,139]),i(we,[2,140]),i(we,[2,141]),i(we,[2,142]),i(we,[2,143]),i(we,[2,144]),i(we,[2,145]),i(w,[2,12]),i(w,[2,18]),i(w,[2,19]),{9:[1,110]},i(Fi,[2,26],{18:111,10:Ft}),i(Ct,[2,27]),{40:112,41:38,42:z,43:39,45:40,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V},i(Ct,[2,40]),i(Ct,[2,41]),i(Ct,[2,42]),i(mi,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:ga,116:Ss},i([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),i(Ct,[2,28]),i(Ct,[2,29]),i(Ct,[2,30]),i(Ct,[2,31]),i(Ct,[2,32]),{10:za,12:br,14:An,27:Nn,28:122,32:Bn,42:ke,58:pe,73:Je,77:[1,124],78:[1,125],80:135,81:an,82:xn,83:qa,84:xo,85:ko,86:va,87:Ha,88:123,102:ds,106:Fu,108:Zs,111:d1,112:I2,113:ll},i(Ic,v,{5:148}),i(Ct,[2,37]),i(Ct,[2,38]),i(Mt,[2,45],{42:wc}),{42:z,45:150,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V},{99:[1,151],100:152,102:[1,153]},{42:z,45:154,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V},{42:z,45:155,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V},i(Ea,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},i(Ea,[2,108],{117:160,10:[1,159],14:pn,42:Ae,58:ye,86:tn,102:sn,103:be,106:Ne,108:Xt,111:_e,112:xe,113:Mn}),i(Ea,[2,110],{10:[1,161]}),i(gu,[2,176]),i(gu,[2,163]),i(gu,[2,164]),i(gu,[2,165]),i(gu,[2,166]),i(gu,[2,167]),i(gu,[2,168]),i(gu,[2,169]),i(gu,[2,170]),i(gu,[2,171]),i(gu,[2,172]),i(gu,[2,173]),{42:z,45:162,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V},{30:163,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{30:171,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{30:173,48:[1,172],65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{30:174,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{30:175,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{30:176,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{106:[1,177]},{30:178,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{30:179,63:[1,180],65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{30:181,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{30:182,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{30:183,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},i(we,[2,175]),i(w,[2,20]),i(Fi,[2,25]),i(Mt,[2,43],{18:184,10:Ft}),i(mi,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{75:[1,188],76:189,113:ga,116:Ss},i(Zl,[2,73]),i(Zl,[2,75]),i(Zl,[2,76]),i(Zl,[2,161]),i(Zl,[2,162]),{8:kt,9:Gt,10:za,11:Fe,12:br,14:An,21:191,27:Nn,29:[1,190],32:Bn,42:ke,58:pe,73:Je,80:135,81:an,82:xn,83:qa,84:xo,85:ko,86:va,87:Ha,88:192,102:ds,106:Fu,108:Zs,111:d1,112:I2,113:ll},i(Uc,[2,94]),i(Uc,[2,96]),i(Uc,[2,97]),i(Uc,[2,150]),i(Uc,[2,151]),i(Uc,[2,152]),i(Uc,[2,153]),i(Uc,[2,154]),i(Uc,[2,155]),i(Uc,[2,156]),i(Uc,[2,157]),i(Uc,[2,158]),i(Uc,[2,159]),i(Uc,[2,160]),i(Uc,[2,83]),i(Uc,[2,84]),i(Uc,[2,85]),i(Uc,[2,86]),i(Uc,[2,87]),i(Uc,[2,88]),i(Uc,[2,89]),i(Uc,[2,90]),i(Uc,[2,91]),i(Uc,[2,92]),i(Uc,[2,93]),{6:11,7:12,8:b,9:E,10:S,11:_,20:17,22:18,23:19,24:20,25:21,26:22,27:M,32:[1,193],33:24,34:F,36:R,38:B,40:28,41:38,42:z,43:39,45:40,58:Y,81:nt,82:ot,83:ft,84:wt,85:mt,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V,118:Ot,119:It,120:jt,121:xt},{10:Ft,18:194},{10:[1,195],42:z,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:109,111:K,112:yt,113:V},{10:[1,196]},{10:[1,197],103:[1,198]},i(rm,[2,121]),{10:[1,199],42:z,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:109,111:K,112:yt,113:V},{10:[1,200],42:z,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:109,111:K,112:yt,113:V},{77:[1,201]},i(Ea,[2,102],{10:[1,202]}),i(Ea,[2,104],{10:[1,203]}),{77:[1,204]},i(gu,[2,177]),{77:[1,205],95:[1,206]},i(ce,[2,50],{110:109,42:z,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,111:K,112:yt,113:V}),{31:[1,207],65:ta,79:208,113:ca,114:ya,115:ea},i(kh,[2,79]),i(kh,[2,81]),i(kh,[2,82]),i(kh,[2,146]),i(kh,[2,147]),i(kh,[2,148]),i(kh,[2,149]),{47:[1,209],65:ta,79:208,113:ca,114:ya,115:ea},{30:210,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{49:[1,211],65:ta,79:208,113:ca,114:ya,115:ea},{51:[1,212],65:ta,79:208,113:ca,114:ya,115:ea},{53:[1,213],65:ta,79:208,113:ca,114:ya,115:ea},{55:[1,214],65:ta,79:208,113:ca,114:ya,115:ea},{58:[1,215]},{62:[1,216],65:ta,79:208,113:ca,114:ya,115:ea},{64:[1,217],65:ta,79:208,113:ca,114:ya,115:ea},{30:218,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},{31:[1,219],65:ta,79:208,113:ca,114:ya,115:ea},{65:ta,67:[1,220],69:[1,221],79:208,113:ca,114:ya,115:ea},{65:ta,67:[1,223],69:[1,222],79:208,113:ca,114:ya,115:ea},i(Mt,[2,44],{42:wc}),i(mi,[2,70]),i(mi,[2,69]),{60:[1,224],65:ta,79:208,113:ca,114:ya,115:ea},i(mi,[2,72]),i(Zl,[2,74]),{30:225,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},i(Ic,v,{5:226}),i(Uc,[2,95]),i(Ct,[2,35]),{41:227,42:z,43:39,45:40,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V},{10:Md,58:w0,81:Id,89:228,102:m0,104:229,105:230,106:hg,107:Gi,108:cn,109:Nr},{10:Md,58:w0,81:Id,89:239,101:[1,240],102:m0,104:229,105:230,106:hg,107:Gi,108:cn,109:Nr},{10:Md,58:w0,81:Id,89:241,101:[1,242],102:m0,104:229,105:230,106:hg,107:Gi,108:cn,109:Nr},{102:[1,243]},{10:Md,58:w0,81:Id,89:244,102:m0,104:229,105:230,106:hg,107:Gi,108:cn,109:Nr},{42:z,45:245,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V},i(Ea,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},i(Ea,[2,109]),i(Ea,[2,111],{10:[1,249]}),i(Ea,[2,112]),i(Br,[2,51]),i(kh,[2,80]),i(Br,[2,52]),{49:[1,250],65:ta,79:208,113:ca,114:ya,115:ea},i(Br,[2,59]),i(Br,[2,54]),i(Br,[2,55]),i(Br,[2,56]),{106:[1,251]},i(Br,[2,58]),i(Br,[2,60]),{64:[1,252],65:ta,79:208,113:ca,114:ya,115:ea},i(Br,[2,62]),i(Br,[2,63]),i(Br,[2,65]),i(Br,[2,64]),i(Br,[2,66]),i([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:ta,79:208,113:ca,114:ya,115:ea},{6:11,7:12,8:b,9:E,10:S,11:_,20:17,22:18,23:19,24:20,25:21,26:22,27:M,32:[1,254],33:24,34:F,36:R,38:B,40:28,41:38,42:z,43:39,45:40,58:Y,81:nt,82:ot,83:ft,84:wt,85:mt,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V,118:Ot,119:It,120:jt,121:xt},i(ce,[2,48]),i(Ea,[2,114],{103:Si}),i(vc,[2,123],{105:256,10:Md,58:w0,81:Id,102:m0,106:hg,107:Gi,108:cn,109:Nr}),i(Rc,[2,125]),i(Rc,[2,127]),i(Rc,[2,128]),i(Rc,[2,129]),i(Rc,[2,130]),i(Rc,[2,131]),i(Rc,[2,132]),i(Rc,[2,133]),i(Rc,[2,134]),i(Ea,[2,115],{103:Si}),{10:[1,257]},i(Ea,[2,116],{103:Si}),{10:[1,258]},i(rm,[2,122]),i(Ea,[2,98],{103:Si}),i(Ea,[2,99],{110:109,42:z,58:Y,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,111:K,112:yt,113:V}),i(Ea,[2,103]),i(Ea,[2,105],{10:[1,259]}),i(Ea,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:kt,9:Gt,11:Fe,21:264},i(Ct,[2,34]),{10:Md,58:w0,81:Id,102:m0,104:265,105:230,106:hg,107:Gi,108:cn,109:Nr},i(Rc,[2,126]),{14:pn,42:Ae,58:ye,86:tn,98:266,102:sn,103:be,106:Ne,108:Xt,111:_e,112:xe,113:Mn,117:84},{14:pn,42:Ae,58:ye,86:tn,98:267,102:sn,103:be,106:Ne,108:Xt,111:_e,112:xe,113:Mn,117:84},{95:[1,268]},i(Ea,[2,113]),i(Br,[2,53]),{30:269,65:ta,77:fo,78:mc,79:164,113:ca,114:ya,115:ea},i(Br,[2,61]),i(Ic,v,{5:270}),i(vc,[2,124],{105:256,10:Md,58:w0,81:Id,102:m0,106:hg,107:Gi,108:cn,109:Nr}),i(Ea,[2,119],{117:160,10:[1,271],14:pn,42:Ae,58:ye,86:tn,102:sn,103:be,106:Ne,108:Xt,111:_e,112:xe,113:Mn}),i(Ea,[2,120],{117:160,10:[1,272],14:pn,42:Ae,58:ye,86:tn,102:sn,103:be,106:Ne,108:Xt,111:_e,112:xe,113:Mn}),i(Ea,[2,107]),{31:[1,273],65:ta,79:208,113:ca,114:ya,115:ea},{6:11,7:12,8:b,9:E,10:S,11:_,20:17,22:18,23:19,24:20,25:21,26:22,27:M,32:[1,274],33:24,34:F,36:R,38:B,40:28,41:38,42:z,43:39,45:40,58:Y,81:nt,82:ot,83:ft,84:wt,85:mt,86:ct,99:rt,102:it,103:gt,106:Q,108:dt,110:41,111:K,112:yt,113:V,118:Ot,119:It,120:jt,121:xt},{10:Md,58:w0,81:Id,89:275,102:m0,104:229,105:230,106:hg,107:Gi,108:cn,109:Nr},{10:Md,58:w0,81:Id,89:276,102:m0,104:229,105:230,106:hg,107:Gi,108:cn,109:Nr},i(Br,[2,57]),i(Ct,[2,33]),i(Ea,[2,117],{103:Si}),i(Ea,[2,118],{103:Si})],defaultActions:{},parseError:function(cs,As){if(As.recoverable)this.trace(cs);else{var to=new Error(cs);throw to.hash=As,to}},parse:function(cs){var As=this,to=[0],Ci=[],pu=[null],Le=[],iy=this.table,$e="",g1=0,ip=0,sy=2,D8=1,g4=Le.slice.call(arguments,1),th=Object.create(this.lexer),fg={yy:{}};for(var O2 in this.yy)Object.prototype.hasOwnProperty.call(this.yy,O2)&&(fg.yy[O2]=this.yy[O2]);th.setInput(cs,fg.yy),fg.yy.lexer=th,fg.yy.parser=this,typeof th.yylloc>"u"&&(th.yylloc={});var M8=th.yylloc;Le.push(M8);var N2=th.options&&th.options.ranges;typeof fg.yy.parseError=="function"?this.parseError=fg.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function p4(){var sp;return sp=Ci.pop()||th.lex()||D8,typeof sp!="number"&&(sp instanceof Array&&(Ci=sp,sp=Ci.pop()),sp=As.symbols_[sp]||sp),sp}for(var U1,Nd,Pd,I8,im={},Gx,hb,Kx,b4;;){if(Nd=to[to.length-1],this.defaultActions[Nd]?Pd=this.defaultActions[Nd]:((U1===null||typeof U1>"u")&&(U1=p4()),Pd=iy[Nd]&&iy[Nd][U1]),typeof Pd>"u"||!Pd.length||!Pd[0]){var ay="";b4=[];for(Gx in iy[Nd])this.terminals_[Gx]&&Gx>sy&&b4.push("'"+this.terminals_[Gx]+"'");th.showPosition?ay="Parse error on line "+(g1+1)+`: +`+th.showPosition()+` +Expecting `+b4.join(", ")+", got '"+(this.terminals_[U1]||U1)+"'":ay="Parse error on line "+(g1+1)+": Unexpected "+(U1==D8?"end of input":"'"+(this.terminals_[U1]||U1)+"'"),this.parseError(ay,{text:th.match,token:this.terminals_[U1]||U1,line:th.yylineno,loc:M8,expected:b4})}if(Pd[0]instanceof Array&&Pd.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Nd+", token: "+U1);switch(Pd[0]){case 1:to.push(U1),pu.push(th.yytext),Le.push(th.yylloc),to.push(Pd[1]),U1=null,ip=th.yyleng,$e=th.yytext,g1=th.yylineno,M8=th.yylloc;break;case 2:if(hb=this.productions_[Pd[1]][1],im.$=pu[pu.length-hb],im._$={first_line:Le[Le.length-(hb||1)].first_line,last_line:Le[Le.length-1].last_line,first_column:Le[Le.length-(hb||1)].first_column,last_column:Le[Le.length-1].last_column},N2&&(im._$.range=[Le[Le.length-(hb||1)].range[0],Le[Le.length-1].range[1]]),I8=this.performAction.apply(im,[$e,ip,g1,fg.yy,Pd[1],pu,Le].concat(g4)),typeof I8<"u")return I8;hb&&(to=to.slice(0,-1*hb*2),pu=pu.slice(0,-1*hb),Le=Le.slice(0,-1*hb)),to.push(this.productions_[Pd[1]][0]),pu.push(im.$),Le.push(im._$),Kx=iy[to[to.length-2]][to[to.length-1]],to.push(Kx);break;case 3:return!0}}return!0}},Zc=function(){var Od={EOF:1,parseError:function(As,to){if(this.yy.parser)this.yy.parser.parseError(As,to);else throw new Error(As)},setInput:function(cs,As){return this.yy=As||this.yy||{},this._input=cs,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 cs=this._input[0];this.yytext+=cs,this.yyleng++,this.offset++,this.match+=cs,this.matched+=cs;var As=cs.match(/(?:\r\n?|\n).*/g);return As?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),cs},unput:function(cs){var As=cs.length,to=cs.split(/(?:\r\n?|\n)/g);this._input=cs+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-As),this.offset-=As;var Ci=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),to.length-1&&(this.yylineno-=to.length-1);var pu=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:to?(to.length===Ci.length?this.yylloc.first_column:0)+Ci[Ci.length-to.length].length-to[0].length:this.yylloc.first_column-As},this.options.ranges&&(this.yylloc.range=[pu[0],pu[0]+this.yyleng-As]),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(cs){this.unput(this.match.slice(cs))},pastInput:function(){var cs=this.matched.substr(0,this.matched.length-this.match.length);return(cs.length>20?"...":"")+cs.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var cs=this.match;return cs.length<20&&(cs+=this._input.substr(0,20-cs.length)),(cs.substr(0,20)+(cs.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var cs=this.pastInput(),As=new Array(cs.length+1).join("-");return cs+this.upcomingInput()+` +`+As+"^"},test_match:function(cs,As){var to,Ci,pu;if(this.options.backtrack_lexer&&(pu={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&&(pu.yylloc.range=this.yylloc.range.slice(0))),Ci=cs[0].match(/(?:\r\n?|\n).*/g),Ci&&(this.yylineno+=Ci.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ci?Ci[Ci.length-1].length-Ci[Ci.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+cs[0].length},this.yytext+=cs[0],this.match+=cs[0],this.matches=cs,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(cs[0].length),this.matched+=cs[0],to=this.performAction.call(this,this.yy,this,As,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),to)return to;if(this._backtrack){for(var Le in pu)this[Le]=pu[Le];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var cs,As,to,Ci;this._more||(this.yytext="",this.match="");for(var pu=this._currentRules(),Le=0;LeAs[0].length)){if(As=to,Ci=Le,this.options.backtrack_lexer){if(cs=this.test_match(to,pu[Le]),cs!==!1)return cs;if(this._backtrack){As=!1;continue}else return!1}else if(!this.options.flex)break}return As?(cs=this.test_match(As,pu[Ci]),cs!==!1?cs:!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 As=this.next();return As||this.lex()},begin:function(As){this.conditionStack.push(As)},popState:function(){var As=this.conditionStack.length-1;return As>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(As){return As=this.conditionStack.length-1-Math.abs(As||0),As>=0?this.conditionStack[As]:"INITIAL"},pushState:function(As){this.begin(As)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(As,to,Ci,pu){switch(Ci){case 0:return this.begin("acc_title"),34;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),36;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:this.begin("callbackname");break;case 8:this.popState();break;case 9:this.popState(),this.begin("callbackargs");break;case 10:return 92;case 11:this.popState();break;case 12:return 93;case 13:return"MD_STR";case 14:this.popState();break;case 15:this.begin("md_string");break;case 16:return"STR";case 17:this.popState();break;case 18:this.pushState("string");break;case 19:return 81;case 20:return 99;case 21:return 82;case 22:return 101;case 23:return 83;case 24:return 84;case 25:return 94;case 26:this.begin("click");break;case 27:this.popState();break;case 28:return 85;case 29:return As.lex.firstGraph()&&this.begin("dir"),12;case 30:return As.lex.firstGraph()&&this.begin("dir"),12;case 31:return As.lex.firstGraph()&&this.begin("dir"),12;case 32:return 27;case 33:return 32;case 34:return 95;case 35:return 95;case 36:return 95;case 37:return 95;case 38:return this.popState(),13;case 39:return this.popState(),14;case 40:return this.popState(),14;case 41:return this.popState(),14;case 42:return this.popState(),14;case 43:return this.popState(),14;case 44:return this.popState(),14;case 45:return this.popState(),14;case 46:return this.popState(),14;case 47:return this.popState(),14;case 48:return this.popState(),14;case 49:return 118;case 50:return 119;case 51:return 120;case 52:return 121;case 53:return 102;case 54:return 108;case 55:return 44;case 56:return 58;case 57:return 42;case 58:return 8;case 59:return 103;case 60:return 112;case 61:return this.popState(),75;case 62:return this.pushState("edgeText"),73;case 63:return 116;case 64:return this.popState(),75;case 65:return this.pushState("thickEdgeText"),73;case 66:return 116;case 67:return this.popState(),75;case 68:return this.pushState("dottedEdgeText"),73;case 69:return 116;case 70:return 75;case 71:return this.popState(),51;case 72:return"TEXT";case 73:return this.pushState("ellipseText"),50;case 74:return this.popState(),53;case 75:return this.pushState("text"),52;case 76:return this.popState(),55;case 77:return this.pushState("text"),54;case 78:return 56;case 79:return this.pushState("text"),65;case 80:return this.popState(),62;case 81:return this.pushState("text"),61;case 82:return this.popState(),47;case 83:return this.pushState("text"),46;case 84:return this.popState(),67;case 85:return this.popState(),69;case 86:return 114;case 87:return this.pushState("trapText"),66;case 88:return this.pushState("trapText"),68;case 89:return 115;case 90:return 65;case 91:return 87;case 92:return"SEP";case 93:return 86;case 94:return 112;case 95:return 108;case 96:return 42;case 97:return 106;case 98:return 111;case 99:return 113;case 100:return this.popState(),60;case 101:return this.pushState("text"),60;case 102:return this.popState(),49;case 103:return this.pushState("text"),48;case 104:return this.popState(),31;case 105:return this.pushState("text"),29;case 106:return this.popState(),64;case 107:return this.pushState("text"),63;case 108:return"TEXT";case 109:return"QUOTE";case 110:return 9;case 111:return 10;case 112:return 11}},rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{callbackargs:{rules:[11,12,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},callbackname:{rules:[8,9,10,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},href:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},click:{rules:[15,18,27,28,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dottedEdgeText:{rules:[15,18,67,69,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},thickEdgeText:{rules:[15,18,64,66,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},edgeText:{rules:[15,18,61,63,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},trapText:{rules:[15,18,70,73,75,77,81,83,84,85,86,87,88,101,103,105,107],inclusive:!1},ellipseText:{rules:[15,18,70,71,72,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},text:{rules:[15,18,70,73,74,75,76,77,80,81,82,83,87,88,100,101,102,103,104,105,106,107,108],inclusive:!1},vertex:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dir:{rules:[15,18,38,39,40,41,42,43,44,45,46,47,48,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr_multiline:{rules:[5,6,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr:{rules:[3,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_title:{rules:[1,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},md_string:{rules:[13,14,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},string:{rules:[15,16,17,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},INITIAL:{rules:[0,2,4,7,15,18,19,20,21,22,23,24,25,26,29,30,31,32,33,34,35,36,37,49,50,51,52,53,54,55,56,57,58,59,60,61,62,64,65,67,68,70,73,75,77,78,79,81,83,87,88,89,90,91,92,93,94,95,96,97,98,99,101,103,105,107,109,110,111,112],inclusive:!0}}};return Od}();Eh.lexer=Zc;function Qh(){this.yy={}}return Qh.prototype=Eh,Eh.Parser=Qh,new Qh}();ipt.parser=ipt;const spt=ipt,lje="flowchart-";let gRt=0,bD=Re(),jl={},Qv=[],wD={},Px=[],OY={},NY={},PY=0,apt=!0,Zw,FY,BY=[];const RY=i=>ei.sanitizeText(i,bD),zF=function(i){const a=Object.keys(jl);for(const f of a)if(jl[f].id===i)return jl[f].domId;return i},pRt=function(i,a,f,g,w,v,b={}){let E,S=i;S!==void 0&&S.trim().length!==0&&(jl[S]===void 0&&(jl[S]={id:S,labelType:"text",domId:lje+S+"-"+gRt,styles:[],classes:[]}),gRt++,a!==void 0?(bD=Re(),E=RY(a.text.trim()),jl[S].labelType=a.type,E[0]==='"'&&E[E.length-1]==='"'&&(E=E.substring(1,E.length-1)),jl[S].text=E):jl[S].text===void 0&&(jl[S].text=i),f!==void 0&&(jl[S].type=f),g!=null&&g.forEach(function(_){jl[S].styles.push(_)}),w!=null&&w.forEach(function(_){jl[S].classes.push(_)}),v!==void 0&&(jl[S].dir=v),jl[S].props===void 0?jl[S].props=b:b!==void 0&&Object.assign(jl[S].props,b))},bRt=function(i,a,f){const v={start:i,end:a,type:void 0,text:"",labelType:"text"};Kt.info("abc78 Got edge...",v);const b=f.text;if(b!==void 0&&(v.text=RY(b.text.trim()),v.text[0]==='"'&&v.text[v.text.length-1]==='"'&&(v.text=v.text.substring(1,v.text.length-1)),v.labelType=b.type),f!==void 0&&(v.type=f.type,v.stroke=f.stroke,v.length=f.length),(v==null?void 0:v.length)>10&&(v.length=10),Qv.length<(bD.maxEdges??500))Kt.info("abc78 pushing edge..."),Qv.push(v);else throw new Error(`Edge limit exceeded. ${Qv.length} edges found, but the limit is ${bD.maxEdges}. + +Initialize mermaid with maxEdges set to a higher number to allow more edges. +You cannot set this config via configuration inside the diagram as it is a secure config. +You have to call mermaid.initialize.`)},wRt=function(i,a,f){Kt.info("addLink (abc78)",i,a,f);let g,w;for(g=0;g=Qv.length)throw new Error(`The index ${f} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${Qv.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);f==="default"?Qv.defaultStyle=a:(uo.isSubstringInArray("fill",a)===-1&&a.push("fill:none"),Qv[f].style=a)})},yRt=function(i,a){i.split(",").forEach(function(f){wD[f]===void 0&&(wD[f]={id:f,styles:[],textStyles:[]}),a!=null&&a.forEach(function(g){if(g.match("color")){const w=g.replace("fill","bgFill").replace("color","fill");wD[f].textStyles.push(w)}wD[f].styles.push(g)})})},xRt=function(i){Zw=i,Zw.match(/.*/)&&(Zw="LR"),Zw.match(/.*v/)&&(Zw="TB"),Zw==="TD"&&(Zw="TB")},jY=function(i,a){i.split(",").forEach(function(f){let g=f;jl[g]!==void 0&&jl[g].classes.push(a),OY[g]!==void 0&&OY[g].classes.push(a)})},hje=function(i,a){i.split(",").forEach(function(f){a!==void 0&&(NY[FY==="gen-1"?zF(f):f]=RY(a))})},fje=function(i,a,f){let g=zF(i);if(Re().securityLevel!=="loose"||a===void 0)return;let w=[];if(typeof f=="string"){w=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let v=0;v")),w.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),Tr(this).classed("hover",!1)})};BY.push(DRt);const MRt=function(i="gen-1"){jl={},wD={},Qv=[],BY=[DRt],Px=[],OY={},PY=0,NY={},apt=!0,FY=i,bD=Re(),ag()},IRt=i=>{FY=i||"gen-2"},ORt=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},NRt=function(i,a,f){let g=i.text.trim(),w=f.text;i===f&&f.text.match(/\s/)&&(g=void 0);function v(M){const F={boolean:{},number:{},string:{}},R=[];let B;return{nodeList:M.filter(function(Y){const nt=typeof Y;return Y.stmt&&Y.stmt==="dir"?(B=Y.value,!1):Y.trim()===""?!1:nt in F?F[nt].hasOwnProperty(Y)?!1:F[nt][Y]=!0:R.includes(Y)?!1:R.push(Y)}),dir:B}}let b=[];const{nodeList:E,dir:S}=v(b.concat.apply(b,a));if(b=E,FY==="gen-1")for(let M=0;M2e3)return;if(PRt[qF]=a,Px[a].id===i)return{result:!0,count:0};let g=0,w=1;for(;g=0){const b=FRt(i,v);if(b.result)return{result:!0,count:w+b.count};w=w+b.count}g=g+1}return{result:!1,count:w}},BRt=function(i){return PRt[i]},RRt=function(){qF=-1,Px.length>0&&FRt("none",Px.length-1)},jRt=function(){return Px},$Rt=()=>apt?(apt=!1,!0):!1,gje=i=>{let a=i.trim(),f="arrow_open";switch(a[0]){case"<":f="arrow_point",a=a.slice(1);break;case"x":f="arrow_cross",a=a.slice(1);break;case"o":f="arrow_circle",a=a.slice(1);break}let g="normal";return a.includes("=")&&(g="thick"),a.includes(".")&&(g="dotted"),{type:f,stroke:g}},pje=(i,a)=>{const f=a.length;let g=0;for(let w=0;w{const a=i.trim();let f=a.slice(0,-1),g="arrow_open";switch(a.slice(-1)){case"x":g="arrow_cross",a[0]==="x"&&(g="double_"+g,f=f.slice(1));break;case">":g="arrow_point",a[0]==="<"&&(g="double_"+g,f=f.slice(1));break;case"o":g="arrow_circle",a[0]==="o"&&(g="double_"+g,f=f.slice(1));break}let w="normal",v=f.length-1;f[0]==="="&&(w="thick"),f[0]==="~"&&(w="invisible");let b=pje(".",f);return b&&(w="dotted",v=b),{type:g,stroke:w,length:v}},zRt=(i,a)=>{const f=bje(i);let g;if(a){if(g=gje(a),g.stroke!==f.stroke)return{type:"INVALID",stroke:"INVALID"};if(g.type==="arrow_open")g.type=f.type;else{if(g.type!==f.type)return{type:"INVALID",stroke:"INVALID"};g.type="double_"+g.type}return g.type==="double_arrow"&&(g.type="double_arrow_point"),g.length=f.length,g}return f},qRt=(i,a)=>{let f=!1;return i.forEach(g=>{g.nodes.indexOf(a)>=0&&(f=!0)}),f},HRt=(i,a)=>{const f=[];return i.nodes.forEach((g,w)=>{qRt(a,g)||f.push(i.nodes[w])}),{nodes:f}},VRt={firstGraph:$Rt},A9={defaultConfig:()=>lBt.flowchart,setAccTitle:og,getAccTitle:Xg,getAccDescription:Jg,setAccDescription:Qg,addVertex:pRt,lookUpDomId:zF,addLink:wRt,updateLinkInterpolate:mRt,updateLink:vRt,addClass:yRt,setDirection:xRt,setClass:jY,setTooltip:hje,getTooltip:ERt,setClickEvent:TRt,setLink:kRt,bindFunctions:CRt,getDirection:SRt,getVertices:_Rt,getEdges:ARt,getClasses:LRt,clear:MRt,setGen:IRt,defaultStyle:ORt,addSubGraph:NRt,getDepthFirstPos:BRt,indexNodes:RRt,getSubGraphs:jRt,destructLink:zRt,lex:VRt,exists:qRt,makeUniq:HRt,setDiagramTitle:S2,getDiagramTitle:Zg},wje=Object.freeze(Object.defineProperty({__proto__:null,addClass:yRt,addLink:wRt,addSingleLink:bRt,addSubGraph:NRt,addVertex:pRt,bindFunctions:CRt,clear:MRt,default:A9,defaultStyle:ORt,destructLink:zRt,firstGraph:$Rt,getClasses:LRt,getDepthFirstPos:BRt,getDirection:SRt,getEdges:ARt,getSubGraphs:jRt,getTooltip:ERt,getVertices:_Rt,indexNodes:RRt,lex:VRt,lookUpDomId:zF,setClass:jY,setClickEvent:TRt,setDirection:xRt,setGen:IRt,setLink:kRt,updateLink:vRt,updateLinkInterpolate:mRt},Symbol.toStringTag,{value:"Module"}));var mje="[object Symbol]";function L9(i){return typeof i=="symbol"||e4(i)&&b9(i)==mje}function mD(i,a){for(var f=-1,g=i==null?0:i.length,w=Array(g);++f-1}function A2(i){return p8(i)?wFt(i):xBt(i)}var Fje=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Bje=/^\w*$/;function opt(i,a){if(s1(i))return!1;var f=typeof i;return f=="number"||f=="symbol"||f=="boolean"||i==null||L9(i)?!0:Bje.test(i)||!Fje.test(i)||a!=null&&i in Object(a)}var Rje=500;function jje(i){var a=eD(i,function(g){return f.size===Rje&&f.clear(),g}),f=a.cache;return a}var $je=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,zje=/\\(\\)?/g,qje=jje(function(i){var a=[];return i.charCodeAt(0)===46&&a.push(""),i.replace($je,function(f,g,w,v){a.push(w?v.replace(zje,"$1"):g||f)}),a});const Hje=qje;function JRt(i){return i==null?"":KRt(i)}function zY(i,a){return s1(i)?i:opt(i,a)?[i]:Hje(JRt(i))}var Vje=1/0;function HF(i){if(typeof i=="string"||L9(i))return i;var a=i+"";return a=="0"&&1/i==-Vje?"-0":a}function qY(i,a){a=zY(a,i);for(var f=0,g=a.length;i!=null&&f0&&f(E)?a>1?HY(E,a-1,f,g,w):cpt(w,E):g||(w[w.length]=E)}return w}function vD(i){var a=i==null?0:i.length;return a?HY(i,1):[]}function Kje(i){return xFt(yFt(i,void 0,vD),i+"")}function Wje(i,a,f,g){var w=-1,v=i==null?0:i.length;for(g&&v&&(f=i[++w]);++wE))return!1;var _=v.get(i),M=v.get(a);if(_&&M)return _==a&&M==i;var F=-1,R=!0,B=f&xze?new UF:void 0;for(v.set(i,a),v.set(a,i);++F2?a[2]:void 0;for(w&&DF(a[0],a[1],w)&&(g=1);++f-1?w[v?a[b]:b]:void 0}}var lqe=Math.max;function hqe(i,a,f){var g=i==null?0:i.length;if(!g)return-1;var w=f==null?0:Dje(f);return w<0&&(w=lqe(g+w,0)),QRt(i,k8(a),w)}var fqe=uqe(hqe);const bpt=fqe;function Cjt(i,a){var f=-1,g=p8(i)?Array(i.length):[];return UY(i,function(w,v,b){g[++f]=a(w,v,b)}),g}function u1(i,a){var f=s1(i)?mD:Cjt;return f(i,k8(a))}function dqe(i,a){return i==null?i:wgt(i,ppt(a),y9)}function gqe(i,a){return i&&gpt(i,ppt(a))}function pqe(i,a){return i>a}var bqe=Object.prototype,wqe=bqe.hasOwnProperty;function mqe(i,a){return i!=null&&wqe.call(i,a)}function lo(i,a){return i!=null&&xjt(i,a,mqe)}function vqe(i,a){return mD(a,function(f){return i[f]})}function Bx(i){return i==null?[]:vqe(i,A2(i))}function Tf(i){return i===void 0}function Sjt(i,a){return ia||v&&b&&S&&!E&&!_||g&&b&&S||!f&&S||!w)return 1;if(!g&&!v&&!_&&i=E)return S;var _=f[g];return S*(_=="desc"?-1:1)}}return i.index-a.index}function Cqe(i,a,f){a.length?a=mD(a,function(v){return s1(v)?function(b){return qY(b,v.length===1?v[0]:v)}:v}):a=[x9];var g=-1;a=mD(a,iY(k8));var w=Cjt(i,function(v,b,E){var S=mD(a,function(_){return _(v)});return{criteria:S,index:++g,value:v}});return kqe(w,function(v,b){return Tqe(v,b,f)})}function Sqe(i,a){return xqe(i,a,function(f,g){return kjt(i,g)})}var _qe=Kje(function(i,a){return i==null?{}:Sqe(i,a)});const KF=_qe;var Aqe=Math.ceil,Lqe=Math.max;function Dqe(i,a,f,g){for(var w=-1,v=Lqe(Aqe((a-i)/(f||1)),0),b=Array(v);v--;)b[g?v:++w]=i,i+=f;return b}function Mqe(i){return function(a,f,g){return g&&typeof g!="number"&&DF(a,f,g)&&(f=g=void 0),a=$Y(a),f===void 0?(f=a,a=0):f=$Y(f),g=g===void 0?a1&&DF(i,a[0],a[1])?a=[]:f>2&&DF(a[0],a[1],a[2])&&(a=[a[0]]),Cqe(i,HY(a,1),[])});const YF=Nqe;var Pqe=1/0,Fqe=lD&&1/hpt(new lD([,-0]))[1]==Pqe?function(i){return new lD(i)}:Mje;const Bqe=Fqe;var Rqe=200;function jqe(i,a,f){var g=-1,w=Pje,v=i.length,b=!0,E=[],S=E;if(f)b=!1,w=oqe;else if(v>=Rqe){var _=a?null:Bqe(i);if(_)return hpt(_);b=!1,w=djt,S=new UF}else S=a?[]:E;t:for(;++g1?w.setNode(v,f):w.setNode(v)}),this}setNode(a,f){return lo(this._nodes,a)?(arguments.length>1&&(this._nodes[a]=f),this):(this._nodes[a]=arguments.length>1?f:this._defaultNodeLabelFn(a),this._isCompound&&(this._parent[a]=I9,this._children[a]={},this._children[I9][a]=!0),this._in[a]={},this._preds[a]={},this._out[a]={},this._sucs[a]={},++this._nodeCount,this)}node(a){return this._nodes[a]}hasNode(a){return lo(this._nodes,a)}removeNode(a){var f=this;if(lo(this._nodes,a)){var g=function(w){f.removeEdge(f._edgeObjs[w])};delete this._nodes[a],this._isCompound&&(this._removeFromParentsChildList(a),delete this._parent[a],yr(this.children(a),function(w){f.setParent(w)}),delete this._children[a]),yr(A2(this._in[a]),g),delete this._in[a],delete this._preds[a],yr(A2(this._out[a]),g),delete this._out[a],delete this._sucs[a],--this._nodeCount}return this}setParent(a,f){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(Tf(f))f=I9;else{f+="";for(var g=f;!Tf(g);g=this.parent(g))if(g===a)throw new Error("Setting "+f+" as parent of "+a+" would create a cycle");this.setNode(f)}return this.setNode(a),this._removeFromParentsChildList(a),this._parent[a]=f,this._children[f][a]=!0,this}_removeFromParentsChildList(a){delete this._children[this._parent[a]][a]}parent(a){if(this._isCompound){var f=this._parent[a];if(f!==I9)return f}}children(a){if(Tf(a)&&(a=I9),this._isCompound){var f=this._children[a];if(f)return A2(f)}else{if(a===I9)return this.nodes();if(this.hasNode(a))return[]}}predecessors(a){var f=this._preds[a];if(f)return A2(f)}successors(a){var f=this._sucs[a];if(f)return A2(f)}neighbors(a){var f=this.predecessors(a);if(f)return zqe(f,this.successors(a))}isLeaf(a){var f;return this.isDirected()?f=this.successors(a):f=this.neighbors(a),f.length===0}filterNodes(a){var f=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});f.setGraph(this.graph());var g=this;yr(this._nodes,function(b,E){a(E)&&f.setNode(E,b)}),yr(this._edgeObjs,function(b){f.hasNode(b.v)&&f.hasNode(b.w)&&f.setEdge(b,g.edge(b))});var w={};function v(b){var E=g.parent(b);return E===void 0||f.hasNode(E)?(w[b]=E,E):E in w?w[E]:v(E)}return this._isCompound&&yr(f.nodes(),function(b){f.setParent(b,v(b))}),f}setDefaultEdgeLabel(a){return ZL(a)||(a=sD(a)),this._defaultEdgeLabelFn=a,this}edgeCount(){return this._edgeCount}edges(){return Bx(this._edgeObjs)}setPath(a,f){var g=this,w=arguments;return WF(a,function(v,b){return w.length>1?g.setEdge(v,b,f):g.setEdge(v,b),b}),this}setEdge(){var a,f,g,w,v=!1,b=arguments[0];typeof b=="object"&&b!==null&&"v"in b?(a=b.v,f=b.w,g=b.name,arguments.length===2&&(w=arguments[1],v=!0)):(a=b,f=arguments[1],g=arguments[3],arguments.length>2&&(w=arguments[2],v=!0)),a=""+a,f=""+f,Tf(g)||(g=""+g);var E=XF(this._isDirected,a,f,g);if(lo(this._edgeLabels,E))return v&&(this._edgeLabels[E]=w),this;if(!Tf(g)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(a),this.setNode(f),this._edgeLabels[E]=v?w:this._defaultEdgeLabelFn(a,f,g);var S=Gqe(this._isDirected,a,f,g);return a=S.v,f=S.w,Object.freeze(S),this._edgeObjs[E]=S,Ajt(this._preds[f],a),Ajt(this._sucs[a],f),this._in[f][E]=S,this._out[a][E]=S,this._edgeCount++,this}edge(a,f,g){var w=arguments.length===1?vpt(this._isDirected,arguments[0]):XF(this._isDirected,a,f,g);return this._edgeLabels[w]}hasEdge(a,f,g){var w=arguments.length===1?vpt(this._isDirected,arguments[0]):XF(this._isDirected,a,f,g);return lo(this._edgeLabels,w)}removeEdge(a,f,g){var w=arguments.length===1?vpt(this._isDirected,arguments[0]):XF(this._isDirected,a,f,g),v=this._edgeObjs[w];return v&&(a=v.v,f=v.w,delete this._edgeLabels[w],delete this._edgeObjs[w],Ljt(this._preds[f],a),Ljt(this._sucs[a],f),delete this._in[f][w],delete this._out[a][w],this._edgeCount--),this}inEdges(a,f){var g=this._in[a];if(g){var w=Bx(g);return f?Fx(w,function(v){return v.v===f}):w}}outEdges(a,f){var g=this._out[a];if(g){var w=Bx(g);return f?Fx(w,function(v){return v.w===f}):w}}nodeEdges(a,f){var g=this.inEdges(a,f);if(g)return g.concat(this.outEdges(a,f))}}l1.prototype._nodeCount=0,l1.prototype._edgeCount=0;function Ajt(i,a){i[a]?i[a]++:i[a]=1}function Ljt(i,a){--i[a]||delete i[a]}function XF(i,a,f,g){var w=""+a,v=""+f;if(!i&&w>v){var b=w;w=v,v=b}return w+_jt+v+_jt+(Tf(g)?Uqe:g)}function Gqe(i,a,f,g){var w=""+a,v=""+f;if(!i&&w>v){var b=w;w=v,v=b}var E={v:w,w:v};return g&&(E.name=g),E}function vpt(i,a){return XF(i,a.v,a.w,a.name)}class Kqe{constructor(){var a={};a._next=a._prev=a,this._sentinel=a}dequeue(){var a=this._sentinel,f=a._prev;if(f!==a)return Djt(f),f}enqueue(a){var f=this._sentinel;a._prev&&a._next&&Djt(a),a._next=f._next,f._next._prev=a,f._next=a,a._prev=f}toString(){for(var a=[],f=this._sentinel,g=f._prev;g!==f;)a.push(JSON.stringify(g,Wqe)),g=g._prev;return"["+a.join(", ")+"]"}}function Djt(i){i._prev._next=i._next,i._next._prev=i._prev,delete i._next,delete i._prev}function Wqe(i,a){if(i!=="_next"&&i!=="_prev")return a}var Yqe=sD(1);function Xqe(i,a){if(i.nodeCount()<=1)return[];var f=Jqe(i,a||Yqe),g=Qqe(f.graph,f.buckets,f.zeroIdx);return vD(u1(g,function(w){return i.outEdges(w.v,w.w)}))}function Qqe(i,a,f){for(var g=[],w=a[a.length-1],v=a[0],b;i.nodeCount();){for(;b=v.dequeue();)ypt(i,a,f,b);for(;b=w.dequeue();)ypt(i,a,f,b);if(i.nodeCount()){for(var E=a.length-2;E>0;--E)if(b=a[E].dequeue(),b){g=g.concat(ypt(i,a,f,b,!0));break}}}return g}function ypt(i,a,f,g,w){var v=w?[]:void 0;return yr(i.inEdges(g.v),function(b){var E=i.edge(b),S=i.node(b.v);w&&v.push({v:b.v,w:b.w}),S.out-=E,xpt(a,f,S)}),yr(i.outEdges(g.v),function(b){var E=i.edge(b),S=b.w,_=i.node(S);_.in-=E,xpt(a,f,_)}),i.removeNode(g.v),v}function Jqe(i,a){var f=new l1,g=0,w=0;yr(i.nodes(),function(E){f.setNode(E,{v:E,in:0,out:0})}),yr(i.edges(),function(E){var S=f.edge(E.v,E.w)||0,_=a(E),M=S+_;f.setEdge(E.v,E.w,M),w=Math.max(w,f.node(E.v).out+=_),g=Math.max(g,f.node(E.w).in+=_)});var v=M9(w+g+3).map(function(){return new Kqe}),b=g+1;return yr(f.nodes(),function(E){xpt(v,b,f.node(E))}),{graph:f,buckets:v,zeroIdx:b}}function xpt(i,a,f){f.out?f.in?i[f.out-f.in+a].enqueue(f):i[i.length-1].enqueue(f):i[0].enqueue(f)}function Zqe(i){var a=i.graph().acyclicer==="greedy"?Xqe(i,f(i)):tHe(i);yr(a,function(g){var w=i.edge(g);i.removeEdge(g),w.forwardName=g.name,w.reversed=!0,i.setEdge(g.w,g.v,w,WY("rev"))});function f(g){return function(w){return g.edge(w).weight}}}function tHe(i){var a=[],f={},g={};function w(v){lo(g,v)||(g[v]=!0,f[v]=!0,yr(i.outEdges(v),function(b){lo(f,b.w)?a.push(b):w(b.w)}),delete f[v])}return yr(i.nodes(),w),a}function eHe(i){yr(i.edges(),function(a){var f=i.edge(a);if(f.reversed){i.removeEdge(a);var g=f.forwardName;delete f.reversed,delete f.forwardName,i.setEdge(a.w,a.v,f,g)}})}function xD(i,a,f,g){var w;do w=WY(g);while(i.hasNode(w));return f.dummy=a,i.setNode(w,f),w}function nHe(i){var a=new l1().setGraph(i.graph());return yr(i.nodes(),function(f){a.setNode(f,i.node(f))}),yr(i.edges(),function(f){var g=a.edge(f.v,f.w)||{weight:0,minlen:1},w=i.edge(f);a.setEdge(f.v,f.w,{weight:g.weight+w.weight,minlen:Math.max(g.minlen,w.minlen)})}),a}function Mjt(i){var a=new l1({multigraph:i.isMultigraph()}).setGraph(i.graph());return yr(i.nodes(),function(f){i.children(f).length||a.setNode(f,i.node(f))}),yr(i.edges(),function(f){a.setEdge(f,i.edge(f))}),a}function Ijt(i,a){var f=i.x,g=i.y,w=a.x-f,v=a.y-g,b=i.width/2,E=i.height/2;if(!w&&!v)throw new Error("Not possible to find intersection inside of the rectangle");var S,_;return Math.abs(v)*b>Math.abs(w)*E?(v<0&&(E=-E),S=E*w/v,_=E):(w<0&&(b=-b),S=b,_=b*v/w),{x:f+S,y:g+_}}function YY(i){var a=u1(M9(Njt(i)+1),function(){return[]});return yr(i.nodes(),function(f){var g=i.node(f),w=g.rank;Tf(w)||(a[w][g.order]=f)}),a}function rHe(i){var a=GF(u1(i.nodes(),function(f){return i.node(f).rank}));yr(i.nodes(),function(f){var g=i.node(f);lo(g,"rank")&&(g.rank-=a)})}function iHe(i){var a=GF(u1(i.nodes(),function(v){return i.node(v).rank})),f=[];yr(i.nodes(),function(v){var b=i.node(v).rank-a;f[b]||(f[b]=[]),f[b].push(v)});var g=0,w=i.graph().nodeRankFactor;yr(f,function(v,b){Tf(v)&&b%w!==0?--g:g&&yr(v,function(E){i.node(E).rank+=g})})}function Ojt(i,a,f,g){var w={width:0,height:0};return arguments.length>=4&&(w.rank=f,w.order=g),xD(i,"border",w,a)}function Njt(i){return D9(u1(i.nodes(),function(a){var f=i.node(a).rank;if(!Tf(f))return f}))}function sHe(i,a){var f={lhs:[],rhs:[]};return yr(i,function(g){a(g)?f.lhs.push(g):f.rhs.push(g)}),f}function aHe(i,a){var f=Ejt();try{return a()}finally{console.log(i+" time: "+(Ejt()-f)+"ms")}}function oHe(i,a){return a()}function cHe(i){function a(f){var g=i.children(f),w=i.node(f);if(g.length&&yr(g,a),lo(w,"minRank")){w.borderLeft=[],w.borderRight=[];for(var v=w.minRank,b=w.maxRank+1;vb.lim&&(E=b,S=!0);var _=Fx(a.edges(),function(M){return S===Gjt(i,i.node(M.v),E)&&S!==Gjt(i,i.node(M.w),E)});return mpt(_,function(M){return QF(a,M)})}function Ujt(i,a,f,g){var w=f.v,v=f.w;i.removeEdge(w,v),i.setEdge(g.v,g.w,{}),Spt(i),Cpt(i,a),EHe(i,a)}function EHe(i,a){var f=bpt(i.nodes(),function(w){return!a.node(w).parent}),g=xHe(i,f);g=g.slice(1),yr(g,function(w){var v=i.node(w).parent,b=a.edge(w,v),E=!1;b||(b=a.edge(v,w),E=!0),a.node(w).rank=a.node(v).rank+(E?b.minlen:-b.minlen)})}function THe(i,a,f){return i.hasEdge(a,f)}function Gjt(i,a,f){return f.low<=a.lim&&a.lim<=f.lim}function CHe(i){switch(i.graph().ranker){case"network-simplex":Kjt(i);break;case"tight-tree":_He(i);break;case"longest-path":SHe(i);break;default:Kjt(i)}}var SHe=Tpt;function _He(i){Tpt(i),Rjt(i)}function Kjt(i){O9(i)}function AHe(i){var a=xD(i,"root",{},"_root"),f=LHe(i),g=D9(Bx(f))-1,w=2*g+1;i.graph().nestingRoot=a,yr(i.edges(),function(b){i.edge(b).minlen*=w});var v=DHe(i)+1;yr(i.children(),function(b){Wjt(i,a,w,v,g,f,b)}),i.graph().nodeRankFactor=w}function Wjt(i,a,f,g,w,v,b){var E=i.children(b);if(!E.length){b!==a&&i.setEdge(a,b,{weight:0,minlen:f});return}var S=Ojt(i,"_bt"),_=Ojt(i,"_bb"),M=i.node(b);i.setParent(S,b),M.borderTop=S,i.setParent(_,b),M.borderBottom=_,yr(E,function(F){Wjt(i,a,f,g,w,v,F);var R=i.node(F),B=R.borderTop?R.borderTop:F,z=R.borderBottom?R.borderBottom:F,Y=R.borderTop?g:2*g,nt=B!==z?1:w-v[b]+1;i.setEdge(S,B,{weight:Y,minlen:nt,nestingEdge:!0}),i.setEdge(z,_,{weight:Y,minlen:nt,nestingEdge:!0})}),i.parent(b)||i.setEdge(a,S,{weight:0,minlen:w+v[b]})}function LHe(i){var a={};function f(g,w){var v=i.children(g);v&&v.length&&yr(v,function(b){f(b,w+1)}),a[g]=w}return yr(i.children(),function(g){f(g,1)}),a}function DHe(i){return WF(i.edges(),function(a,f){return a+i.edge(f).weight},0)}function MHe(i){var a=i.graph();i.removeNode(a.nestingRoot),delete a.nestingRoot,yr(i.edges(),function(f){var g=i.edge(f);g.nestingEdge&&i.removeEdge(f)})}function IHe(i,a,f){var g={},w;yr(f,function(v){for(var b=i.parent(v),E,S;b;){if(E=i.parent(b),E?(S=g[E],g[E]=b):(S=w,w=b),S&&S!==b){a.setEdge(S,b);return}b=E}})}function OHe(i,a,f){var g=NHe(i),w=new l1({compound:!0}).setGraph({root:g}).setDefaultNodeLabel(function(v){return i.node(v)});return yr(i.nodes(),function(v){var b=i.node(v),E=i.parent(v);(b.rank===a||b.minRank<=a&&a<=b.maxRank)&&(w.setNode(v),w.setParent(v,E||g),yr(i[f](v),function(S){var _=S.v===v?S.w:S.v,M=w.edge(_,v),F=Tf(M)?0:M.weight;w.setEdge(_,v,{weight:i.edge(S).weight+F})}),lo(b,"minRank")&&w.setNode(v,{borderLeft:b.borderLeft[a],borderRight:b.borderRight[a]}))}),w}function NHe(i){for(var a;i.hasNode(a=WY("_root")););return a}function PHe(i,a){for(var f=0,g=1;g0;)M%2&&(F+=E[M+1]),M=M-1>>1,E[M]+=_.weight;S+=_.weight*F})),S}function BHe(i){var a={},f=Fx(i.nodes(),function(E){return!i.children(E).length}),g=D9(u1(f,function(E){return i.node(E).rank})),w=u1(M9(g+1),function(){return[]});function v(E){if(!lo(a,E)){a[E]=!0;var S=i.node(E);w[S.rank].push(E),yr(i.successors(E),v)}}var b=YF(f,function(E){return i.node(E).rank});return yr(b,v),w}function RHe(i,a){return u1(a,function(f){var g=i.inEdges(f);if(g.length){var w=WF(g,function(v,b){var E=i.edge(b),S=i.node(b.v);return{sum:v.sum+E.weight*S.order,weight:v.weight+E.weight}},{sum:0,weight:0});return{v:f,barycenter:w.sum/w.weight,weight:w.weight}}else return{v:f}})}function jHe(i,a){var f={};yr(i,function(w,v){var b=f[w.v]={indegree:0,in:[],out:[],vs:[w.v],i:v};Tf(w.barycenter)||(b.barycenter=w.barycenter,b.weight=w.weight)}),yr(a.edges(),function(w){var v=f[w.v],b=f[w.w];!Tf(v)&&!Tf(b)&&(b.indegree++,v.out.push(f[w.w]))});var g=Fx(f,function(w){return!w.indegree});return $He(g)}function $He(i){var a=[];function f(v){return function(b){b.merged||(Tf(b.barycenter)||Tf(v.barycenter)||b.barycenter>=v.barycenter)&&zHe(v,b)}}function g(v){return function(b){b.in.push(v),--b.indegree===0&&i.push(b)}}for(;i.length;){var w=i.pop();a.push(w),yr(w.in.reverse(),f(w)),yr(w.out,g(w))}return u1(Fx(a,function(v){return!v.merged}),function(v){return KF(v,["vs","i","barycenter","weight"])})}function zHe(i,a){var f=0,g=0;i.weight&&(f+=i.barycenter*i.weight,g+=i.weight),a.weight&&(f+=a.barycenter*a.weight,g+=a.weight),i.vs=a.vs.concat(i.vs),i.barycenter=f/g,i.weight=g,i.i=Math.min(a.i,i.i),a.merged=!0}function qHe(i,a){var f=sHe(i,function(M){return lo(M,"barycenter")}),g=f.lhs,w=YF(f.rhs,function(M){return-M.i}),v=[],b=0,E=0,S=0;g.sort(HHe(!!a)),S=Yjt(v,w,S),yr(g,function(M){S+=M.vs.length,v.push(M.vs),b+=M.barycenter*M.weight,E+=M.weight,S=Yjt(v,w,S)});var _={vs:vD(v)};return E&&(_.barycenter=b/E,_.weight=E),_}function Yjt(i,a,f){for(var g;a.length&&(g=GY(a)).i<=f;)a.pop(),i.push(g.vs),f++;return f}function HHe(i){return function(a,f){return a.barycenterf.barycenter?1:i?f.i-a.i:a.i-f.i}}function Xjt(i,a,f,g){var w=i.children(a),v=i.node(a),b=v?v.borderLeft:void 0,E=v?v.borderRight:void 0,S={};b&&(w=Fx(w,function(z){return z!==b&&z!==E}));var _=RHe(i,w);yr(_,function(z){if(i.children(z.v).length){var Y=Xjt(i,z.v,f,g);S[z.v]=Y,lo(Y,"barycenter")&&UHe(z,Y)}});var M=jHe(_,f);VHe(M,S);var F=qHe(M,g);if(b&&(F.vs=vD([b,F.vs,E]),i.predecessors(b).length)){var R=i.node(i.predecessors(b)[0]),B=i.node(i.predecessors(E)[0]);lo(F,"barycenter")||(F.barycenter=0,F.weight=0),F.barycenter=(F.barycenter*F.weight+R.order+B.order)/(F.weight+2),F.weight+=2}return F}function VHe(i,a){yr(i,function(f){f.vs=vD(f.vs.map(function(g){return a[g]?a[g].vs:g}))})}function UHe(i,a){Tf(i.barycenter)?(i.barycenter=a.barycenter,i.weight=a.weight):(i.barycenter=(i.barycenter*i.weight+a.barycenter*a.weight)/(i.weight+a.weight),i.weight+=a.weight)}function GHe(i){var a=Njt(i),f=Qjt(i,M9(1,a+1),"inEdges"),g=Qjt(i,M9(a-1,-1,-1),"outEdges"),w=BHe(i);Jjt(i,w);for(var v=Number.POSITIVE_INFINITY,b,E=0,S=0;S<4;++E,++S){KHe(E%2?f:g,E%4>=2),w=YY(i);var _=PHe(i,w);_b||E>a[S].lim));for(_=S,S=g;(S=i.parent(S))!==_;)v.push(S);return{path:w.concat(v.reverse()),lca:_}}function XHe(i){var a={},f=0;function g(w){var v=f;yr(i.children(w),g),a[w]={low:v,lim:f++}}return yr(i.children(),g),a}function QHe(i,a){var f={};function g(w,v){var b=0,E=0,S=w.length,_=GY(v);return yr(v,function(M,F){var R=ZHe(i,M),B=R?i.node(R).order:S;(R||M===_)&&(yr(v.slice(E,F+1),function(z){yr(i.predecessors(z),function(Y){var nt=i.node(Y),ot=nt.order;(ot_)&&Zjt(f,R,M)})})}function w(v,b){var E=-1,S,_=0;return yr(b,function(M,F){if(i.node(M).dummy==="border"){var R=i.predecessors(M);R.length&&(S=i.node(R[0]).order,g(b,_,F,E,S),_=F,E=S)}g(b,_,b.length,S,v.length)}),b}return WF(a,w),f}function ZHe(i,a){if(i.node(a).dummy)return bpt(i.predecessors(a),function(f){return i.node(f).dummy})}function Zjt(i,a,f){if(a>f){var g=a;a=f,f=g}var w=i[a];w||(i[a]=w={}),w[f]=!0}function tVe(i,a,f){if(a>f){var g=a;a=f,f=g}return lo(i[a],f)}function eVe(i,a,f,g){var w={},v={},b={};return yr(a,function(E){yr(E,function(S,_){w[S]=S,v[S]=S,b[S]=_})}),yr(a,function(E){var S=-1;yr(E,function(_){var M=g(_);if(M.length){M=YF(M,function(Y){return b[Y]});for(var F=(M.length-1)/2,R=Math.floor(F),B=Math.ceil(F);R<=B;++R){var z=M[R];v[_]===_&&S0}function o4(i,a,f){var g=i.x,w=i.y,v=[],b=Number.POSITIVE_INFINITY,E=Number.POSITIVE_INFINITY;a.forEach(function(z){b=Math.min(b,z.x),E=Math.min(E,z.y)});for(var S=g-i.width/2-b,_=w-i.height/2-E,M=0;M1&&v.sort(function(z,Y){var nt=z.x-f.x,ot=z.y-f.y,ft=Math.sqrt(nt*nt+ot*ot),wt=Y.x-f.x,mt=Y.y-f.y,ct=Math.sqrt(wt*wt+mt*mt);return ftMath.abs(w)*E?(v<0&&(E=-E),S=v===0?0:E*w/v,_=E):(w<0&&(b=-b),S=b,_=w===0?0:b*v/w),{x:f+S,y:g+_}}var Rpt={rect:iUe,ellipse:sUe,circle:aUe,diamond:oUe};function rUe(i){Rpt=i}function iUe(i,a,f){var g=i.insert("rect",":first-child").attr("rx",f.rx).attr("ry",f.ry).attr("x",-a.width/2).attr("y",-a.height/2).attr("width",a.width).attr("height",a.height);return f.intersect=function(w){return Bpt(f,w)},g}function sUe(i,a,f){var g=a.width/2,w=a.height/2,v=i.insert("ellipse",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("rx",g).attr("ry",w);return f.intersect=function(b){return s$t(f,g,w,b)},v}function aUe(i,a,f){var g=Math.max(a.width,a.height)/2,w=i.insert("circle",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("r",g);return f.intersect=function(v){return eUe(f,g,v)},w}function oUe(i,a,f){var g=a.width*Math.SQRT2/2,w=a.height*Math.SQRT2/2,v=[{x:0,y:-w},{x:-g,y:0},{x:0,y:w},{x:g,y:0}],b=i.insert("polygon",":first-child").attr("points",v.map(function(E){return E.x+","+E.y}).join(" "));return f.intersect=function(E){return o4(f,v,E)},b}function cUe(){var i=function(a,f){hUe(f);var g=JF(a,"output"),w=JF(g,"clusters"),v=JF(g,"edgePaths"),b=Npt(JF(g,"edgeLabels"),f),E=Fpt(JF(g,"nodes"),f,Rpt);kD(f),tUe(E,f),ZVe(b,f),Ppt(v,f,Dpt);var S=Opt(w,f);JVe(S,f),fUe(f)};return i.createNodes=function(a){return arguments.length?(QVe(a),i):Fpt},i.createClusters=function(a){return arguments.length?(HVe(a),i):Opt},i.createEdgeLabels=function(a){return arguments.length?(VVe(a),i):Npt},i.createEdgePaths=function(a){return arguments.length?(UVe(a),i):Ppt},i.shapes=function(a){return arguments.length?(rUe(a),i):Rpt},i.arrows=function(a){return arguments.length?(FVe(a),i):Dpt},i}var uUe={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},lUe={arrowhead:"normal",curve:Kg};function hUe(i){i.nodes().forEach(function(a){var f=i.node(a);!lo(f,"label")&&!i.children(a).length&&(f.label=a),lo(f,"paddingX")&&yD(f,{paddingLeft:f.paddingX,paddingRight:f.paddingX}),lo(f,"paddingY")&&yD(f,{paddingTop:f.paddingY,paddingBottom:f.paddingY}),lo(f,"padding")&&yD(f,{paddingLeft:f.padding,paddingRight:f.padding,paddingTop:f.padding,paddingBottom:f.padding}),yD(f,uUe),yr(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(g){f[g]=Number(f[g])}),lo(f,"width")&&(f._prevWidth=f.width),lo(f,"height")&&(f._prevHeight=f.height)}),i.edges().forEach(function(a){var f=i.edge(a);lo(f,"label")||(f.label=""),yD(f,lUe)})}function fUe(i){yr(i.nodes(),function(a){var f=i.node(a);lo(f,"_prevWidth")?f.width=f._prevWidth:delete f.width,lo(f,"_prevHeight")?f.height=f._prevHeight:delete f.height,delete f._prevWidth,delete f._prevHeight})}function JF(i,a){var f=i.select("g."+a);return f.empty()&&(f=i.append("g").attr("class",a)),f}function o$t(i,a,f){const g=a.width,w=a.height,v=(g+w)*.9,b=[{x:v/2,y:0},{x:v,y:-v/2},{x:v/2,y:-v},{x:0,y:-v/2}],E=Rx(i,v,v,b);return f.intersect=function(S){return o4(f,b,S)},E}function c$t(i,a,f){const w=a.height,v=w/4,b=a.width+2*v,E=[{x:v,y:0},{x:b-v,y:0},{x:b,y:-w/2},{x:b-v,y:-w},{x:v,y:-w},{x:0,y:-w/2}],S=Rx(i,b,w,E);return f.intersect=function(_){return o4(f,E,_)},S}function u$t(i,a,f){const g=a.width,w=a.height,v=[{x:-w/2,y:0},{x:g,y:0},{x:g,y:-w},{x:-w/2,y:-w},{x:0,y:-w/2}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function l$t(i,a,f){const g=a.width,w=a.height,v=[{x:-2*w/6,y:0},{x:g-w/6,y:0},{x:g+2*w/6,y:-w},{x:w/6,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function h$t(i,a,f){const g=a.width,w=a.height,v=[{x:2*w/6,y:0},{x:g+w/6,y:0},{x:g-2*w/6,y:-w},{x:-w/6,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function f$t(i,a,f){const g=a.width,w=a.height,v=[{x:-2*w/6,y:0},{x:g+2*w/6,y:0},{x:g-w/6,y:-w},{x:w/6,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function d$t(i,a,f){const g=a.width,w=a.height,v=[{x:w/6,y:0},{x:g-w/6,y:0},{x:g+2*w/6,y:-w},{x:-2*w/6,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function g$t(i,a,f){const g=a.width,w=a.height,v=[{x:0,y:0},{x:g+w/2,y:0},{x:g,y:-w/2},{x:g+w/2,y:-w},{x:0,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function p$t(i,a,f){const g=a.height,w=a.width+g/4,v=i.insert("rect",":first-child").attr("rx",g/2).attr("ry",g/2).attr("x",-w/2).attr("y",-g/2).attr("width",w).attr("height",g);return f.intersect=function(b){return Bpt(f,b)},v}function b$t(i,a,f){const g=a.width,w=a.height,v=[{x:0,y:0},{x:g,y:0},{x:g,y:-w},{x:0,y:-w},{x:0,y:0},{x:-8,y:0},{x:g+8,y:0},{x:g+8,y:-w},{x:-8,y:-w},{x:-8,y:0}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function w$t(i,a,f){const g=a.width,w=g/2,v=w/(2.5+g/50),b=a.height+v,E="M 0,"+v+" a "+w+","+v+" 0,0,0 "+g+" 0 a "+w+","+v+" 0,0,0 "+-g+" 0 l 0,"+b+" a "+w+","+v+" 0,0,0 "+g+" 0 l 0,"+-b,S=i.attr("label-offset-y",v).insert("path",":first-child").attr("d",E).attr("transform","translate("+-g/2+","+-(b/2+v)+")");return f.intersect=function(_){const M=Bpt(f,_),F=M.x-f.x;if(w!=0&&(Math.abs(F)f.height/2-v)){let R=v*v*(1-F*F/(w*w));R!=0&&(R=Math.sqrt(R)),R=v-R,_.y-f.y>0&&(R=-R),M.y+=R}return M},S}function dUe(i){i.shapes().question=o$t,i.shapes().hexagon=c$t,i.shapes().stadium=p$t,i.shapes().subroutine=b$t,i.shapes().cylinder=w$t,i.shapes().rect_left_inv_arrow=u$t,i.shapes().lean_right=l$t,i.shapes().lean_left=h$t,i.shapes().trapezoid=f$t,i.shapes().inv_trapezoid=d$t,i.shapes().rect_right_inv_arrow=g$t}function gUe(i){i({question:o$t}),i({hexagon:c$t}),i({stadium:p$t}),i({subroutine:b$t}),i({cylinder:w$t}),i({rect_left_inv_arrow:u$t}),i({lean_right:l$t}),i({lean_left:h$t}),i({trapezoid:f$t}),i({inv_trapezoid:d$t}),i({rect_right_inv_arrow:g$t})}function Rx(i,a,f,g){return i.insert("polygon",":first-child").attr("points",g.map(function(w){return w.x+","+w.y}).join(" ")).attr("transform","translate("+-a/2+","+f/2+")")}const pUe={addToRender:dUe,addToRenderV2:gUe},m$t={},bUe=function(i){const a=Object.keys(i);for(const f of a)m$t[f]=i[f]},v$t=function(i,a,f,g,w,v){const b=g?g.select(`[id="${f}"]`):Tr(`[id="${f}"]`),E=w||document;Object.keys(i).forEach(function(_){const M=i[_];let F="default";M.classes.length>0&&(F=M.classes.join(" "));const R=C2(M.styles);let B=M.text!==void 0?M.text:M.id,z;if(j1(Re().flowchart.htmlLabels)){const ot={label:B.replace(/fa[blrs]?:fa-[\w-]+/g,ft=>``)};z=Mpt(b,ot).node(),z.parentNode.removeChild(z)}else{const ot=E.createElementNS("http://www.w3.org/2000/svg","text");ot.setAttribute("style",R.labelStyle.replace("color:","fill:"));const ft=B.split(ei.lineBreakRegex);for(const wt of ft){const mt=E.createElementNS("http://www.w3.org/2000/svg","tspan");mt.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),mt.setAttribute("dy","1em"),mt.setAttribute("x","1"),mt.textContent=wt,ot.appendChild(mt)}z=ot}let Y=0,nt="";switch(M.type){case"round":Y=5,nt="rect";break;case"square":nt="rect";break;case"diamond":nt="question";break;case"hexagon":nt="hexagon";break;case"odd":nt="rect_left_inv_arrow";break;case"lean_right":nt="lean_right";break;case"lean_left":nt="lean_left";break;case"trapezoid":nt="trapezoid";break;case"inv_trapezoid":nt="inv_trapezoid";break;case"odd_right":nt="rect_left_inv_arrow";break;case"circle":nt="circle";break;case"ellipse":nt="ellipse";break;case"stadium":nt="stadium";break;case"subroutine":nt="subroutine";break;case"cylinder":nt="cylinder";break;case"group":nt="rect";break;default:nt="rect"}Kt.warn("Adding node",M.id,M.domId),a.setNode(v.db.lookUpDomId(M.id),{labelType:"svg",labelStyle:R.labelStyle,shape:nt,label:z,rx:Y,ry:Y,class:F,style:R.style,id:v.db.lookUpDomId(M.id)})})},y$t=function(i,a,f){let g=0,w,v;if(i.defaultStyle!==void 0){const b=C2(i.defaultStyle);w=b.style,v=b.labelStyle}i.forEach(function(b){g++;const E="L-"+b.start+"-"+b.end,S="LS-"+b.start,_="LE-"+b.end,M={};b.type==="arrow_open"?M.arrowhead="none":M.arrowhead="normal";let F="",R="";if(b.style!==void 0){const B=C2(b.style);F=B.style,R=B.labelStyle}else switch(b.stroke){case"normal":F="fill:none",w!==void 0&&(F=w),v!==void 0&&(R=v);break;case"dotted":F="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":F=" stroke-width: 3.5px;fill:none";break}M.style=F,M.labelStyle=R,b.interpolate!==void 0?M.curve=Xw(b.interpolate,Kg):i.defaultInterpolate!==void 0?M.curve=Xw(i.defaultInterpolate,Kg):M.curve=Xw(m$t.curve,Kg),b.text===void 0?b.style!==void 0&&(M.arrowheadStyle="fill: #333"):(M.arrowheadStyle="fill: #333",M.labelpos="c",j1(Re().flowchart.htmlLabels)?(M.labelType="html",M.label=`${b.text.replace(/fa[blrs]?:fa-[\w-]+/g,B=>``)}`):(M.labelType="text",M.label=b.text.replace(ei.lineBreakRegex,` +`),b.style===void 0&&(M.style=M.style||"stroke: #333; stroke-width: 1.5px;fill:none"),M.labelStyle=M.labelStyle.replace("color:","fill:"))),M.id=E,M.class=S+" "+_,M.minlen=b.length||1,a.setEdge(f.db.lookUpDomId(b.start),f.db.lookUpDomId(b.end),M,g)})},wUe={setConf:bUe,addVertices:v$t,addEdges:y$t,getClasses:function(i,a){return Kt.info("Extracting classes"),a.db.getClasses()},draw:function(i,a,f,g){Kt.info("Drawing flowchart");const{securityLevel:w,flowchart:v}=Re();let b;w==="sandbox"&&(b=Tr("#i"+a));const E=Tr(w==="sandbox"?b.nodes()[0].contentDocument.body:"body"),S=w==="sandbox"?b.nodes()[0].contentDocument:document;let _=g.db.getDirection();_===void 0&&(_="TD");const M=v.nodeSpacing||50,F=v.rankSpacing||50,R=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:_,nodesep:M,ranksep:F,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let B;const z=g.db.getSubGraphs();for(let rt=z.length-1;rt>=0;rt--)B=z[rt],g.db.addVertex(B.id,B.title,"group",void 0,B.classes);const Y=g.db.getVertices();Kt.warn("Get vertices",Y);const nt=g.db.getEdges();let ot=0;for(ot=z.length-1;ot>=0;ot--){B=z[ot],$Ot("cluster").append("text");for(let rt=0;rt{a.forEach(w=>{xUe[w](i,f,g)})},xUe={extension:(i,a,f)=>{Kt.trace("Making markers for ",f),i.append("defs").append("marker").attr("id",f+"_"+a+"-extensionStart").attr("class","marker extension "+a).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id",f+"_"+a+"-extensionEnd").attr("class","marker extension "+a).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},composition:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-compositionStart").attr("class","marker composition "+a).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",f+"_"+a+"-compositionEnd").attr("class","marker composition "+a).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},aggregation:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-aggregationStart").attr("class","marker aggregation "+a).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",f+"_"+a+"-aggregationEnd").attr("class","marker aggregation "+a).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},dependency:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-dependencyStart").attr("class","marker dependency "+a).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",f+"_"+a+"-dependencyEnd").attr("class","marker dependency "+a).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},lollipop:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-lollipopStart").attr("class","marker lollipop "+a).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),i.append("defs").append("marker").attr("id",f+"_"+a+"-lollipopEnd").attr("class","marker lollipop "+a).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},point:(i,a,f)=>{i.append("marker").attr("id",f+"_"+a+"-pointEnd").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),i.append("marker").attr("id",f+"_"+a+"-pointStart").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},circle:(i,a,f)=>{i.append("marker").attr("id",f+"_"+a+"-circleEnd").attr("class","marker "+a).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"),i.append("marker").attr("id",f+"_"+a+"-circleStart").attr("class","marker "+a).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")},cross:(i,a,f)=>{i.append("marker").attr("id",f+"_"+a+"-crossEnd").attr("class","marker cross "+a).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"),i.append("marker").attr("id",f+"_"+a+"-crossStart").attr("class","marker cross "+a).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")},barb:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-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")}},jpt=yUe;function kUe(i,a){a&&i.attr("style",a)}function EUe(i){const a=Tr(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),f=a.append("xhtml:div"),g=i.label,w=i.isNode?"nodeLabel":"edgeLabel";return f.html('"+g+""),kUe(f,i.labelStyle),f.style("display","inline-block"),f.style("white-space","nowrap"),f.attr("xmlns","http://www.w3.org/1999/xhtml"),a.node()}const ab=(i,a,f,g)=>{let w=i||"";if(typeof w=="object"&&(w=w[0]),j1(Re().flowchart.htmlLabels)){w=w.replace(/\\n|\n/g,"
"),Kt.debug("vertexText"+w);const v={isNode:g,label:IF(w).replace(/fa[blrs]?:fa-[\w-]+/g,E=>``),labelStyle:a.replace("fill:","color:")};return EUe(v)}else{const v=document.createElementNS("http://www.w3.org/2000/svg","text");v.setAttribute("style",a.replace("color:","fill:"));let b=[];typeof w=="string"?b=w.split(/\\n|\n|/gi):Array.isArray(w)?b=w:b=[];for(const E of b){const S=document.createElementNS("http://www.w3.org/2000/svg","tspan");S.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),S.setAttribute("dy","1em"),S.setAttribute("x","0"),f?S.setAttribute("class","title-row"):S.setAttribute("class","row"),S.textContent=E.trim(),v.appendChild(S)}return v}},TUe={};function CUe(i,a){const f=a||TUe,g=typeof f.includeImageAlt=="boolean"?f.includeImageAlt:!0,w=typeof f.includeHtml=="boolean"?f.includeHtml:!0;return x$t(i,g,w)}function x$t(i,a,f){if(SUe(i)){if("value"in i)return i.type==="html"&&!f?"":i.value;if(a&&"alt"in i&&i.alt)return i.alt;if("children"in i)return k$t(i.children,a,f)}return Array.isArray(i)?k$t(i,a,f):""}function k$t(i,a,f){const g=[];let w=-1;for(;++ww?0:w+a:a=a>w?w:a,f=f>0?f:0,g.length<1e4)b=Array.from(g),b.unshift(a,f),i.splice(...b);else for(f&&i.splice(a,f);v0?(c4(i,i.length,0,a),i):a}const E$t={}.hasOwnProperty;function _Ue(i){const a={};let f=-1;for(;++fb))return;const it=a.events.length;let gt=it,Q,dt;for(;gt--;)if(a.events[gt][0]==="exit"&&a.events[gt][1].type==="chunkFlow"){if(Q){dt=a.events[gt][1].end;break}Q=!0}for(ot(g),rt=it;rtwt;){const ct=f[mt];a.containerState=ct[1],ct[0].exit.call(a,i)}f.length=wt}function ft(){w.write([null]),v=void 0,w=void 0,a.containerState._closeFlow=void 0}}function $Ue(i,a,f){return Cl(i,i.attempt(this.parser.constructs.document,a,f),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function C$t(i){if(i===null||ob(i)||PUe(i))return 1;if(NUe(i))return 2}function qpt(i,a,f){const g=[];let w=-1;for(;++w1&&i[f][1].end.offset-i[f][1].start.offset>1?2:1;const F=Object.assign({},i[g][1].end),R=Object.assign({},i[f][1].start);S$t(F,-S),S$t(R,S),b={type:S>1?"strongSequence":"emphasisSequence",start:F,end:Object.assign({},i[g][1].end)},E={type:S>1?"strongSequence":"emphasisSequence",start:Object.assign({},i[f][1].start),end:R},v={type:S>1?"strongText":"emphasisText",start:Object.assign({},i[g][1].end),end:Object.assign({},i[f][1].start)},w={type:S>1?"strong":"emphasis",start:Object.assign({},b.start),end:Object.assign({},E.end)},i[g][1].end=Object.assign({},b.start),i[f][1].start=Object.assign({},E.end),_=[],i[g][1].end.offset-i[g][1].start.offset&&(_=tm(_,[["enter",i[g][1],a],["exit",i[g][1],a]])),_=tm(_,[["enter",w,a],["enter",b,a],["exit",b,a],["enter",v,a]]),_=tm(_,qpt(a.parser.constructs.insideSpan.null,i.slice(g+1,f),a)),_=tm(_,[["exit",v,a],["enter",E,a],["exit",E,a],["exit",w,a]]),i[f][1].end.offset-i[f][1].start.offset?(M=2,_=tm(_,[["enter",i[f][1],a],["exit",i[f][1],a]])):M=0,c4(i,g-1,f-g+3,_),f=g+_.length-M-2;break}}for(f=-1;++f0&&du(rt)?Cl(i,ft,"linePrefix",v+1)(rt):ft(rt)}function ft(rt){return rt===null||$a(rt)?i.check(M$t,Y,mt)(rt):(i.enter("codeFlowValue"),wt(rt))}function wt(rt){return rt===null||$a(rt)?(i.exit("codeFlowValue"),ft(rt)):(i.consume(rt),wt)}function mt(rt){return i.exit("codeFenced"),a(rt)}function ct(rt,it,gt){let Q=0;return dt;function dt(It){return rt.enter("lineEnding"),rt.consume(It),rt.exit("lineEnding"),K}function K(It){return rt.enter("codeFencedFence"),du(It)?Cl(rt,yt,"linePrefix",g.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(It):yt(It)}function yt(It){return It===E?(rt.enter("codeFencedFenceSequence"),V(It)):gt(It)}function V(It){return It===E?(Q++,rt.consume(It),V):Q>=b?(rt.exit("codeFencedFenceSequence"),du(It)?Cl(rt,Ot,"whitespace")(It):Ot(It)):gt(It)}function Ot(It){return It===null||$a(It)?(rt.exit("codeFencedFence"),it(It)):gt(It)}}}function JUe(i,a,f){const g=this;return w;function w(b){return b===null?f(b):(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),v)}function v(b){return g.parser.lazy[g.now().line]?f(b):a(b)}}const Upt={name:"codeIndented",tokenize:tGe},ZUe={tokenize:eGe,partial:!0};function tGe(i,a,f){const g=this;return w;function w(_){return i.enter("codeIndented"),Cl(i,v,"linePrefix",4+1)(_)}function v(_){const M=g.events[g.events.length-1];return M&&M[1].type==="linePrefix"&&M[2].sliceSerialize(M[1],!0).length>=4?b(_):f(_)}function b(_){return _===null?S(_):$a(_)?i.attempt(ZUe,b,S)(_):(i.enter("codeFlowValue"),E(_))}function E(_){return _===null||$a(_)?(i.exit("codeFlowValue"),b(_)):(i.consume(_),E)}function S(_){return i.exit("codeIndented"),a(_)}}function eGe(i,a,f){const g=this;return w;function w(b){return g.parser.lazy[g.now().line]?f(b):$a(b)?(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),w):Cl(i,v,"linePrefix",4+1)(b)}function v(b){const E=g.events[g.events.length-1];return E&&E[1].type==="linePrefix"&&E[2].sliceSerialize(E[1],!0).length>=4?a(b):$a(b)?w(b):f(b)}}const nGe={name:"codeText",tokenize:sGe,resolve:rGe,previous:iGe};function rGe(i){let a=i.length-4,f=3,g,w;if((i[f][1].type==="lineEnding"||i[f][1].type==="space")&&(i[a][1].type==="lineEnding"||i[a][1].type==="space")){for(g=f;++g=4?a(b):i.interrupt(g.parser.constructs.flow,f,a)(b)}}function N$t(i,a,f,g,w,v,b,E,S){const _=S||Number.POSITIVE_INFINITY;let M=0;return F;function F(ot){return ot===60?(i.enter(g),i.enter(w),i.enter(v),i.consume(ot),i.exit(v),R):ot===null||ot===32||ot===41||$pt(ot)?f(ot):(i.enter(g),i.enter(b),i.enter(E),i.enter("chunkString",{contentType:"string"}),Y(ot))}function R(ot){return ot===62?(i.enter(v),i.consume(ot),i.exit(v),i.exit(w),i.exit(g),a):(i.enter(E),i.enter("chunkString",{contentType:"string"}),B(ot))}function B(ot){return ot===62?(i.exit("chunkString"),i.exit(E),R(ot)):ot===null||ot===60||$a(ot)?f(ot):(i.consume(ot),ot===92?z:B)}function z(ot){return ot===60||ot===62||ot===92?(i.consume(ot),B):B(ot)}function Y(ot){return!M&&(ot===null||ot===41||ob(ot))?(i.exit("chunkString"),i.exit(E),i.exit(b),i.exit(g),a(ot)):M<_&&ot===40?(i.consume(ot),M++,Y):ot===41?(i.consume(ot),M--,Y):ot===null||ot===32||ot===40||$pt(ot)?f(ot):(i.consume(ot),ot===92?nt:Y)}function nt(ot){return ot===40||ot===41||ot===92?(i.consume(ot),Y):Y(ot)}}function P$t(i,a,f,g,w,v){const b=this;let E=0,S;return _;function _(B){return i.enter(g),i.enter(w),i.consume(B),i.exit(w),i.enter(v),M}function M(B){return E>999||B===null||B===91||B===93&&!S||B===94&&!E&&"_hiddenFootnoteSupport"in b.parser.constructs?f(B):B===93?(i.exit(v),i.enter(w),i.consume(B),i.exit(w),i.exit(g),a):$a(B)?(i.enter("lineEnding"),i.consume(B),i.exit("lineEnding"),M):(i.enter("chunkString",{contentType:"string"}),F(B))}function F(B){return B===null||B===91||B===93||$a(B)||E++>999?(i.exit("chunkString"),M(B)):(i.consume(B),S||(S=!du(B)),B===92?R:F)}function R(B){return B===91||B===92||B===93?(i.consume(B),E++,F):F(B)}}function F$t(i,a,f,g,w,v){let b;return E;function E(R){return R===34||R===39||R===40?(i.enter(g),i.enter(w),i.consume(R),i.exit(w),b=R===40?41:R,S):f(R)}function S(R){return R===b?(i.enter(w),i.consume(R),i.exit(w),i.exit(g),a):(i.enter(v),_(R))}function _(R){return R===b?(i.exit(v),S(b)):R===null?f(R):$a(R)?(i.enter("lineEnding"),i.consume(R),i.exit("lineEnding"),Cl(i,_,"linePrefix")):(i.enter("chunkString",{contentType:"string"}),M(R))}function M(R){return R===b||R===null||$a(R)?(i.exit("chunkString"),_(R)):(i.consume(R),R===92?F:M)}function F(R){return R===b||R===92?(i.consume(R),M):M(R)}}function ZF(i,a){let f;return g;function g(w){return $a(w)?(i.enter("lineEnding"),i.consume(w),i.exit("lineEnding"),f=!0,g):du(w)?Cl(i,g,f?"linePrefix":"lineSuffix")(w):a(w)}}function ED(i){return i.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const fGe={name:"definition",tokenize:gGe},dGe={tokenize:pGe,partial:!0};function gGe(i,a,f){const g=this;let w;return v;function v(B){return i.enter("definition"),b(B)}function b(B){return P$t.call(g,i,E,f,"definitionLabel","definitionLabelMarker","definitionLabelString")(B)}function E(B){return w=ED(g.sliceSerialize(g.events[g.events.length-1][1]).slice(1,-1)),B===58?(i.enter("definitionMarker"),i.consume(B),i.exit("definitionMarker"),S):f(B)}function S(B){return ob(B)?ZF(i,_)(B):_(B)}function _(B){return N$t(i,M,f,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(B)}function M(B){return i.attempt(dGe,F,F)(B)}function F(B){return du(B)?Cl(i,R,"whitespace")(B):R(B)}function R(B){return B===null||$a(B)?(i.exit("definition"),g.parser.defined.push(w),a(B)):f(B)}}function pGe(i,a,f){return g;function g(E){return ob(E)?ZF(i,w)(E):f(E)}function w(E){return F$t(i,v,f,"definitionTitle","definitionTitleMarker","definitionTitleString")(E)}function v(E){return du(E)?Cl(i,b,"whitespace")(E):b(E)}function b(E){return E===null||$a(E)?a(E):f(E)}}const bGe={name:"hardBreakEscape",tokenize:wGe};function wGe(i,a,f){return g;function g(v){return i.enter("hardBreakEscape"),i.consume(v),w}function w(v){return $a(v)?(i.exit("hardBreakEscape"),a(v)):f(v)}}const mGe={name:"headingAtx",tokenize:yGe,resolve:vGe};function vGe(i,a){let f=i.length-2,g=3,w,v;return i[g][1].type==="whitespace"&&(g+=2),f-2>g&&i[f][1].type==="whitespace"&&(f-=2),i[f][1].type==="atxHeadingSequence"&&(g===f-1||f-4>g&&i[f-2][1].type==="whitespace")&&(f-=g+1===f?2:4),f>g&&(w={type:"atxHeadingText",start:i[g][1].start,end:i[f][1].end},v={type:"chunkText",start:i[g][1].start,end:i[f][1].end,contentType:"text"},c4(i,g,f-g+1,[["enter",w,a],["enter",v,a],["exit",v,a],["exit",w,a]])),i}function yGe(i,a,f){let g=0;return w;function w(M){return i.enter("atxHeading"),v(M)}function v(M){return i.enter("atxHeadingSequence"),b(M)}function b(M){return M===35&&g++<6?(i.consume(M),b):M===null||ob(M)?(i.exit("atxHeadingSequence"),E(M)):f(M)}function E(M){return M===35?(i.enter("atxHeadingSequence"),S(M)):M===null||$a(M)?(i.exit("atxHeading"),a(M)):du(M)?Cl(i,E,"whitespace")(M):(i.enter("atxHeadingText"),_(M))}function S(M){return M===35?(i.consume(M),S):(i.exit("atxHeadingSequence"),E(M))}function _(M){return M===null||M===35||ob(M)?(i.exit("atxHeadingText"),E(M)):(i.consume(M),_)}}const xGe=["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","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],B$t=["pre","script","style","textarea"],kGe={name:"htmlFlow",tokenize:SGe,resolveTo:CGe,concrete:!0},EGe={tokenize:AGe,partial:!0},TGe={tokenize:_Ge,partial:!0};function CGe(i){let a=i.length;for(;a--&&!(i[a][0]==="enter"&&i[a][1].type==="htmlFlow"););return a>1&&i[a-2][1].type==="linePrefix"&&(i[a][1].start=i[a-2][1].start,i[a+1][1].start=i[a-2][1].start,i.splice(a-2,2)),i}function SGe(i,a,f){const g=this;let w,v,b,E,S;return _;function _(Mt){return M(Mt)}function M(Mt){return i.enter("htmlFlow"),i.enter("htmlFlowData"),i.consume(Mt),F}function F(Mt){return Mt===33?(i.consume(Mt),R):Mt===47?(i.consume(Mt),v=!0,Y):Mt===63?(i.consume(Mt),w=3,g.interrupt?a:kt):u4(Mt)?(i.consume(Mt),b=String.fromCharCode(Mt),nt):f(Mt)}function R(Mt){return Mt===45?(i.consume(Mt),w=2,B):Mt===91?(i.consume(Mt),w=5,E=0,z):u4(Mt)?(i.consume(Mt),w=4,g.interrupt?a:kt):f(Mt)}function B(Mt){return Mt===45?(i.consume(Mt),g.interrupt?a:kt):f(Mt)}function z(Mt){const pn="CDATA[";return Mt===pn.charCodeAt(E++)?(i.consume(Mt),E===pn.length?g.interrupt?a:yt:z):f(Mt)}function Y(Mt){return u4(Mt)?(i.consume(Mt),b=String.fromCharCode(Mt),nt):f(Mt)}function nt(Mt){if(Mt===null||Mt===47||Mt===62||ob(Mt)){const pn=Mt===47,Ae=b.toLowerCase();return!pn&&!v&&B$t.includes(Ae)?(w=1,g.interrupt?a(Mt):yt(Mt)):xGe.includes(b.toLowerCase())?(w=6,pn?(i.consume(Mt),ot):g.interrupt?a(Mt):yt(Mt)):(w=7,g.interrupt&&!g.parser.lazy[g.now().line]?f(Mt):v?ft(Mt):wt(Mt))}return Mt===45||Zv(Mt)?(i.consume(Mt),b+=String.fromCharCode(Mt),nt):f(Mt)}function ot(Mt){return Mt===62?(i.consume(Mt),g.interrupt?a:yt):f(Mt)}function ft(Mt){return du(Mt)?(i.consume(Mt),ft):dt(Mt)}function wt(Mt){return Mt===47?(i.consume(Mt),dt):Mt===58||Mt===95||u4(Mt)?(i.consume(Mt),mt):du(Mt)?(i.consume(Mt),wt):dt(Mt)}function mt(Mt){return Mt===45||Mt===46||Mt===58||Mt===95||Zv(Mt)?(i.consume(Mt),mt):ct(Mt)}function ct(Mt){return Mt===61?(i.consume(Mt),rt):du(Mt)?(i.consume(Mt),ct):wt(Mt)}function rt(Mt){return Mt===null||Mt===60||Mt===61||Mt===62||Mt===96?f(Mt):Mt===34||Mt===39?(i.consume(Mt),S=Mt,it):du(Mt)?(i.consume(Mt),rt):gt(Mt)}function it(Mt){return Mt===S?(i.consume(Mt),S=null,Q):Mt===null||$a(Mt)?f(Mt):(i.consume(Mt),it)}function gt(Mt){return Mt===null||Mt===34||Mt===39||Mt===47||Mt===60||Mt===61||Mt===62||Mt===96||ob(Mt)?ct(Mt):(i.consume(Mt),gt)}function Q(Mt){return Mt===47||Mt===62||du(Mt)?wt(Mt):f(Mt)}function dt(Mt){return Mt===62?(i.consume(Mt),K):f(Mt)}function K(Mt){return Mt===null||$a(Mt)?yt(Mt):du(Mt)?(i.consume(Mt),K):f(Mt)}function yt(Mt){return Mt===45&&w===2?(i.consume(Mt),jt):Mt===60&&w===1?(i.consume(Mt),xt):Mt===62&&w===4?(i.consume(Mt),Gt):Mt===63&&w===3?(i.consume(Mt),kt):Mt===93&&w===5?(i.consume(Mt),Ct):$a(Mt)&&(w===6||w===7)?(i.exit("htmlFlowData"),i.check(EGe,Fe,V)(Mt)):Mt===null||$a(Mt)?(i.exit("htmlFlowData"),V(Mt)):(i.consume(Mt),yt)}function V(Mt){return i.check(TGe,Ot,Fe)(Mt)}function Ot(Mt){return i.enter("lineEnding"),i.consume(Mt),i.exit("lineEnding"),It}function It(Mt){return Mt===null||$a(Mt)?V(Mt):(i.enter("htmlFlowData"),yt(Mt))}function jt(Mt){return Mt===45?(i.consume(Mt),kt):yt(Mt)}function xt(Mt){return Mt===47?(i.consume(Mt),b="",Ft):yt(Mt)}function Ft(Mt){if(Mt===62){const pn=b.toLowerCase();return B$t.includes(pn)?(i.consume(Mt),Gt):yt(Mt)}return u4(Mt)&&b.length<8?(i.consume(Mt),b+=String.fromCharCode(Mt),Ft):yt(Mt)}function Ct(Mt){return Mt===93?(i.consume(Mt),kt):yt(Mt)}function kt(Mt){return Mt===62?(i.consume(Mt),Gt):Mt===45&&w===2?(i.consume(Mt),kt):yt(Mt)}function Gt(Mt){return Mt===null||$a(Mt)?(i.exit("htmlFlowData"),Fe(Mt)):(i.consume(Mt),Gt)}function Fe(Mt){return i.exit("htmlFlow"),a(Mt)}}function _Ge(i,a,f){const g=this;return w;function w(b){return $a(b)?(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),v):f(b)}function v(b){return g.parser.lazy[g.now().line]?f(b):a(b)}}function AGe(i,a,f){return g;function g(w){return i.enter("lineEnding"),i.consume(w),i.exit("lineEnding"),i.attempt(XY,a,f)}}const LGe={name:"htmlText",tokenize:DGe};function DGe(i,a,f){const g=this;let w,v,b;return E;function E(kt){return i.enter("htmlText"),i.enter("htmlTextData"),i.consume(kt),S}function S(kt){return kt===33?(i.consume(kt),_):kt===47?(i.consume(kt),ct):kt===63?(i.consume(kt),wt):u4(kt)?(i.consume(kt),gt):f(kt)}function _(kt){return kt===45?(i.consume(kt),M):kt===91?(i.consume(kt),v=0,z):u4(kt)?(i.consume(kt),ft):f(kt)}function M(kt){return kt===45?(i.consume(kt),B):f(kt)}function F(kt){return kt===null?f(kt):kt===45?(i.consume(kt),R):$a(kt)?(b=F,xt(kt)):(i.consume(kt),F)}function R(kt){return kt===45?(i.consume(kt),B):F(kt)}function B(kt){return kt===62?jt(kt):kt===45?R(kt):F(kt)}function z(kt){const Gt="CDATA[";return kt===Gt.charCodeAt(v++)?(i.consume(kt),v===Gt.length?Y:z):f(kt)}function Y(kt){return kt===null?f(kt):kt===93?(i.consume(kt),nt):$a(kt)?(b=Y,xt(kt)):(i.consume(kt),Y)}function nt(kt){return kt===93?(i.consume(kt),ot):Y(kt)}function ot(kt){return kt===62?jt(kt):kt===93?(i.consume(kt),ot):Y(kt)}function ft(kt){return kt===null||kt===62?jt(kt):$a(kt)?(b=ft,xt(kt)):(i.consume(kt),ft)}function wt(kt){return kt===null?f(kt):kt===63?(i.consume(kt),mt):$a(kt)?(b=wt,xt(kt)):(i.consume(kt),wt)}function mt(kt){return kt===62?jt(kt):wt(kt)}function ct(kt){return u4(kt)?(i.consume(kt),rt):f(kt)}function rt(kt){return kt===45||Zv(kt)?(i.consume(kt),rt):it(kt)}function it(kt){return $a(kt)?(b=it,xt(kt)):du(kt)?(i.consume(kt),it):jt(kt)}function gt(kt){return kt===45||Zv(kt)?(i.consume(kt),gt):kt===47||kt===62||ob(kt)?Q(kt):f(kt)}function Q(kt){return kt===47?(i.consume(kt),jt):kt===58||kt===95||u4(kt)?(i.consume(kt),dt):$a(kt)?(b=Q,xt(kt)):du(kt)?(i.consume(kt),Q):jt(kt)}function dt(kt){return kt===45||kt===46||kt===58||kt===95||Zv(kt)?(i.consume(kt),dt):K(kt)}function K(kt){return kt===61?(i.consume(kt),yt):$a(kt)?(b=K,xt(kt)):du(kt)?(i.consume(kt),K):Q(kt)}function yt(kt){return kt===null||kt===60||kt===61||kt===62||kt===96?f(kt):kt===34||kt===39?(i.consume(kt),w=kt,V):$a(kt)?(b=yt,xt(kt)):du(kt)?(i.consume(kt),yt):(i.consume(kt),Ot)}function V(kt){return kt===w?(i.consume(kt),w=void 0,It):kt===null?f(kt):$a(kt)?(b=V,xt(kt)):(i.consume(kt),V)}function Ot(kt){return kt===null||kt===34||kt===39||kt===60||kt===61||kt===96?f(kt):kt===47||kt===62||ob(kt)?Q(kt):(i.consume(kt),Ot)}function It(kt){return kt===47||kt===62||ob(kt)?Q(kt):f(kt)}function jt(kt){return kt===62?(i.consume(kt),i.exit("htmlTextData"),i.exit("htmlText"),a):f(kt)}function xt(kt){return i.exit("htmlTextData"),i.enter("lineEnding"),i.consume(kt),i.exit("lineEnding"),Ft}function Ft(kt){return du(kt)?Cl(i,Ct,"linePrefix",g.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(kt):Ct(kt)}function Ct(kt){return i.enter("htmlTextData"),b(kt)}}const Gpt={name:"labelEnd",tokenize:FGe,resolveTo:PGe,resolveAll:NGe},MGe={tokenize:BGe},IGe={tokenize:RGe},OGe={tokenize:jGe};function NGe(i){let a=-1;for(;++a=3&&(_===null||$a(_))?(i.exit("thematicBreak"),a(_)):f(_)}function S(_){return _===w?(i.consume(_),g++,S):(i.exit("thematicBreakSequence"),du(_)?Cl(i,E,"whitespace")(_):E(_))}}const cb={name:"list",tokenize:WGe,continuation:{tokenize:YGe},exit:QGe},GGe={tokenize:JGe,partial:!0},KGe={tokenize:XGe,partial:!0};function WGe(i,a,f){const g=this,w=g.events[g.events.length-1];let v=w&&w[1].type==="linePrefix"?w[2].sliceSerialize(w[1],!0).length:0,b=0;return E;function E(B){const z=g.containerState.type||(B===42||B===43||B===45?"listUnordered":"listOrdered");if(z==="listUnordered"?!g.containerState.marker||B===g.containerState.marker:zpt(B)){if(g.containerState.type||(g.containerState.type=z,i.enter(z,{_container:!0})),z==="listUnordered")return i.enter("listItemPrefix"),B===42||B===45?i.check(QY,f,_)(B):_(B);if(!g.interrupt||B===49)return i.enter("listItemPrefix"),i.enter("listItemValue"),S(B)}return f(B)}function S(B){return zpt(B)&&++b<10?(i.consume(B),S):(!g.interrupt||b<2)&&(g.containerState.marker?B===g.containerState.marker:B===41||B===46)?(i.exit("listItemValue"),_(B)):f(B)}function _(B){return i.enter("listItemMarker"),i.consume(B),i.exit("listItemMarker"),g.containerState.marker=g.containerState.marker||B,i.check(XY,g.interrupt?f:M,i.attempt(GGe,R,F))}function M(B){return g.containerState.initialBlankLine=!0,v++,R(B)}function F(B){return du(B)?(i.enter("listItemPrefixWhitespace"),i.consume(B),i.exit("listItemPrefixWhitespace"),R):f(B)}function R(B){return g.containerState.size=v+g.sliceSerialize(i.exit("listItemPrefix"),!0).length,a(B)}}function YGe(i,a,f){const g=this;return g.containerState._closeFlow=void 0,i.check(XY,w,v);function w(E){return g.containerState.furtherBlankLines=g.containerState.furtherBlankLines||g.containerState.initialBlankLine,Cl(i,a,"listItemIndent",g.containerState.size+1)(E)}function v(E){return g.containerState.furtherBlankLines||!du(E)?(g.containerState.furtherBlankLines=void 0,g.containerState.initialBlankLine=void 0,b(E)):(g.containerState.furtherBlankLines=void 0,g.containerState.initialBlankLine=void 0,i.attempt(KGe,a,b)(E))}function b(E){return g.containerState._closeFlow=!0,g.interrupt=void 0,Cl(i,i.attempt(cb,a,f),"linePrefix",g.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(E)}}function XGe(i,a,f){const g=this;return Cl(i,w,"listItemIndent",g.containerState.size+1);function w(v){const b=g.events[g.events.length-1];return b&&b[1].type==="listItemIndent"&&b[2].sliceSerialize(b[1],!0).length===g.containerState.size?a(v):f(v)}}function QGe(i){i.exit(this.containerState.type)}function JGe(i,a,f){const g=this;return Cl(i,w,"listItemPrefixWhitespace",g.parser.constructs.disable.null.includes("codeIndented")?void 0:4+1);function w(v){const b=g.events[g.events.length-1];return!du(v)&&b&&b[1].type==="listItemPrefixWhitespace"?a(v):f(v)}}const R$t={name:"setextUnderline",tokenize:tKe,resolveTo:ZGe};function ZGe(i,a){let f=i.length,g,w,v;for(;f--;)if(i[f][0]==="enter"){if(i[f][1].type==="content"){g=f;break}i[f][1].type==="paragraph"&&(w=f)}else i[f][1].type==="content"&&i.splice(f,1),!v&&i[f][1].type==="definition"&&(v=f);const b={type:"setextHeading",start:Object.assign({},i[w][1].start),end:Object.assign({},i[i.length-1][1].end)};return i[w][1].type="setextHeadingText",v?(i.splice(w,0,["enter",b,a]),i.splice(v+1,0,["exit",i[g][1],a]),i[g][1].end=Object.assign({},i[v][1].end)):i[g][1]=b,i.push(["exit",b,a]),i}function tKe(i,a,f){const g=this;let w;return v;function v(_){let M=g.events.length,F;for(;M--;)if(g.events[M][1].type!=="lineEnding"&&g.events[M][1].type!=="linePrefix"&&g.events[M][1].type!=="content"){F=g.events[M][1].type==="paragraph";break}return!g.parser.lazy[g.now().line]&&(g.interrupt||F)?(i.enter("setextHeadingLine"),w=_,b(_)):f(_)}function b(_){return i.enter("setextHeadingLineSequence"),E(_)}function E(_){return _===w?(i.consume(_),E):(i.exit("setextHeadingLineSequence"),du(_)?Cl(i,S,"lineSuffix")(_):S(_))}function S(_){return _===null||$a(_)?(i.exit("setextHeadingLine"),a(_)):f(_)}}const eKe={tokenize:nKe};function nKe(i){const a=this,f=i.attempt(XY,g,i.attempt(this.parser.constructs.flowInitial,w,Cl(i,i.attempt(this.parser.constructs.flow,w,i.attempt(oGe,w)),"linePrefix")));return f;function g(v){if(v===null){i.consume(v);return}return i.enter("lineEndingBlank"),i.consume(v),i.exit("lineEndingBlank"),a.currentConstruct=void 0,f}function w(v){if(v===null){i.consume(v);return}return i.enter("lineEnding"),i.consume(v),i.exit("lineEnding"),a.currentConstruct=void 0,f}}const rKe={resolveAll:$$t()},iKe=j$t("string"),sKe=j$t("text");function j$t(i){return{tokenize:a,resolveAll:$$t(i==="text"?aKe:void 0)};function a(f){const g=this,w=this.parser.constructs[i],v=f.attempt(w,b,E);return b;function b(M){return _(M)?v(M):E(M)}function E(M){if(M===null){f.consume(M);return}return f.enter("data"),f.consume(M),S}function S(M){return _(M)?(f.exit("data"),v(M)):(f.consume(M),S)}function _(M){if(M===null)return!0;const F=w[M];let R=-1;if(F)for(;++R-1){const E=b[0];typeof E=="string"?b[0]=E.slice(g):b.shift()}v>0&&b.push(i[w].slice(0,v))}return b}function uKe(i,a){let f=-1;const g=[];let w;for(;++f13&&f<32||f>126&&f<160||f>55295&&f<57344||f>64975&&f<65008||(f&65535)===65535||(f&65535)===65534||f>1114111?"�":String.fromCharCode(f)}const gKe=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function pKe(i){return i.replace(gKe,bKe)}function bKe(i,a,f){if(a)return a;if(f.charCodeAt(0)===35){const w=f.charCodeAt(1),v=w===120||w===88;return q$t(f.slice(v?2:1),v?16:10)}return Vpt(f)||i}function JY(i){return!i||typeof i!="object"?"":"position"in i||"type"in i?H$t(i.position):"start"in i||"end"in i?H$t(i):"line"in i||"column"in i?Wpt(i):""}function Wpt(i){return V$t(i&&i.line)+":"+V$t(i&&i.column)}function H$t(i){return Wpt(i&&i.start)+"-"+Wpt(i&&i.end)}function V$t(i){return i&&typeof i=="number"?i:1}const U$t={}.hasOwnProperty,G$t=function(i,a,f){return typeof a!="string"&&(f=a,a=void 0),wKe(f)(dKe(hKe(f).document().write(fKe()(i,a,!0))))};function wKe(i){const a={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:E(ga),autolinkProtocol:K,autolinkEmail:K,atxHeading:E(Br),blockQuote:E(Xt),characterEscape:K,characterReference:K,codeFenced:E(_e),codeFencedFenceInfo:S,codeFencedFenceMeta:S,codeIndented:E(_e,S),codeText:E(xe,S),codeTextData:K,data:K,codeFlowValue:K,definition:E(Mn),definitionDestinationString:S,definitionLabelString:S,definitionTitleString:S,emphasis:E(ce),hardBreakEscape:E(we),hardBreakTrailing:E(we),htmlFlow:E(Fi,S),htmlFlowData:K,htmlText:E(Fi,S),htmlTextData:K,image:E(mi),label:S,link:E(ga),listItem:E(za),listItemValue:z,listOrdered:E(Ss,B),listUnordered:E(Ss),paragraph:E(br),reference:Ae,referenceString:S,resourceDestinationString:S,resourceTitleString:S,setextHeading:E(Br),strong:E(An),thematicBreak:E(Bn)},exit:{atxHeading:M(),atxHeadingSequence:it,autolink:M(),autolinkEmail:Ne,autolinkProtocol:be,blockQuote:M(),characterEscapeValue:yt,characterReferenceMarkerHexadecimal:tn,characterReferenceMarkerNumeric:tn,characterReferenceValue:sn,codeFenced:M(ft),codeFencedFence:ot,codeFencedFenceInfo:Y,codeFencedFenceMeta:nt,codeFlowValue:yt,codeIndented:M(wt),codeText:M(xt),codeTextData:yt,data:yt,definition:M(),definitionDestinationString:rt,definitionLabelString:mt,definitionTitleString:ct,emphasis:M(),hardBreakEscape:M(Ot),hardBreakTrailing:M(Ot),htmlFlow:M(It),htmlFlowData:yt,htmlText:M(jt),htmlTextData:yt,image:M(Ct),label:Gt,labelText:kt,lineEnding:V,link:M(Ft),listItem:M(),listOrdered:M(),listUnordered:M(),paragraph:M(),referenceString:ye,resourceDestinationString:Fe,resourceTitleString:Mt,resource:pn,setextHeading:M(dt),setextHeadingLineSequence:Q,setextHeadingText:gt,strong:M(),thematicBreak:M()}};K$t(a,(i||{}).mdastExtensions||[]);const f={};return g;function g(ke){let pe={type:"root",children:[]};const Je={stack:[pe],tokenStack:[],config:a,enter:_,exit:F,buffer:S,resume:R,setData:v,getData:b},an=[];let xn=-1;for(;++xn0){const qa=Je.tokenStack[Je.tokenStack.length-1];(qa[1]||W$t).call(Je,void 0,qa[0])}for(pe.position={start:T8(ke.length>0?ke[0][1].start:{line:1,column:1,offset:0}),end:T8(ke.length>0?ke[ke.length-2][1].end:{line:1,column:1,offset:0})},xn=-1;++xn{M!==0&&(w++,g.push([])),_.split(" ").forEach(F=>{F&&g[w].push({content:F,type:E})})}):(b.type==="strong"||b.type==="emphasis")&&b.children.forEach(S=>{v(S,b.type)})}return f.forEach(b=>{b.type==="paragraph"&&b.children.forEach(E=>{v(E)})}),g}function xKe(i){const{children:a}=G$t(i);function f(g){return g.type==="text"?g.value.replace(/\n/g,"
"):g.type==="strong"?`${g.children.map(f).join("")}`:g.type==="emphasis"?`${g.children.map(f).join("")}`:g.type==="paragraph"?`

${g.children.map(f).join("")}

`:`Unsupported markdown: ${g.type}`}return a.map(f).join("")}function kKe(i){return Intl.Segmenter?[...new Intl.Segmenter().segment(i)].map(a=>a.segment):[...i]}function EKe(i,a){const f=kKe(a.content);return Y$t(i,[],f,a.type)}function Y$t(i,a,f,g){if(f.length===0)return[{content:a.join(""),type:g},{content:"",type:g}];const[w,...v]=f,b=[...a,w];return i([{content:b.join(""),type:g}])?Y$t(i,b,v,g):(a.length===0&&w&&(a.push(w),f.shift()),[{content:a.join(""),type:g},{content:f.join(""),type:g}])}function TKe(i,a){if(i.some(({content:f})=>f.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return Ypt(i,a)}function Ypt(i,a,f=[],g=[]){if(i.length===0)return g.length>0&&f.push(g),f.length>0?f:[];let w="";i[0].content===" "&&(w=" ",i.shift());const v=i.shift()??{content:" ",type:"normal"},b=[...g];if(w!==""&&b.push({content:w,type:"normal"}),b.push(v),a(b))return Ypt(i,a,f,b);if(g.length>0)f.push(g),i.unshift(v);else if(v.content){const[E,S]=EKe(a,v);f.push([E]),S.content&&i.unshift(S)}return Ypt(i,a,f)}function CKe(i,a){a&&i.attr("style",a)}function SKe(i,a,f,g,w=!1){const v=i.append("foreignObject"),b=v.append("xhtml:div"),E=a.label,S=a.isNode?"nodeLabel":"edgeLabel";b.html(` + "+E+""),CKe(b,a.labelStyle),b.style("display","table-cell"),b.style("white-space","nowrap"),b.style("max-width",f+"px"),b.attr("xmlns","http://www.w3.org/1999/xhtml"),w&&b.attr("class","labelBkg");let _=b.node().getBoundingClientRect();return _.width===f&&(b.style("display","table"),b.style("white-space","break-spaces"),b.style("width",f+"px"),_=b.node().getBoundingClientRect()),v.style("width",_.width),v.style("height",_.height),v.node()}function Xpt(i,a,f){return i.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",a*f-.1+"em").attr("dy",f+"em")}function _Ke(i,a,f){const g=i.append("text"),w=Xpt(g,1,a);Qpt(w,f);const v=w.node().getComputedTextLength();return g.remove(),v}function AKe(i,a,f){var b;const g=i.append("text"),w=Xpt(g,1,a);Qpt(w,[{content:f,type:"normal"}]);const v=(b=w.node())==null?void 0:b.getBoundingClientRect();return v&&g.remove(),v}function LKe(i,a,f,g=!1){const v=a.append("g"),b=v.insert("rect").attr("class","background"),E=v.append("text").attr("y","-10.1");let S=0;for(const _ of f){const M=R=>_Ke(v,1.1,R)<=i,F=M(_)?[_]:TKe(_,M);for(const R of F){const B=Xpt(E,S,1.1);Qpt(B,R),S++}}if(g){const _=E.node().getBBox(),M=2;return b.attr("x",-M).attr("y",-M).attr("width",_.width+2*M).attr("height",_.height+2*M),v.node()}else return E.node()}function Qpt(i,a){i.text(""),a.forEach((f,g)=>{const w=i.append("tspan").attr("font-style",f.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",f.type==="strong"?"bold":"normal");g===0?w.text(f.content):w.text(" "+f.content)})}const ZY=(i,a="",{style:f="",isTitle:g=!1,classes:w="",useHtmlLabels:v=!0,isNode:b=!0,width:E=200,addSvgBackground:S=!1}={})=>{if(Kt.info("createText",a,f,g,w,v,b,S),v){const _=xKe(a),M={isNode:b,label:IF(_).replace(/fa[blrs]?:fa-[\w-]+/g,R=>``),labelStyle:f.replace("fill:","color:")};return SKe(i,M,E,w,S)}else{const _=yKe(a);return LKe(E,i,_,S)}},$1=async(i,a,f,g)=>{let w;const v=a.useHtmlLabels||j1(Re().flowchart.htmlLabels);f?w=f:w="node default";const b=i.insert("g").attr("class",w).attr("id",a.domId||a.id),E=b.insert("g").attr("class","label").attr("style",a.labelStyle);let S;a.labelText===void 0?S="":S=typeof a.labelText=="string"?a.labelText:a.labelText[0];const _=E.node();let M;a.labelType==="markdown"?M=ZY(E,Ef(IF(S),Re()),{useHtmlLabels:v,width:a.width||Re().flowchart.wrappingWidth,classes:"markdown-node-label"}):M=_.appendChild(ab(Ef(IF(S),Re()),a.labelStyle,!1,g));let F=M.getBBox();const R=a.padding/2;if(j1(Re().flowchart.htmlLabels)){const B=M.children[0],z=Tr(M),Y=B.getElementsByTagName("img");if(Y){const nt=S.replace(/]*>/g,"").trim()==="";await Promise.all([...Y].map(ot=>new Promise(ft=>{function wt(){if(ot.style.display="flex",ot.style.flexDirection="column",nt){const mt=Re().fontSize?Re().fontSize:window.getComputedStyle(document.body).fontSize,ct=5,rt=parseInt(mt,10)*ct+"px";ot.style.minWidth=rt,ot.style.maxWidth=rt}else ot.style.width="100%";ft(ot)}setTimeout(()=>{ot.complete&&wt()}),ot.addEventListener("error",wt),ot.addEventListener("load",wt)})))}F=B.getBoundingClientRect(),z.attr("width",F.width),z.attr("height",F.height)}return v?E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"):E.attr("transform","translate(0, "+-F.height/2+")"),a.centerLabel&&E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),E.insert("rect",":first-child"),{shapeSvg:b,bbox:F,halfPadding:R,label:E}},xh=(i,a)=>{const f=a.node().getBBox();i.width=f.width,i.height=f.height};function l4(i,a,f,g){return i.insert("polygon",":first-child").attr("points",g.map(function(w){return w.x+","+w.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-a/2+","+f/2+")")}let ho={},ty={},X$t={};const DKe=()=>{ty={},X$t={},ho={}},tX=(i,a)=>(Kt.trace("In isDecendant",a," ",i," = ",ty[a].includes(i)),!!ty[a].includes(i)),MKe=(i,a)=>(Kt.info("Decendants of ",a," is ",ty[a]),Kt.info("Edge is ",i),i.v===a||i.w===a?!1:ty[a]?ty[a].includes(i.v)||tX(i.v,a)||tX(i.w,a)||ty[a].includes(i.w):(Kt.debug("Tilt, ",a,",not in decendants"),!1)),Q$t=(i,a,f,g)=>{Kt.warn("Copying children of ",i,"root",g,"data",a.node(i),g);const w=a.children(i)||[];i!==g&&w.push(i),Kt.warn("Copying (nodes) clusterId",i,"nodes",w),w.forEach(v=>{if(a.children(v).length>0)Q$t(v,a,f,g);else{const b=a.node(v);Kt.info("cp ",v," to ",g," with parent ",i),f.setNode(v,b),g!==a.parent(v)&&(Kt.warn("Setting parent",v,a.parent(v)),f.setParent(v,a.parent(v))),i!==g&&v!==i?(Kt.debug("Setting parent",v,i),f.setParent(v,i)):(Kt.info("In copy ",i,"root",g,"data",a.node(i),g),Kt.debug("Not Setting parent for node=",v,"cluster!==rootId",i!==g,"node!==clusterId",v!==i));const E=a.edges(v);Kt.debug("Copying Edges",E),E.forEach(S=>{Kt.info("Edge",S);const _=a.edge(S.v,S.w,S.name);Kt.info("Edge data",_,g);try{MKe(S,g)?(Kt.info("Copying as ",S.v,S.w,_,S.name),f.setEdge(S.v,S.w,_,S.name),Kt.info("newGraph edges ",f.edges(),f.edge(f.edges()[0]))):Kt.info("Skipping copy of edge ",S.v,"-->",S.w," rootId: ",g," clusterId:",i)}catch(M){Kt.error(M)}})}Kt.debug("Removing node",v),a.removeNode(v)})},J$t=(i,a)=>{const f=a.children(i);let g=[...f];for(const w of f)X$t[w]=i,g=[...g,...J$t(w,a)];return g},tB=(i,a)=>{Kt.trace("Searching",i);const f=a.children(i);if(Kt.trace("Searching children of id ",i,f),f.length<1)return Kt.trace("This is a valid node",i),i;for(const g of f){const w=tB(g,a);if(w)return Kt.trace("Found replacement for",i," => ",w),w}},eX=i=>!ho[i]||!ho[i].externalConnections?i:ho[i]?ho[i].id:i,IKe=(i,a)=>{if(!i||a>10){Kt.debug("Opting out, no graph ");return}else Kt.debug("Opting in, graph ");i.nodes().forEach(function(f){i.children(f).length>0&&(Kt.warn("Cluster identified",f," Replacement id in edges: ",tB(f,i)),ty[f]=J$t(f,i),ho[f]={id:tB(f,i),clusterData:i.node(f)})}),i.nodes().forEach(function(f){const g=i.children(f),w=i.edges();g.length>0?(Kt.debug("Cluster identified",f,ty),w.forEach(v=>{if(v.v!==f&&v.w!==f){const b=tX(v.v,f),E=tX(v.w,f);b^E&&(Kt.warn("Edge: ",v," leaves cluster ",f),Kt.warn("Decendants of XXX ",f,": ",ty[f]),ho[f].externalConnections=!0)}})):Kt.debug("Not a cluster ",f,ty)});for(let f of Object.keys(ho)){const g=ho[f].id,w=i.parent(g);w!==f&&ho[w]&&!ho[w].externalConnections&&(ho[f].id=w)}i.edges().forEach(function(f){const g=i.edge(f);Kt.warn("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(f)),Kt.warn("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(i.edge(f)));let w=f.v,v=f.w;if(Kt.warn("Fix XXX",ho,"ids:",f.v,f.w,"Translating: ",ho[f.v]," --- ",ho[f.w]),ho[f.v]&&ho[f.w]&&ho[f.v]===ho[f.w]){Kt.warn("Fixing and trixing link to self - removing XXX",f.v,f.w,f.name),Kt.warn("Fixing and trixing - removing XXX",f.v,f.w,f.name),w=eX(f.v),v=eX(f.w),i.removeEdge(f.v,f.w,f.name);const b=f.w+"---"+f.v;i.setNode(b,{domId:b,id:b,labelStyle:"",labelText:g.label,padding:0,shape:"labelRect",style:""});const E=structuredClone(g),S=structuredClone(g);E.label="",E.arrowTypeEnd="none",S.label="",E.fromCluster=f.v,S.toCluster=f.v,i.setEdge(w,b,E,f.name+"-cyclic-special"),i.setEdge(b,v,S,f.name+"-cyclic-special")}else if(ho[f.v]||ho[f.w]){if(Kt.warn("Fixing and trixing - removing XXX",f.v,f.w,f.name),w=eX(f.v),v=eX(f.w),i.removeEdge(f.v,f.w,f.name),w!==f.v){const b=i.parent(w);ho[b].externalConnections=!0,g.fromCluster=f.v}if(v!==f.w){const b=i.parent(v);ho[b].externalConnections=!0,g.toCluster=f.w}Kt.warn("Fix Replacing with XXX",w,v,f.name),i.setEdge(w,v,g,f.name)}}),Kt.warn("Adjusted Graph",jx(i)),Z$t(i,0),Kt.trace(ho)},Z$t=(i,a)=>{if(Kt.warn("extractor - ",a,jx(i),i.children("D")),a>10){Kt.error("Bailing out");return}let f=i.nodes(),g=!1;for(const w of f){const v=i.children(w);g=g||v.length>0}if(!g){Kt.debug("Done, no node has children",i.nodes());return}Kt.debug("Nodes = ",f,a);for(const w of f)if(Kt.debug("Extracting node",w,ho,ho[w]&&!ho[w].externalConnections,!i.parent(w),i.node(w),i.children("D")," Depth ",a),!ho[w])Kt.debug("Not a cluster",w,a);else if(!ho[w].externalConnections&&i.children(w)&&i.children(w).length>0){Kt.warn("Cluster without external connections, without a parent and with children",w,a);let b=i.graph().rankdir==="TB"?"LR":"TB";ho[w]&&ho[w].clusterData&&ho[w].clusterData.dir&&(b=ho[w].clusterData.dir,Kt.warn("Fixing dir",ho[w].clusterData.dir,b));const E=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:b,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Kt.warn("Old graph before copy",jx(i)),Q$t(w,i,E,w),i.setNode(w,{clusterNode:!0,id:w,clusterData:ho[w].clusterData,labelText:ho[w].labelText,graph:E}),Kt.warn("New graph after copy node: (",w,")",jx(E)),Kt.debug("Old graph after copy",jx(i))}else Kt.warn("Cluster ** ",w," **not meeting the criteria !externalConnections:",!ho[w].externalConnections," no parent: ",!i.parent(w)," children ",i.children(w)&&i.children(w).length>0,i.children("D"),a),Kt.debug(ho);f=i.nodes(),Kt.warn("New list of nodes",f);for(const w of f){const v=i.node(w);Kt.warn(" Now next level",w,v),v.clusterNode&&Z$t(v.graph,a+1)}},tzt=(i,a)=>{if(a.length===0)return[];let f=Object.assign(a);return a.forEach(g=>{const w=i.children(g),v=tzt(i,w);f=[...f,...v]}),f},OKe=i=>tzt(i,i.children());function NKe(i,a){return i.intersect(a)}function ezt(i,a,f,g){var w=i.x,v=i.y,b=w-g.x,E=v-g.y,S=Math.sqrt(a*a*E*E+f*f*b*b),_=Math.abs(a*f*b/S);g.x0}function BKe(i,a,f){var g=i.x,w=i.y,v=[],b=Number.POSITIVE_INFINITY,E=Number.POSITIVE_INFINITY;typeof a.forEach=="function"?a.forEach(function(z){b=Math.min(b,z.x),E=Math.min(E,z.y)}):(b=Math.min(b,a.x),E=Math.min(E,a.y));for(var S=g-i.width/2-b,_=w-i.height/2-E,M=0;M1&&v.sort(function(z,Y){var nt=z.x-f.x,ot=z.y-f.y,ft=Math.sqrt(nt*nt+ot*ot),wt=Y.x-f.x,mt=Y.y-f.y,ct=Math.sqrt(wt*wt+mt*mt);return ft{var f=i.x,g=i.y,w=a.x-f,v=a.y-g,b=i.width/2,E=i.height/2,S,_;return Math.abs(v)*b>Math.abs(w)*E?(v<0&&(E=-E),S=v===0?0:E*w/v,_=E):(w<0&&(b=-b),S=b,_=w===0?0:b*v/w),{x:f+S,y:g+_}},Ql={node:NKe,circle:PKe,ellipse:ezt,polygon:BKe,rect:eB},RKe=async(i,a)=>{a.useHtmlLabels||Re().flowchart.htmlLabels||(a.centerLabel=!0);const{shapeSvg:g,bbox:w,halfPadding:v}=await $1(i,a,"node "+a.classes,!0);Kt.info("Classes = ",a.classes);const b=g.insert("rect",":first-child");return b.attr("rx",a.rx).attr("ry",a.ry).attr("x",-w.width/2-v).attr("y",-w.height/2-v).attr("width",w.width+a.padding).attr("height",w.height+a.padding),xh(a,b),a.intersect=function(E){return Ql.rect(a,E)},g},jKe=i=>{const a=new Set;for(const f of i)switch(f){case"x":a.add("right"),a.add("left");break;case"y":a.add("up"),a.add("down");break;default:a.add(f);break}return a},$Ke=(i,a,f)=>{const g=jKe(i),w=2,v=a.height+2*f.padding,b=v/w,E=a.width+2*b+f.padding,S=f.padding/2;return g.has("right")&&g.has("left")&&g.has("up")&&g.has("down")?[{x:0,y:0},{x:b,y:0},{x:E/2,y:2*S},{x:E-b,y:0},{x:E,y:0},{x:E,y:-v/3},{x:E+2*S,y:-v/2},{x:E,y:-2*v/3},{x:E,y:-v},{x:E-b,y:-v},{x:E/2,y:-v-2*S},{x:b,y:-v},{x:0,y:-v},{x:0,y:-2*v/3},{x:-2*S,y:-v/2},{x:0,y:-v/3}]:g.has("right")&&g.has("left")&&g.has("up")?[{x:b,y:0},{x:E-b,y:0},{x:E,y:-v/2},{x:E-b,y:-v},{x:b,y:-v},{x:0,y:-v/2}]:g.has("right")&&g.has("left")&&g.has("down")?[{x:0,y:0},{x:b,y:-v},{x:E-b,y:-v},{x:E,y:0}]:g.has("right")&&g.has("up")&&g.has("down")?[{x:0,y:0},{x:E,y:-b},{x:E,y:-v+b},{x:0,y:-v}]:g.has("left")&&g.has("up")&&g.has("down")?[{x:E,y:0},{x:0,y:-b},{x:0,y:-v+b},{x:E,y:-v}]:g.has("right")&&g.has("left")?[{x:b,y:0},{x:b,y:-S},{x:E-b,y:-S},{x:E-b,y:0},{x:E,y:-v/2},{x:E-b,y:-v},{x:E-b,y:-v+S},{x:b,y:-v+S},{x:b,y:-v},{x:0,y:-v/2}]:g.has("up")&&g.has("down")?[{x:E/2,y:0},{x:0,y:-S},{x:b,y:-S},{x:b,y:-v+S},{x:0,y:-v+S},{x:E/2,y:-v},{x:E,y:-v+S},{x:E-b,y:-v+S},{x:E-b,y:-S},{x:E,y:-S}]:g.has("right")&&g.has("up")?[{x:0,y:0},{x:E,y:-b},{x:0,y:-v}]:g.has("right")&&g.has("down")?[{x:0,y:0},{x:E,y:0},{x:0,y:-v}]:g.has("left")&&g.has("up")?[{x:E,y:0},{x:0,y:-b},{x:E,y:-v}]:g.has("left")&&g.has("down")?[{x:E,y:0},{x:0,y:0},{x:E,y:-v}]:g.has("right")?[{x:b,y:-S},{x:b,y:-S},{x:E-b,y:-S},{x:E-b,y:0},{x:E,y:-v/2},{x:E-b,y:-v},{x:E-b,y:-v+S},{x:b,y:-v+S},{x:b,y:-v+S}]:g.has("left")?[{x:b,y:0},{x:b,y:-S},{x:E-b,y:-S},{x:E-b,y:-v+S},{x:b,y:-v+S},{x:b,y:-v},{x:0,y:-v/2}]:g.has("up")?[{x:b,y:-S},{x:b,y:-v+S},{x:0,y:-v+S},{x:E/2,y:-v},{x:E,y:-v+S},{x:E-b,y:-v+S},{x:E-b,y:-S}]:g.has("down")?[{x:E/2,y:0},{x:0,y:-S},{x:b,y:-S},{x:b,y:-v+S},{x:E-b,y:-v+S},{x:E-b,y:-S},{x:E,y:-S}]:[{x:0,y:0}]},rzt=i=>i?" "+i:"",L2=(i,a)=>`${a||"node default"}${rzt(i.classes)} ${rzt(i.class)}`,izt=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=w+v,E=[{x:b/2,y:0},{x:b,y:-b/2},{x:b/2,y:-b},{x:0,y:-b/2}];Kt.info("Question main (Circle)");const S=l4(f,b,b,E);return S.attr("style",a.style),xh(a,S),a.intersect=function(_){return Kt.warn("Intersect called"),Ql.polygon(a,E,_)},f},zKe=(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),g=28,w=[{x:0,y:g/2},{x:g/2,y:0},{x:0,y:-g/2},{x:-g/2,y:0}];return f.insert("polygon",":first-child").attr("points",w.map(function(b){return b.x+","+b.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),a.width=28,a.height=28,a.intersect=function(b){return Ql.circle(a,14,b)},f},qKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=4,v=g.height+a.padding,b=v/w,E=g.width+2*b+a.padding,S=[{x:b,y:0},{x:E-b,y:0},{x:E,y:-v/2},{x:E-b,y:-v},{x:b,y:-v},{x:0,y:-v/2}],_=l4(f,E,v,S);return _.attr("style",a.style),xh(a,_),a.intersect=function(M){return Ql.polygon(a,S,M)},f},HKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,void 0,!0),w=2,v=g.height+2*a.padding,b=v/w,E=g.width+2*b+a.padding,S=$Ke(a.directions,g,a),_=l4(f,E,v,S);return _.attr("style",a.style),xh(a,_),a.intersect=function(M){return Ql.polygon(a,S,M)},f},VKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:-v/2,y:0},{x:w,y:0},{x:w,y:-v},{x:-v/2,y:-v},{x:0,y:-v/2}];return l4(f,w,v,b).attr("style",a.style),a.width=w+v,a.height=v,a.intersect=function(S){return Ql.polygon(a,b,S)},f},UKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:-2*v/6,y:0},{x:w-v/6,y:0},{x:w+2*v/6,y:-v},{x:v/6,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},GKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:2*v/6,y:0},{x:w+v/6,y:0},{x:w-2*v/6,y:-v},{x:-v/6,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},KKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:-2*v/6,y:0},{x:w+2*v/6,y:0},{x:w-v/6,y:-v},{x:v/6,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},WKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:v/6,y:0},{x:w-v/6,y:0},{x:w+2*v/6,y:-v},{x:-2*v/6,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},YKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:0,y:0},{x:w+v/2,y:0},{x:w,y:-v/2},{x:w+v/2,y:-v},{x:0,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},XKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=w/2,b=v/(2.5+w/50),E=g.height+b+a.padding,S="M 0,"+b+" a "+v+","+b+" 0,0,0 "+w+" 0 a "+v+","+b+" 0,0,0 "+-w+" 0 l 0,"+E+" a "+v+","+b+" 0,0,0 "+w+" 0 l 0,"+-E,_=f.attr("label-offset-y",b).insert("path",":first-child").attr("style",a.style).attr("d",S).attr("transform","translate("+-w/2+","+-(E/2+b)+")");return xh(a,_),a.intersect=function(M){const F=Ql.rect(a,M),R=F.x-a.x;if(v!=0&&(Math.abs(R)a.height/2-b)){let B=b*b*(1-R*R/(v*v));B!=0&&(B=Math.sqrt(B)),B=b-B,M.y-a.y>0&&(B=-B),F.y+=B}return F},f},QKe=async(i,a)=>{const{shapeSvg:f,bbox:g,halfPadding:w}=await $1(i,a,"node "+a.classes+" "+a.class,!0),v=f.insert("rect",":first-child"),b=a.positioned?a.width:g.width+a.padding,E=a.positioned?a.height:g.height+a.padding,S=a.positioned?-b/2:-g.width/2-w,_=a.positioned?-E/2:-g.height/2-w;if(v.attr("class","basic label-container").attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",S).attr("y",_).attr("width",b).attr("height",E),a.props){const M=new Set(Object.keys(a.props));a.props.borders&&(Jpt(v,a.props.borders,b,E),M.delete("borders")),M.forEach(F=>{Kt.warn(`Unknown node property ${F}`)})}return xh(a,v),a.intersect=function(M){return Ql.rect(a,M)},f},JKe=async(i,a)=>{const{shapeSvg:f,bbox:g,halfPadding:w}=await $1(i,a,"node "+a.classes,!0),v=f.insert("rect",":first-child"),b=a.positioned?a.width:g.width+a.padding,E=a.positioned?a.height:g.height+a.padding,S=a.positioned?-b/2:-g.width/2-w,_=a.positioned?-E/2:-g.height/2-w;if(v.attr("class","basic cluster composite label-container").attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",S).attr("y",_).attr("width",b).attr("height",E),a.props){const M=new Set(Object.keys(a.props));a.props.borders&&(Jpt(v,a.props.borders,b,E),M.delete("borders")),M.forEach(F=>{Kt.warn(`Unknown node property ${F}`)})}return xh(a,v),a.intersect=function(M){return Ql.rect(a,M)},f},ZKe=async(i,a)=>{const{shapeSvg:f}=await $1(i,a,"label",!0);Kt.trace("Classes = ",a.class);const g=f.insert("rect",":first-child"),w=0,v=0;if(g.attr("width",w).attr("height",v),f.attr("class","label edgeLabel"),a.props){const b=new Set(Object.keys(a.props));a.props.borders&&(Jpt(g,a.props.borders,w,v),b.delete("borders")),b.forEach(E=>{Kt.warn(`Unknown node property ${E}`)})}return xh(a,g),a.intersect=function(b){return Ql.rect(a,b)},f};function Jpt(i,a,f,g){const w=[],v=E=>{w.push(E,0)},b=E=>{w.push(0,E)};a.includes("t")?(Kt.debug("add top border"),v(f)):b(f),a.includes("r")?(Kt.debug("add right border"),v(g)):b(g),a.includes("b")?(Kt.debug("add bottom border"),v(f)):b(f),a.includes("l")?(Kt.debug("add left border"),v(g)):b(g),i.attr("stroke-dasharray",w.join(" "))}const tWe=(i,a)=>{let f;a.classes?f="node "+a.classes:f="node default";const g=i.insert("g").attr("class",f).attr("id",a.domId||a.id),w=g.insert("rect",":first-child"),v=g.insert("line"),b=g.insert("g").attr("class","label"),E=a.labelText.flat?a.labelText.flat():a.labelText;let S="";typeof E=="object"?S=E[0]:S=E,Kt.info("Label text abc79",S,E,typeof E=="object");const _=b.node().appendChild(ab(S,a.labelStyle,!0,!0));let M={width:0,height:0};if(j1(Re().flowchart.htmlLabels)){const Y=_.children[0],nt=Tr(_);M=Y.getBoundingClientRect(),nt.attr("width",M.width),nt.attr("height",M.height)}Kt.info("Text 2",E);const F=E.slice(1,E.length);let R=_.getBBox();const B=b.node().appendChild(ab(F.join?F.join("
"):F,a.labelStyle,!0,!0));if(j1(Re().flowchart.htmlLabels)){const Y=B.children[0],nt=Tr(B);M=Y.getBoundingClientRect(),nt.attr("width",M.width),nt.attr("height",M.height)}const z=a.padding/2;return Tr(B).attr("transform","translate( "+(M.width>R.width?0:(R.width-M.width)/2)+", "+(R.height+z+5)+")"),Tr(_).attr("transform","translate( "+(M.width{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.height+a.padding,v=g.width+w/4+a.padding,b=f.insert("rect",":first-child").attr("style",a.style).attr("rx",w/2).attr("ry",w/2).attr("x",-v/2).attr("y",-w/2).attr("width",v).attr("height",w);return xh(a,b),a.intersect=function(E){return Ql.rect(a,E)},f},nWe=async(i,a)=>{const{shapeSvg:f,bbox:g,halfPadding:w}=await $1(i,a,L2(a,void 0),!0),v=f.insert("circle",":first-child");return v.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",g.width/2+w).attr("width",g.width+a.padding).attr("height",g.height+a.padding),Kt.info("Circle main"),xh(a,v),a.intersect=function(b){return Kt.info("Circle intersect",a,g.width/2+w,b),Ql.circle(a,g.width/2+w,b)},f},rWe=async(i,a)=>{const{shapeSvg:f,bbox:g,halfPadding:w}=await $1(i,a,L2(a,void 0),!0),v=5,b=f.insert("g",":first-child"),E=b.insert("circle"),S=b.insert("circle");return b.attr("class",a.class),E.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",g.width/2+w+v).attr("width",g.width+a.padding+v*2).attr("height",g.height+a.padding+v*2),S.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",g.width/2+w).attr("width",g.width+a.padding).attr("height",g.height+a.padding),Kt.info("DoubleCircle main"),xh(a,E),a.intersect=function(_){return Kt.info("DoubleCircle intersect",a,g.width/2+w+v,_),Ql.circle(a,g.width/2+w+v,_)},f},iWe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:0,y:0},{x:w,y:0},{x:w,y:-v},{x:0,y:-v},{x:0,y:0},{x:-8,y:0},{x:w+8,y:0},{x:w+8,y:-v},{x:-8,y:-v},{x:-8,y:0}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},sWe=(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),g=f.insert("circle",":first-child");return g.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),xh(a,g),a.intersect=function(w){return Ql.circle(a,7,w)},f},szt=(i,a,f)=>{const g=i.insert("g").attr("class","node default").attr("id",a.domId||a.id);let w=70,v=10;f==="LR"&&(w=10,v=70);const b=g.append("rect").attr("x",-1*w/2).attr("y",-1*v/2).attr("width",w).attr("height",v).attr("class","fork-join");return xh(a,b),a.height=a.height+a.padding/2,a.width=a.width+a.padding/2,a.intersect=function(E){return Ql.rect(a,E)},g},azt={rhombus:izt,composite:JKe,question:izt,rect:QKe,labelRect:ZKe,rectWithTitle:tWe,choice:zKe,circle:nWe,doublecircle:rWe,stadium:eWe,hexagon:qKe,block_arrow:HKe,rect_left_inv_arrow:VKe,lean_right:UKe,lean_left:GKe,trapezoid:KKe,inv_trapezoid:WKe,rect_right_inv_arrow:YKe,cylinder:XKe,start:sWe,end:(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),g=f.insert("circle",":first-child"),w=f.insert("circle",":first-child");return w.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),g.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),xh(a,w),a.intersect=function(v){return Ql.circle(a,7,v)},f},note:RKe,subroutine:iWe,fork:szt,join:szt,class_box:(i,a)=>{const f=a.padding/2,g=4,w=8;let v;a.classes?v="node "+a.classes:v="node default";const b=i.insert("g").attr("class",v).attr("id",a.domId||a.id),E=b.insert("rect",":first-child"),S=b.insert("line"),_=b.insert("line");let M=0,F=g;const R=b.insert("g").attr("class","label");let B=0;const z=a.classData.annotations&&a.classData.annotations[0],Y=a.classData.annotations[0]?"«"+a.classData.annotations[0]+"»":"",nt=R.node().appendChild(ab(Y,a.labelStyle,!0,!0));let ot=nt.getBBox();if(j1(Re().flowchart.htmlLabels)){const gt=nt.children[0],Q=Tr(nt);ot=gt.getBoundingClientRect(),Q.attr("width",ot.width),Q.attr("height",ot.height)}a.classData.annotations[0]&&(F+=ot.height+g,M+=ot.width);let ft=a.classData.label;a.classData.type!==void 0&&a.classData.type!==""&&(Re().flowchart.htmlLabels?ft+="<"+a.classData.type+">":ft+="<"+a.classData.type+">");const wt=R.node().appendChild(ab(ft,a.labelStyle,!0,!0));Tr(wt).attr("class","classTitle");let mt=wt.getBBox();if(j1(Re().flowchart.htmlLabels)){const gt=wt.children[0],Q=Tr(wt);mt=gt.getBoundingClientRect(),Q.attr("width",mt.width),Q.attr("height",mt.height)}F+=mt.height+g,mt.width>M&&(M=mt.width);const ct=[];a.classData.members.forEach(gt=>{const Q=gt.getDisplayDetails();let dt=Q.displayText;Re().flowchart.htmlLabels&&(dt=dt.replace(//g,">"));const K=R.node().appendChild(ab(dt,Q.cssStyle?Q.cssStyle:a.labelStyle,!0,!0));let yt=K.getBBox();if(j1(Re().flowchart.htmlLabels)){const V=K.children[0],Ot=Tr(K);yt=V.getBoundingClientRect(),Ot.attr("width",yt.width),Ot.attr("height",yt.height)}yt.width>M&&(M=yt.width),F+=yt.height+g,ct.push(K)}),F+=w;const rt=[];if(a.classData.methods.forEach(gt=>{const Q=gt.getDisplayDetails();let dt=Q.displayText;Re().flowchart.htmlLabels&&(dt=dt.replace(//g,">"));const K=R.node().appendChild(ab(dt,Q.cssStyle?Q.cssStyle:a.labelStyle,!0,!0));let yt=K.getBBox();if(j1(Re().flowchart.htmlLabels)){const V=K.children[0],Ot=Tr(K);yt=V.getBoundingClientRect(),Ot.attr("width",yt.width),Ot.attr("height",yt.height)}yt.width>M&&(M=yt.width),F+=yt.height+g,rt.push(K)}),F+=w,z){let gt=(M-ot.width)/2;Tr(nt).attr("transform","translate( "+(-1*M/2+gt)+", "+-1*F/2+")"),B=ot.height+g}let it=(M-mt.width)/2;return Tr(wt).attr("transform","translate( "+(-1*M/2+it)+", "+(-1*F/2+B)+")"),B+=mt.height+g,S.attr("class","divider").attr("x1",-M/2-f).attr("x2",M/2+f).attr("y1",-F/2-f+w+B).attr("y2",-F/2-f+w+B),B+=w,ct.forEach(gt=>{Tr(gt).attr("transform","translate( "+-M/2+", "+(-1*F/2+B+w/2)+")");const Q=gt==null?void 0:gt.getBBox();B+=((Q==null?void 0:Q.height)??0)+g}),B+=w,_.attr("class","divider").attr("x1",-M/2-f).attr("x2",M/2+f).attr("y1",-F/2-f+w+B).attr("y2",-F/2-f+w+B),B+=w,rt.forEach(gt=>{Tr(gt).attr("transform","translate( "+-M/2+", "+(-1*F/2+B)+")");const Q=gt==null?void 0:gt.getBBox();B+=((Q==null?void 0:Q.height)??0)+g}),E.attr("style",a.style).attr("class","outer title-state").attr("x",-M/2-f).attr("y",-(F/2)-f).attr("width",M+a.padding).attr("height",F+a.padding),xh(a,E),a.intersect=function(gt){return Ql.rect(a,gt)},b}};let TD={};const nX=async(i,a,f)=>{let g,w;if(a.link){let v;Re().securityLevel==="sandbox"?v="_top":a.linkTarget&&(v=a.linkTarget||"_blank"),g=i.insert("svg:a").attr("xlink:href",a.link).attr("target",v),w=await azt[a.shape](g,a,f)}else w=await azt[a.shape](i,a,f),g=w;return a.tooltip&&w.attr("title",a.tooltip),a.class&&w.attr("class","node default "+a.class),g.attr("data-node","true"),g.attr("data-id",a.id),TD[a.id]=g,a.haveCallback&&TD[a.id].attr("class",TD[a.id].attr("class")+" clickable"),g},aWe=(i,a)=>{TD[a.id]=i},oWe=()=>{TD={}},Zpt=i=>{const a=TD[i.id];Kt.trace("Transforming node",i.diff,i,"translate("+(i.x-i.width/2-5)+", "+i.width/2+")");const f=8,g=i.diff||0;return i.clusterNode?a.attr("transform","translate("+(i.x+g-i.width/2)+", "+(i.y-i.height/2-f)+")"):a.attr("transform","translate("+i.x+", "+i.y+")"),g},rX=({flowchart:i})=>{var w,v;const a=((w=i==null?void 0:i.subGraphTitleMargin)==null?void 0:w.top)??0,f=((v=i==null?void 0:i.subGraphTitleMargin)==null?void 0:v.bottom)??0,g=a+f;return{subGraphTitleTopMargin:a,subGraphTitleBottomMargin:f,subGraphTitleTotalMargin:g}},cWe={rect:(i,a)=>{Kt.info("Creating subgraph rect for ",a.id,a);const f=Re(),g=i.insert("g").attr("class","cluster"+(a.class?" "+a.class:"")).attr("id",a.id),w=g.insert("rect",":first-child"),v=j1(f.flowchart.htmlLabels),b=g.insert("g").attr("class","cluster-label"),E=a.labelType==="markdown"?ZY(b,a.labelText,{style:a.labelStyle,useHtmlLabels:v}):b.node().appendChild(ab(a.labelText,a.labelStyle,void 0,!0));let S=E.getBBox();if(j1(f.flowchart.htmlLabels)){const z=E.children[0],Y=Tr(E);S=z.getBoundingClientRect(),Y.attr("width",S.width),Y.attr("height",S.height)}const _=0*a.padding,M=_/2,F=a.width<=S.width+_?S.width+_:a.width;a.width<=S.width+_?a.diff=(S.width-a.width)/2-a.padding/2:a.diff=-a.padding/2,Kt.trace("Data ",a,JSON.stringify(a)),w.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-F/2).attr("y",a.y-a.height/2-M).attr("width",F).attr("height",a.height+_);const{subGraphTitleTopMargin:R}=rX(f);v?b.attr("transform",`translate(${a.x-S.width/2}, ${a.y-a.height/2+R})`):b.attr("transform",`translate(${a.x}, ${a.y-a.height/2+R})`);const B=w.node().getBBox();return a.width=B.width,a.height=B.height,a.intersect=function(z){return eB(a,z)},g},roundedWithTitle:(i,a)=>{const f=Re(),g=i.insert("g").attr("class",a.classes).attr("id",a.id),w=g.insert("rect",":first-child"),v=g.insert("g").attr("class","cluster-label"),b=g.append("rect"),E=v.node().appendChild(ab(a.labelText,a.labelStyle,void 0,!0));let S=E.getBBox();if(j1(f.flowchart.htmlLabels)){const z=E.children[0],Y=Tr(E);S=z.getBoundingClientRect(),Y.attr("width",S.width),Y.attr("height",S.height)}S=E.getBBox();const _=0*a.padding,M=_/2,F=a.width<=S.width+a.padding?S.width+a.padding:a.width;a.width<=S.width+a.padding?a.diff=(S.width+a.padding*0-a.width)/2:a.diff=-a.padding/2,w.attr("class","outer").attr("x",a.x-F/2-M).attr("y",a.y-a.height/2-M).attr("width",F+_).attr("height",a.height+_),b.attr("class","inner").attr("x",a.x-F/2-M).attr("y",a.y-a.height/2-M+S.height-1).attr("width",F+_).attr("height",a.height+_-S.height-3);const{subGraphTitleTopMargin:R}=rX(f);v.attr("transform",`translate(${a.x-S.width/2}, ${a.y-a.height/2-a.padding/3+(j1(f.flowchart.htmlLabels)?5:3)+R})`);const B=w.node().getBBox();return a.height=B.height,a.intersect=function(z){return eB(a,z)},g},noteGroup:(i,a)=>{const f=i.insert("g").attr("class","note-cluster").attr("id",a.id),g=f.insert("rect",":first-child"),w=0*a.padding,v=w/2;g.attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-a.width/2-v).attr("y",a.y-a.height/2-v).attr("width",a.width+w).attr("height",a.height+w).attr("fill","none");const b=g.node().getBBox();return a.width=b.width,a.height=b.height,a.intersect=function(E){return eB(a,E)},f},divider:(i,a)=>{const f=i.insert("g").attr("class",a.classes).attr("id",a.id),g=f.insert("rect",":first-child"),w=0*a.padding,v=w/2;g.attr("class","divider").attr("x",a.x-a.width/2-v).attr("y",a.y-a.height/2).attr("width",a.width+w).attr("height",a.height+w);const b=g.node().getBBox();return a.width=b.width,a.height=b.height,a.diff=-a.padding/2,a.intersect=function(E){return eB(a,E)},f}};let ozt={};const uWe=(i,a)=>{Kt.trace("Inserting cluster");const f=a.shape||"rect";ozt[a.id]=cWe[f](i,a)},lWe=()=>{ozt={}},C8={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function iX(i,a){if(i===void 0||a===void 0)return{angle:0,deltaX:0,deltaY:0};i=sX(i),a=sX(a);const[f,g]=[i.x,i.y],[w,v]=[a.x,a.y],b=w-f,E=v-g;return{angle:Math.atan(E/b),deltaX:b,deltaY:E}}const sX=i=>Array.isArray(i)?{x:i[0],y:i[1]}:i,czt=i=>({x:function(a,f,g){let w=0;if(f===0&&Object.hasOwn(C8,i.arrowTypeStart)){const{angle:v,deltaX:b}=iX(g[0],g[1]);w=C8[i.arrowTypeStart]*Math.cos(v)*(b>=0?1:-1)}else if(f===g.length-1&&Object.hasOwn(C8,i.arrowTypeEnd)){const{angle:v,deltaX:b}=iX(g[g.length-1],g[g.length-2]);w=C8[i.arrowTypeEnd]*Math.cos(v)*(b>=0?1:-1)}return sX(a).x+w},y:function(a,f,g){let w=0;if(f===0&&Object.hasOwn(C8,i.arrowTypeStart)){const{angle:v,deltaY:b}=iX(g[0],g[1]);w=C8[i.arrowTypeStart]*Math.abs(Math.sin(v))*(b>=0?1:-1)}else if(f===g.length-1&&Object.hasOwn(C8,i.arrowTypeEnd)){const{angle:v,deltaY:b}=iX(g[g.length-1],g[g.length-2]);w=C8[i.arrowTypeEnd]*Math.abs(Math.sin(v))*(b>=0?1:-1)}return sX(a).y+w}}),uzt=(i,a,f,g,w)=>{a.arrowTypeStart&&lzt(i,"start",a.arrowTypeStart,f,g,w),a.arrowTypeEnd&&lzt(i,"end",a.arrowTypeEnd,f,g,w)},hWe={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},lzt=(i,a,f,g,w,v)=>{const b=hWe[f];if(!b){Kt.warn(`Unknown arrow type: ${f}`);return}const E=a==="start"?"Start":"End";i.attr(`marker-${a}`,`url(${g}#${w}_${v}-${b}${E})`)};let aX={},p0={};const fWe=()=>{aX={},p0={}},tbt=(i,a)=>{const f=j1(Re().flowchart.htmlLabels),g=a.labelType==="markdown"?ZY(i,a.label,{style:a.labelStyle,useHtmlLabels:f,addSvgBackground:!0}):ab(a.label,a.labelStyle),w=i.insert("g").attr("class","edgeLabel"),v=w.insert("g").attr("class","label");v.node().appendChild(g);let b=g.getBBox();if(f){const S=g.children[0],_=Tr(g);b=S.getBoundingClientRect(),_.attr("width",b.width),_.attr("height",b.height)}v.attr("transform","translate("+-b.width/2+", "+-b.height/2+")"),aX[a.id]=w,a.width=b.width,a.height=b.height;let E;if(a.startLabelLeft){const S=ab(a.startLabelLeft,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),M=_.insert("g").attr("class","inner");E=M.node().appendChild(S);const F=S.getBBox();M.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),p0[a.id]||(p0[a.id]={}),p0[a.id].startLeft=_,oX(E,a.startLabelLeft)}if(a.startLabelRight){const S=ab(a.startLabelRight,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),M=_.insert("g").attr("class","inner");E=_.node().appendChild(S),M.node().appendChild(S);const F=S.getBBox();M.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),p0[a.id]||(p0[a.id]={}),p0[a.id].startRight=_,oX(E,a.startLabelRight)}if(a.endLabelLeft){const S=ab(a.endLabelLeft,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),M=_.insert("g").attr("class","inner");E=M.node().appendChild(S);const F=S.getBBox();M.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),_.node().appendChild(S),p0[a.id]||(p0[a.id]={}),p0[a.id].endLeft=_,oX(E,a.endLabelLeft)}if(a.endLabelRight){const S=ab(a.endLabelRight,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),M=_.insert("g").attr("class","inner");E=M.node().appendChild(S);const F=S.getBBox();M.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),_.node().appendChild(S),p0[a.id]||(p0[a.id]={}),p0[a.id].endRight=_,oX(E,a.endLabelRight)}return g};function oX(i,a){Re().flowchart.htmlLabels&&i&&(i.style.width=a.length*9+"px",i.style.height="12px")}const hzt=(i,a)=>{Kt.debug("Moving label abc88 ",i.id,i.label,aX[i.id],a);let f=a.updatedPath?a.updatedPath:a.originalPath;const g=Re(),{subGraphTitleTotalMargin:w}=rX(g);if(i.label){const v=aX[i.id];let b=i.x,E=i.y;if(f){const S=uo.calcLabelPosition(f);Kt.debug("Moving label "+i.label+" from (",b,",",E,") to (",S.x,",",S.y,") abc88"),a.updatedPath&&(b=S.x,E=S.y)}v.attr("transform",`translate(${b}, ${E+w/2})`)}if(i.startLabelLeft){const v=p0[i.id].startLeft;let b=i.x,E=i.y;if(f){const S=uo.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_left",f);b=S.x,E=S.y}v.attr("transform",`translate(${b}, ${E})`)}if(i.startLabelRight){const v=p0[i.id].startRight;let b=i.x,E=i.y;if(f){const S=uo.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_right",f);b=S.x,E=S.y}v.attr("transform",`translate(${b}, ${E})`)}if(i.endLabelLeft){const v=p0[i.id].endLeft;let b=i.x,E=i.y;if(f){const S=uo.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_left",f);b=S.x,E=S.y}v.attr("transform",`translate(${b}, ${E})`)}if(i.endLabelRight){const v=p0[i.id].endRight;let b=i.x,E=i.y;if(f){const S=uo.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_right",f);b=S.x,E=S.y}v.attr("transform",`translate(${b}, ${E})`)}},dWe=(i,a)=>{const f=i.x,g=i.y,w=Math.abs(a.x-f),v=Math.abs(a.y-g),b=i.width/2,E=i.height/2;return w>=b||v>=E},gWe=(i,a,f)=>{Kt.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(a)} + insidePoint : ${JSON.stringify(f)} + node : x:${i.x} y:${i.y} w:${i.width} h:${i.height}`);const g=i.x,w=i.y,v=Math.abs(g-f.x),b=i.width/2;let E=f.xMath.abs(g-a.x)*S){let F=f.y{Kt.debug("abc88 cutPathAtIntersect",i,a);let f=[],g=i[0],w=!1;return i.forEach(v=>{if(!dWe(a,v)&&!w){const b=gWe(a,g,v);let E=!1;f.forEach(S=>{E=E||S.x===b.x&&S.y===b.y}),f.some(S=>S.x===b.x&&S.y===b.y)||f.push(b),w=!0}else g=v,w||f.push(v)}),f},dzt=function(i,a,f,g,w,v,b){let E=f.points;Kt.debug("abc88 InsertEdge: edge=",f,"e=",a);let S=!1;const _=v.node(a.v);var M=v.node(a.w);M!=null&&M.intersect&&(_!=null&&_.intersect)&&(E=E.slice(1,f.points.length-1),E.unshift(_.intersect(E[0])),E.push(M.intersect(E[E.length-1]))),f.toCluster&&(Kt.debug("to cluster abc88",g[f.toCluster]),E=fzt(f.points,g[f.toCluster].node),S=!0),f.fromCluster&&(Kt.debug("from cluster abc88",g[f.fromCluster]),E=fzt(E.reverse(),g[f.fromCluster].node).reverse(),S=!0);const F=E.filter(mt=>!Number.isNaN(mt.y));let R=wF;f.curve&&(w==="graph"||w==="flowchart")&&(R=f.curve);const{x:B,y:z}=czt(f),Y=Ax().x(B).y(z).curve(R);let nt;switch(f.thickness){case"normal":nt="edge-thickness-normal";break;case"thick":nt="edge-thickness-thick";break;case"invisible":nt="edge-thickness-thick";break;default:nt=""}switch(f.pattern){case"solid":nt+=" edge-pattern-solid";break;case"dotted":nt+=" edge-pattern-dotted";break;case"dashed":nt+=" edge-pattern-dashed";break}const ot=i.append("path").attr("d",Y(F)).attr("id",f.id).attr("class"," "+nt+(f.classes?" "+f.classes:"")).attr("style",f.style);let ft="";(Re().flowchart.arrowMarkerAbsolute||Re().state.arrowMarkerAbsolute)&&(ft=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,ft=ft.replace(/\(/g,"\\("),ft=ft.replace(/\)/g,"\\)")),uzt(ot,f,ft,b,w);let wt={};return S&&(wt.updatedPath=E),wt.originalPath=f.points,wt},gzt=async(i,a,f,g,w,v)=>{Kt.info("Graph in recursive render: XXX",jx(a),w);const b=a.graph().rankdir;Kt.trace("Dir in recursive render - dir:",b);const E=i.insert("g").attr("class","root");a.nodes()?Kt.info("Recursive render XXX",a.nodes()):Kt.info("No nodes found for",a),a.edges().length>0&&Kt.trace("Recursive edges",a.edge(a.edges()[0]));const S=E.insert("g").attr("class","clusters"),_=E.insert("g").attr("class","edgePaths"),M=E.insert("g").attr("class","edgeLabels"),F=E.insert("g").attr("class","nodes");await Promise.all(a.nodes().map(async function(z){const Y=a.node(z);if(w!==void 0){const nt=JSON.parse(JSON.stringify(w.clusterData));Kt.info("Setting data for cluster XXX (",z,") ",nt,w),a.setNode(w.id,nt),a.parent(z)||(Kt.trace("Setting parent",z,w.id),a.setParent(z,w.id,nt))}if(Kt.info("(Insert) Node XXX"+z+": "+JSON.stringify(a.node(z))),Y&&Y.clusterNode){Kt.info("Cluster identified",z,Y.width,a.node(z));const nt=await gzt(F,Y.graph,f,g,a.node(z),v),ot=nt.elem;xh(Y,ot),Y.diff=nt.diff||0,Kt.info("Node bounds (abc123)",z,Y,Y.width,Y.x,Y.y),aWe(ot,Y),Kt.warn("Recursive render complete ",ot,Y)}else a.children(z).length>0?(Kt.info("Cluster - the non recursive path XXX",z,Y.id,Y,a),Kt.info(tB(Y.id,a)),ho[Y.id]={id:tB(Y.id,a),node:Y}):(Kt.info("Node - the non recursive path",z,Y.id,Y),await nX(F,a.node(z),b))})),a.edges().forEach(function(z){const Y=a.edge(z.v,z.w,z.name);Kt.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(z)),Kt.info("Edge "+z.v+" -> "+z.w+": ",z," ",JSON.stringify(a.edge(z))),Kt.info("Fix",ho,"ids:",z.v,z.w,"Translateing: ",ho[z.v],ho[z.w]),tbt(M,Y)}),a.edges().forEach(function(z){Kt.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(z))}),Kt.info("#############################################"),Kt.info("### Layout ###"),Kt.info("#############################################"),Kt.info(a),kD(a),Kt.info("Graph after layout:",jx(a));let R=0;const{subGraphTitleTotalMargin:B}=rX(v);return OKe(a).forEach(function(z){const Y=a.node(z);Kt.info("Position "+z+": "+JSON.stringify(a.node(z))),Kt.info("Position "+z+": ("+Y.x,","+Y.y,") width: ",Y.width," height: ",Y.height),Y&&Y.clusterNode?(Y.y+=B,Zpt(Y)):a.children(z).length>0?(Y.height+=B,uWe(S,Y),ho[Y.id].node=Y):(Y.y+=B/2,Zpt(Y))}),a.edges().forEach(function(z){const Y=a.edge(z);Kt.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(Y),Y),Y.points.forEach(ot=>ot.y+=B/2);const nt=dzt(_,z,Y,ho,f,a,g);hzt(Y,nt)}),a.nodes().forEach(function(z){const Y=a.node(z);Kt.info(z,Y.type,Y.diff),Y.type==="group"&&(R=Y.diff)}),{elem:E,diff:R}},ebt=async(i,a,f,g,w)=>{jpt(i,f,g,w),oWe(),fWe(),lWe(),DKe(),Kt.warn("Graph at first:",JSON.stringify(jx(a))),IKe(a),Kt.warn("Graph after:",JSON.stringify(jx(a)));const v=Re();await gzt(i,a,g,w,void 0,v)},pzt={},pWe=function(i){const a=Object.keys(i);for(const f of a)pzt[f]=i[f]},bzt=function(i,a,f,g,w,v){const b=g.select(`[id="${f}"]`);Object.keys(i).forEach(function(S){const _=i[S];let M="default";_.classes.length>0&&(M=_.classes.join(" ")),M=M+" flowchart-label";const F=C2(_.styles);let R=_.text!==void 0?_.text:_.id,B;if(Kt.info("vertex",_,_.labelType),_.labelType==="markdown")Kt.info("vertex",_,_.labelType);else if(j1(Re().flowchart.htmlLabels)){const nt={label:R.replace(/fa[blrs]?:fa-[\w-]+/g,ot=>``)};B=Mpt(b,nt).node(),B.parentNode.removeChild(B)}else{const nt=w.createElementNS("http://www.w3.org/2000/svg","text");nt.setAttribute("style",F.labelStyle.replace("color:","fill:"));const ot=R.split(ei.lineBreakRegex);for(const ft of ot){const wt=w.createElementNS("http://www.w3.org/2000/svg","tspan");wt.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),wt.setAttribute("dy","1em"),wt.setAttribute("x","1"),wt.textContent=ft,nt.appendChild(wt)}B=nt}let z=0,Y="";switch(_.type){case"round":z=5,Y="rect";break;case"square":Y="rect";break;case"diamond":Y="question";break;case"hexagon":Y="hexagon";break;case"odd":Y="rect_left_inv_arrow";break;case"lean_right":Y="lean_right";break;case"lean_left":Y="lean_left";break;case"trapezoid":Y="trapezoid";break;case"inv_trapezoid":Y="inv_trapezoid";break;case"odd_right":Y="rect_left_inv_arrow";break;case"circle":Y="circle";break;case"ellipse":Y="ellipse";break;case"stadium":Y="stadium";break;case"subroutine":Y="subroutine";break;case"cylinder":Y="cylinder";break;case"group":Y="rect";break;case"doublecircle":Y="doublecircle";break;default:Y="rect"}a.setNode(_.id,{labelStyle:F.labelStyle,shape:Y,labelText:R,labelType:_.labelType,rx:z,ry:z,class:M,style:F.style,id:_.id,link:_.link,linkTarget:_.linkTarget,tooltip:v.db.getTooltip(_.id)||"",domId:v.db.lookUpDomId(_.id),haveCallback:_.haveCallback,width:_.type==="group"?500:void 0,dir:_.dir,type:_.type,props:_.props,padding:Re().flowchart.padding}),Kt.info("setNode",{labelStyle:F.labelStyle,labelType:_.labelType,shape:Y,labelText:R,rx:z,ry:z,class:M,style:F.style,id:_.id,domId:v.db.lookUpDomId(_.id),width:_.type==="group"?500:void 0,type:_.type,dir:_.dir,props:_.props,padding:Re().flowchart.padding})})},wzt=function(i,a,f){Kt.info("abc78 edges = ",i);let g=0,w={},v,b;if(i.defaultStyle!==void 0){const E=C2(i.defaultStyle);v=E.style,b=E.labelStyle}i.forEach(function(E){g++;const S="L-"+E.start+"-"+E.end;w[S]===void 0?(w[S]=0,Kt.info("abc78 new entry",S,w[S])):(w[S]++,Kt.info("abc78 new entry",S,w[S]));let _=S+"-"+w[S];Kt.info("abc78 new link id to be used is",S,_,w[S]);const M="LS-"+E.start,F="LE-"+E.end,R={style:"",labelStyle:""};switch(R.minlen=E.length||1,E.type==="arrow_open"?R.arrowhead="none":R.arrowhead="normal",R.arrowTypeStart="arrow_open",R.arrowTypeEnd="arrow_open",E.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 B="",z="";switch(E.stroke){case"normal":B="fill:none;",v!==void 0&&(B=v),b!==void 0&&(z=b),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(E.style!==void 0){const Y=C2(E.style);B=Y.style,z=Y.labelStyle}R.style=R.style+=B,R.labelStyle=R.labelStyle+=z,E.interpolate!==void 0?R.curve=Xw(E.interpolate,Kg):i.defaultInterpolate!==void 0?R.curve=Xw(i.defaultInterpolate,Kg):R.curve=Xw(pzt.curve,Kg),E.text===void 0?E.style!==void 0&&(R.arrowheadStyle="fill: #333"):(R.arrowheadStyle="fill: #333",R.labelpos="c"),R.labelType=E.labelType,R.label=E.text.replace(ei.lineBreakRegex,` +`),E.style===void 0&&(R.style=R.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),R.labelStyle=R.labelStyle.replace("color:","fill:"),R.id=_,R.classes="flowchart-link "+M+" "+F,a.setEdge(E.start,E.end,R,g)})},nbt={setConf:pWe,addVertices:bzt,addEdges:wzt,getClasses:function(i,a){return a.db.getClasses()},draw:async function(i,a,f,g){Kt.info("Drawing flowchart");let w=g.db.getDirection();w===void 0&&(w="TD");const{securityLevel:v,flowchart:b}=Re(),E=b.nodeSpacing||50,S=b.rankSpacing||50;let _;v==="sandbox"&&(_=Tr("#i"+a));const M=Tr(v==="sandbox"?_.nodes()[0].contentDocument.body:"body"),F=v==="sandbox"?_.nodes()[0].contentDocument:document,R=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:w,nodesep:E,ranksep:S,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let B;const z=g.db.getSubGraphs();Kt.info("Subgraphs - ",z);for(let ct=z.length-1;ct>=0;ct--)B=z[ct],Kt.info("Subgraph - ",B),g.db.addVertex(B.id,{text:B.title,type:B.labelType},"group",void 0,B.classes,B.dir);const Y=g.db.getVertices(),nt=g.db.getEdges();Kt.info("Edges",nt);let ot=0;for(ot=z.length-1;ot>=0;ot--){B=z[ot],$Ot("cluster").append("text");for(let ct=0;ct{const f=jPt,g=f(i,"r"),w=f(i,"g"),v=f(i,"b");return g9(g,w,v,a)},mzt=i=>`.label { + font-family: ${i.fontFamily}; + color: ${i.nodeTextColor||i.textColor}; + } + .cluster-label text { + fill: ${i.titleColor}; + } + .cluster-label span,p { + color: ${i.titleColor}; + } + + .label text,span,p { + fill: ${i.nodeTextColor||i.textColor}; + color: ${i.nodeTextColor||i.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.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: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.5; + background-color: ${i.edgeLabelBackground}; + fill: ${i.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${bWe(i.edgeLabelBackground,.5)}; + // background-color: + } + + .cluster rect { + fill: ${i.clusterBkg}; + stroke: ${i.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${i.titleColor}; + } + + .cluster span,p { + color: ${i.titleColor}; + } + /* .cluster div { + color: ${i.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${i.fontFamily}; + font-size: 12px; + background: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } +`,wWe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:spt,db:A9,renderer:nbt,styles:mzt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,wUe.setConf(i.flowchart),A9.clear(),A9.setGen("gen-1")}}},Symbol.toStringTag,{value:"Module"})),mWe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:spt,db:A9,renderer:nbt,styles:mzt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,bPe({flowchart:{arrowMarkerAbsolute:i.arrowMarkerAbsolute}}),nbt.setConf(i.flowchart),A9.clear(),A9.setGen("gen-2")}}},Symbol.toStringTag,{value:"Module"}));var rbt=function(){var i=function(gt,Q,dt,K){for(dt=dt||{},K=gt.length;K--;dt[gt[K]]=Q);return dt},a=[6,8,10,20,22,24,26,27,28],f=[1,10],g=[1,11],w=[1,12],v=[1,13],b=[1,14],E=[1,15],S=[1,21],_=[1,22],M=[1,23],F=[1,24],R=[1,25],B=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],z=[1,34],Y=[27,28,46,47],nt=[41,42,43,44,45],ot=[17,34],ft=[1,54],wt=[1,53],mt=[17,34,36,38],ct={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:function(Q,dt,K,yt,V,Ot,It){var jt=Ot.length-1;switch(V){case 1:break;case 2:this.$=[];break;case 3:Ot[jt-1].push(Ot[jt]),this.$=Ot[jt-1];break;case 4:case 5:this.$=Ot[jt];break;case 6:case 7:this.$=[];break;case 8:yt.addEntity(Ot[jt-4]),yt.addEntity(Ot[jt-2]),yt.addRelationship(Ot[jt-4],Ot[jt],Ot[jt-2],Ot[jt-3]);break;case 9:yt.addEntity(Ot[jt-3]),yt.addAttributes(Ot[jt-3],Ot[jt-1]);break;case 10:yt.addEntity(Ot[jt-2]);break;case 11:yt.addEntity(Ot[jt]);break;case 12:yt.addEntity(Ot[jt-6],Ot[jt-4]),yt.addAttributes(Ot[jt-6],Ot[jt-1]);break;case 13:yt.addEntity(Ot[jt-5],Ot[jt-3]);break;case 14:yt.addEntity(Ot[jt-3],Ot[jt-1]);break;case 15:case 16:this.$=Ot[jt].trim(),yt.setAccTitle(this.$);break;case 17:case 18:this.$=Ot[jt].trim(),yt.setAccDescription(this.$);break;case 19:case 43:this.$=Ot[jt];break;case 20:case 41:case 42:this.$=Ot[jt].replace(/"/g,"");break;case 21:case 29:this.$=[Ot[jt]];break;case 22:Ot[jt].push(Ot[jt-1]),this.$=Ot[jt];break;case 23:this.$={attributeType:Ot[jt-1],attributeName:Ot[jt]};break;case 24:this.$={attributeType:Ot[jt-2],attributeName:Ot[jt-1],attributeKeyTypeList:Ot[jt]};break;case 25:this.$={attributeType:Ot[jt-2],attributeName:Ot[jt-1],attributeComment:Ot[jt]};break;case 26:this.$={attributeType:Ot[jt-3],attributeName:Ot[jt-2],attributeKeyTypeList:Ot[jt-1],attributeComment:Ot[jt]};break;case 27:case 28:case 31:this.$=Ot[jt];break;case 30:Ot[jt-2].push(Ot[jt]),this.$=Ot[jt-2];break;case 32:this.$=Ot[jt].replace(/"/g,"");break;case 33:this.$={cardA:Ot[jt],relType:Ot[jt-1],cardB:Ot[jt-2]};break;case 34:this.$=yt.Cardinality.ZERO_OR_ONE;break;case 35:this.$=yt.Cardinality.ZERO_OR_MORE;break;case 36:this.$=yt.Cardinality.ONE_OR_MORE;break;case 37:this.$=yt.Cardinality.ONLY_ONE;break;case 38:this.$=yt.Cardinality.MD_PARENT;break;case 39:this.$=yt.Identification.NON_IDENTIFYING;break;case 40:this.$=yt.Identification.IDENTIFYING;break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:f,22:g,24:w,26:v,27:b,28:E},i(a,[2,7],{1:[2,1]}),i(a,[2,3]),{9:16,11:9,20:f,22:g,24:w,26:v,27:b,28:E},i(a,[2,5]),i(a,[2,6]),i(a,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:S,42:_,43:M,44:F,45:R}),{21:[1,26]},{23:[1,27]},{25:[1,28]},i(a,[2,18]),i(B,[2,19]),i(B,[2,20]),i(a,[2,4]),{11:29,27:b,28:E},{16:30,17:[1,31],29:32,30:33,34:z},{11:35,27:b,28:E},{40:36,46:[1,37],47:[1,38]},i(Y,[2,34]),i(Y,[2,35]),i(Y,[2,36]),i(Y,[2,37]),i(Y,[2,38]),i(a,[2,15]),i(a,[2,16]),i(a,[2,17]),{13:[1,39]},{17:[1,40]},i(a,[2,10]),{16:41,17:[2,21],29:32,30:33,34:z},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:S,42:_,43:M,44:F,45:R},i(nt,[2,39]),i(nt,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},i(a,[2,9]),{17:[2,22]},i(ot,[2,23],{32:50,33:51,35:52,37:ft,38:wt}),i([17,34,37,38],[2,28]),i(a,[2,14],{15:[1,55]}),i([27,28],[2,33]),i(a,[2,8]),i(a,[2,41]),i(a,[2,42]),i(a,[2,43]),i(ot,[2,24],{33:56,36:[1,57],38:wt}),i(ot,[2,25]),i(mt,[2,29]),i(ot,[2,32]),i(mt,[2,31]),{16:58,17:[1,59],29:32,30:33,34:z},i(ot,[2,26]),{35:60,37:ft},{17:[1,61]},i(a,[2,13]),i(mt,[2,30]),i(a,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:function(Q,dt){if(dt.recoverable)this.trace(Q);else{var K=new Error(Q);throw K.hash=dt,K}},parse:function(Q){var dt=this,K=[0],yt=[],V=[null],Ot=[],It=this.table,jt="",xt=0,Ft=0,Ct=2,kt=1,Gt=Ot.slice.call(arguments,1),Fe=Object.create(this.lexer),Mt={yy:{}};for(var pn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,pn)&&(Mt.yy[pn]=this.yy[pn]);Fe.setInput(Q,Mt.yy),Mt.yy.lexer=Fe,Mt.yy.parser=this,typeof Fe.yylloc>"u"&&(Fe.yylloc={});var Ae=Fe.yylloc;Ot.push(Ae);var ye=Fe.options&&Fe.options.ranges;typeof Mt.yy.parseError=="function"?this.parseError=Mt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function tn(){var Fi;return Fi=yt.pop()||Fe.lex()||kt,typeof Fi!="number"&&(Fi instanceof Array&&(yt=Fi,Fi=yt.pop()),Fi=dt.symbols_[Fi]||Fi),Fi}for(var sn,be,Ne,Xt,_e={},xe,Mn,ce,Br;;){if(be=K[K.length-1],this.defaultActions[be]?Ne=this.defaultActions[be]:((sn===null||typeof sn>"u")&&(sn=tn()),Ne=It[be]&&It[be][sn]),typeof Ne>"u"||!Ne.length||!Ne[0]){var we="";Br=[];for(xe in It[be])this.terminals_[xe]&&xe>Ct&&Br.push("'"+this.terminals_[xe]+"'");Fe.showPosition?we="Parse error on line "+(xt+1)+`: +`+Fe.showPosition()+` +Expecting `+Br.join(", ")+", got '"+(this.terminals_[sn]||sn)+"'":we="Parse error on line "+(xt+1)+": Unexpected "+(sn==kt?"end of input":"'"+(this.terminals_[sn]||sn)+"'"),this.parseError(we,{text:Fe.match,token:this.terminals_[sn]||sn,line:Fe.yylineno,loc:Ae,expected:Br})}if(Ne[0]instanceof Array&&Ne.length>1)throw new Error("Parse Error: multiple actions possible at state: "+be+", token: "+sn);switch(Ne[0]){case 1:K.push(sn),V.push(Fe.yytext),Ot.push(Fe.yylloc),K.push(Ne[1]),sn=null,Ft=Fe.yyleng,jt=Fe.yytext,xt=Fe.yylineno,Ae=Fe.yylloc;break;case 2:if(Mn=this.productions_[Ne[1]][1],_e.$=V[V.length-Mn],_e._$={first_line:Ot[Ot.length-(Mn||1)].first_line,last_line:Ot[Ot.length-1].last_line,first_column:Ot[Ot.length-(Mn||1)].first_column,last_column:Ot[Ot.length-1].last_column},ye&&(_e._$.range=[Ot[Ot.length-(Mn||1)].range[0],Ot[Ot.length-1].range[1]]),Xt=this.performAction.apply(_e,[jt,Ft,xt,Mt.yy,Ne[1],V,Ot].concat(Gt)),typeof Xt<"u")return Xt;Mn&&(K=K.slice(0,-1*Mn*2),V=V.slice(0,-1*Mn),Ot=Ot.slice(0,-1*Mn)),K.push(this.productions_[Ne[1]][0]),V.push(_e.$),Ot.push(_e._$),ce=It[K[K.length-2]][K[K.length-1]],K.push(ce);break;case 3:return!0}}return!0}},rt=function(){var gt={EOF:1,parseError:function(dt,K){if(this.yy.parser)this.yy.parser.parseError(dt,K);else throw new Error(dt)},setInput:function(Q,dt){return this.yy=dt||this.yy||{},this._input=Q,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Q=this._input[0];this.yytext+=Q,this.yyleng++,this.offset++,this.match+=Q,this.matched+=Q;var dt=Q.match(/(?:\r\n?|\n).*/g);return dt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Q},unput:function(Q){var dt=Q.length,K=Q.split(/(?:\r\n?|\n)/g);this._input=Q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-dt),this.offset-=dt;var yt=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 V=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:K?(K.length===yt.length?this.yylloc.first_column:0)+yt[yt.length-K.length].length-K[0].length:this.yylloc.first_column-dt},this.options.ranges&&(this.yylloc.range=[V[0],V[0]+this.yyleng-dt]),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(Q){this.unput(this.match.slice(Q))},pastInput:function(){var Q=this.matched.substr(0,this.matched.length-this.match.length);return(Q.length>20?"...":"")+Q.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Q=this.match;return Q.length<20&&(Q+=this._input.substr(0,20-Q.length)),(Q.substr(0,20)+(Q.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Q=this.pastInput(),dt=new Array(Q.length+1).join("-");return Q+this.upcomingInput()+` +`+dt+"^"},test_match:function(Q,dt){var K,yt,V;if(this.options.backtrack_lexer&&(V={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(V.yylloc.range=this.yylloc.range.slice(0))),yt=Q[0].match(/(?:\r\n?|\n).*/g),yt&&(this.yylineno+=yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:yt?yt[yt.length-1].length-yt[yt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Q[0].length},this.yytext+=Q[0],this.match+=Q[0],this.matches=Q,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Q[0].length),this.matched+=Q[0],K=this.performAction.call(this,this.yy,this,dt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),K)return K;if(this._backtrack){for(var Ot in V)this[Ot]=V[Ot];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Q,dt,K,yt;this._more||(this.yytext="",this.match="");for(var V=this._currentRules(),Ot=0;Otdt[0].length)){if(dt=K,yt=Ot,this.options.backtrack_lexer){if(Q=this.test_match(K,V[Ot]),Q!==!1)return Q;if(this._backtrack){dt=!1;continue}else return!1}else if(!this.options.flex)break}return dt?(Q=this.test_match(dt,V[yt]),Q!==!1?Q:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var dt=this.next();return dt||this.lex()},begin:function(dt){this.conditionStack.push(dt)},popState:function(){var dt=this.conditionStack.length-1;return dt>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(dt){return dt=this.conditionStack.length-1-Math.abs(dt||0),dt>=0?this.conditionStack[dt]:"INITIAL"},pushState:function(dt){this.begin(dt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(dt,K,yt,V){switch(yt){case 0:return this.begin("acc_title"),22;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),24;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 10;case 8:break;case 9:return 8;case 10:return 28;case 11:return 48;case 12:return 4;case 13:return this.begin("block"),15;case 14:return 36;case 15:break;case 16:return 37;case 17:return 34;case 18:return 34;case 19:return 38;case 20:break;case 21:return this.popState(),17;case 22:return K.yytext[0];case 23:return 18;case 24:return 19;case 25:return 41;case 26:return 43;case 27:return 43;case 28:return 43;case 29:return 41;case 30:return 41;case 31:return 42;case 32:return 42;case 33:return 42;case 34:return 42;case 35:return 42;case 36:return 43;case 37:return 42;case 38:return 43;case 39:return 44;case 40:return 44;case 41:return 44;case 42:return 44;case 43:return 41;case 44:return 42;case 45:return 43;case 46:return 45;case 47:return 46;case 48:return 47;case 49:return 47;case 50:return 46;case 51:return 46;case 52:return 46;case 53:return 27;case 54:return K.yytext[0];case 55:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[14,15,16,17,18,19,20,21,22],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],inclusive:!0}}};return gt}();ct.lexer=rt;function it(){this.yy={}}return it.prototype=ct,ct.Parser=it,new it}();rbt.parser=rbt;const vWe=rbt;let S8={},ibt=[];const yWe={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"},xWe={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},vzt=function(i,a=void 0){return S8[i]===void 0?(S8[i]={attributes:[],alias:a},Kt.info("Added new entity :",i)):S8[i]&&!S8[i].alias&&a&&(S8[i].alias=a,Kt.info(`Add alias '${a}' to entity '${i}'`)),S8[i]},kWe={Cardinality:yWe,Identification:xWe,getConfig:()=>Re().er,addEntity:vzt,addAttributes:function(i,a){let f=vzt(i),g;for(g=a.length-1;g>=0;g--)f.attributes.push(a[g]),Kt.debug("Added attribute ",a[g].attributeName)},getEntities:()=>S8,addRelationship:function(i,a,f,g){let w={entityA:i,roleA:a,entityB:f,relSpec:g};ibt.push(w),Kt.debug("Added new relationship :",w)},getRelationships:()=>ibt,clear:function(){S8={},ibt=[],ag()},setAccTitle:og,getAccTitle:Xg,setAccDescription:Qg,getAccDescription:Jg,setDiagramTitle:S2,getDiagramTitle:Zg},ey={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"},ny={ERMarkers:ey,insertMarkers:function(i,a){let f;i.append("defs").append("marker").attr("id",ey.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"),i.append("defs").append("marker").attr("id",ey.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"),i.append("defs").append("marker").attr("id",ey.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),i.append("defs").append("marker").attr("id",ey.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),f=i.append("defs").append("marker").attr("id",ey.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M9,0 L9,18"),f=i.append("defs").append("marker").attr("id",ey.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M21,0 L21,18"),i.append("defs").append("marker").attr("id",ey.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),i.append("defs").append("marker").attr("id",ey.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),f=i.append("defs").append("marker").attr("id",ey.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),f=i.append("defs").append("marker").attr("id",ey.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")}},EWe=/^(?:[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 TWe(i){return typeof i=="string"&&EWe.test(i)}const b0=[];for(let i=0;i<256;++i)b0.push((i+256).toString(16).slice(1));function CWe(i,a=0){return(b0[i[a+0]]+b0[i[a+1]]+b0[i[a+2]]+b0[i[a+3]]+"-"+b0[i[a+4]]+b0[i[a+5]]+"-"+b0[i[a+6]]+b0[i[a+7]]+"-"+b0[i[a+8]]+b0[i[a+9]]+"-"+b0[i[a+10]]+b0[i[a+11]]+b0[i[a+12]]+b0[i[a+13]]+b0[i[a+14]]+b0[i[a+15]]).toLowerCase()}function SWe(i){if(!TWe(i))throw TypeError("Invalid UUID");let a;const f=new Uint8Array(16);return f[0]=(a=parseInt(i.slice(0,8),16))>>>24,f[1]=a>>>16&255,f[2]=a>>>8&255,f[3]=a&255,f[4]=(a=parseInt(i.slice(9,13),16))>>>8,f[5]=a&255,f[6]=(a=parseInt(i.slice(14,18),16))>>>8,f[7]=a&255,f[8]=(a=parseInt(i.slice(19,23),16))>>>8,f[9]=a&255,f[10]=(a=parseInt(i.slice(24,36),16))/1099511627776&255,f[11]=a/4294967296&255,f[12]=a>>>24&255,f[13]=a>>>16&255,f[14]=a>>>8&255,f[15]=a&255,f}function _We(i){i=unescape(encodeURIComponent(i));const a=[];for(let f=0;f>>32-a}function IWe(i){const a=[1518500249,1859775393,2400959708,3395469782],f=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof i=="string"){const b=unescape(encodeURIComponent(i));i=[];for(let E=0;E>>0;R=F,F=M,M=sbt(_,30)>>>0,_=S,S=Y}f[0]=f[0]+S>>>0,f[1]=f[1]+_>>>0,f[2]=f[2]+M>>>0,f[3]=f[3]+F>>>0,f[4]=f[4]+R>>>0}return[f[0]>>24&255,f[0]>>16&255,f[0]>>8&255,f[0]&255,f[1]>>24&255,f[1]>>16&255,f[1]>>8&255,f[1]&255,f[2]>>24&255,f[2]>>16&255,f[2]>>8&255,f[2]&255,f[3]>>24&255,f[3]>>16&255,f[3]>>8&255,f[3]&255,f[4]>>24&255,f[4]>>16&255,f[4]>>8&255,f[4]&255]}const OWe=DWe("v5",80,IWe),NWe=/[^\dA-Za-z](\W)*/g;let z1={},nB=new Map;const PWe=function(i){const a=Object.keys(i);for(const f of a)z1[f]=i[f]},FWe=(i,a,f)=>{const g=z1.entityPadding/3,w=z1.entityPadding/3,v=z1.fontSize*.85,b=a.node().getBBox(),E=[];let S=!1,_=!1,M=0,F=0,R=0,B=0,z=b.height+g*2,Y=1;f.forEach(wt=>{wt.attributeKeyTypeList!==void 0&&wt.attributeKeyTypeList.length>0&&(S=!0),wt.attributeComment!==void 0&&(_=!0)}),f.forEach(wt=>{const mt=`${a.node().id}-attr-${Y}`;let ct=0;const rt=kF(wt.attributeType),it=i.append("text").classed("er entityLabel",!0).attr("id",`${mt}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",Re().fontFamily).style("font-size",v+"px").text(rt),gt=i.append("text").classed("er entityLabel",!0).attr("id",`${mt}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",Re().fontFamily).style("font-size",v+"px").text(wt.attributeName),Q={};Q.tn=it,Q.nn=gt;const dt=it.node().getBBox(),K=gt.node().getBBox();if(M=Math.max(M,dt.width),F=Math.max(F,K.width),ct=Math.max(dt.height,K.height),S){const yt=wt.attributeKeyTypeList!==void 0?wt.attributeKeyTypeList.join(","):"",V=i.append("text").classed("er entityLabel",!0).attr("id",`${mt}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",Re().fontFamily).style("font-size",v+"px").text(yt);Q.kn=V;const Ot=V.node().getBBox();R=Math.max(R,Ot.width),ct=Math.max(ct,Ot.height)}if(_){const yt=i.append("text").classed("er entityLabel",!0).attr("id",`${mt}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",Re().fontFamily).style("font-size",v+"px").text(wt.attributeComment||"");Q.cn=yt;const V=yt.node().getBBox();B=Math.max(B,V.width),ct=Math.max(ct,V.height)}Q.height=ct,E.push(Q),z+=ct+g*2,Y+=1});let nt=4;S&&(nt+=2),_&&(nt+=2);const ot=M+F+R+B,ft={width:Math.max(z1.minEntityWidth,Math.max(b.width+z1.entityPadding*2,ot+w*nt)),height:f.length>0?z:Math.max(z1.minEntityHeight,b.height+z1.entityPadding*2)};if(f.length>0){const wt=Math.max(0,(ft.width-ot-w*nt)/(nt/2));a.attr("transform","translate("+ft.width/2+","+(g+b.height/2)+")");let mt=b.height+g*2,ct="attributeBoxOdd";E.forEach(rt=>{const it=mt+g+rt.height/2;rt.tn.attr("transform","translate("+w+","+it+")");const gt=i.insert("rect","#"+rt.tn.node().id).classed(`er ${ct}`,!0).attr("x",0).attr("y",mt).attr("width",M+w*2+wt).attr("height",rt.height+g*2),Q=parseFloat(gt.attr("x"))+parseFloat(gt.attr("width"));rt.nn.attr("transform","translate("+(Q+w)+","+it+")");const dt=i.insert("rect","#"+rt.nn.node().id).classed(`er ${ct}`,!0).attr("x",Q).attr("y",mt).attr("width",F+w*2+wt).attr("height",rt.height+g*2);let K=parseFloat(dt.attr("x"))+parseFloat(dt.attr("width"));if(S){rt.kn.attr("transform","translate("+(K+w)+","+it+")");const yt=i.insert("rect","#"+rt.kn.node().id).classed(`er ${ct}`,!0).attr("x",K).attr("y",mt).attr("width",R+w*2+wt).attr("height",rt.height+g*2);K=parseFloat(yt.attr("x"))+parseFloat(yt.attr("width"))}_&&(rt.cn.attr("transform","translate("+(K+w)+","+it+")"),i.insert("rect","#"+rt.cn.node().id).classed(`er ${ct}`,"true").attr("x",K).attr("y",mt).attr("width",B+w*2+wt).attr("height",rt.height+g*2)),mt+=rt.height+g*2,ct=ct==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else ft.height=Math.max(z1.minEntityHeight,z),a.attr("transform","translate("+ft.width/2+","+ft.height/2+")");return ft},BWe=function(i,a,f){const g=Object.keys(a);let w;return g.forEach(function(v){const b=HWe(v,"entity");nB.set(v,b);const E=i.append("g").attr("id",b);w=w===void 0?b:w;const S="text-"+b,_=E.append("text").classed("er entityLabel",!0).attr("id",S).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",Re().fontFamily).style("font-size",z1.fontSize+"px").text(a[v].alias??v),{width:M,height:F}=FWe(E,_,a[v].attributes),B=E.insert("rect","#"+S).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",M).attr("height",F).node().getBBox();f.setNode(b,{width:B.width,height:B.height,shape:"rect",id:b})}),w},RWe=function(i,a){a.nodes().forEach(function(f){f!==void 0&&a.node(f)!==void 0&&i.select("#"+f).attr("transform","translate("+(a.node(f).x-a.node(f).width/2)+","+(a.node(f).y-a.node(f).height/2)+" )")})},yzt=function(i){return(i.entityA+i.roleA+i.entityB).replace(/\s/g,"")},jWe=function(i,a){return i.forEach(function(f){a.setEdge(nB.get(f.entityA),nB.get(f.entityB),{relationship:f},yzt(f))}),i};let xzt=0;const $We=function(i,a,f,g,w){xzt++;const v=f.edge(nB.get(a.entityA),nB.get(a.entityB),yzt(a)),b=Ax().x(function(z){return z.x}).y(function(z){return z.y}).curve(wF),E=i.insert("path","#"+g).classed("er relationshipLine",!0).attr("d",b(v.points)).style("stroke",z1.stroke).style("fill","none");a.relSpec.relType===w.db.Identification.NON_IDENTIFYING&&E.attr("stroke-dasharray","8,8");let S="";switch(z1.arrowMarkerAbsolute&&(S=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,S=S.replace(/\(/g,"\\("),S=S.replace(/\)/g,"\\)")),a.relSpec.cardA){case w.db.Cardinality.ZERO_OR_ONE:E.attr("marker-end","url("+S+"#"+ny.ERMarkers.ZERO_OR_ONE_END+")");break;case w.db.Cardinality.ZERO_OR_MORE:E.attr("marker-end","url("+S+"#"+ny.ERMarkers.ZERO_OR_MORE_END+")");break;case w.db.Cardinality.ONE_OR_MORE:E.attr("marker-end","url("+S+"#"+ny.ERMarkers.ONE_OR_MORE_END+")");break;case w.db.Cardinality.ONLY_ONE:E.attr("marker-end","url("+S+"#"+ny.ERMarkers.ONLY_ONE_END+")");break;case w.db.Cardinality.MD_PARENT:E.attr("marker-end","url("+S+"#"+ny.ERMarkers.MD_PARENT_END+")");break}switch(a.relSpec.cardB){case w.db.Cardinality.ZERO_OR_ONE:E.attr("marker-start","url("+S+"#"+ny.ERMarkers.ZERO_OR_ONE_START+")");break;case w.db.Cardinality.ZERO_OR_MORE:E.attr("marker-start","url("+S+"#"+ny.ERMarkers.ZERO_OR_MORE_START+")");break;case w.db.Cardinality.ONE_OR_MORE:E.attr("marker-start","url("+S+"#"+ny.ERMarkers.ONE_OR_MORE_START+")");break;case w.db.Cardinality.ONLY_ONE:E.attr("marker-start","url("+S+"#"+ny.ERMarkers.ONLY_ONE_START+")");break;case w.db.Cardinality.MD_PARENT:E.attr("marker-start","url("+S+"#"+ny.ERMarkers.MD_PARENT_START+")");break}const _=E.node().getTotalLength(),M=E.node().getPointAtLength(_*.5),F="rel"+xzt,B=i.append("text").classed("er relationshipLabel",!0).attr("id",F).attr("x",M.x).attr("y",M.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",Re().fontFamily).style("font-size",z1.fontSize+"px").text(a.roleA).node().getBBox();i.insert("rect","#"+F).classed("er relationshipLabelBox",!0).attr("x",M.x-B.width/2).attr("y",M.y-B.height/2).attr("width",B.width).attr("height",B.height)},zWe=function(i,a,f,g){z1=Re().er,Kt.info("Drawing ER diagram");const w=Re().securityLevel;let v;w==="sandbox"&&(v=Tr("#i"+a));const E=Tr(w==="sandbox"?v.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);ny.insertMarkers(E,z1);let S;S=new l1({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:z1.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});const _=BWe(E,g.db.getEntities(),S),M=jWe(g.db.getRelationships(),S);kD(S),RWe(E,S),M.forEach(function(Y){$We(E,Y,S,_,g)});const F=z1.diagramPadding;uo.insertTitle(E,"entityTitleText",z1.titleTopMargin,g.db.getDiagramTitle());const R=E.node().getBBox(),B=R.width+F*2,z=R.height+F*2;sg(E,z,B,z1.useMaxWidth),E.attr("viewBox",`${R.x-F} ${R.y-F} ${B} ${z}`)},qWe="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function HWe(i="",a=""){const f=i.replace(NWe,"");return`${kzt(a)}${kzt(f)}${OWe(i,qWe)}`}function kzt(i=""){return i.length>0?`${i}-`:""}const VWe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:vWe,db:kWe,renderer:{setConf:PWe,draw:zWe},styles:i=>` + .entityBox { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + } + + .attributeBoxOdd { + fill: ${i.attributeBackgroundColorOdd}; + stroke: ${i.nodeBorder}; + } + + .attributeBoxEven { + fill: ${i.attributeBackgroundColorEven}; + stroke: ${i.nodeBorder}; + } + + .relationshipLabelBox { + fill: ${i.tertiaryColor}; + opacity: 0.7; + background-color: ${i.tertiaryColor}; + rect { + opacity: 0.5; + } + } + + .relationshipLine { + stroke: ${i.lineColor}; + } + + .entityTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } + #MD_PARENT_START { + fill: #f5f5f5 !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; + } + #MD_PARENT_END { + fill: #f5f5f5 !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; + } + +`}},Symbol.toStringTag,{value:"Module"}));var abt=function(){var i=function(ct,rt,it,gt){for(it=it||{},gt=ct.length;gt--;it[ct[gt]]=rt);return it},a=[1,3],f=[1,6],g=[1,4],w=[1,5],v=[2,5],b=[1,12],E=[5,7,13,19,21,23,24,26,28,31,37,40,47],S=[7,13,19,21,23,24,26,28,31,37,40],_=[7,12,13,19,21,23,24,26,28,31,37,40],M=[7,13,47],F=[1,42],R=[1,41],B=[7,13,29,32,35,38,47],z=[1,55],Y=[1,56],nt=[1,57],ot=[7,13,32,35,42,47],ft={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,GG:5,document:6,EOF:7,":":8,DIR:9,options:10,body:11,OPT:12,NL:13,line:14,statement:15,commitStatement:16,mergeStatement:17,cherryPickStatement:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,section:24,branchStatement:25,CHECKOUT:26,ref:27,BRANCH:28,ORDER:29,NUM:30,CHERRY_PICK:31,COMMIT_ID:32,STR:33,PARENT_COMMIT: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,ID:46,";":47,$accept:0,$end:1},terminals_:{2:"error",5:"GG",7:"EOF",8:":",9:"DIR",12:"OPT",13:"NL",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"section",26:"CHECKOUT",28:"BRANCH",29:"ORDER",30:"NUM",31:"CHERRY_PICK",32:"COMMIT_ID",33:"STR",34:"PARENT_COMMIT",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",46:"ID",47:";"},productions_:[0,[3,2],[3,3],[3,4],[3,5],[6,0],[6,2],[10,2],[10,1],[11,0],[11,2],[14,2],[14,1],[15,1],[15,1],[15,1],[15,2],[15,2],[15,1],[15,1],[15,1],[15,2],[25,2],[25,4],[18,3],[18,5],[18,5],[18,7],[18,7],[18,5],[18,5],[18,5],[18,7],[18,7],[18,7],[18,7],[17,2],[17,4],[17,4],[17,4],[17,6],[17,6],[17,6],[17,6],[17,6],[17,6],[17,8],[17,8],[17,8],[17,8],[17,8],[17,8],[16,2],[16,3],[16,3],[16,5],[16,5],[16,3],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,3],[16,5],[16,5],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[41,0],[41,1],[39,1],[39,1],[39,1],[27,1],[27,1],[4,1],[4,1],[4,1]],performAction:function(rt,it,gt,Q,dt,K,yt){var V=K.length-1;switch(dt){case 2:return K[V];case 3:return K[V-1];case 4:return Q.setDirection(K[V-3]),K[V-1];case 6:Q.setOptions(K[V-1]),this.$=K[V];break;case 7:K[V-1]+=K[V],this.$=K[V-1];break;case 9:this.$=[];break;case 10:K[V-1].push(K[V]),this.$=K[V-1];break;case 11:this.$=K[V-1];break;case 16:this.$=K[V].trim(),Q.setAccTitle(this.$);break;case 17:case 18:this.$=K[V].trim(),Q.setAccDescription(this.$);break;case 19:Q.addSection(K[V].substr(8)),this.$=K[V].substr(8);break;case 21:Q.checkout(K[V]);break;case 22:Q.branch(K[V]);break;case 23:Q.branch(K[V-2],K[V]);break;case 24:Q.cherryPick(K[V],"",void 0);break;case 25:Q.cherryPick(K[V-2],"",void 0,K[V]);break;case 26:Q.cherryPick(K[V-2],"",K[V]);break;case 27:Q.cherryPick(K[V-4],"",K[V],K[V-2]);break;case 28:Q.cherryPick(K[V-4],"",K[V-2],K[V]);break;case 29:Q.cherryPick(K[V],"",K[V-2]);break;case 30:Q.cherryPick(K[V],"","");break;case 31:Q.cherryPick(K[V-2],"","");break;case 32:Q.cherryPick(K[V-4],"","",K[V-2]);break;case 33:Q.cherryPick(K[V-4],"","",K[V]);break;case 34:Q.cherryPick(K[V-2],"",K[V-4],K[V]);break;case 35:Q.cherryPick(K[V-2],"","",K[V]);break;case 36:Q.merge(K[V],"","","");break;case 37:Q.merge(K[V-2],K[V],"","");break;case 38:Q.merge(K[V-2],"",K[V],"");break;case 39:Q.merge(K[V-2],"","",K[V]);break;case 40:Q.merge(K[V-4],K[V],"",K[V-2]);break;case 41:Q.merge(K[V-4],"",K[V],K[V-2]);break;case 42:Q.merge(K[V-4],"",K[V-2],K[V]);break;case 43:Q.merge(K[V-4],K[V-2],K[V],"");break;case 44:Q.merge(K[V-4],K[V-2],"",K[V]);break;case 45:Q.merge(K[V-4],K[V],K[V-2],"");break;case 46:Q.merge(K[V-6],K[V-4],K[V-2],K[V]);break;case 47:Q.merge(K[V-6],K[V],K[V-4],K[V-2]);break;case 48:Q.merge(K[V-6],K[V-4],K[V],K[V-2]);break;case 49:Q.merge(K[V-6],K[V-2],K[V-4],K[V]);break;case 50:Q.merge(K[V-6],K[V],K[V-2],K[V-4]);break;case 51:Q.merge(K[V-6],K[V-2],K[V],K[V-4]);break;case 52:Q.commit(K[V]);break;case 53:Q.commit("","",Q.commitType.NORMAL,K[V]);break;case 54:Q.commit("","",K[V],"");break;case 55:Q.commit("","",K[V],K[V-2]);break;case 56:Q.commit("","",K[V-2],K[V]);break;case 57:Q.commit("",K[V],Q.commitType.NORMAL,"");break;case 58:Q.commit("",K[V-2],Q.commitType.NORMAL,K[V]);break;case 59:Q.commit("",K[V],Q.commitType.NORMAL,K[V-2]);break;case 60:Q.commit("",K[V-2],K[V],"");break;case 61:Q.commit("",K[V],K[V-2],"");break;case 62:Q.commit("",K[V-4],K[V-2],K[V]);break;case 63:Q.commit("",K[V-4],K[V],K[V-2]);break;case 64:Q.commit("",K[V-2],K[V-4],K[V]);break;case 65:Q.commit("",K[V],K[V-4],K[V-2]);break;case 66:Q.commit("",K[V],K[V-2],K[V-4]);break;case 67:Q.commit("",K[V-2],K[V],K[V-4]);break;case 68:Q.commit(K[V],"",Q.commitType.NORMAL,"");break;case 69:Q.commit(K[V],"",Q.commitType.NORMAL,K[V-2]);break;case 70:Q.commit(K[V-2],"",Q.commitType.NORMAL,K[V]);break;case 71:Q.commit(K[V-2],"",K[V],"");break;case 72:Q.commit(K[V],"",K[V-2],"");break;case 73:Q.commit(K[V],K[V-2],Q.commitType.NORMAL,"");break;case 74:Q.commit(K[V-2],K[V],Q.commitType.NORMAL,"");break;case 75:Q.commit(K[V-4],"",K[V-2],K[V]);break;case 76:Q.commit(K[V-4],"",K[V],K[V-2]);break;case 77:Q.commit(K[V-2],"",K[V-4],K[V]);break;case 78:Q.commit(K[V],"",K[V-4],K[V-2]);break;case 79:Q.commit(K[V],"",K[V-2],K[V-4]);break;case 80:Q.commit(K[V-2],"",K[V],K[V-4]);break;case 81:Q.commit(K[V-4],K[V],K[V-2],"");break;case 82:Q.commit(K[V-4],K[V-2],K[V],"");break;case 83:Q.commit(K[V-2],K[V],K[V-4],"");break;case 84:Q.commit(K[V],K[V-2],K[V-4],"");break;case 85:Q.commit(K[V],K[V-4],K[V-2],"");break;case 86:Q.commit(K[V-2],K[V-4],K[V],"");break;case 87:Q.commit(K[V-4],K[V],Q.commitType.NORMAL,K[V-2]);break;case 88:Q.commit(K[V-4],K[V-2],Q.commitType.NORMAL,K[V]);break;case 89:Q.commit(K[V-2],K[V],Q.commitType.NORMAL,K[V-4]);break;case 90:Q.commit(K[V],K[V-2],Q.commitType.NORMAL,K[V-4]);break;case 91:Q.commit(K[V],K[V-4],Q.commitType.NORMAL,K[V-2]);break;case 92:Q.commit(K[V-2],K[V-4],Q.commitType.NORMAL,K[V]);break;case 93:Q.commit(K[V-6],K[V-4],K[V-2],K[V]);break;case 94:Q.commit(K[V-6],K[V-4],K[V],K[V-2]);break;case 95:Q.commit(K[V-6],K[V-2],K[V-4],K[V]);break;case 96:Q.commit(K[V-6],K[V],K[V-4],K[V-2]);break;case 97:Q.commit(K[V-6],K[V-2],K[V],K[V-4]);break;case 98:Q.commit(K[V-6],K[V],K[V-2],K[V-4]);break;case 99:Q.commit(K[V-4],K[V-6],K[V-2],K[V]);break;case 100:Q.commit(K[V-4],K[V-6],K[V],K[V-2]);break;case 101:Q.commit(K[V-2],K[V-6],K[V-4],K[V]);break;case 102:Q.commit(K[V],K[V-6],K[V-4],K[V-2]);break;case 103:Q.commit(K[V-2],K[V-6],K[V],K[V-4]);break;case 104:Q.commit(K[V],K[V-6],K[V-2],K[V-4]);break;case 105:Q.commit(K[V],K[V-4],K[V-2],K[V-6]);break;case 106:Q.commit(K[V-2],K[V-4],K[V],K[V-6]);break;case 107:Q.commit(K[V],K[V-2],K[V-4],K[V-6]);break;case 108:Q.commit(K[V-2],K[V],K[V-4],K[V-6]);break;case 109:Q.commit(K[V-4],K[V-2],K[V],K[V-6]);break;case 110:Q.commit(K[V-4],K[V],K[V-2],K[V-6]);break;case 111:Q.commit(K[V-2],K[V-4],K[V-6],K[V]);break;case 112:Q.commit(K[V],K[V-4],K[V-6],K[V-2]);break;case 113:Q.commit(K[V-2],K[V],K[V-6],K[V-4]);break;case 114:Q.commit(K[V],K[V-2],K[V-6],K[V-4]);break;case 115:Q.commit(K[V-4],K[V-2],K[V-6],K[V]);break;case 116:Q.commit(K[V-4],K[V],K[V-6],K[V-2]);break;case 117:this.$="";break;case 118:this.$=K[V];break;case 119:this.$=Q.commitType.NORMAL;break;case 120:this.$=Q.commitType.REVERSE;break;case 121:this.$=Q.commitType.HIGHLIGHT;break}},table:[{3:1,4:2,5:a,7:f,13:g,47:w},{1:[3]},{3:7,4:2,5:a,7:f,13:g,47:w},{6:8,7:v,8:[1,9],9:[1,10],10:11,13:b},i(E,[2,124]),i(E,[2,125]),i(E,[2,126]),{1:[2,1]},{7:[1,13]},{6:14,7:v,10:11,13:b},{8:[1,15]},i(S,[2,9],{11:16,12:[1,17]}),i(_,[2,8]),{1:[2,2]},{7:[1,18]},{6:19,7:v,10:11,13:b},{7:[2,6],13:[1,22],14:20,15:21,16:23,17:24,18:25,19:[1,26],21:[1,27],23:[1,28],24:[1,29],25:30,26:[1,31],28:[1,35],31:[1,34],37:[1,33],40:[1,32]},i(_,[2,7]),{1:[2,3]},{7:[1,36]},i(S,[2,10]),{4:37,7:f,13:g,47:w},i(S,[2,12]),i(M,[2,13]),i(M,[2,14]),i(M,[2,15]),{20:[1,38]},{22:[1,39]},i(M,[2,18]),i(M,[2,19]),i(M,[2,20]),{27:40,33:F,46:R},i(M,[2,117],{41:43,32:[1,46],33:[1,48],35:[1,44],38:[1,45],42:[1,47]}),{27:49,33:F,46:R},{32:[1,50],35:[1,51]},{27:52,33:F,46:R},{1:[2,4]},i(S,[2,11]),i(M,[2,16]),i(M,[2,17]),i(M,[2,21]),i(B,[2,122]),i(B,[2,123]),i(M,[2,52]),{33:[1,53]},{39:54,43:z,44:Y,45:nt},{33:[1,58]},{33:[1,59]},i(M,[2,118]),i(M,[2,36],{32:[1,60],35:[1,62],38:[1,61]}),{33:[1,63]},{33:[1,64],36:[1,65]},i(M,[2,22],{29:[1,66]}),i(M,[2,53],{32:[1,68],38:[1,67],42:[1,69]}),i(M,[2,54],{32:[1,71],35:[1,70],42:[1,72]}),i(ot,[2,119]),i(ot,[2,120]),i(ot,[2,121]),i(M,[2,57],{35:[1,73],38:[1,74],42:[1,75]}),i(M,[2,68],{32:[1,78],35:[1,76],38:[1,77]}),{33:[1,79]},{39:80,43:z,44:Y,45:nt},{33:[1,81]},i(M,[2,24],{34:[1,82],35:[1,83]}),{32:[1,84]},{32:[1,85]},{30:[1,86]},{39:87,43:z,44:Y,45:nt},{33:[1,88]},{33:[1,89]},{33:[1,90]},{33:[1,91]},{33:[1,92]},{33:[1,93]},{39:94,43:z,44:Y,45:nt},{33:[1,95]},{33:[1,96]},{39:97,43:z,44:Y,45:nt},{33:[1,98]},i(M,[2,37],{35:[1,100],38:[1,99]}),i(M,[2,38],{32:[1,102],35:[1,101]}),i(M,[2,39],{32:[1,103],38:[1,104]}),{33:[1,105]},{33:[1,106],36:[1,107]},{33:[1,108]},{33:[1,109]},i(M,[2,23]),i(M,[2,55],{32:[1,110],42:[1,111]}),i(M,[2,59],{38:[1,112],42:[1,113]}),i(M,[2,69],{32:[1,115],38:[1,114]}),i(M,[2,56],{32:[1,116],42:[1,117]}),i(M,[2,61],{35:[1,118],42:[1,119]}),i(M,[2,72],{32:[1,121],35:[1,120]}),i(M,[2,58],{38:[1,122],42:[1,123]}),i(M,[2,60],{35:[1,124],42:[1,125]}),i(M,[2,73],{35:[1,127],38:[1,126]}),i(M,[2,70],{32:[1,129],38:[1,128]}),i(M,[2,71],{32:[1,131],35:[1,130]}),i(M,[2,74],{35:[1,133],38:[1,132]}),{39:134,43:z,44:Y,45:nt},{33:[1,135]},{33:[1,136]},{33:[1,137]},{33:[1,138]},{39:139,43:z,44:Y,45:nt},i(M,[2,25],{35:[1,140]}),i(M,[2,26],{34:[1,141]}),i(M,[2,31],{34:[1,142]}),i(M,[2,29],{34:[1,143]}),i(M,[2,30],{34:[1,144]}),{33:[1,145]},{33:[1,146]},{39:147,43:z,44:Y,45:nt},{33:[1,148]},{39:149,43:z,44:Y,45:nt},{33:[1,150]},{33:[1,151]},{33:[1,152]},{33:[1,153]},{33:[1,154]},{33:[1,155]},{33:[1,156]},{39:157,43:z,44:Y,45:nt},{33:[1,158]},{33:[1,159]},{33:[1,160]},{39:161,43:z,44:Y,45:nt},{33:[1,162]},{39:163,43:z,44:Y,45:nt},{33:[1,164]},{33:[1,165]},{33:[1,166]},{39:167,43:z,44:Y,45:nt},{33:[1,168]},i(M,[2,43],{35:[1,169]}),i(M,[2,44],{38:[1,170]}),i(M,[2,42],{32:[1,171]}),i(M,[2,45],{35:[1,172]}),i(M,[2,40],{38:[1,173]}),i(M,[2,41],{32:[1,174]}),{33:[1,175],36:[1,176]},{33:[1,177]},{33:[1,178]},{33:[1,179]},{33:[1,180]},i(M,[2,66],{42:[1,181]}),i(M,[2,79],{32:[1,182]}),i(M,[2,67],{42:[1,183]}),i(M,[2,90],{38:[1,184]}),i(M,[2,80],{32:[1,185]}),i(M,[2,89],{38:[1,186]}),i(M,[2,65],{42:[1,187]}),i(M,[2,78],{32:[1,188]}),i(M,[2,64],{42:[1,189]}),i(M,[2,84],{35:[1,190]}),i(M,[2,77],{32:[1,191]}),i(M,[2,83],{35:[1,192]}),i(M,[2,63],{42:[1,193]}),i(M,[2,91],{38:[1,194]}),i(M,[2,62],{42:[1,195]}),i(M,[2,85],{35:[1,196]}),i(M,[2,86],{35:[1,197]}),i(M,[2,92],{38:[1,198]}),i(M,[2,76],{32:[1,199]}),i(M,[2,87],{38:[1,200]}),i(M,[2,75],{32:[1,201]}),i(M,[2,81],{35:[1,202]}),i(M,[2,82],{35:[1,203]}),i(M,[2,88],{38:[1,204]}),{33:[1,205]},{39:206,43:z,44:Y,45:nt},{33:[1,207]},{33:[1,208]},{39:209,43:z,44:Y,45:nt},{33:[1,210]},i(M,[2,27]),i(M,[2,32]),i(M,[2,28]),i(M,[2,33]),i(M,[2,34]),i(M,[2,35]),{33:[1,211]},{33:[1,212]},{33:[1,213]},{39:214,43:z,44:Y,45:nt},{33:[1,215]},{39:216,43:z,44:Y,45:nt},{33:[1,217]},{33:[1,218]},{33:[1,219]},{33:[1,220]},{33:[1,221]},{33:[1,222]},{33:[1,223]},{39:224,43:z,44:Y,45:nt},{33:[1,225]},{33:[1,226]},{33:[1,227]},{39:228,43:z,44:Y,45:nt},{33:[1,229]},{39:230,43:z,44:Y,45:nt},{33:[1,231]},{33:[1,232]},{33:[1,233]},{39:234,43:z,44:Y,45:nt},i(M,[2,46]),i(M,[2,48]),i(M,[2,47]),i(M,[2,49]),i(M,[2,51]),i(M,[2,50]),i(M,[2,107]),i(M,[2,108]),i(M,[2,105]),i(M,[2,106]),i(M,[2,110]),i(M,[2,109]),i(M,[2,114]),i(M,[2,113]),i(M,[2,112]),i(M,[2,111]),i(M,[2,116]),i(M,[2,115]),i(M,[2,104]),i(M,[2,103]),i(M,[2,102]),i(M,[2,101]),i(M,[2,99]),i(M,[2,100]),i(M,[2,98]),i(M,[2,97]),i(M,[2,96]),i(M,[2,95]),i(M,[2,93]),i(M,[2,94])],defaultActions:{7:[2,1],13:[2,2],18:[2,3],36:[2,4]},parseError:function(rt,it){if(it.recoverable)this.trace(rt);else{var gt=new Error(rt);throw gt.hash=it,gt}},parse:function(rt){var it=this,gt=[0],Q=[],dt=[null],K=[],yt=this.table,V="",Ot=0,It=0,jt=2,xt=1,Ft=K.slice.call(arguments,1),Ct=Object.create(this.lexer),kt={yy:{}};for(var Gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Gt)&&(kt.yy[Gt]=this.yy[Gt]);Ct.setInput(rt,kt.yy),kt.yy.lexer=Ct,kt.yy.parser=this,typeof Ct.yylloc>"u"&&(Ct.yylloc={});var Fe=Ct.yylloc;K.push(Fe);var Mt=Ct.options&&Ct.options.ranges;typeof kt.yy.parseError=="function"?this.parseError=kt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pn(){var ce;return ce=Q.pop()||Ct.lex()||xt,typeof ce!="number"&&(ce instanceof Array&&(Q=ce,ce=Q.pop()),ce=it.symbols_[ce]||ce),ce}for(var Ae,ye,tn,sn,be={},Ne,Xt,_e,xe;;){if(ye=gt[gt.length-1],this.defaultActions[ye]?tn=this.defaultActions[ye]:((Ae===null||typeof Ae>"u")&&(Ae=pn()),tn=yt[ye]&&yt[ye][Ae]),typeof tn>"u"||!tn.length||!tn[0]){var Mn="";xe=[];for(Ne in yt[ye])this.terminals_[Ne]&&Ne>jt&&xe.push("'"+this.terminals_[Ne]+"'");Ct.showPosition?Mn="Parse error on line "+(Ot+1)+`: +`+Ct.showPosition()+` +Expecting `+xe.join(", ")+", got '"+(this.terminals_[Ae]||Ae)+"'":Mn="Parse error on line "+(Ot+1)+": Unexpected "+(Ae==xt?"end of input":"'"+(this.terminals_[Ae]||Ae)+"'"),this.parseError(Mn,{text:Ct.match,token:this.terminals_[Ae]||Ae,line:Ct.yylineno,loc:Fe,expected:xe})}if(tn[0]instanceof Array&&tn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ye+", token: "+Ae);switch(tn[0]){case 1:gt.push(Ae),dt.push(Ct.yytext),K.push(Ct.yylloc),gt.push(tn[1]),Ae=null,It=Ct.yyleng,V=Ct.yytext,Ot=Ct.yylineno,Fe=Ct.yylloc;break;case 2:if(Xt=this.productions_[tn[1]][1],be.$=dt[dt.length-Xt],be._$={first_line:K[K.length-(Xt||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-(Xt||1)].first_column,last_column:K[K.length-1].last_column},Mt&&(be._$.range=[K[K.length-(Xt||1)].range[0],K[K.length-1].range[1]]),sn=this.performAction.apply(be,[V,It,Ot,kt.yy,tn[1],dt,K].concat(Ft)),typeof sn<"u")return sn;Xt&&(gt=gt.slice(0,-1*Xt*2),dt=dt.slice(0,-1*Xt),K=K.slice(0,-1*Xt)),gt.push(this.productions_[tn[1]][0]),dt.push(be.$),K.push(be._$),_e=yt[gt[gt.length-2]][gt[gt.length-1]],gt.push(_e);break;case 3:return!0}}return!0}},wt=function(){var ct={EOF:1,parseError:function(it,gt){if(this.yy.parser)this.yy.parser.parseError(it,gt);else throw new Error(it)},setInput:function(rt,it){return this.yy=it||this.yy||{},this._input=rt,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 rt=this._input[0];this.yytext+=rt,this.yyleng++,this.offset++,this.match+=rt,this.matched+=rt;var it=rt.match(/(?:\r\n?|\n).*/g);return it?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),rt},unput:function(rt){var it=rt.length,gt=rt.split(/(?:\r\n?|\n)/g);this._input=rt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-it),this.offset-=it;var Q=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),gt.length-1&&(this.yylineno-=gt.length-1);var dt=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:gt?(gt.length===Q.length?this.yylloc.first_column:0)+Q[Q.length-gt.length].length-gt[0].length:this.yylloc.first_column-it},this.options.ranges&&(this.yylloc.range=[dt[0],dt[0]+this.yyleng-it]),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(rt){this.unput(this.match.slice(rt))},pastInput:function(){var rt=this.matched.substr(0,this.matched.length-this.match.length);return(rt.length>20?"...":"")+rt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var rt=this.match;return rt.length<20&&(rt+=this._input.substr(0,20-rt.length)),(rt.substr(0,20)+(rt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var rt=this.pastInput(),it=new Array(rt.length+1).join("-");return rt+this.upcomingInput()+` +`+it+"^"},test_match:function(rt,it){var gt,Q,dt;if(this.options.backtrack_lexer&&(dt={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&&(dt.yylloc.range=this.yylloc.range.slice(0))),Q=rt[0].match(/(?:\r\n?|\n).*/g),Q&&(this.yylineno+=Q.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Q?Q[Q.length-1].length-Q[Q.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+rt[0].length},this.yytext+=rt[0],this.match+=rt[0],this.matches=rt,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(rt[0].length),this.matched+=rt[0],gt=this.performAction.call(this,this.yy,this,it,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),gt)return gt;if(this._backtrack){for(var K in dt)this[K]=dt[K];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var rt,it,gt,Q;this._more||(this.yytext="",this.match="");for(var dt=this._currentRules(),K=0;Kit[0].length)){if(it=gt,Q=K,this.options.backtrack_lexer){if(rt=this.test_match(gt,dt[K]),rt!==!1)return rt;if(this._backtrack){it=!1;continue}else return!1}else if(!this.options.flex)break}return it?(rt=this.test_match(it,dt[Q]),rt!==!1?rt:!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 it=this.next();return it||this.lex()},begin:function(it){this.conditionStack.push(it)},popState:function(){var it=this.conditionStack.length-1;return it>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(it){return it=this.conditionStack.length-1-Math.abs(it||0),it>=0?this.conditionStack[it]:"INITIAL"},pushState:function(it){this.begin(it)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(it,gt,Q,dt){switch(Q){case 0:return this.begin("acc_title"),19;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),21;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 13;case 8:break;case 9:break;case 10:return 5;case 11:return 40;case 12:return 32;case 13:return 38;case 14:return 42;case 15:return 43;case 16:return 44;case 17:return 45;case 18:return 35;case 19:return 28;case 20:return 29;case 21:return 37;case 22:return 31;case 23:return 34;case 24:return 26;case 25:return 9;case 26:return 9;case 27:return 8;case 28:return"CARET";case 29:this.begin("options");break;case 30:this.popState();break;case 31:return 12;case 32:return 36;case 33:this.begin("string");break;case 34:this.popState();break;case 35:return 33;case 36:return 30;case 37:return 46;case 38:return 7}},rules:[/^(?: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,/^(?:parent:)/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:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},options:{rules:[30,31],inclusive:!1},string:{rules:[34,35],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,32,33,36,37,38,39],inclusive:!0}}};return ct}();ft.lexer=wt;function mt(){this.yy={}}return mt.prototype=ft,ft.Parser=mt,new mt}();abt.parser=abt;const UWe=abt;let cX=Re().gitGraph.mainBranchName,GWe=Re().gitGraph.mainBranchOrder,q1={},np=null,rB={};rB[cX]={name:cX,order:GWe};let h1={};h1[cX]=np;let Dd=cX,Ezt="LR",N9=0;function obt(){return AFt({length:7})}function KWe(i,a){const f=Object.create(null);return i.reduce((g,w)=>{const v=a(w);return f[v]||(f[v]=!0,g.push(w)),g},[])}const WWe=function(i){Ezt=i};let Tzt={};const YWe=function(i){Kt.debug("options str",i),i=i&&i.trim(),i=i||"{}";try{Tzt=JSON.parse(i)}catch(a){Kt.error("error while parsing gitGraph options",a.message)}},XWe=function(){return Tzt},QWe=function(i,a,f,g){Kt.debug("Entering commit:",i,a,f,g),a=ei.sanitizeText(a,Re()),i=ei.sanitizeText(i,Re()),g=ei.sanitizeText(g,Re());const w={id:a||N9+"-"+obt(),message:i,seq:N9++,type:f||CD.NORMAL,tag:g||"",parents:np==null?[]:[np.id],branch:Dd};np=w,q1[w.id]=w,h1[Dd]=w.id,Kt.debug("in pushCommit "+w.id)},JWe=function(i,a){if(i=ei.sanitizeText(i,Re()),h1[i]===void 0)h1[i]=np!=null?np.id:null,rB[i]={name:i,order:a?parseInt(a,10):null},Czt(i),Kt.debug("in createBranch");else{let f=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 '+i+'")');throw f.hash={text:"branch "+i,token:"branch "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+i+'"']},f}},ZWe=function(i,a,f,g){i=ei.sanitizeText(i,Re()),a=ei.sanitizeText(a,Re());const w=q1[h1[Dd]],v=q1[h1[i]];if(Dd===i){let E=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},E}else if(w===void 0||!w){let E=new Error('Incorrect usage of "merge". Current branch ('+Dd+")has no commits");throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["commit"]},E}else if(h1[i]===void 0){let E=new Error('Incorrect usage of "merge". Branch to be merged ('+i+") does not exist");throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch "+i]},E}else if(v===void 0||!v){let E=new Error('Incorrect usage of "merge". Branch to be merged ('+i+") has no commits");throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"commit"']},E}else if(w===v){let E=new Error('Incorrect usage of "merge". Both branches have same head');throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},E}else if(a&&q1[a]!==void 0){let E=new Error('Incorrect usage of "merge". Commit with id:'+a+" already exists, use different custom Id");throw E.hash={text:"merge "+i+a+f+g,token:"merge "+i+a+f+g,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["merge "+i+" "+a+"_UNIQUE "+f+" "+g]},E}const b={id:a||N9+"-"+obt(),message:"merged branch "+i+" into "+Dd,seq:N9++,parents:[np==null?null:np.id,h1[i]],branch:Dd,type:CD.MERGE,customType:f,customId:!!a,tag:g||""};np=b,q1[b.id]=b,h1[Dd]=b.id,Kt.debug(h1),Kt.debug("in mergeBranch")},tYe=function(i,a,f,g){if(Kt.debug("Entering cherryPick:",i,a,f),i=ei.sanitizeText(i,Re()),a=ei.sanitizeText(a,Re()),f=ei.sanitizeText(f,Re()),g=ei.sanitizeText(g,Re()),!i||q1[i]===void 0){let b=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw b.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},b}let w=q1[i],v=w.branch;if(g&&!(Array.isArray(w.parents)&&w.parents.includes(g)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");if(w.type===CD.MERGE&&!g)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!a||q1[a]===void 0){if(v===Dd){let S=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw S.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},S}const b=q1[h1[Dd]];if(b===void 0||!b){let S=new Error('Incorrect usage of "cherry-pick". Current branch ('+Dd+")has no commits");throw S.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},S}const E={id:N9+"-"+obt(),message:"cherry-picked "+w+" into "+Dd,seq:N9++,parents:[np==null?null:np.id,w.id],branch:Dd,type:CD.CHERRY_PICK,tag:f??`cherry-pick:${w.id}${w.type===CD.MERGE?`|parent:${g}`:""}`};np=E,q1[E.id]=E,h1[Dd]=E.id,Kt.debug(h1),Kt.debug("in cherryPick")}},Czt=function(i){if(i=ei.sanitizeText(i,Re()),h1[i]===void 0){let a=new Error('Trying to checkout branch which is not yet created. (Help try using "branch '+i+'")');throw a.hash={text:"checkout "+i,token:"checkout "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"branch '+i+'"']},a}else{Dd=i;const a=h1[Dd];np=q1[a]}};function Szt(i,a,f){const g=i.indexOf(a);g===-1?i.push(f):i.splice(g,1,f)}function _zt(i){const a=i.reduce((w,v)=>w.seq>v.seq?w:v,i[0]);let f="";i.forEach(function(w){w===a?f+=" *":f+=" |"});const g=[f,a.id,a.seq];for(let w in h1)h1[w]===a.id&&g.push(w);if(Kt.debug(g.join(" ")),a.parents&&a.parents.length==2){const w=q1[a.parents[0]];Szt(i,a,w),i.push(q1[a.parents[1]])}else{if(a.parents.length==0)return;{const w=q1[a.parents];Szt(i,a,w)}}i=KWe(i,w=>w.id),_zt(i)}const eYe=function(){Kt.debug(q1);const i=Azt()[0];_zt([i])},nYe=function(){q1={},np=null;let i=Re().gitGraph.mainBranchName,a=Re().gitGraph.mainBranchOrder;h1={},h1[i]=null,rB={},rB[i]={name:i,order:a},Dd=i,N9=0,ag()},rYe=function(){return Object.values(rB).map((a,f)=>a.order!==null?a:{...a,order:parseFloat(`0.${f}`,10)}).sort((a,f)=>a.order-f.order).map(({name:a})=>({name:a}))},iYe=function(){return h1},sYe=function(){return q1},Azt=function(){const i=Object.keys(q1).map(function(a){return q1[a]});return i.forEach(function(a){Kt.debug(a.id)}),i.sort((a,f)=>a.seq-f.seq),i},aYe=function(){return Dd},oYe=function(){return Ezt},cYe=function(){return np},CD={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},uYe={getConfig:()=>Re().gitGraph,setDirection:WWe,setOptions:YWe,getOptions:XWe,commit:QWe,branch:JWe,merge:ZWe,cherryPick:tYe,checkout:Czt,prettyPrint:eYe,clear:nYe,getBranchesAsObjArray:rYe,getBranches:iYe,getCommits:sYe,getCommitsArray:Azt,getCurrentBranch:aYe,getDirection:oYe,getHead:cYe,setAccTitle:og,getAccTitle:Xg,getAccDescription:Jg,setAccDescription:Qg,setDiagramTitle:S2,getDiagramTitle:Zg,commitType:CD};let iB={};const D2={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},P9=8;let Cf={},$x={},uX=[],sB=0,f1="LR";const lYe=()=>{Cf={},$x={},iB={},sB=0,uX=[],f1="LR"},Lzt=i=>{const a=document.createElementNS("http://www.w3.org/2000/svg","text");let f=[];typeof i=="string"?f=i.split(/\\n|\n|/gi):Array.isArray(i)?f=i:f=[];for(const g of f){const w=document.createElementNS("http://www.w3.org/2000/svg","tspan");w.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),w.setAttribute("dy","1em"),w.setAttribute("x","0"),w.setAttribute("class","row"),w.textContent=g.trim(),a.appendChild(w)}return a},hYe=i=>{let a="",f=0;return i.forEach(g=>{const w=f1==="TB"?$x[g].y:$x[g].x;w>=f&&(a=g,f=w)}),a||void 0},Dzt=(i,a,f)=>{const g=Re().gitGraph,w=i.append("g").attr("class","commit-bullets"),v=i.append("g").attr("class","commit-labels");let b=0;f1==="TB"&&(b=30);const S=Object.keys(a).sort((R,B)=>a[R].seq-a[B].seq),_=g.parallelCommits,M=10,F=40;S.forEach(R=>{const B=a[R];if(_)if(B.parents.length){const ot=hYe(B.parents);b=f1==="TB"?$x[ot].y+F:$x[ot].x+F}else b=0,f1==="TB"&&(b=30);const z=b+M,Y=f1==="TB"?z:Cf[B.branch].pos,nt=f1==="TB"?Cf[B.branch].pos:z;if(f){let ot,ft=B.customType!==void 0&&B.customType!==""?B.customType:B.type;switch(ft){case D2.NORMAL:ot="commit-normal";break;case D2.REVERSE:ot="commit-reverse";break;case D2.HIGHLIGHT:ot="commit-highlight";break;case D2.MERGE:ot="commit-merge";break;case D2.CHERRY_PICK:ot="commit-cherry-pick";break;default:ot="commit-normal"}if(ft===D2.HIGHLIGHT){const wt=w.append("rect");wt.attr("x",nt-10),wt.attr("y",Y-10),wt.attr("height",20),wt.attr("width",20),wt.attr("class",`commit ${B.id} commit-highlight${Cf[B.branch].index%P9} ${ot}-outer`),w.append("rect").attr("x",nt-6).attr("y",Y-6).attr("height",12).attr("width",12).attr("class",`commit ${B.id} commit${Cf[B.branch].index%P9} ${ot}-inner`)}else if(ft===D2.CHERRY_PICK)w.append("circle").attr("cx",nt).attr("cy",Y).attr("r",10).attr("class",`commit ${B.id} ${ot}`),w.append("circle").attr("cx",nt-3).attr("cy",Y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${B.id} ${ot}`),w.append("circle").attr("cx",nt+3).attr("cy",Y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${B.id} ${ot}`),w.append("line").attr("x1",nt+3).attr("y1",Y+1).attr("x2",nt).attr("y2",Y-5).attr("stroke","#fff").attr("class",`commit ${B.id} ${ot}`),w.append("line").attr("x1",nt-3).attr("y1",Y+1).attr("x2",nt).attr("y2",Y-5).attr("stroke","#fff").attr("class",`commit ${B.id} ${ot}`);else{const wt=w.append("circle");if(wt.attr("cx",nt),wt.attr("cy",Y),wt.attr("r",B.type===D2.MERGE?9:10),wt.attr("class",`commit ${B.id} commit${Cf[B.branch].index%P9}`),ft===D2.MERGE){const mt=w.append("circle");mt.attr("cx",nt),mt.attr("cy",Y),mt.attr("r",6),mt.attr("class",`commit ${ot} ${B.id} commit${Cf[B.branch].index%P9}`)}ft===D2.REVERSE&&w.append("path").attr("d",`M ${nt-5},${Y-5}L${nt+5},${Y+5}M${nt-5},${Y+5}L${nt+5},${Y-5}`).attr("class",`commit ${ot} ${B.id} commit${Cf[B.branch].index%P9}`)}}if(f1==="TB"?$x[B.id]={x:nt,y:z}:$x[B.id]={x:z,y:Y},f){if(B.type!==D2.CHERRY_PICK&&(B.customId&&B.type===D2.MERGE||B.type!==D2.MERGE)&&g.showCommitLabel){const wt=v.append("g"),mt=wt.insert("rect").attr("class","commit-label-bkg"),ct=wt.append("text").attr("x",b).attr("y",Y+25).attr("class","commit-label").text(B.id);let rt=ct.node().getBBox();if(mt.attr("x",z-rt.width/2-2).attr("y",Y+13.5).attr("width",rt.width+2*2).attr("height",rt.height+2*2),f1==="TB"&&(mt.attr("x",nt-(rt.width+4*4+5)).attr("y",Y-12),ct.attr("x",nt-(rt.width+4*4)).attr("y",Y+rt.height-12)),f1!=="TB"&&ct.attr("x",z-rt.width/2),g.rotateCommitLabel)if(f1==="TB")ct.attr("transform","rotate(-45, "+nt+", "+Y+")"),mt.attr("transform","rotate(-45, "+nt+", "+Y+")");else{let it=-7.5-(rt.width+10)/25*9.5,gt=10+rt.width/25*8.5;wt.attr("transform","translate("+it+", "+gt+") rotate(-45, "+b+", "+Y+")")}}if(B.tag){const wt=v.insert("polygon"),mt=v.append("circle"),ct=v.append("text").attr("y",Y-16).attr("class","tag-label").text(B.tag);let rt=ct.node().getBBox();ct.attr("x",z-rt.width/2);const it=rt.height/2,gt=Y-19.2;wt.attr("class","tag-label-bkg").attr("points",` + ${b-rt.width/2-4/2},${gt+2} + ${b-rt.width/2-4/2},${gt-2} + ${z-rt.width/2-4},${gt-it-2} + ${z+rt.width/2+4},${gt-it-2} + ${z+rt.width/2+4},${gt+it+2} + ${z-rt.width/2-4},${gt+it+2}`),mt.attr("cx",b-rt.width/2+4/2).attr("cy",gt).attr("r",1.5).attr("class","tag-hole"),f1==="TB"&&(wt.attr("class","tag-label-bkg").attr("points",` + ${nt},${b+2} + ${nt},${b-2} + ${nt+M},${b-it-2} + ${nt+M+rt.width+4},${b-it-2} + ${nt+M+rt.width+4},${b+it+2} + ${nt+M},${b+it+2}`).attr("transform","translate(12,12) rotate(45, "+nt+","+b+")"),mt.attr("cx",nt+4/2).attr("cy",b).attr("transform","translate(12,12) rotate(45, "+nt+","+b+")"),ct.attr("x",nt+5).attr("y",b+3).attr("transform","translate(14,14) rotate(45, "+nt+","+b+")"))}}b+=F+M,b>sB&&(sB=b)})},fYe=(i,a,f,g,w)=>{const b=(f1==="TB"?f.x_.branch===b,S=_=>_.seq>i.seq&&_.seqS(_)&&E(_))},aB=(i,a,f=0)=>{const g=i+Math.abs(i-a)/2;if(f>5)return g;if(uX.every(b=>Math.abs(b-g)>=10))return uX.push(g),g;const v=Math.abs(i-a);return aB(i,a-v/5,f+1)},dYe=(i,a,f,g)=>{const w=$x[a.id],v=$x[f.id],b=fYe(a,f,w,v,g);let E="",S="",_=0,M=0,F=Cf[f.branch].index,R;if(b){E="A 10 10, 0, 0, 0,",S="A 10 10, 0, 0, 1,",_=10,M=10;const B=w.yv.x&&(E="A 20 20, 0, 0, 0,",S="A 20 20, 0, 0, 1,",_=20,M=20,F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${v.y-_} ${S} ${w.x-M} ${v.y} L ${v.x} ${v.y}`),w.x===v.x&&(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x+_} ${w.y} ${E} ${w.x+M} ${v.y+_} L ${v.x} ${v.y}`)):(w.yv.y&&(E="A 20 20, 0, 0, 0,",_=20,M=20,F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${v.x-_} ${w.y} ${E} ${v.x} ${w.y-M} L ${v.x} ${v.y}`),w.y===v.y&&(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${v.y-_} ${E} ${w.x+M} ${v.y} L ${v.x} ${v.y}`));i.append("path").attr("d",R).attr("class","arrow arrow"+F%P9)},gYe=(i,a)=>{const f=i.append("g").attr("class","commit-arrows");Object.keys(a).forEach(g=>{const w=a[g];w.parents&&w.parents.length>0&&w.parents.forEach(v=>{dYe(f,a[v],w,a)})})},pYe=(i,a)=>{const f=Re().gitGraph,g=i.append("g");a.forEach((w,v)=>{const b=v%P9,E=Cf[w.name].pos,S=g.append("line");S.attr("x1",0),S.attr("y1",E),S.attr("x2",sB),S.attr("y2",E),S.attr("class","branch branch"+b),f1==="TB"&&(S.attr("y1",30),S.attr("x1",E),S.attr("y2",sB),S.attr("x2",E)),uX.push(E);let _=w.name;const M=Lzt(_),F=g.insert("rect"),B=g.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+b);B.node().appendChild(M);let z=M.getBBox();F.attr("class","branchLabelBkg label"+b).attr("rx",4).attr("ry",4).attr("x",-z.width-4-(f.rotateCommitLabel===!0?30:0)).attr("y",-z.height/2+8).attr("width",z.width+18).attr("height",z.height+4),B.attr("transform","translate("+(-z.width-14-(f.rotateCommitLabel===!0?30:0))+", "+(E-z.height/2-1)+")"),f1==="TB"&&(F.attr("x",E-z.width/2-10).attr("y",0),B.attr("transform","translate("+(E-z.width/2-5)+", 0)")),f1!=="TB"&&F.attr("transform","translate(-19, "+(E-z.height/2)+")")})},bYe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:UWe,db:uYe,renderer:{draw:function(i,a,f,g){lYe();const w=Re(),v=w.gitGraph;Kt.debug("in gitgraph renderer",i+` +`,"id:",a,f),iB=g.db.getCommits();const b=g.db.getBranchesAsObjArray();f1=g.db.getDirection();const E=Tr(`[id="${a}"]`);let S=0;b.forEach((_,M)=>{const F=Lzt(_.name),R=E.append("g"),B=R.insert("g").attr("class","branchLabel"),z=B.insert("g").attr("class","label branch-label");z.node().appendChild(F);let Y=F.getBBox();Cf[_.name]={pos:S,index:M},S+=50+(v.rotateCommitLabel?40:0)+(f1==="TB"?Y.width/2:0),z.remove(),B.remove(),R.remove()}),Dzt(E,iB,!1),v.showBranches&&pYe(E,b),gYe(E,iB),Dzt(E,iB,!0),uo.insertTitle(E,"gitTitleText",v.titleTopMargin,g.db.getDiagramTitle()),hBt(void 0,E,v.diagramPadding,v.useMaxWidth??w.useMaxWidth)}},styles:i=>` + .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(a=>` + .branch-label${a} { fill: ${i["gitBranchLabel"+a]}; } + .commit${a} { stroke: ${i["git"+a]}; fill: ${i["git"+a]}; } + .commit-highlight${a} { stroke: ${i["gitInv"+a]}; fill: ${i["gitInv"+a]}; } + .label${a} { fill: ${i["git"+a]}; } + .arrow${a} { stroke: ${i["git"+a]}; } + `).join(` +`)} + + .branch { + stroke-width: 1; + stroke: ${i.lineColor}; + stroke-dasharray: 2; + } + .commit-label { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelColor};} + .commit-label-bkg { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelBackground}; opacity: 0.5; } + .tag-label { font-size: ${i.tagLabelFontSize}; fill: ${i.tagLabelColor};} + .tag-label-bkg { fill: ${i.tagLabelBackground}; stroke: ${i.tagLabelBorder}; } + .tag-hole { fill: ${i.textColor}; } + + .commit-merge { + stroke: ${i.primaryColor}; + fill: ${i.primaryColor}; + } + .commit-reverse { + stroke: ${i.primaryColor}; + fill: ${i.primaryColor}; + stroke-width: 3; + } + .commit-highlight-outer { + } + .commit-highlight-inner { + stroke: ${i.primaryColor}; + fill: ${i.primaryColor}; + } + + .arrow { stroke-width: 8; stroke-linecap: round; fill: none} + .gitTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } +`}},Symbol.toStringTag,{value:"Module"}));var cbt=function(){var i=function(K,yt,V,Ot){for(V=V||{},Ot=K.length;Ot--;V[K[Ot]]=yt);return V},a=[6,8,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,30,32,33,35,37],f=[1,25],g=[1,26],w=[1,27],v=[1,28],b=[1,29],E=[1,30],S=[1,31],_=[1,9],M=[1,10],F=[1,11],R=[1,12],B=[1,13],z=[1,14],Y=[1,15],nt=[1,16],ot=[1,18],ft=[1,19],wt=[1,20],mt=[1,21],ct=[1,22],rt=[1,24],it=[1,32],gt={trace:function(){},yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,dateFormat:19,inclusiveEndDates:20,topAxis:21,axisFormat:22,tickInterval:23,excludes:24,includes:25,todayMarker:26,title:27,acc_title:28,acc_title_value:29,acc_descr:30,acc_descr_value:31,acc_descr_multiline_value:32,section:33,clickStatement:34,taskTxt:35,taskData:36,click:37,callbackname:38,callbackargs:39,href:40,clickStatementDebug:41,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",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",35:"taskTxt",36:"taskData",37:"click",38:"callbackname",39:"callbackargs",40:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[34,2],[34,3],[34,3],[34,4],[34,3],[34,4],[34,2],[41,2],[41,3],[41,3],[41,4],[41,3],[41,4],[41,2]],performAction:function(yt,V,Ot,It,jt,xt,Ft){var Ct=xt.length-1;switch(jt){case 1:return xt[Ct-1];case 2:this.$=[];break;case 3:xt[Ct-1].push(xt[Ct]),this.$=xt[Ct-1];break;case 4:case 5:this.$=xt[Ct];break;case 6:case 7:this.$=[];break;case 8:It.setWeekday("monday");break;case 9:It.setWeekday("tuesday");break;case 10:It.setWeekday("wednesday");break;case 11:It.setWeekday("thursday");break;case 12:It.setWeekday("friday");break;case 13:It.setWeekday("saturday");break;case 14:It.setWeekday("sunday");break;case 15:It.setDateFormat(xt[Ct].substr(11)),this.$=xt[Ct].substr(11);break;case 16:It.enableInclusiveEndDates(),this.$=xt[Ct].substr(18);break;case 17:It.TopAxis(),this.$=xt[Ct].substr(8);break;case 18:It.setAxisFormat(xt[Ct].substr(11)),this.$=xt[Ct].substr(11);break;case 19:It.setTickInterval(xt[Ct].substr(13)),this.$=xt[Ct].substr(13);break;case 20:It.setExcludes(xt[Ct].substr(9)),this.$=xt[Ct].substr(9);break;case 21:It.setIncludes(xt[Ct].substr(9)),this.$=xt[Ct].substr(9);break;case 22:It.setTodayMarker(xt[Ct].substr(12)),this.$=xt[Ct].substr(12);break;case 24:It.setDiagramTitle(xt[Ct].substr(6)),this.$=xt[Ct].substr(6);break;case 25:this.$=xt[Ct].trim(),It.setAccTitle(this.$);break;case 26:case 27:this.$=xt[Ct].trim(),It.setAccDescription(this.$);break;case 28:It.addSection(xt[Ct].substr(8)),this.$=xt[Ct].substr(8);break;case 30:It.addTask(xt[Ct-1],xt[Ct]),this.$="task";break;case 31:this.$=xt[Ct-1],It.setClickEvent(xt[Ct-1],xt[Ct],null);break;case 32:this.$=xt[Ct-2],It.setClickEvent(xt[Ct-2],xt[Ct-1],xt[Ct]);break;case 33:this.$=xt[Ct-2],It.setClickEvent(xt[Ct-2],xt[Ct-1],null),It.setLink(xt[Ct-2],xt[Ct]);break;case 34:this.$=xt[Ct-3],It.setClickEvent(xt[Ct-3],xt[Ct-2],xt[Ct-1]),It.setLink(xt[Ct-3],xt[Ct]);break;case 35:this.$=xt[Ct-2],It.setClickEvent(xt[Ct-2],xt[Ct],null),It.setLink(xt[Ct-2],xt[Ct-1]);break;case 36:this.$=xt[Ct-3],It.setClickEvent(xt[Ct-3],xt[Ct-1],xt[Ct]),It.setLink(xt[Ct-3],xt[Ct-2]);break;case 37:this.$=xt[Ct-1],It.setLink(xt[Ct-1],xt[Ct]);break;case 38:case 44:this.$=xt[Ct-1]+" "+xt[Ct];break;case 39:case 40:case 42:this.$=xt[Ct-2]+" "+xt[Ct-1]+" "+xt[Ct];break;case 41:case 43:this.$=xt[Ct-3]+" "+xt[Ct-2]+" "+xt[Ct-1]+" "+xt[Ct];break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:f,13:g,14:w,15:v,16:b,17:E,18:S,19:_,20:M,21:F,22:R,23:B,24:z,25:Y,26:nt,27:ot,28:ft,30:wt,32:mt,33:ct,34:23,35:rt,37:it},i(a,[2,7],{1:[2,1]}),i(a,[2,3]),{9:33,11:17,12:f,13:g,14:w,15:v,16:b,17:E,18:S,19:_,20:M,21:F,22:R,23:B,24:z,25:Y,26:nt,27:ot,28:ft,30:wt,32:mt,33:ct,34:23,35:rt,37:it},i(a,[2,5]),i(a,[2,6]),i(a,[2,15]),i(a,[2,16]),i(a,[2,17]),i(a,[2,18]),i(a,[2,19]),i(a,[2,20]),i(a,[2,21]),i(a,[2,22]),i(a,[2,23]),i(a,[2,24]),{29:[1,34]},{31:[1,35]},i(a,[2,27]),i(a,[2,28]),i(a,[2,29]),{36:[1,36]},i(a,[2,8]),i(a,[2,9]),i(a,[2,10]),i(a,[2,11]),i(a,[2,12]),i(a,[2,13]),i(a,[2,14]),{38:[1,37],40:[1,38]},i(a,[2,4]),i(a,[2,25]),i(a,[2,26]),i(a,[2,30]),i(a,[2,31],{39:[1,39],40:[1,40]}),i(a,[2,37],{38:[1,41]}),i(a,[2,32],{40:[1,42]}),i(a,[2,33]),i(a,[2,35],{39:[1,43]}),i(a,[2,34]),i(a,[2,36])],defaultActions:{},parseError:function(yt,V){if(V.recoverable)this.trace(yt);else{var Ot=new Error(yt);throw Ot.hash=V,Ot}},parse:function(yt){var V=this,Ot=[0],It=[],jt=[null],xt=[],Ft=this.table,Ct="",kt=0,Gt=0,Fe=2,Mt=1,pn=xt.slice.call(arguments,1),Ae=Object.create(this.lexer),ye={yy:{}};for(var tn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,tn)&&(ye.yy[tn]=this.yy[tn]);Ae.setInput(yt,ye.yy),ye.yy.lexer=Ae,ye.yy.parser=this,typeof Ae.yylloc>"u"&&(Ae.yylloc={});var sn=Ae.yylloc;xt.push(sn);var be=Ae.options&&Ae.options.ranges;typeof ye.yy.parseError=="function"?this.parseError=ye.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ne(){var Ss;return Ss=It.pop()||Ae.lex()||Mt,typeof Ss!="number"&&(Ss instanceof Array&&(It=Ss,Ss=It.pop()),Ss=V.symbols_[Ss]||Ss),Ss}for(var Xt,_e,xe,Mn,ce={},Br,we,Fi,mi;;){if(_e=Ot[Ot.length-1],this.defaultActions[_e]?xe=this.defaultActions[_e]:((Xt===null||typeof Xt>"u")&&(Xt=Ne()),xe=Ft[_e]&&Ft[_e][Xt]),typeof xe>"u"||!xe.length||!xe[0]){var ga="";mi=[];for(Br in Ft[_e])this.terminals_[Br]&&Br>Fe&&mi.push("'"+this.terminals_[Br]+"'");Ae.showPosition?ga="Parse error on line "+(kt+1)+`: +`+Ae.showPosition()+` +Expecting `+mi.join(", ")+", got '"+(this.terminals_[Xt]||Xt)+"'":ga="Parse error on line "+(kt+1)+": Unexpected "+(Xt==Mt?"end of input":"'"+(this.terminals_[Xt]||Xt)+"'"),this.parseError(ga,{text:Ae.match,token:this.terminals_[Xt]||Xt,line:Ae.yylineno,loc:sn,expected:mi})}if(xe[0]instanceof Array&&xe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_e+", token: "+Xt);switch(xe[0]){case 1:Ot.push(Xt),jt.push(Ae.yytext),xt.push(Ae.yylloc),Ot.push(xe[1]),Xt=null,Gt=Ae.yyleng,Ct=Ae.yytext,kt=Ae.yylineno,sn=Ae.yylloc;break;case 2:if(we=this.productions_[xe[1]][1],ce.$=jt[jt.length-we],ce._$={first_line:xt[xt.length-(we||1)].first_line,last_line:xt[xt.length-1].last_line,first_column:xt[xt.length-(we||1)].first_column,last_column:xt[xt.length-1].last_column},be&&(ce._$.range=[xt[xt.length-(we||1)].range[0],xt[xt.length-1].range[1]]),Mn=this.performAction.apply(ce,[Ct,Gt,kt,ye.yy,xe[1],jt,xt].concat(pn)),typeof Mn<"u")return Mn;we&&(Ot=Ot.slice(0,-1*we*2),jt=jt.slice(0,-1*we),xt=xt.slice(0,-1*we)),Ot.push(this.productions_[xe[1]][0]),jt.push(ce.$),xt.push(ce._$),Fi=Ft[Ot[Ot.length-2]][Ot[Ot.length-1]],Ot.push(Fi);break;case 3:return!0}}return!0}},Q=function(){var K={EOF:1,parseError:function(V,Ot){if(this.yy.parser)this.yy.parser.parseError(V,Ot);else throw new Error(V)},setInput:function(yt,V){return this.yy=V||this.yy||{},this._input=yt,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 yt=this._input[0];this.yytext+=yt,this.yyleng++,this.offset++,this.match+=yt,this.matched+=yt;var V=yt.match(/(?:\r\n?|\n).*/g);return V?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),yt},unput:function(yt){var V=yt.length,Ot=yt.split(/(?:\r\n?|\n)/g);this._input=yt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-V),this.offset-=V;var It=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Ot.length-1&&(this.yylineno-=Ot.length-1);var jt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Ot?(Ot.length===It.length?this.yylloc.first_column:0)+It[It.length-Ot.length].length-Ot[0].length:this.yylloc.first_column-V},this.options.ranges&&(this.yylloc.range=[jt[0],jt[0]+this.yyleng-V]),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(yt){this.unput(this.match.slice(yt))},pastInput:function(){var yt=this.matched.substr(0,this.matched.length-this.match.length);return(yt.length>20?"...":"")+yt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var yt=this.match;return yt.length<20&&(yt+=this._input.substr(0,20-yt.length)),(yt.substr(0,20)+(yt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var yt=this.pastInput(),V=new Array(yt.length+1).join("-");return yt+this.upcomingInput()+` +`+V+"^"},test_match:function(yt,V){var Ot,It,jt;if(this.options.backtrack_lexer&&(jt={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&&(jt.yylloc.range=this.yylloc.range.slice(0))),It=yt[0].match(/(?:\r\n?|\n).*/g),It&&(this.yylineno+=It.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:It?It[It.length-1].length-It[It.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+yt[0].length},this.yytext+=yt[0],this.match+=yt[0],this.matches=yt,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(yt[0].length),this.matched+=yt[0],Ot=this.performAction.call(this,this.yy,this,V,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ot)return Ot;if(this._backtrack){for(var xt in jt)this[xt]=jt[xt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var yt,V,Ot,It;this._more||(this.yytext="",this.match="");for(var jt=this._currentRules(),xt=0;xtV[0].length)){if(V=Ot,It=xt,this.options.backtrack_lexer){if(yt=this.test_match(Ot,jt[xt]),yt!==!1)return yt;if(this._backtrack){V=!1;continue}else return!1}else if(!this.options.flex)break}return V?(yt=this.test_match(V,jt[It]),yt!==!1?yt:!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 V=this.next();return V||this.lex()},begin:function(V){this.conditionStack.push(V)},popState:function(){var V=this.conditionStack.length-1;return V>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(V){return V=this.conditionStack.length-1-Math.abs(V||0),V>=0?this.conditionStack[V]:"INITIAL"},pushState:function(V){this.begin(V)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(V,Ot,It,jt){switch(It){case 0:return this.begin("open_directive"),"open_directive";case 1:return this.begin("acc_title"),28;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),30;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 40;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 38;case 21:this.popState();break;case 22:return 39;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 37;case 26:return 4;case 27:return 19;case 28:return 20;case 29:return 21;case 30:return 22;case 31:return 23;case 32:return 25;case 33:return 24;case 34:return 26;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return"date";case 43:return 27;case 44:return"accDescription";case 45:return 33;case 46:return 35;case 47:return 36;case 48:return":";case 49:return 6;case 50:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50],inclusive:!0}}};return K}();gt.lexer=Q;function dt(){this.yy={}}return dt.prototype=gt,gt.Parser=dt,new dt}();cbt.parser=cbt;const wYe=cbt;var Mzt={exports:{}};(function(i,a){(function(f,g){i.exports=g()})(Z0,function(){var f="day";return function(g,w,v){var b=function(_){return _.add(4-_.isoWeekday(),f)},E=w.prototype;E.isoWeekYear=function(){return b(this).year()},E.isoWeek=function(_){if(!this.$utils().u(_))return this.add(7*(_-this.isoWeek()),f);var M,F,R,B,z=b(this),Y=(M=this.isoWeekYear(),F=this.$u,R=(F?v.utc:v)().year(M).startOf("year"),B=4-R.isoWeekday(),R.isoWeekday()>4&&(B+=7),R.add(B,f));return z.diff(Y,"week")+1},E.isoWeekday=function(_){return this.$utils().u(_)?this.day()||7:this.day(this.day()%7?_:_-7)};var S=E.startOf;E.startOf=function(_,M){var F=this.$utils(),R=!!F.u(M)||M;return F.p(_)==="isoweek"?R?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):S.bind(this)(_,M)}}})})(Mzt);var mYe=Mzt.exports;const vYe=e9(mYe);var Izt={exports:{}};(function(i,a){(function(f,g){i.exports=g()})(Z0,function(){var f={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"},g=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,w=/\d\d/,v=/\d\d?/,b=/\d*[^-_:/,()\s\d]+/,E={},S=function(Y){return(Y=+Y)+(Y>68?1900:2e3)},_=function(Y){return function(nt){this[Y]=+nt}},M=[/[+-]\d\d:?(\d\d)?|Z/,function(Y){(this.zone||(this.zone={})).offset=function(nt){if(!nt||nt==="Z")return 0;var ot=nt.match(/([+-]|\d\d)/g),ft=60*ot[1]+(+ot[2]||0);return ft===0?0:ot[0]==="+"?-ft:ft}(Y)}],F=function(Y){var nt=E[Y];return nt&&(nt.indexOf?nt:nt.s.concat(nt.f))},R=function(Y,nt){var ot,ft=E.meridiem;if(ft){for(var wt=1;wt<=24;wt+=1)if(Y.indexOf(ft(wt,0,nt))>-1){ot=wt>12;break}}else ot=Y===(nt?"pm":"PM");return ot},B={A:[b,function(Y){this.afternoon=R(Y,!1)}],a:[b,function(Y){this.afternoon=R(Y,!0)}],S:[/\d/,function(Y){this.milliseconds=100*+Y}],SS:[w,function(Y){this.milliseconds=10*+Y}],SSS:[/\d{3}/,function(Y){this.milliseconds=+Y}],s:[v,_("seconds")],ss:[v,_("seconds")],m:[v,_("minutes")],mm:[v,_("minutes")],H:[v,_("hours")],h:[v,_("hours")],HH:[v,_("hours")],hh:[v,_("hours")],D:[v,_("day")],DD:[w,_("day")],Do:[b,function(Y){var nt=E.ordinal,ot=Y.match(/\d+/);if(this.day=ot[0],nt)for(var ft=1;ft<=31;ft+=1)nt(ft).replace(/\[|\]/g,"")===Y&&(this.day=ft)}],M:[v,_("month")],MM:[w,_("month")],MMM:[b,function(Y){var nt=F("months"),ot=(F("monthsShort")||nt.map(function(ft){return ft.slice(0,3)})).indexOf(Y)+1;if(ot<1)throw new Error;this.month=ot%12||ot}],MMMM:[b,function(Y){var nt=F("months").indexOf(Y)+1;if(nt<1)throw new Error;this.month=nt%12||nt}],Y:[/[+-]?\d+/,_("year")],YY:[w,function(Y){this.year=S(Y)}],YYYY:[/\d{4}/,_("year")],Z:M,ZZ:M};function z(Y){var nt,ot;nt=Y,ot=E&&E.formats;for(var ft=(Y=nt.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(Q,dt,K){var yt=K&&K.toUpperCase();return dt||ot[K]||f[K]||ot[yt].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(V,Ot,It){return Ot||It.slice(1)})})).match(g),wt=ft.length,mt=0;mt-1)return new Date((xt==="X"?1e3:1)*jt);var Ct=z(xt)(jt),kt=Ct.year,Gt=Ct.month,Fe=Ct.day,Mt=Ct.hours,pn=Ct.minutes,Ae=Ct.seconds,ye=Ct.milliseconds,tn=Ct.zone,sn=new Date,be=Fe||(kt||Gt?1:sn.getDate()),Ne=kt||sn.getFullYear(),Xt=0;kt&&!Gt||(Xt=Gt>0?Gt-1:sn.getMonth());var _e=Mt||0,xe=pn||0,Mn=Ae||0,ce=ye||0;return tn?new Date(Date.UTC(Ne,Xt,be,_e,xe,Mn,ce+60*tn.offset*1e3)):Ft?new Date(Date.UTC(Ne,Xt,be,_e,xe,Mn,ce)):new Date(Ne,Xt,be,_e,xe,Mn,ce)}catch{return new Date("")}}(ct,gt,rt),this.init(),yt&&yt!==!0&&(this.$L=this.locale(yt).$L),K&&ct!=this.format(gt)&&(this.$d=new Date("")),E={}}else if(gt instanceof Array)for(var V=gt.length,Ot=1;Ot<=V;Ot+=1){it[1]=gt[Ot-1];var It=ot.apply(this,it);if(It.isValid()){this.$d=It.$d,this.$L=It.$L,this.init();break}Ot===V&&(this.$d=new Date(""))}else wt.call(this,mt)}}})})(Izt);var yYe=Izt.exports;const xYe=e9(yYe);var Ozt={exports:{}};(function(i,a){(function(f,g){i.exports=g()})(Z0,function(){return function(f,g){var w=g.prototype,v=w.format;w.format=function(b){var E=this,S=this.$locale();if(!this.isValid())return v.bind(this)(b);var _=this.$utils(),M=(b||"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(F){switch(F){case"Q":return Math.ceil((E.$M+1)/3);case"Do":return S.ordinal(E.$D);case"gggg":return E.weekYear();case"GGGG":return E.isoWeekYear();case"wo":return S.ordinal(E.week(),"W");case"w":case"ww":return _.s(E.week(),F==="w"?1:2,"0");case"W":case"WW":return _.s(E.isoWeek(),F==="W"?1:2,"0");case"k":case"kk":return _.s(String(E.$H===0?24:E.$H),F==="k"?1:2,"0");case"X":return Math.floor(E.$d.getTime()/1e3);case"x":return E.$d.getTime();case"z":return"["+E.offsetName()+"]";case"zzz":return"["+E.offsetName("long")+"]";default:return F}});return v.bind(this)(M)}}})})(Ozt);var kYe=Ozt.exports;const EYe=e9(kYe);tg.extend(vYe),tg.extend(xYe),tg.extend(EYe);let h4="",ubt="",lbt,hbt="",oB=[],cB=[],fbt={},dbt=[],lX=[],SD="",gbt="";const Nzt=["active","done","crit","milestone"];let pbt=[],uB=!1,bbt=!1,wbt="sunday",mbt=0;const TYe=function(){dbt=[],lX=[],SD="",pbt=[],hX=0,ybt=void 0,fX=void 0,H1=[],h4="",ubt="",gbt="",lbt=void 0,hbt="",oB=[],cB=[],uB=!1,bbt=!1,mbt=0,fbt={},ag(),wbt="sunday"},CYe=function(i){ubt=i},SYe=function(){return ubt},_Ye=function(i){lbt=i},AYe=function(){return lbt},LYe=function(i){hbt=i},DYe=function(){return hbt},MYe=function(i){h4=i},IYe=function(){uB=!0},OYe=function(){return uB},NYe=function(){bbt=!0},PYe=function(){return bbt},FYe=function(i){gbt=i},BYe=function(){return gbt},RYe=function(){return h4},jYe=function(i){oB=i.toLowerCase().split(/[\s,]+/)},$Ye=function(){return oB},zYe=function(i){cB=i.toLowerCase().split(/[\s,]+/)},qYe=function(){return cB},HYe=function(){return fbt},VYe=function(i){SD=i,dbt.push(i)},UYe=function(){return dbt},GYe=function(){let i=$zt();const a=10;let f=0;for(;!i&&f=6&&f.includes("weekends")||f.includes(i.format("dddd").toLowerCase())?!0:f.includes(i.format(a.trim()))},KYe=function(i){wbt=i},WYe=function(){return wbt},Fzt=function(i,a,f,g){if(!f.length||i.manualEndTime)return;let w;i.startTime instanceof Date?w=tg(i.startTime):w=tg(i.startTime,a,!0),w=w.add(1,"d");let v;i.endTime instanceof Date?v=tg(i.endTime):v=tg(i.endTime,a,!0);const[b,E]=YYe(w,v,a,f,g);i.endTime=b.toDate(),i.renderEndTime=E},YYe=function(i,a,f,g,w){let v=!1,b=null;for(;i<=a;)v||(b=a.toDate()),v=Pzt(i,f,g,w),v&&(a=a.add(1,"d")),i=i.add(1,"d");return[a,b]},vbt=function(i,a,f){f=f.trim();const w=/^after\s+([\d\w- ]+)/.exec(f.trim());if(w!==null){let b=null;if(w[1].split(" ").forEach(function(E){let S=AD(E);S!==void 0&&(b?S.endTime>b.endTime&&(b=S):b=S)}),b)return b.endTime;{const E=new Date;return E.setHours(0,0,0,0),E}}let v=tg(f,a.trim(),!0);if(v.isValid())return v.toDate();{Kt.debug("Invalid date:"+f),Kt.debug("With date format:"+a.trim());const b=new Date(f);if(b===void 0||isNaN(b.getTime())||b.getFullYear()<-1e4||b.getFullYear()>1e4)throw new Error("Invalid date:"+f);return b}},Bzt=function(i){const a=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(i.trim());return a!==null?[Number.parseFloat(a[1]),a[2]]:[NaN,"ms"]},Rzt=function(i,a,f,g=!1){f=f.trim();let w=tg(f,a.trim(),!0);if(w.isValid())return g&&(w=w.add(1,"d")),w.toDate();let v=tg(i);const[b,E]=Bzt(f);if(!Number.isNaN(b)){const S=v.add(b,E);S.isValid()&&(v=S)}return v.toDate()};let hX=0;const _D=function(i){return i===void 0?(hX=hX+1,"task"+hX):i},XYe=function(i,a){let f;a.substr(0,1)===":"?f=a.substr(1,a.length):f=a;const g=f.split(","),w={};Hzt(g,w,Nzt);for(let b=0;b{window.open(f,"_self")}),fbt[g]=f)}),zzt(i,"clickable")},zzt=function(i,a){i.split(",").forEach(function(f){let g=AD(f);g!==void 0&&g.classes.push(a)})},eXe=function(i,a,f){if(Re().securityLevel!=="loose"||a===void 0)return;let g=[];if(typeof f=="string"){g=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let v=0;v{uo.runFunc(a,...g)})},qzt=function(i,a){pbt.push(function(){const f=document.querySelector(`[id="${i}"]`);f!==null&&f.addEventListener("click",function(){a()})},function(){const f=document.querySelector(`[id="${i}-text"]`);f!==null&&f.addEventListener("click",function(){a()})})},nXe={getConfig:()=>Re().gantt,clear:TYe,setDateFormat:MYe,getDateFormat:RYe,enableInclusiveEndDates:IYe,endDatesAreInclusive:OYe,enableTopAxis:NYe,topAxisEnabled:PYe,setAxisFormat:CYe,getAxisFormat:SYe,setTickInterval:_Ye,getTickInterval:AYe,setTodayMarker:LYe,getTodayMarker:DYe,setAccTitle:og,getAccTitle:Xg,setDiagramTitle:S2,getDiagramTitle:Zg,setDisplayMode:FYe,getDisplayMode:BYe,setAccDescription:Qg,getAccDescription:Jg,addSection:VYe,getSections:UYe,getTasks:GYe,addTask:JYe,findTaskById:AD,addTaskOrg:ZYe,setIncludes:jYe,getIncludes:$Ye,setExcludes:zYe,getExcludes:qYe,setClickEvent:function(i,a,f){i.split(",").forEach(function(g){eXe(g,a,f)}),zzt(i,"clickable")},setLink:tXe,getLinks:HYe,bindFunctions:function(i){pbt.forEach(function(a){a(i)})},parseDuration:Bzt,isInvalidDate:Pzt,setWeekday:KYe,getWeekday:WYe};function Hzt(i,a,f){let g=!0;for(;g;)g=!1,f.forEach(function(w){const v="^\\s*"+w+"\\s*$",b=new RegExp(v);i[0].match(b)&&(a[w]=!0,i.shift(1),g=!0)})}const rXe=function(){Kt.debug("Something is calling, setConf, remove the call")},Vzt={monday:hF,tuesday:NNt,wednesday:PNt,thursday:l9,friday:FNt,saturday:BNt,sunday:lF},iXe=(i,a)=>{let f=[...i].map(()=>-1/0),g=[...i].sort((v,b)=>v.startTime-b.startTime||v.order-b.order),w=0;for(const v of g)for(let b=0;b=f[b]){f[b]=v.endTime,v.order=b+a,b>w&&(w=b);break}return w};let zx;const sXe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:wYe,db:nXe,renderer:{setConf:rXe,draw:function(i,a,f,g){const w=Re().gantt,v=Re().securityLevel;let b;v==="sandbox"&&(b=Tr("#i"+a));const E=Tr(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),S=v==="sandbox"?b.nodes()[0].contentDocument:document,_=S.getElementById(a);zx=_.parentElement.offsetWidth,zx===void 0&&(zx=1200),w.useWidth!==void 0&&(zx=w.useWidth);const M=g.db.getTasks();let F=[];for(const gt of M)F.push(gt.type);F=it(F);const R={};let B=2*w.topPadding;if(g.db.getDisplayMode()==="compact"||w.displayMode==="compact"){const gt={};for(const dt of M)gt[dt.section]===void 0?gt[dt.section]=[dt]:gt[dt.section].push(dt);let Q=0;for(const dt of Object.keys(gt)){const K=iXe(gt[dt],Q)+1;Q+=K,B+=K*(w.barHeight+w.barGap),R[dt]=K}}else{B+=M.length*(w.barHeight+w.barGap);for(const gt of F)R[gt]=M.filter(Q=>Q.type===gt).length}_.setAttribute("viewBox","0 0 "+zx+" "+B);const z=E.select(`[id="${a}"]`),Y=eDe().domain([B9e(M,function(gt){return gt.startTime}),F9e(M,function(gt){return gt.endTime})]).rangeRound([0,zx-w.leftPadding-w.rightPadding]);function nt(gt,Q){const dt=gt.startTime,K=Q.startTime;let yt=0;return dt>K?yt=1:dtkt.order))].map(kt=>gt.find(Gt=>Gt.order===kt));z.append("g").selectAll("rect").data(jt).enter().append("rect").attr("x",0).attr("y",function(kt,Gt){return Gt=kt.order,Gt*Q+dt-2}).attr("width",function(){return Ot-w.rightPadding/2}).attr("height",Q).attr("class",function(kt){for(const[Gt,Fe]of F.entries())if(kt.type===Fe)return"section section"+Gt%w.numberSectionStyles;return"section section0"});const xt=z.append("g").selectAll("rect").data(gt).enter(),Ft=g.db.getLinks();if(xt.append("rect").attr("id",function(kt){return kt.id}).attr("rx",3).attr("ry",3).attr("x",function(kt){return kt.milestone?Y(kt.startTime)+K+.5*(Y(kt.endTime)-Y(kt.startTime))-.5*yt:Y(kt.startTime)+K}).attr("y",function(kt,Gt){return Gt=kt.order,Gt*Q+dt}).attr("width",function(kt){return kt.milestone?yt:Y(kt.renderEndTime||kt.endTime)-Y(kt.startTime)}).attr("height",yt).attr("transform-origin",function(kt,Gt){return Gt=kt.order,(Y(kt.startTime)+K+.5*(Y(kt.endTime)-Y(kt.startTime))).toString()+"px "+(Gt*Q+dt+.5*yt).toString()+"px"}).attr("class",function(kt){const Gt="task";let Fe="";kt.classes.length>0&&(Fe=kt.classes.join(" "));let Mt=0;for(const[Ae,ye]of F.entries())kt.type===ye&&(Mt=Ae%w.numberSectionStyles);let pn="";return kt.active?kt.crit?pn+=" activeCrit":pn=" active":kt.done?kt.crit?pn=" doneCrit":pn=" done":kt.crit&&(pn+=" crit"),pn.length===0&&(pn=" task"),kt.milestone&&(pn=" milestone "+pn),pn+=Mt,pn+=" "+Fe,Gt+pn}),xt.append("text").attr("id",function(kt){return kt.id+"-text"}).text(function(kt){return kt.task}).attr("font-size",w.fontSize).attr("x",function(kt){let Gt=Y(kt.startTime),Fe=Y(kt.renderEndTime||kt.endTime);kt.milestone&&(Gt+=.5*(Y(kt.endTime)-Y(kt.startTime))-.5*yt),kt.milestone&&(Fe=Gt+yt);const Mt=this.getBBox().width;return Mt>Fe-Gt?Fe+Mt+1.5*w.leftPadding>Ot?Gt+K-5:Fe+K+5:(Fe-Gt)/2+Gt+K}).attr("y",function(kt,Gt){return Gt=kt.order,Gt*Q+w.barHeight/2+(w.fontSize/2-2)+dt}).attr("text-height",yt).attr("class",function(kt){const Gt=Y(kt.startTime);let Fe=Y(kt.endTime);kt.milestone&&(Fe=Gt+yt);const Mt=this.getBBox().width;let pn="";kt.classes.length>0&&(pn=kt.classes.join(" "));let Ae=0;for(const[tn,sn]of F.entries())kt.type===sn&&(Ae=tn%w.numberSectionStyles);let ye="";return kt.active&&(kt.crit?ye="activeCritText"+Ae:ye="activeText"+Ae),kt.done?kt.crit?ye=ye+" doneCritText"+Ae:ye=ye+" doneText"+Ae:kt.crit&&(ye=ye+" critText"+Ae),kt.milestone&&(ye+=" milestoneText"),Mt>Fe-Gt?Fe+Mt+1.5*w.leftPadding>Ot?pn+" taskTextOutsideLeft taskTextOutside"+Ae+" "+ye:pn+" taskTextOutsideRight taskTextOutside"+Ae+" "+ye+" width-"+Mt:pn+" taskText taskText"+Ae+" "+ye+" width-"+Mt}),Re().securityLevel==="sandbox"){let kt;kt=Tr("#i"+a);const Gt=kt.nodes()[0].contentDocument;xt.filter(function(Fe){return Ft[Fe.id]!==void 0}).each(function(Fe){var Mt=Gt.querySelector("#"+Fe.id),pn=Gt.querySelector("#"+Fe.id+"-text");const Ae=Mt.parentNode;var ye=Gt.createElement("a");ye.setAttribute("xlink:href",Ft[Fe.id]),ye.setAttribute("target","_top"),Ae.appendChild(ye),ye.appendChild(Mt),ye.appendChild(pn)})}}function wt(gt,Q,dt,K,yt,V,Ot,It){if(Ot.length===0&&It.length===0)return;let jt,xt;for(const{startTime:Mt,endTime:pn}of V)(jt===void 0||Mtxt)&&(xt=pn);if(!jt||!xt)return;if(tg(xt).diff(tg(jt),"year")>5){Kt.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}const Ft=g.db.getDateFormat(),Ct=[];let kt=null,Gt=tg(jt);for(;Gt.valueOf()<=xt;)g.db.isInvalidDate(Gt,Ft,Ot,It)?kt?kt.end=Gt:kt={start:Gt,end:Gt}:kt&&(Ct.push(kt),kt=null),Gt=Gt.add(1,"d");z.append("g").selectAll("rect").data(Ct).enter().append("rect").attr("id",function(Mt){return"exclude-"+Mt.start.format("YYYY-MM-DD")}).attr("x",function(Mt){return Y(Mt.start)+dt}).attr("y",w.gridLineStartPadding).attr("width",function(Mt){const pn=Mt.end.add(1,"day");return Y(pn)-Y(Mt.start)}).attr("height",yt-Q-w.gridLineStartPadding).attr("transform-origin",function(Mt,pn){return(Y(Mt.start)+dt+.5*(Y(Mt.end)-Y(Mt.start))).toString()+"px "+(pn*gt+.5*yt).toString()+"px"}).attr("class","exclude-range")}function mt(gt,Q,dt,K){let yt=G9e(Y).tickSize(-K+Q+w.gridLineStartPadding).tickFormat(DW(g.db.getAxisFormat()||w.axisFormat||"%Y-%m-%d"));const Ot=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(g.db.getTickInterval()||w.tickInterval);if(Ot!==null){const It=Ot[1],jt=Ot[2],xt=g.db.getWeekday()||w.weekday;switch(jt){case"millisecond":yt.ticks(UL.every(It));break;case"second":yt.ticks(f8.every(It));break;case"minute":yt.ticks(cF.every(It));break;case"hour":yt.ticks(uF.every(It));break;case"day":yt.ticks(c9.every(It));break;case"week":yt.ticks(Vzt[xt].every(It));break;case"month":yt.ticks(fF.every(It));break}}if(z.append("g").attr("class","grid").attr("transform","translate("+gt+", "+(K-50)+")").call(yt).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),g.db.topAxisEnabled()||w.topAxis){let It=U9e(Y).tickSize(-K+Q+w.gridLineStartPadding).tickFormat(DW(g.db.getAxisFormat()||w.axisFormat||"%Y-%m-%d"));if(Ot!==null){const jt=Ot[1],xt=Ot[2],Ft=g.db.getWeekday()||w.weekday;switch(xt){case"millisecond":It.ticks(UL.every(jt));break;case"second":It.ticks(f8.every(jt));break;case"minute":It.ticks(cF.every(jt));break;case"hour":It.ticks(uF.every(jt));break;case"day":It.ticks(c9.every(jt));break;case"week":It.ticks(Vzt[Ft].every(jt));break;case"month":It.ticks(fF.every(jt));break}}z.append("g").attr("class","grid").attr("transform","translate("+gt+", "+Q+")").call(It).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function ct(gt,Q){let dt=0;const K=Object.keys(R).map(yt=>[yt,R[yt]]);z.append("g").selectAll("text").data(K).enter().append(function(yt){const V=yt[0].split(ei.lineBreakRegex),Ot=-(V.length-1)/2,It=S.createElementNS("http://www.w3.org/2000/svg","text");It.setAttribute("dy",Ot+"em");for(const[jt,xt]of V.entries()){const Ft=S.createElementNS("http://www.w3.org/2000/svg","tspan");Ft.setAttribute("alignment-baseline","central"),Ft.setAttribute("x","10"),jt>0&&Ft.setAttribute("dy","1em"),Ft.textContent=xt,It.appendChild(Ft)}return It}).attr("x",10).attr("y",function(yt,V){if(V>0)for(let Ot=0;Ot` + .mermaid-main-font { + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .exclude-range { + fill: ${i.excludeBkgColor}; + } + + .section { + stroke: none; + opacity: 0.2; + } + + .section0 { + fill: ${i.sectionBkgColor}; + } + + .section2 { + fill: ${i.sectionBkgColor2}; + } + + .section1, + .section3 { + fill: ${i.altSectionBkgColor}; + opacity: 0.2; + } + + .sectionTitle0 { + fill: ${i.titleColor}; + } + + .sectionTitle1 { + fill: ${i.titleColor}; + } + + .sectionTitle2 { + fill: ${i.titleColor}; + } + + .sectionTitle3 { + fill: ${i.titleColor}; + } + + .sectionTitle { + text-anchor: start; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + + /* Grid and axis */ + + .grid .tick { + stroke: ${i.gridColor}; + opacity: 0.8; + shape-rendering: crispEdges; + } + + .grid .tick text { + font-family: ${i.fontFamily}; + fill: ${i.textColor}; + } + + .grid path { + stroke-width: 0; + } + + + /* Today line */ + + .today { + fill: none; + stroke: ${i.todayLineColor}; + stroke-width: 2px; + } + + + /* Task styling */ + + /* Default task */ + + .task { + stroke-width: 2; + } + + .taskText { + text-anchor: middle; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .taskTextOutsideRight { + fill: ${i.taskTextDarkColor}; + text-anchor: start; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .taskTextOutsideLeft { + fill: ${i.taskTextDarkColor}; + text-anchor: end; + } + + + /* Special case clickable */ + + .task.clickable { + cursor: pointer; + } + + .taskText.clickable { + cursor: pointer; + fill: ${i.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideLeft.clickable { + cursor: pointer; + fill: ${i.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideRight.clickable { + cursor: pointer; + fill: ${i.taskTextClickableColor} !important; + font-weight: bold; + } + + + /* Specific task settings for the sections*/ + + .taskText0, + .taskText1, + .taskText2, + .taskText3 { + fill: ${i.taskTextColor}; + } + + .task0, + .task1, + .task2, + .task3 { + fill: ${i.taskBkgColor}; + stroke: ${i.taskBorderColor}; + } + + .taskTextOutside0, + .taskTextOutside2 + { + fill: ${i.taskTextOutsideColor}; + } + + .taskTextOutside1, + .taskTextOutside3 { + fill: ${i.taskTextOutsideColor}; + } + + + /* Active task */ + + .active0, + .active1, + .active2, + .active3 { + fill: ${i.activeTaskBkgColor}; + stroke: ${i.activeTaskBorderColor}; + } + + .activeText0, + .activeText1, + .activeText2, + .activeText3 { + fill: ${i.taskTextDarkColor} !important; + } + + + /* Completed task */ + + .done0, + .done1, + .done2, + .done3 { + stroke: ${i.doneTaskBorderColor}; + fill: ${i.doneTaskBkgColor}; + stroke-width: 2; + } + + .doneText0, + .doneText1, + .doneText2, + .doneText3 { + fill: ${i.taskTextDarkColor} !important; + } + + + /* Tasks on the critical line */ + + .crit0, + .crit1, + .crit2, + .crit3 { + stroke: ${i.critBorderColor}; + fill: ${i.critBkgColor}; + stroke-width: 2; + } + + .activeCrit0, + .activeCrit1, + .activeCrit2, + .activeCrit3 { + stroke: ${i.critBorderColor}; + fill: ${i.activeTaskBkgColor}; + stroke-width: 2; + } + + .doneCrit0, + .doneCrit1, + .doneCrit2, + .doneCrit3 { + stroke: ${i.critBorderColor}; + fill: ${i.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: ${i.taskTextDarkColor} !important; + } + + .activeCritText0, + .activeCritText1, + .activeCritText2, + .activeCritText3 { + fill: ${i.taskTextDarkColor} !important; + } + + .titleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.titleColor||i.textColor}; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } +`}},Symbol.toStringTag,{value:"Module"}));var xbt=function(){var i=function(v,b,E,S){for(E=E||{},S=v.length;S--;E[v[S]]=b);return E},a=[6,9,10],f={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(b,E,S,_,M,F,R){switch(F.length-1,M){case 1:return _;case 4:break;case 6:_.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},i(a,[2,3]),i(a,[2,4]),i(a,[2,5]),i(a,[2,6])],defaultActions:{4:[2,1]},parseError:function(b,E){if(E.recoverable)this.trace(b);else{var S=new Error(b);throw S.hash=E,S}},parse:function(b){var E=this,S=[0],_=[],M=[null],F=[],R=this.table,B="",z=0,Y=0,nt=2,ot=1,ft=F.slice.call(arguments,1),wt=Object.create(this.lexer),mt={yy:{}};for(var ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ct)&&(mt.yy[ct]=this.yy[ct]);wt.setInput(b,mt.yy),mt.yy.lexer=wt,mt.yy.parser=this,typeof wt.yylloc>"u"&&(wt.yylloc={});var rt=wt.yylloc;F.push(rt);var it=wt.options&&wt.options.ranges;typeof mt.yy.parseError=="function"?this.parseError=mt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function gt(){var Ct;return Ct=_.pop()||wt.lex()||ot,typeof Ct!="number"&&(Ct instanceof Array&&(_=Ct,Ct=_.pop()),Ct=E.symbols_[Ct]||Ct),Ct}for(var Q,dt,K,yt,V={},Ot,It,jt,xt;;){if(dt=S[S.length-1],this.defaultActions[dt]?K=this.defaultActions[dt]:((Q===null||typeof Q>"u")&&(Q=gt()),K=R[dt]&&R[dt][Q]),typeof K>"u"||!K.length||!K[0]){var Ft="";xt=[];for(Ot in R[dt])this.terminals_[Ot]&&Ot>nt&&xt.push("'"+this.terminals_[Ot]+"'");wt.showPosition?Ft="Parse error on line "+(z+1)+`: +`+wt.showPosition()+` +Expecting `+xt.join(", ")+", got '"+(this.terminals_[Q]||Q)+"'":Ft="Parse error on line "+(z+1)+": Unexpected "+(Q==ot?"end of input":"'"+(this.terminals_[Q]||Q)+"'"),this.parseError(Ft,{text:wt.match,token:this.terminals_[Q]||Q,line:wt.yylineno,loc:rt,expected:xt})}if(K[0]instanceof Array&&K.length>1)throw new Error("Parse Error: multiple actions possible at state: "+dt+", token: "+Q);switch(K[0]){case 1:S.push(Q),M.push(wt.yytext),F.push(wt.yylloc),S.push(K[1]),Q=null,Y=wt.yyleng,B=wt.yytext,z=wt.yylineno,rt=wt.yylloc;break;case 2:if(It=this.productions_[K[1]][1],V.$=M[M.length-It],V._$={first_line:F[F.length-(It||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(It||1)].first_column,last_column:F[F.length-1].last_column},it&&(V._$.range=[F[F.length-(It||1)].range[0],F[F.length-1].range[1]]),yt=this.performAction.apply(V,[B,Y,z,mt.yy,K[1],M,F].concat(ft)),typeof yt<"u")return yt;It&&(S=S.slice(0,-1*It*2),M=M.slice(0,-1*It),F=F.slice(0,-1*It)),S.push(this.productions_[K[1]][0]),M.push(V.$),F.push(V._$),jt=R[S[S.length-2]][S[S.length-1]],S.push(jt);break;case 3:return!0}}return!0}},g=function(){var v={EOF:1,parseError:function(E,S){if(this.yy.parser)this.yy.parser.parseError(E,S);else throw new Error(E)},setInput:function(b,E){return this.yy=E||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var E=b.match(/(?:\r\n?|\n).*/g);return E?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),b},unput:function(b){var E=b.length,S=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var _=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),S.length-1&&(this.yylineno-=S.length-1);var M=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:S?(S.length===_.length?this.yylloc.first_column:0)+_[_.length-S.length].length-S[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[M[0],M[0]+this.yyleng-E]),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(b){this.unput(this.match.slice(b))},pastInput:function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var b=this.match;return b.length<20&&(b+=this._input.substr(0,20-b.length)),(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var b=this.pastInput(),E=new Array(b.length+1).join("-");return b+this.upcomingInput()+` +`+E+"^"},test_match:function(b,E){var S,_,M;if(this.options.backtrack_lexer&&(M={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&&(M.yylloc.range=this.yylloc.range.slice(0))),_=b[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+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],S=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),S)return S;if(this._backtrack){for(var F in M)this[F]=M[F];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var b,E,S,_;this._more||(this.yytext="",this.match="");for(var M=this._currentRules(),F=0;FE[0].length)){if(E=S,_=F,this.options.backtrack_lexer){if(b=this.test_match(S,M[F]),b!==!1)return b;if(this._backtrack){E=!1;continue}else return!1}else if(!this.options.flex)break}return E?(b=this.test_match(E,M[_]),b!==!1?b:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var E=this.next();return E||this.lex()},begin:function(E){this.conditionStack.push(E)},popState:function(){var E=this.conditionStack.length-1;return E>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(E){return E=this.conditionStack.length-1-Math.abs(E||0),E>=0?this.conditionStack[E]:"INITIAL"},pushState:function(E){this.begin(E)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(E,S,_,M){switch(_){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 v}();f.lexer=g;function w(){this.yy={}}return w.prototype=f,f.Parser=w,new w}();xbt.parser=xbt;const aXe=xbt,Uzt={info:!1};let kbt=Uzt.info;const oXe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:aXe,db:{clear:()=>{kbt=Uzt.info},setInfo:i=>{kbt=i},getInfo:()=>kbt},renderer:{draw:(i,a,f)=>{Kt.debug(`rendering info diagram +`+i);const g=FF(a);sg(g,100,400,!0),g.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${f}`)}}}},Symbol.toStringTag,{value:"Module"}));var Ebt=function(){var i=function(wt,mt,ct,rt){for(ct=ct||{},rt=wt.length;rt--;ct[wt[rt]]=mt);return ct},a=[1,3],f=[1,4],g=[1,5],w=[1,6],v=[1,10,12,14,16,18,19,20,21,22],b=[2,4],E=[1,5,10,12,14,16,18,19,20,21,22],S=[20,21,22],_=[2,7],M=[1,12],F=[1,13],R=[1,14],B=[1,15],z=[1,16],Y=[1,17],nt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,PIE:5,document:6,showData:7,line:8,statement:9,txt:10,value:11,title:12,title_value:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,section:19,NEWLINE:20,";":21,EOF:22,$accept:0,$end:1},terminals_:{2:"error",5:"PIE",7:"showData",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:"NEWLINE",21:";",22:"EOF"},productions_:[0,[3,2],[3,2],[3,3],[6,0],[6,2],[8,2],[9,0],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[4,1],[4,1],[4,1]],performAction:function(mt,ct,rt,it,gt,Q,dt){var K=Q.length-1;switch(gt){case 3:it.setShowData(!0);break;case 6:this.$=Q[K-1];break;case 8:it.addSection(Q[K-1],it.cleanupValue(Q[K]));break;case 9:this.$=Q[K].trim(),it.setDiagramTitle(this.$);break;case 10:this.$=Q[K].trim(),it.setAccTitle(this.$);break;case 11:case 12:this.$=Q[K].trim(),it.setAccDescription(this.$);break;case 13:it.addSection(Q[K].substr(8)),this.$=Q[K].substr(8);break}},table:[{3:1,4:2,5:a,20:f,21:g,22:w},{1:[3]},{3:7,4:2,5:a,20:f,21:g,22:w},i(v,b,{6:8,7:[1,9]}),i(E,[2,14]),i(E,[2,15]),i(E,[2,16]),{1:[2,1]},i(S,_,{8:10,9:11,1:[2,2],10:M,12:F,14:R,16:B,18:z,19:Y}),i(v,b,{6:18}),i(v,[2,5]),{4:19,20:f,21:g,22:w},{11:[1,20]},{13:[1,21]},{15:[1,22]},{17:[1,23]},i(S,[2,12]),i(S,[2,13]),i(S,_,{8:10,9:11,1:[2,3],10:M,12:F,14:R,16:B,18:z,19:Y}),i(v,[2,6]),i(S,[2,8]),i(S,[2,9]),i(S,[2,10]),i(S,[2,11])],defaultActions:{7:[2,1]},parseError:function(mt,ct){if(ct.recoverable)this.trace(mt);else{var rt=new Error(mt);throw rt.hash=ct,rt}},parse:function(mt){var ct=this,rt=[0],it=[],gt=[null],Q=[],dt=this.table,K="",yt=0,V=0,Ot=2,It=1,jt=Q.slice.call(arguments,1),xt=Object.create(this.lexer),Ft={yy:{}};for(var Ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ct)&&(Ft.yy[Ct]=this.yy[Ct]);xt.setInput(mt,Ft.yy),Ft.yy.lexer=xt,Ft.yy.parser=this,typeof xt.yylloc>"u"&&(xt.yylloc={});var kt=xt.yylloc;Q.push(kt);var Gt=xt.options&&xt.options.ranges;typeof Ft.yy.parseError=="function"?this.parseError=Ft.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Fe(){var xe;return xe=it.pop()||xt.lex()||It,typeof xe!="number"&&(xe instanceof Array&&(it=xe,xe=it.pop()),xe=ct.symbols_[xe]||xe),xe}for(var Mt,pn,Ae,ye,tn={},sn,be,Ne,Xt;;){if(pn=rt[rt.length-1],this.defaultActions[pn]?Ae=this.defaultActions[pn]:((Mt===null||typeof Mt>"u")&&(Mt=Fe()),Ae=dt[pn]&&dt[pn][Mt]),typeof Ae>"u"||!Ae.length||!Ae[0]){var _e="";Xt=[];for(sn in dt[pn])this.terminals_[sn]&&sn>Ot&&Xt.push("'"+this.terminals_[sn]+"'");xt.showPosition?_e="Parse error on line "+(yt+1)+`: +`+xt.showPosition()+` +Expecting `+Xt.join(", ")+", got '"+(this.terminals_[Mt]||Mt)+"'":_e="Parse error on line "+(yt+1)+": Unexpected "+(Mt==It?"end of input":"'"+(this.terminals_[Mt]||Mt)+"'"),this.parseError(_e,{text:xt.match,token:this.terminals_[Mt]||Mt,line:xt.yylineno,loc:kt,expected:Xt})}if(Ae[0]instanceof Array&&Ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+pn+", token: "+Mt);switch(Ae[0]){case 1:rt.push(Mt),gt.push(xt.yytext),Q.push(xt.yylloc),rt.push(Ae[1]),Mt=null,V=xt.yyleng,K=xt.yytext,yt=xt.yylineno,kt=xt.yylloc;break;case 2:if(be=this.productions_[Ae[1]][1],tn.$=gt[gt.length-be],tn._$={first_line:Q[Q.length-(be||1)].first_line,last_line:Q[Q.length-1].last_line,first_column:Q[Q.length-(be||1)].first_column,last_column:Q[Q.length-1].last_column},Gt&&(tn._$.range=[Q[Q.length-(be||1)].range[0],Q[Q.length-1].range[1]]),ye=this.performAction.apply(tn,[K,V,yt,Ft.yy,Ae[1],gt,Q].concat(jt)),typeof ye<"u")return ye;be&&(rt=rt.slice(0,-1*be*2),gt=gt.slice(0,-1*be),Q=Q.slice(0,-1*be)),rt.push(this.productions_[Ae[1]][0]),gt.push(tn.$),Q.push(tn._$),Ne=dt[rt[rt.length-2]][rt[rt.length-1]],rt.push(Ne);break;case 3:return!0}}return!0}},ot=function(){var wt={EOF:1,parseError:function(ct,rt){if(this.yy.parser)this.yy.parser.parseError(ct,rt);else throw new Error(ct)},setInput:function(mt,ct){return this.yy=ct||this.yy||{},this._input=mt,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 mt=this._input[0];this.yytext+=mt,this.yyleng++,this.offset++,this.match+=mt,this.matched+=mt;var ct=mt.match(/(?:\r\n?|\n).*/g);return ct?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),mt},unput:function(mt){var ct=mt.length,rt=mt.split(/(?:\r\n?|\n)/g);this._input=mt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ct),this.offset-=ct;var it=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),rt.length-1&&(this.yylineno-=rt.length-1);var gt=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:rt?(rt.length===it.length?this.yylloc.first_column:0)+it[it.length-rt.length].length-rt[0].length:this.yylloc.first_column-ct},this.options.ranges&&(this.yylloc.range=[gt[0],gt[0]+this.yyleng-ct]),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(mt){this.unput(this.match.slice(mt))},pastInput:function(){var mt=this.matched.substr(0,this.matched.length-this.match.length);return(mt.length>20?"...":"")+mt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var mt=this.match;return mt.length<20&&(mt+=this._input.substr(0,20-mt.length)),(mt.substr(0,20)+(mt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var mt=this.pastInput(),ct=new Array(mt.length+1).join("-");return mt+this.upcomingInput()+` +`+ct+"^"},test_match:function(mt,ct){var rt,it,gt;if(this.options.backtrack_lexer&&(gt={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&&(gt.yylloc.range=this.yylloc.range.slice(0))),it=mt[0].match(/(?:\r\n?|\n).*/g),it&&(this.yylineno+=it.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:it?it[it.length-1].length-it[it.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+mt[0].length},this.yytext+=mt[0],this.match+=mt[0],this.matches=mt,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(mt[0].length),this.matched+=mt[0],rt=this.performAction.call(this,this.yy,this,ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),rt)return rt;if(this._backtrack){for(var Q in gt)this[Q]=gt[Q];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var mt,ct,rt,it;this._more||(this.yytext="",this.match="");for(var gt=this._currentRules(),Q=0;Qct[0].length)){if(ct=rt,it=Q,this.options.backtrack_lexer){if(mt=this.test_match(rt,gt[Q]),mt!==!1)return mt;if(this._backtrack){ct=!1;continue}else return!1}else if(!this.options.flex)break}return ct?(mt=this.test_match(ct,gt[it]),mt!==!1?mt:!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 ct=this.next();return ct||this.lex()},begin:function(ct){this.conditionStack.push(ct)},popState:function(){var ct=this.conditionStack.length-1;return ct>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(ct){return ct=this.conditionStack.length-1-Math.abs(ct||0),ct>=0?this.conditionStack[ct]:"INITIAL"},pushState:function(ct){this.begin(ct)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ct,rt,it,gt){switch(it){case 0:break;case 1:break;case 2:return 20;case 3:break;case 4:break;case 5:return this.begin("title"),12;case 6:return this.popState(),"title_value";case 7:return this.begin("acc_title"),14;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),16;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:this.begin("string");break;case 15:this.popState();break;case 16:return"txt";case 17:return 5;case 18:return 7;case 19:return"value";case 20:return 22}},rules:[/^(?:%%(?!\{)[^\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:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[6],inclusive:!1},string:{rules:[15,16],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,7,9,11,14,17,18,19,20],inclusive:!0}}};return wt}();nt.lexer=ot;function ft(){this.yy={}}return ft.prototype=nt,nt.Parser=ft,new ft}();Ebt.parser=Ebt;const cXe=Ebt,Gzt=Bl.pie,dX={sections:{},showData:!1,config:Gzt};let gX=dX.sections,Tbt=dX.showData;const uXe=structuredClone(Gzt),lXe={getConfig:()=>structuredClone(uXe),clear:()=>{gX=structuredClone(dX.sections),Tbt=dX.showData,ag()},setDiagramTitle:S2,getDiagramTitle:Zg,setAccTitle:og,getAccTitle:Xg,setAccDescription:Qg,getAccDescription:Jg,addSection:(i,a)=>{i=Ef(i,Re()),gX[i]===void 0&&(gX[i]=a,Kt.debug(`added new section: ${i}, with value: ${a}`))},getSections:()=>gX,cleanupValue:i=>(i.substring(0,1)===":"&&(i=i.substring(1).trim()),Number(i.trim())),setShowData:i=>{Tbt=i},getShowData:()=>Tbt},hXe=i=>` + .pieCircle{ + stroke: ${i.pieStrokeColor}; + stroke-width : ${i.pieStrokeWidth}; + opacity : ${i.pieOpacity}; + } + .pieOuterCircle{ + stroke: ${i.pieOuterStrokeColor}; + stroke-width: ${i.pieOuterStrokeWidth}; + fill: none; + } + .pieTitleText { + text-anchor: middle; + font-size: ${i.pieTitleTextSize}; + fill: ${i.pieTitleTextColor}; + font-family: ${i.fontFamily}; + } + .slice { + font-family: ${i.fontFamily}; + fill: ${i.pieSectionTextColor}; + font-size:${i.pieSectionTextSize}; + // fill: white; + } + .legend text { + fill: ${i.pieLegendTextColor}; + font-family: ${i.fontFamily}; + font-size: ${i.pieLegendTextSize}; + } +`,fXe=i=>{const a=Object.entries(i).map(g=>({label:g[0],value:g[1]})).sort((g,w)=>w.value-g.value);return pDe().value(g=>g.value)(a)},dXe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:cXe,db:lXe,renderer:{draw:(i,a,f,g)=>{Kt.debug(`rendering pie chart +`+i);const w=g.db,v=Re(),b=MF(w.getConfig(),v.pie),E=40,S=18,_=4,M=450,F=M,R=FF(a),B=R.append("g"),z=w.getSections();B.attr("transform","translate("+F/2+","+M/2+")");const{themeVariables:Y}=v;let[nt]=k9(Y.pieOuterStrokeWidth);nt??(nt=2);const ot=b.textPosition,ft=Math.min(F,M)/2-E,wt=YL().innerRadius(0).outerRadius(ft),mt=YL().innerRadius(ft*ot).outerRadius(ft*ot);B.append("circle").attr("cx",0).attr("cy",0).attr("r",ft+nt/2).attr("class","pieOuterCircle");const ct=fXe(z),rt=[Y.pie1,Y.pie2,Y.pie3,Y.pie4,Y.pie5,Y.pie6,Y.pie7,Y.pie8,Y.pie9,Y.pie10,Y.pie11,Y.pie12],it=oF(rt);B.selectAll("mySlices").data(ct).enter().append("path").attr("d",wt).attr("fill",yt=>it(yt.data.label)).attr("class","pieCircle");let gt=0;Object.keys(z).forEach(yt=>{gt+=z[yt]}),B.selectAll("mySlices").data(ct).enter().append("text").text(yt=>(yt.data.value/gt*100).toFixed(0)+"%").attr("transform",yt=>"translate("+mt.centroid(yt)+")").style("text-anchor","middle").attr("class","slice"),B.append("text").text(w.getDiagramTitle()).attr("x",0).attr("y",-(M-50)/2).attr("class","pieTitleText");const Q=B.selectAll(".legend").data(it.domain()).enter().append("g").attr("class","legend").attr("transform",(yt,V)=>{const Ot=S+_,It=Ot*it.domain().length/2,jt=12*S,xt=V*Ot-It;return"translate("+jt+","+xt+")"});Q.append("rect").attr("width",S).attr("height",S).style("fill",it).style("stroke",it),Q.data(ct).append("text").attr("x",S+_).attr("y",S-_).text(yt=>{const{label:V,value:Ot}=yt.data;return w.getShowData()?`${V} [${Ot}]`:V});const dt=Math.max(...Q.selectAll("text").nodes().map(yt=>(yt==null?void 0:yt.getBoundingClientRect().width)??0)),K=F+E+S+_+dt;R.attr("viewBox",`0 0 ${K} ${M}`),sg(R,M,K,b.useMaxWidth)}},styles:hXe}},Symbol.toStringTag,{value:"Module"}));var Cbt=function(){var i=function(Ae,ye,tn,sn){for(tn=tn||{},sn=Ae.length;sn--;tn[Ae[sn]]=ye);return tn},a=[1,3],f=[1,4],g=[1,5],w=[1,6],v=[1,7],b=[1,5,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],E=[1,5,6,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],S=[32,33,34],_=[2,7],M=[1,13],F=[1,17],R=[1,18],B=[1,19],z=[1,20],Y=[1,21],nt=[1,22],ot=[1,23],ft=[1,24],wt=[1,25],mt=[1,26],ct=[1,27],rt=[1,30],it=[1,31],gt=[1,32],Q=[1,33],dt=[1,34],K=[1,35],yt=[1,36],V=[1,37],Ot=[1,38],It=[1,39],jt=[1,40],xt=[1,41],Ft=[1,42],Ct=[1,57],kt=[1,58],Gt=[5,22,26,32,33,34,40,41,42,43,44,45,46,47,48,49,50,51],Fe={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,QUADRANT:6,document:7,line:8,statement:9,axisDetails:10,quadrantDetails:11,points: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,text:21,point_start:22,point_x:23,point_y:24,"X-AXIS":25,"AXIS-TEXT-DELIMITER":26,"Y-AXIS":27,QUADRANT_1:28,QUADRANT_2:29,QUADRANT_3:30,QUADRANT_4:31,NEWLINE:32,SEMI:33,EOF:34,alphaNumToken:35,textNoTagsToken:36,STR:37,MD_STR:38,alphaNum:39,PUNCTUATION:40,AMP:41,NUM:42,ALPHA:43,COMMA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,UNDERSCORE:50,MINUS:51,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",6:"QUADRANT",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",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:"NEWLINE",33:"SEMI",34:"EOF",37:"STR",38:"MD_STR",40:"PUNCTUATION",41:"AMP",42:"NUM",43:"ALPHA",44:"COMMA",45:"PLUS",46:"EQUALS",47:"MULT",48:"DOT",49:"BRKT",50:"UNDERSCORE",51:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[9,0],[9,2],[9,1],[9,1],[9,1],[9,2],[9,2],[9,2],[9,1],[9,1],[12,4],[10,4],[10,3],[10,2],[10,4],[10,3],[10,2],[11,2],[11,2],[11,2],[11,2],[4,1],[4,1],[4,1],[21,1],[21,2],[21,1],[21,1],[39,1],[39,2],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[36,1],[36,1],[36,1]],performAction:function(ye,tn,sn,be,Ne,Xt,_e){var xe=Xt.length-1;switch(Ne){case 12:this.$=Xt[xe].trim(),be.setDiagramTitle(this.$);break;case 13:this.$=Xt[xe].trim(),be.setAccTitle(this.$);break;case 14:case 15:this.$=Xt[xe].trim(),be.setAccDescription(this.$);break;case 16:be.addSection(Xt[xe].substr(8)),this.$=Xt[xe].substr(8);break;case 17:be.addPoint(Xt[xe-3],Xt[xe-1],Xt[xe]);break;case 18:be.setXAxisLeftText(Xt[xe-2]),be.setXAxisRightText(Xt[xe]);break;case 19:Xt[xe-1].text+=" ⟶ ",be.setXAxisLeftText(Xt[xe-1]);break;case 20:be.setXAxisLeftText(Xt[xe]);break;case 21:be.setYAxisBottomText(Xt[xe-2]),be.setYAxisTopText(Xt[xe]);break;case 22:Xt[xe-1].text+=" ⟶ ",be.setYAxisBottomText(Xt[xe-1]);break;case 23:be.setYAxisBottomText(Xt[xe]);break;case 24:be.setQuadrant1Text(Xt[xe]);break;case 25:be.setQuadrant2Text(Xt[xe]);break;case 26:be.setQuadrant3Text(Xt[xe]);break;case 27:be.setQuadrant4Text(Xt[xe]);break;case 31:this.$={text:Xt[xe],type:"text"};break;case 32:this.$={text:Xt[xe-1].text+""+Xt[xe],type:Xt[xe-1].type};break;case 33:this.$={text:Xt[xe],type:"text"};break;case 34:this.$={text:Xt[xe],type:"markdown"};break;case 35:this.$=Xt[xe];break;case 36:this.$=Xt[xe-1]+""+Xt[xe];break}},table:[{3:1,4:2,5:a,6:f,32:g,33:w,34:v},{1:[3]},{3:8,4:2,5:a,6:f,32:g,33:w,34:v},{3:9,4:2,5:a,6:f,32:g,33:w,34:v},i(b,[2,4],{7:10}),i(E,[2,28]),i(E,[2,29]),i(E,[2,30]),{1:[2,1]},{1:[2,2]},i(S,_,{8:11,9:12,10:14,11:15,12:16,21:28,35:29,1:[2,3],5:M,13:F,15:R,17:B,19:z,20:Y,25:nt,27:ot,28:ft,29:wt,30:mt,31:ct,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft}),i(b,[2,5]),{4:43,32:g,33:w,34:v},i(S,_,{10:14,11:15,12:16,21:28,35:29,9:44,5:M,13:F,15:R,17:B,19:z,20:Y,25:nt,27:ot,28:ft,29:wt,30:mt,31:ct,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft}),i(S,[2,9]),i(S,[2,10]),i(S,[2,11]),{14:[1,45]},{16:[1,46]},{18:[1,47]},i(S,[2,15]),i(S,[2,16]),{21:48,35:29,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft},{21:49,35:29,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft},{21:50,35:29,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft},{21:51,35:29,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft},{21:52,35:29,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft},{21:53,35:29,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft},{5:Ct,22:[1,54],35:56,36:55,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft,51:kt},i(Gt,[2,31]),i(Gt,[2,33]),i(Gt,[2,34]),i(Gt,[2,37]),i(Gt,[2,38]),i(Gt,[2,39]),i(Gt,[2,40]),i(Gt,[2,41]),i(Gt,[2,42]),i(Gt,[2,43]),i(Gt,[2,44]),i(Gt,[2,45]),i(Gt,[2,46]),i(Gt,[2,47]),i(b,[2,6]),i(S,[2,8]),i(S,[2,12]),i(S,[2,13]),i(S,[2,14]),i(S,[2,20],{36:55,35:56,5:Ct,26:[1,59],40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft,51:kt}),i(S,[2,23],{36:55,35:56,5:Ct,26:[1,60],40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft,51:kt}),i(S,[2,24],{36:55,35:56,5:Ct,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft,51:kt}),i(S,[2,25],{36:55,35:56,5:Ct,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft,51:kt}),i(S,[2,26],{36:55,35:56,5:Ct,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft,51:kt}),i(S,[2,27],{36:55,35:56,5:Ct,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft,51:kt}),{23:[1,61]},i(Gt,[2,32]),i(Gt,[2,48]),i(Gt,[2,49]),i(Gt,[2,50]),i(S,[2,19],{35:29,21:62,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft}),i(S,[2,22],{35:29,21:63,37:rt,38:it,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft}),{24:[1,64]},i(S,[2,18],{36:55,35:56,5:Ct,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft,51:kt}),i(S,[2,21],{36:55,35:56,5:Ct,40:gt,41:Q,42:dt,43:K,44:yt,45:V,46:Ot,47:It,48:jt,49:xt,50:Ft,51:kt}),i(S,[2,17])],defaultActions:{8:[2,1],9:[2,2]},parseError:function(ye,tn){if(tn.recoverable)this.trace(ye);else{var sn=new Error(ye);throw sn.hash=tn,sn}},parse:function(ye){var tn=this,sn=[0],be=[],Ne=[null],Xt=[],_e=this.table,xe="",Mn=0,ce=0,Br=2,we=1,Fi=Xt.slice.call(arguments,1),mi=Object.create(this.lexer),ga={yy:{}};for(var Ss in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ss)&&(ga.yy[Ss]=this.yy[Ss]);mi.setInput(ye,ga.yy),ga.yy.lexer=mi,ga.yy.parser=this,typeof mi.yylloc>"u"&&(mi.yylloc={});var za=mi.yylloc;Xt.push(za);var br=mi.options&&mi.options.ranges;typeof ga.yy.parseError=="function"?this.parseError=ga.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function An(){var va;return va=be.pop()||mi.lex()||we,typeof va!="number"&&(va instanceof Array&&(be=va,va=be.pop()),va=tn.symbols_[va]||va),va}for(var Nn,Bn,ke,pe,Je={},an,xn,qa,xo;;){if(Bn=sn[sn.length-1],this.defaultActions[Bn]?ke=this.defaultActions[Bn]:((Nn===null||typeof Nn>"u")&&(Nn=An()),ke=_e[Bn]&&_e[Bn][Nn]),typeof ke>"u"||!ke.length||!ke[0]){var ko="";xo=[];for(an in _e[Bn])this.terminals_[an]&&an>Br&&xo.push("'"+this.terminals_[an]+"'");mi.showPosition?ko="Parse error on line "+(Mn+1)+`: +`+mi.showPosition()+` +Expecting `+xo.join(", ")+", got '"+(this.terminals_[Nn]||Nn)+"'":ko="Parse error on line "+(Mn+1)+": Unexpected "+(Nn==we?"end of input":"'"+(this.terminals_[Nn]||Nn)+"'"),this.parseError(ko,{text:mi.match,token:this.terminals_[Nn]||Nn,line:mi.yylineno,loc:za,expected:xo})}if(ke[0]instanceof Array&&ke.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Bn+", token: "+Nn);switch(ke[0]){case 1:sn.push(Nn),Ne.push(mi.yytext),Xt.push(mi.yylloc),sn.push(ke[1]),Nn=null,ce=mi.yyleng,xe=mi.yytext,Mn=mi.yylineno,za=mi.yylloc;break;case 2:if(xn=this.productions_[ke[1]][1],Je.$=Ne[Ne.length-xn],Je._$={first_line:Xt[Xt.length-(xn||1)].first_line,last_line:Xt[Xt.length-1].last_line,first_column:Xt[Xt.length-(xn||1)].first_column,last_column:Xt[Xt.length-1].last_column},br&&(Je._$.range=[Xt[Xt.length-(xn||1)].range[0],Xt[Xt.length-1].range[1]]),pe=this.performAction.apply(Je,[xe,ce,Mn,ga.yy,ke[1],Ne,Xt].concat(Fi)),typeof pe<"u")return pe;xn&&(sn=sn.slice(0,-1*xn*2),Ne=Ne.slice(0,-1*xn),Xt=Xt.slice(0,-1*xn)),sn.push(this.productions_[ke[1]][0]),Ne.push(Je.$),Xt.push(Je._$),qa=_e[sn[sn.length-2]][sn[sn.length-1]],sn.push(qa);break;case 3:return!0}}return!0}},Mt=function(){var Ae={EOF:1,parseError:function(tn,sn){if(this.yy.parser)this.yy.parser.parseError(tn,sn);else throw new Error(tn)},setInput:function(ye,tn){return this.yy=tn||this.yy||{},this._input=ye,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ye=this._input[0];this.yytext+=ye,this.yyleng++,this.offset++,this.match+=ye,this.matched+=ye;var tn=ye.match(/(?:\r\n?|\n).*/g);return tn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ye},unput:function(ye){var tn=ye.length,sn=ye.split(/(?:\r\n?|\n)/g);this._input=ye+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-tn),this.offset-=tn;var be=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),sn.length-1&&(this.yylineno-=sn.length-1);var Ne=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:sn?(sn.length===be.length?this.yylloc.first_column:0)+be[be.length-sn.length].length-sn[0].length:this.yylloc.first_column-tn},this.options.ranges&&(this.yylloc.range=[Ne[0],Ne[0]+this.yyleng-tn]),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(ye){this.unput(this.match.slice(ye))},pastInput:function(){var ye=this.matched.substr(0,this.matched.length-this.match.length);return(ye.length>20?"...":"")+ye.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ye=this.match;return ye.length<20&&(ye+=this._input.substr(0,20-ye.length)),(ye.substr(0,20)+(ye.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ye=this.pastInput(),tn=new Array(ye.length+1).join("-");return ye+this.upcomingInput()+` +`+tn+"^"},test_match:function(ye,tn){var sn,be,Ne;if(this.options.backtrack_lexer&&(Ne={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&&(Ne.yylloc.range=this.yylloc.range.slice(0))),be=ye[0].match(/(?:\r\n?|\n).*/g),be&&(this.yylineno+=be.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:be?be[be.length-1].length-be[be.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ye[0].length},this.yytext+=ye[0],this.match+=ye[0],this.matches=ye,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ye[0].length),this.matched+=ye[0],sn=this.performAction.call(this,this.yy,this,tn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),sn)return sn;if(this._backtrack){for(var Xt in Ne)this[Xt]=Ne[Xt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ye,tn,sn,be;this._more||(this.yytext="",this.match="");for(var Ne=this._currentRules(),Xt=0;Xttn[0].length)){if(tn=sn,be=Xt,this.options.backtrack_lexer){if(ye=this.test_match(sn,Ne[Xt]),ye!==!1)return ye;if(this._backtrack){tn=!1;continue}else return!1}else if(!this.options.flex)break}return tn?(ye=this.test_match(tn,Ne[be]),ye!==!1?ye:!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 tn=this.next();return tn||this.lex()},begin:function(tn){this.conditionStack.push(tn)},popState:function(){var tn=this.conditionStack.length-1;return tn>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(tn){return tn=this.conditionStack.length-1-Math.abs(tn||0),tn>=0?this.conditionStack[tn]:"INITIAL"},pushState:function(tn){this.begin(tn)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(tn,sn,be,Ne){switch(be){case 0:break;case 1:break;case 2:return 32;case 3:break;case 4:return this.begin("title"),13;case 5:return this.popState(),"title_value";case 6:return this.begin("acc_title"),15;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),17;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 25;case 14:return 27;case 15:return 26;case 16:return 28;case 17:return 29;case 18:return 30;case 19:return 31;case 20:this.begin("md_string");break;case 21:return"MD_STR";case 22:this.popState();break;case 23:this.begin("string");break;case 24:this.popState();break;case 25:return"STR";case 26:return this.begin("point_start"),22;case 27:return this.begin("point_x"),23;case 28:this.popState();break;case 29:this.popState(),this.begin("point_y");break;case 30:return this.popState(),24;case 31:return 6;case 32:return 43;case 33:return"COLON";case 34:return 45;case 35:return 44;case 36:return 46;case 37:return 46;case 38:return 47;case 39:return 49;case 40:return 50;case 41:return 48;case 42:return 41;case 43:return 51;case 44:return 42;case 45:return 5;case 46:return 33;case 47:return 40;case 48:return 34}},rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:["][`])/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:[30],inclusive:!1},point_x:{rules:[29],inclusive:!1},point_start:{rules:[27,28],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[21,22],inclusive:!1},string:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,23,26,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],inclusive:!0}}};return Ae}();Fe.lexer=Mt;function pn(){this.yy={}}return pn.prototype=Fe,Fe.Parser=pn,new pn}();Cbt.parser=Cbt;const gXe=Cbt,rp=dgt();class pXe{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 a,f,g,w,v,b,E,S,_,M,F,R,B,z,Y,nt,ot,ft;return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:((a=Bl.quadrantChart)==null?void 0:a.chartWidth)||500,chartWidth:((f=Bl.quadrantChart)==null?void 0:f.chartHeight)||500,titlePadding:((g=Bl.quadrantChart)==null?void 0:g.titlePadding)||10,titleFontSize:((w=Bl.quadrantChart)==null?void 0:w.titleFontSize)||20,quadrantPadding:((v=Bl.quadrantChart)==null?void 0:v.quadrantPadding)||5,xAxisLabelPadding:((b=Bl.quadrantChart)==null?void 0:b.xAxisLabelPadding)||5,yAxisLabelPadding:((E=Bl.quadrantChart)==null?void 0:E.yAxisLabelPadding)||5,xAxisLabelFontSize:((S=Bl.quadrantChart)==null?void 0:S.xAxisLabelFontSize)||16,yAxisLabelFontSize:((_=Bl.quadrantChart)==null?void 0:_.yAxisLabelFontSize)||16,quadrantLabelFontSize:((M=Bl.quadrantChart)==null?void 0:M.quadrantLabelFontSize)||16,quadrantTextTopPadding:((F=Bl.quadrantChart)==null?void 0:F.quadrantTextTopPadding)||5,pointTextPadding:((R=Bl.quadrantChart)==null?void 0:R.pointTextPadding)||5,pointLabelFontSize:((B=Bl.quadrantChart)==null?void 0:B.pointLabelFontSize)||12,pointRadius:((z=Bl.quadrantChart)==null?void 0:z.pointRadius)||5,xAxisPosition:((Y=Bl.quadrantChart)==null?void 0:Y.xAxisPosition)||"top",yAxisPosition:((nt=Bl.quadrantChart)==null?void 0:nt.yAxisPosition)||"left",quadrantInternalBorderStrokeWidth:((ot=Bl.quadrantChart)==null?void 0:ot.quadrantInternalBorderStrokeWidth)||1,quadrantExternalBorderStrokeWidth:((ft=Bl.quadrantChart)==null?void 0:ft.quadrantExternalBorderStrokeWidth)||2}}getDefaultThemeConfig(){return{quadrant1Fill:rp.quadrant1Fill,quadrant2Fill:rp.quadrant2Fill,quadrant3Fill:rp.quadrant3Fill,quadrant4Fill:rp.quadrant4Fill,quadrant1TextFill:rp.quadrant1TextFill,quadrant2TextFill:rp.quadrant2TextFill,quadrant3TextFill:rp.quadrant3TextFill,quadrant4TextFill:rp.quadrant4TextFill,quadrantPointFill:rp.quadrantPointFill,quadrantPointTextFill:rp.quadrantPointTextFill,quadrantXAxisTextFill:rp.quadrantXAxisTextFill,quadrantYAxisTextFill:rp.quadrantYAxisTextFill,quadrantTitleFill:rp.quadrantTitleFill,quadrantInternalBorderStrokeFill:rp.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:rp.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),Kt.info("clear called")}setData(a){this.data={...this.data,...a}}addPoints(a){this.data.points=[...a,...this.data.points]}setConfig(a){Kt.trace("setConfig called with: ",a),this.config={...this.config,...a}}setThemeConfig(a){Kt.trace("setThemeConfig called with: ",a),this.themeConfig={...this.themeConfig,...a}}calculateSpace(a,f,g,w){const v=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,b={top:a==="top"&&f?v:0,bottom:a==="bottom"&&f?v:0},E=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,S={left:this.config.yAxisPosition==="left"&&g?E:0,right:this.config.yAxisPosition==="right"&&g?E:0},_=this.config.titleFontSize+this.config.titlePadding*2,M={top:w?_:0},F=this.config.quadrantPadding+S.left,R=this.config.quadrantPadding+b.top+M.top,B=this.config.chartWidth-this.config.quadrantPadding*2-S.left-S.right,z=this.config.chartHeight-this.config.quadrantPadding*2-b.top-b.bottom-M.top,Y=B/2,nt=z/2;return{xAxisSpace:b,yAxisSpace:S,titleSpace:M,quadrantSpace:{quadrantLeft:F,quadrantTop:R,quadrantWidth:B,quadrantHalfWidth:Y,quadrantHeight:z,quadrantHalfHeight:nt}}}getAxisLabels(a,f,g,w){const{quadrantSpace:v,titleSpace:b}=w,{quadrantHalfHeight:E,quadrantHeight:S,quadrantLeft:_,quadrantHalfWidth:M,quadrantTop:F,quadrantWidth:R}=v,B=!!this.data.xAxisRightText,z=!!this.data.yAxisTopText,Y=[];return this.data.xAxisLeftText&&f&&Y.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:_+(B?M/2:0),y:a==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+F+S+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:B?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&f&&Y.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:_+M+(B?M/2:0),y:a==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+F+S+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:B?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&g&&Y.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+_+R+this.config.quadrantPadding,y:F+S-(z?E/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:z?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&g&&Y.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+_+R+this.config.quadrantPadding,y:F+E-(z?E/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:z?"center":"left",horizontalPos:"top",rotation:-90}),Y}getQuadrants(a){const{quadrantSpace:f}=a,{quadrantHalfHeight:g,quadrantLeft:w,quadrantHalfWidth:v,quadrantTop:b}=f,E=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:w+v,y:b,width:v,height:g,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:w,y:b,width:v,height:g,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:w,y:b+g,width:v,height:g,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:w+v,y:b+g,width:v,height:g,fill:this.themeConfig.quadrant4Fill}];for(const S of E)S.text.x=S.x+S.width/2,this.data.points.length===0?(S.text.y=S.y+S.height/2,S.text.horizontalPos="middle"):(S.text.y=S.y+this.config.quadrantTextTopPadding,S.text.horizontalPos="top");return E}getQuadrantPoints(a){const{quadrantSpace:f}=a,{quadrantHeight:g,quadrantLeft:w,quadrantTop:v,quadrantWidth:b}=f,E=VL().domain([0,1]).range([w,b+w]),S=VL().domain([0,1]).range([g+v,v]);return this.data.points.map(M=>({x:E(M.x),y:S(M.y),fill:this.themeConfig.quadrantPointFill,radius:this.config.pointRadius,text:{text:M.text,fill:this.themeConfig.quadrantPointTextFill,x:E(M.x),y:S(M.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0}}))}getBorders(a){const f=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:g}=a,{quadrantHalfHeight:w,quadrantHeight:v,quadrantLeft:b,quadrantHalfWidth:E,quadrantTop:S,quadrantWidth:_}=g;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-f,y1:S,x2:b+_+f,y2:S},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b+_,y1:S+f,x2:b+_,y2:S+v-f},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-f,y1:S+v,x2:b+_+f,y2:S+v},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b,y1:S+f,x2:b,y2:S+v-f},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+E,y1:S+f,x2:b+E,y2:S+v-f},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+f,y1:S+w,x2:b+_-f,y2:S+w}]}getTitle(a){if(a)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){const a=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),f=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),g=this.config.showTitle&&!!this.data.titleText,w=this.data.points.length>0?"bottom":this.config.xAxisPosition,v=this.calculateSpace(w,a,f,g);return{points:this.getQuadrantPoints(v),quadrants:this.getQuadrants(v),axisLabels:this.getAxisLabels(w,a,f,v),borderLines:this.getBorders(v),title:this.getTitle(g)}}}const bXe=Re();function qx(i){return Ef(i.trim(),bXe)}const ug=new pXe;function wXe(i){ug.setData({quadrant1Text:qx(i.text)})}function mXe(i){ug.setData({quadrant2Text:qx(i.text)})}function vXe(i){ug.setData({quadrant3Text:qx(i.text)})}function yXe(i){ug.setData({quadrant4Text:qx(i.text)})}function xXe(i){ug.setData({xAxisLeftText:qx(i.text)})}function kXe(i){ug.setData({xAxisRightText:qx(i.text)})}function EXe(i){ug.setData({yAxisTopText:qx(i.text)})}function TXe(i){ug.setData({yAxisBottomText:qx(i.text)})}function CXe(i,a,f){ug.addPoints([{x:a,y:f,text:qx(i.text)}])}function SXe(i){ug.setConfig({chartWidth:i})}function _Xe(i){ug.setConfig({chartHeight:i})}function AXe(){const i=Re(),{themeVariables:a,quadrantChart:f}=i;return f&&ug.setConfig(f),ug.setThemeConfig({quadrant1Fill:a.quadrant1Fill,quadrant2Fill:a.quadrant2Fill,quadrant3Fill:a.quadrant3Fill,quadrant4Fill:a.quadrant4Fill,quadrant1TextFill:a.quadrant1TextFill,quadrant2TextFill:a.quadrant2TextFill,quadrant3TextFill:a.quadrant3TextFill,quadrant4TextFill:a.quadrant4TextFill,quadrantPointFill:a.quadrantPointFill,quadrantPointTextFill:a.quadrantPointTextFill,quadrantXAxisTextFill:a.quadrantXAxisTextFill,quadrantYAxisTextFill:a.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:a.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:a.quadrantInternalBorderStrokeFill,quadrantTitleFill:a.quadrantTitleFill}),ug.setData({titleText:Zg()}),ug.build()}const LXe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:gXe,db:{setWidth:SXe,setHeight:_Xe,setQuadrant1Text:wXe,setQuadrant2Text:mXe,setQuadrant3Text:vXe,setQuadrant4Text:yXe,setXAxisLeftText:xXe,setXAxisRightText:kXe,setYAxisTopText:EXe,setYAxisBottomText:TXe,addPoint:CXe,getQuadrantData:AXe,clear:function(){ug.clear(),ag()},setAccTitle:og,getAccTitle:Xg,setDiagramTitle:S2,getDiagramTitle:Zg,getAccDescription:Jg,setAccDescription:Qg},renderer:{draw:(i,a,f,g)=>{var gt,Q,dt;function w(K){return K==="top"?"hanging":"middle"}function v(K){return K==="left"?"start":"middle"}function b(K){return`translate(${K.x}, ${K.y}) rotate(${K.rotation||0})`}const E=Re();Kt.debug(`Rendering quadrant chart +`+i);const S=E.securityLevel;let _;S==="sandbox"&&(_=Tr("#i"+a));const F=Tr(S==="sandbox"?_.nodes()[0].contentDocument.body:"body").select(`[id="${a}"]`),R=F.append("g").attr("class","main"),B=((gt=E.quadrantChart)==null?void 0:gt.chartWidth)||500,z=((Q=E.quadrantChart)==null?void 0:Q.chartHeight)||500;sg(F,z,B,((dt=E.quadrantChart)==null?void 0:dt.useMaxWidth)||!0),F.attr("viewBox","0 0 "+B+" "+z),g.db.setHeight(z),g.db.setWidth(B);const Y=g.db.getQuadrantData(),nt=R.append("g").attr("class","quadrants"),ot=R.append("g").attr("class","border"),ft=R.append("g").attr("class","data-points"),wt=R.append("g").attr("class","labels"),mt=R.append("g").attr("class","title");Y.title&&mt.append("text").attr("x",0).attr("y",0).attr("fill",Y.title.fill).attr("font-size",Y.title.fontSize).attr("dominant-baseline",w(Y.title.horizontalPos)).attr("text-anchor",v(Y.title.verticalPos)).attr("transform",b(Y.title)).text(Y.title.text),Y.borderLines&&ot.selectAll("line").data(Y.borderLines).enter().append("line").attr("x1",K=>K.x1).attr("y1",K=>K.y1).attr("x2",K=>K.x2).attr("y2",K=>K.y2).style("stroke",K=>K.strokeFill).style("stroke-width",K=>K.strokeWidth);const ct=nt.selectAll("g.quadrant").data(Y.quadrants).enter().append("g").attr("class","quadrant");ct.append("rect").attr("x",K=>K.x).attr("y",K=>K.y).attr("width",K=>K.width).attr("height",K=>K.height).attr("fill",K=>K.fill),ct.append("text").attr("x",0).attr("y",0).attr("fill",K=>K.text.fill).attr("font-size",K=>K.text.fontSize).attr("dominant-baseline",K=>w(K.text.horizontalPos)).attr("text-anchor",K=>v(K.text.verticalPos)).attr("transform",K=>b(K.text)).text(K=>K.text.text),wt.selectAll("g.label").data(Y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(K=>K.text).attr("fill",K=>K.fill).attr("font-size",K=>K.fontSize).attr("dominant-baseline",K=>w(K.horizontalPos)).attr("text-anchor",K=>v(K.verticalPos)).attr("transform",K=>b(K));const it=ft.selectAll("g.data-point").data(Y.points).enter().append("g").attr("class","data-point");it.append("circle").attr("cx",K=>K.x).attr("cy",K=>K.y).attr("r",K=>K.radius).attr("fill",K=>K.fill),it.append("text").attr("x",0).attr("y",0).text(K=>K.text.text).attr("fill",K=>K.text.fill).attr("font-size",K=>K.text.fontSize).attr("dominant-baseline",K=>w(K.text.horizontalPos)).attr("text-anchor",K=>v(K.text.verticalPos)).attr("transform",K=>b(K.text))}},styles:()=>""}},Symbol.toStringTag,{value:"Module"}));var Sbt=function(){var i=function(It,jt,xt,Ft){for(xt=xt||{},Ft=It.length;Ft--;xt[It[Ft]]=jt);return xt},a=[1,10,12,14,16,18,19,21,23],f=[2,6],g=[1,3],w=[1,5],v=[1,6],b=[1,7],E=[1,5,10,12,14,16,18,19,21,23,34,35,36],S=[1,25],_=[1,26],M=[1,28],F=[1,29],R=[1,30],B=[1,31],z=[1,32],Y=[1,33],nt=[1,34],ot=[1,35],ft=[1,36],wt=[1,37],mt=[1,43],ct=[1,42],rt=[1,47],it=[1,50],gt=[1,10,12,14,16,18,19,21,23,34,35,36],Q=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],dt=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],K=[1,64],yt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:function(jt,xt,Ft,Ct,kt,Gt,Fe){var Mt=Gt.length-1;switch(kt){case 5:Ct.setOrientation(Gt[Mt]);break;case 9:Ct.setDiagramTitle(Gt[Mt].text.trim());break;case 12:Ct.setLineData({text:"",type:"text"},Gt[Mt]);break;case 13:Ct.setLineData(Gt[Mt-1],Gt[Mt]);break;case 14:Ct.setBarData({text:"",type:"text"},Gt[Mt]);break;case 15:Ct.setBarData(Gt[Mt-1],Gt[Mt]);break;case 16:this.$=Gt[Mt].trim(),Ct.setAccTitle(this.$);break;case 17:case 18:this.$=Gt[Mt].trim(),Ct.setAccDescription(this.$);break;case 19:this.$=Gt[Mt-1];break;case 20:this.$=[Number(Gt[Mt-2]),...Gt[Mt]];break;case 21:this.$=[Number(Gt[Mt])];break;case 22:Ct.setXAxisTitle(Gt[Mt]);break;case 23:Ct.setXAxisTitle(Gt[Mt-1]);break;case 24:Ct.setXAxisTitle({type:"text",text:""});break;case 25:Ct.setXAxisBand(Gt[Mt]);break;case 26:Ct.setXAxisRangeData(Number(Gt[Mt-2]),Number(Gt[Mt]));break;case 27:this.$=Gt[Mt-1];break;case 28:this.$=[Gt[Mt-2],...Gt[Mt]];break;case 29:this.$=[Gt[Mt]];break;case 30:Ct.setYAxisTitle(Gt[Mt]);break;case 31:Ct.setYAxisTitle(Gt[Mt-1]);break;case 32:Ct.setYAxisTitle({type:"text",text:""});break;case 33:Ct.setYAxisRangeData(Number(Gt[Mt-2]),Number(Gt[Mt]));break;case 37:this.$={text:Gt[Mt],type:"text"};break;case 38:this.$={text:Gt[Mt],type:"text"};break;case 39:this.$={text:Gt[Mt],type:"markdown"};break;case 40:this.$=Gt[Mt];break;case 41:this.$=Gt[Mt-1]+""+Gt[Mt];break}},table:[i(a,f,{3:1,4:2,7:4,5:g,34:w,35:v,36:b}),{1:[3]},i(a,f,{4:2,7:4,3:8,5:g,34:w,35:v,36:b}),i(a,f,{4:2,7:4,6:9,3:10,5:g,8:[1,11],34:w,35:v,36:b}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},i(E,[2,34]),i(E,[2,35]),i(E,[2,36]),{1:[2,1]},i(a,f,{4:2,7:4,3:21,5:g,34:w,35:v,36:b}),{1:[2,3]},i(E,[2,5]),i(a,[2,7],{4:22,34:w,35:v,36:b}),{11:23,37:24,38:S,39:_,40:27,41:M,42:F,43:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt},{11:39,13:38,24:mt,27:ct,29:40,30:41,37:24,38:S,39:_,40:27,41:M,42:F,43:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt},{11:45,15:44,27:rt,33:46,37:24,38:S,39:_,40:27,41:M,42:F,43:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt},{11:49,17:48,24:it,37:24,38:S,39:_,40:27,41:M,42:F,43:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt},{11:52,17:51,24:it,37:24,38:S,39:_,40:27,41:M,42:F,43:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt},{20:[1,53]},{22:[1,54]},i(gt,[2,18]),{1:[2,2]},i(gt,[2,8]),i(gt,[2,9]),i(Q,[2,37],{40:55,41:M,42:F,43:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt}),i(Q,[2,38]),i(Q,[2,39]),i(dt,[2,40]),i(dt,[2,42]),i(dt,[2,43]),i(dt,[2,44]),i(dt,[2,45]),i(dt,[2,46]),i(dt,[2,47]),i(dt,[2,48]),i(dt,[2,49]),i(dt,[2,50]),i(dt,[2,51]),i(gt,[2,10]),i(gt,[2,22],{30:41,29:56,24:mt,27:ct}),i(gt,[2,24]),i(gt,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:S,39:_,40:27,41:M,42:F,43:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt},i(gt,[2,11]),i(gt,[2,30],{33:60,27:rt}),i(gt,[2,32]),{31:[1,61]},i(gt,[2,12]),{17:62,24:it},{25:63,27:K},i(gt,[2,14]),{17:65,24:it},i(gt,[2,16]),i(gt,[2,17]),i(dt,[2,41]),i(gt,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},i(gt,[2,31]),{27:[1,69]},i(gt,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},i(gt,[2,15]),i(gt,[2,26]),i(gt,[2,27]),{11:59,32:72,37:24,38:S,39:_,40:27,41:M,42:F,43:R,44:B,45:z,46:Y,47:nt,48:ot,49:ft,50:wt},i(gt,[2,33]),i(gt,[2,19]),{25:73,27:K},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:function(jt,xt){if(xt.recoverable)this.trace(jt);else{var Ft=new Error(jt);throw Ft.hash=xt,Ft}},parse:function(jt){var xt=this,Ft=[0],Ct=[],kt=[null],Gt=[],Fe=this.table,Mt="",pn=0,Ae=0,ye=2,tn=1,sn=Gt.slice.call(arguments,1),be=Object.create(this.lexer),Ne={yy:{}};for(var Xt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Xt)&&(Ne.yy[Xt]=this.yy[Xt]);be.setInput(jt,Ne.yy),Ne.yy.lexer=be,Ne.yy.parser=this,typeof be.yylloc>"u"&&(be.yylloc={});var _e=be.yylloc;Gt.push(_e);var xe=be.options&&be.options.ranges;typeof Ne.yy.parseError=="function"?this.parseError=Ne.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mn(){var Nn;return Nn=Ct.pop()||be.lex()||tn,typeof Nn!="number"&&(Nn instanceof Array&&(Ct=Nn,Nn=Ct.pop()),Nn=xt.symbols_[Nn]||Nn),Nn}for(var ce,Br,we,Fi,mi={},ga,Ss,za,br;;){if(Br=Ft[Ft.length-1],this.defaultActions[Br]?we=this.defaultActions[Br]:((ce===null||typeof ce>"u")&&(ce=Mn()),we=Fe[Br]&&Fe[Br][ce]),typeof we>"u"||!we.length||!we[0]){var An="";br=[];for(ga in Fe[Br])this.terminals_[ga]&&ga>ye&&br.push("'"+this.terminals_[ga]+"'");be.showPosition?An="Parse error on line "+(pn+1)+`: +`+be.showPosition()+` +Expecting `+br.join(", ")+", got '"+(this.terminals_[ce]||ce)+"'":An="Parse error on line "+(pn+1)+": Unexpected "+(ce==tn?"end of input":"'"+(this.terminals_[ce]||ce)+"'"),this.parseError(An,{text:be.match,token:this.terminals_[ce]||ce,line:be.yylineno,loc:_e,expected:br})}if(we[0]instanceof Array&&we.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Br+", token: "+ce);switch(we[0]){case 1:Ft.push(ce),kt.push(be.yytext),Gt.push(be.yylloc),Ft.push(we[1]),ce=null,Ae=be.yyleng,Mt=be.yytext,pn=be.yylineno,_e=be.yylloc;break;case 2:if(Ss=this.productions_[we[1]][1],mi.$=kt[kt.length-Ss],mi._$={first_line:Gt[Gt.length-(Ss||1)].first_line,last_line:Gt[Gt.length-1].last_line,first_column:Gt[Gt.length-(Ss||1)].first_column,last_column:Gt[Gt.length-1].last_column},xe&&(mi._$.range=[Gt[Gt.length-(Ss||1)].range[0],Gt[Gt.length-1].range[1]]),Fi=this.performAction.apply(mi,[Mt,Ae,pn,Ne.yy,we[1],kt,Gt].concat(sn)),typeof Fi<"u")return Fi;Ss&&(Ft=Ft.slice(0,-1*Ss*2),kt=kt.slice(0,-1*Ss),Gt=Gt.slice(0,-1*Ss)),Ft.push(this.productions_[we[1]][0]),kt.push(mi.$),Gt.push(mi._$),za=Fe[Ft[Ft.length-2]][Ft[Ft.length-1]],Ft.push(za);break;case 3:return!0}}return!0}},V=function(){var It={EOF:1,parseError:function(xt,Ft){if(this.yy.parser)this.yy.parser.parseError(xt,Ft);else throw new Error(xt)},setInput:function(jt,xt){return this.yy=xt||this.yy||{},this._input=jt,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 jt=this._input[0];this.yytext+=jt,this.yyleng++,this.offset++,this.match+=jt,this.matched+=jt;var xt=jt.match(/(?:\r\n?|\n).*/g);return xt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),jt},unput:function(jt){var xt=jt.length,Ft=jt.split(/(?:\r\n?|\n)/g);this._input=jt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-xt),this.offset-=xt;var Ct=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Ft.length-1&&(this.yylineno-=Ft.length-1);var kt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Ft?(Ft.length===Ct.length?this.yylloc.first_column:0)+Ct[Ct.length-Ft.length].length-Ft[0].length:this.yylloc.first_column-xt},this.options.ranges&&(this.yylloc.range=[kt[0],kt[0]+this.yyleng-xt]),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(jt){this.unput(this.match.slice(jt))},pastInput:function(){var jt=this.matched.substr(0,this.matched.length-this.match.length);return(jt.length>20?"...":"")+jt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var jt=this.match;return jt.length<20&&(jt+=this._input.substr(0,20-jt.length)),(jt.substr(0,20)+(jt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var jt=this.pastInput(),xt=new Array(jt.length+1).join("-");return jt+this.upcomingInput()+` +`+xt+"^"},test_match:function(jt,xt){var Ft,Ct,kt;if(this.options.backtrack_lexer&&(kt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(kt.yylloc.range=this.yylloc.range.slice(0))),Ct=jt[0].match(/(?:\r\n?|\n).*/g),Ct&&(this.yylineno+=Ct.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ct?Ct[Ct.length-1].length-Ct[Ct.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+jt[0].length},this.yytext+=jt[0],this.match+=jt[0],this.matches=jt,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(jt[0].length),this.matched+=jt[0],Ft=this.performAction.call(this,this.yy,this,xt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ft)return Ft;if(this._backtrack){for(var Gt in kt)this[Gt]=kt[Gt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var jt,xt,Ft,Ct;this._more||(this.yytext="",this.match="");for(var kt=this._currentRules(),Gt=0;Gtxt[0].length)){if(xt=Ft,Ct=Gt,this.options.backtrack_lexer){if(jt=this.test_match(Ft,kt[Gt]),jt!==!1)return jt;if(this._backtrack){xt=!1;continue}else return!1}else if(!this.options.flex)break}return xt?(jt=this.test_match(xt,kt[Ct]),jt!==!1?jt:!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 xt=this.next();return xt||this.lex()},begin:function(xt){this.conditionStack.push(xt)},popState:function(){var xt=this.conditionStack.length-1;return xt>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(xt){return xt=this.conditionStack.length-1-Math.abs(xt||0),xt>=0?this.conditionStack[xt]:"INITIAL"},pushState:function(xt){this.begin(xt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(xt,Ft,Ct,kt){switch(Ct){case 0:break;case 1:break;case 2:return this.popState(),34;case 3:return this.popState(),34;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;case 8:return this.popState(),"acc_title_value";case 9:return this.pushState("acc_descr"),21;case 10:return this.popState(),"acc_descr_value";case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 8;case 16:return this.pushState("axis_data"),"X_AXIS";case 17:return this.pushState("axis_data"),"Y_AXIS";case 18:return this.pushState("axis_band_data"),24;case 19:return 31;case 20:return this.pushState("data"),16;case 21:return this.pushState("data"),18;case 22:return this.pushState("data_inner"),24;case 23:return 27;case 24:return this.popState(),26;case 25:this.popState();break;case 26:this.pushState("string");break;case 27:this.popState();break;case 28:return"STR";case 29:return 24;case 30:return 26;case 31:return 43;case 32:return"COLON";case 33:return 44;case 34:return 28;case 35:return 45;case 36:return 46;case 37:return 48;case 38:return 50;case 39:return 47;case 40:return 41;case 41:return 49;case 42:return 42;case 43:break;case 44:return 35;case 45:return 36}},rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\{)/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,23,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,20,21,22,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,23,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[27,28],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0}}};return It}();yt.lexer=V;function Ot(){this.yy={}}return Ot.prototype=yt,yt.Parser=Ot,new Ot}();Sbt.parser=Sbt;const DXe=Sbt;function Kzt(i){return i.type==="bar"}function Wzt(i){return i.type==="band"}function lB(i){return i.type==="linear"}class Yzt{constructor(a){this.parentGroup=a}getMaxDimension(a,f){if(!this.parentGroup)return{width:a.reduce((v,b)=>Math.max(b.length,v),0)*f,height:f};const g={width:0,height:0},w=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",f);for(const v of a){const b=AKe(w,1,v),E=b?b.width:v.length*f,S=b?b.height:f;g.width=Math.max(g.width,E),g.height=Math.max(g.height,S)}return w.remove(),g}}const Xzt=.7,Qzt=.2;class Jzt{constructor(a,f,g,w){this.axisConfig=a,this.title=f,this.textDimensionCalculator=g,this.axisThemeConfig=w,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}setRange(a){this.range=a,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=a[1]-a[0]:this.boundingRect.width=a[1]-a[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(a){this.axisPosition=a,this.setRange(this.range)}getTickDistance(){const a=this.getRange();return Math.abs(a[0]-a[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(a=>a.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){Xzt*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(Xzt*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(a){let f=a.height;if(this.axisConfig.showAxisLine&&f>this.axisConfig.axisLineWidth&&(f-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const g=this.getLabelDimension(),w=Qzt*a.width;this.outerPadding=Math.min(g.width/2,w);const v=g.height+this.axisConfig.labelPadding*2;this.labelTextHeight=g.height,v<=f&&(f-=v,this.showLabel=!0)}if(this.axisConfig.showTick&&f>=this.axisConfig.tickLength&&(this.showTick=!0,f-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const g=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),w=g.height+this.axisConfig.titlePadding*2;this.titleTextHeight=g.height,w<=f&&(f-=w,this.showTitle=!0)}this.boundingRect.width=a.width,this.boundingRect.height=a.height-f}calculateSpaceIfDrawnVertical(a){let f=a.width;if(this.axisConfig.showAxisLine&&f>this.axisConfig.axisLineWidth&&(f-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const g=this.getLabelDimension(),w=Qzt*a.height;this.outerPadding=Math.min(g.height/2,w);const v=g.width+this.axisConfig.labelPadding*2;v<=f&&(f-=v,this.showLabel=!0)}if(this.axisConfig.showTick&&f>=this.axisConfig.tickLength&&(this.showTick=!0,f-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const g=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),w=g.height+this.axisConfig.titlePadding*2;this.titleTextHeight=g.height,w<=f&&(f-=w,this.showTitle=!0)}this.boundingRect.width=a.width-f,this.boundingRect.height=a.height}calculateSpace(a){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(a):this.calculateSpaceIfDrawnHorizontally(a),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(a){this.boundingRect.x=a.x,this.boundingRect.y=a.y}getDrawableElementsForLeftAxis(){const a=[];if(this.showAxisLine){const f=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;a.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${f},${this.boundingRect.y} L ${f},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&a.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(f=>({text:f.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(f),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){const f=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);a.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(g=>({path:`M ${f},${this.getScaleValue(g)} L ${f-this.axisConfig.tickLength},${this.getScaleValue(g)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&a.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),a}getDrawableElementsForBottomAxis(){const a=[];if(this.showAxisLine){const f=this.boundingRect.y+this.axisConfig.axisLineWidth/2;a.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${f} L ${this.boundingRect.x+this.boundingRect.width},${f}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&a.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(f=>({text:f.toString(),x:this.getScaleValue(f),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){const f=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);a.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(g=>({path:`M ${this.getScaleValue(g)},${f} L ${this.getScaleValue(g)},${f+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&a.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),a}getDrawableElementsForTopAxis(){const a=[];if(this.showAxisLine){const f=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;a.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${f} L ${this.boundingRect.x+this.boundingRect.width},${f}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&a.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(f=>({text:f.toString(),x:this.getScaleValue(f),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){const f=this.boundingRect.y;a.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(g=>({path:`M ${this.getScaleValue(g)},${f+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(g)},${f+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&a.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),a}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}}class MXe extends Jzt{constructor(a,f,g,w,v){super(a,w,v,f),this.categories=g,this.scale=V0t().domain(this.categories).range(this.getRange())}setRange(a){super.setRange(a)}recalculateScale(){this.scale=V0t().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),Kt.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(a){return this.scale(a)||this.getRange()[0]}}class IXe extends Jzt{constructor(a,f,g,w,v){super(a,w,v,f),this.domain=g,this.scale=VL().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){const a=[...this.domain];this.axisPosition==="left"&&a.reverse(),this.scale=VL().domain(a).range(this.getRange())}getScaleValue(a){return this.scale(a)}}function Zzt(i,a,f,g){const w=new Yzt(g);return Wzt(i)?new MXe(a,f,i.categories,i.title,w):new IXe(a,f,[i.min,i.max],i.title,w)}class OXe{constructor(a,f,g,w){this.textDimensionCalculator=a,this.chartConfig=f,this.chartData=g,this.chartThemeConfig=w,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}setBoundingBoxXY(a){this.boundingRect.x=a.x,this.boundingRect.y=a.y}calculateSpace(a){const f=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),g=Math.max(f.width,a.width),w=f.height+2*this.chartConfig.titlePadding;return f.width<=g&&f.height<=w&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=g,this.boundingRect.height=w,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){const a=[];return this.showChartTitle&&a.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),a}}function NXe(i,a,f,g){const w=new Yzt(g);return new OXe(w,i,a,f)}class PXe{constructor(a,f,g,w,v){this.plotData=a,this.xAxis=f,this.yAxis=g,this.orientation=w,this.plotIndex=v}getDrawableElement(){const a=this.plotData.data.map(g=>[this.xAxis.getScaleValue(g[0]),this.yAxis.getScaleValue(g[1])]);let f;return this.orientation==="horizontal"?f=Ax().y(g=>g[0]).x(g=>g[1])(a):f=Ax().x(g=>g[0]).y(g=>g[1])(a),f?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:f,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}class FXe{constructor(a,f,g,w,v,b){this.barData=a,this.boundingRect=f,this.xAxis=g,this.yAxis=w,this.orientation=v,this.plotIndex=b}getDrawableElement(){const a=this.barData.data.map(v=>[this.xAxis.getScaleValue(v[0]),this.yAxis.getScaleValue(v[1])]),f=.05,g=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-f),w=g/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:a.map(v=>({x:this.boundingRect.x,y:v[0]-w,height:g,width:v[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:a.map(v=>({x:v[0]-w,y:v[1],width:g,height:this.boundingRect.y+this.boundingRect.height-v[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}}class BXe{constructor(a,f,g){this.chartConfig=a,this.chartData=f,this.chartThemeConfig=g,this.boundingRect={x:0,y:0,width:0,height:0}}setAxes(a,f){this.xAxis=a,this.yAxis=f}setBoundingBoxXY(a){this.boundingRect.x=a.x,this.boundingRect.y=a.y}calculateSpace(a){return this.boundingRect.width=a.width,this.boundingRect.height=a.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");const a=[];for(const[f,g]of this.chartData.plots.entries())switch(g.type){case"line":{const w=new PXe(g,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,f);a.push(...w.getDrawableElement())}break;case"bar":{const w=new FXe(g,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,f);a.push(...w.getDrawableElement())}break}return a}}function RXe(i,a,f){return new BXe(i,a,f)}class jXe{constructor(a,f,g,w){this.chartConfig=a,this.chartData=f,this.componentStore={title:NXe(a,f,g,w),plot:RXe(a,f,g),xAxis:Zzt(f.xAxis,a.xAxis,{titleColor:g.xAxisTitleColor,labelColor:g.xAxisLabelColor,tickColor:g.xAxisTickColor,axisLineColor:g.xAxisLineColor},w),yAxis:Zzt(f.yAxis,a.yAxis,{titleColor:g.yAxisTitleColor,labelColor:g.yAxisLabelColor,tickColor:g.yAxisTickColor,axisLineColor:g.yAxisLineColor},w)}}calculateVerticalSpace(){let a=this.chartConfig.width,f=this.chartConfig.height,g=0,w=0,v=Math.floor(a*this.chartConfig.plotReservedSpacePercent/100),b=Math.floor(f*this.chartConfig.plotReservedSpacePercent/100),E=this.componentStore.plot.calculateSpace({width:v,height:b});a-=E.width,f-=E.height,E=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:f}),w=E.height,f-=E.height,this.componentStore.xAxis.setAxisPosition("bottom"),E=this.componentStore.xAxis.calculateSpace({width:a,height:f}),f-=E.height,this.componentStore.yAxis.setAxisPosition("left"),E=this.componentStore.yAxis.calculateSpace({width:a,height:f}),g=E.width,a-=E.width,a>0&&(v+=a,a=0),f>0&&(b+=f,f=0),this.componentStore.plot.calculateSpace({width:v,height:b}),this.componentStore.plot.setBoundingBoxXY({x:g,y:w}),this.componentStore.xAxis.setRange([g,g+v]),this.componentStore.xAxis.setBoundingBoxXY({x:g,y:w+b}),this.componentStore.yAxis.setRange([w,w+b]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:w}),this.chartData.plots.some(S=>Kzt(S))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizonatalSpace(){let a=this.chartConfig.width,f=this.chartConfig.height,g=0,w=0,v=0,b=Math.floor(a*this.chartConfig.plotReservedSpacePercent/100),E=Math.floor(f*this.chartConfig.plotReservedSpacePercent/100),S=this.componentStore.plot.calculateSpace({width:b,height:E});a-=S.width,f-=S.height,S=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:f}),g=S.height,f-=S.height,this.componentStore.xAxis.setAxisPosition("left"),S=this.componentStore.xAxis.calculateSpace({width:a,height:f}),a-=S.width,w=S.width,this.componentStore.yAxis.setAxisPosition("top"),S=this.componentStore.yAxis.calculateSpace({width:a,height:f}),f-=S.height,v=g+S.height,a>0&&(b+=a,a=0),f>0&&(E+=f,f=0),this.componentStore.plot.calculateSpace({width:b,height:E}),this.componentStore.plot.setBoundingBoxXY({x:w,y:v}),this.componentStore.yAxis.setRange([w,w+b]),this.componentStore.yAxis.setBoundingBoxXY({x:w,y:g}),this.componentStore.xAxis.setRange([v,v+E]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:v}),this.chartData.plots.some(_=>Kzt(_))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizonatalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();const a=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(const f of Object.values(this.componentStore))a.push(...f.getDrawableElements());return a}}class $Xe{static build(a,f,g,w){return new jXe(a,f,g,w).getDrawableElement()}}let hB=0,tqt,fB=nqt(),dB=eqt(),Pu=rqt(),_bt=dB.plotColorPalette.split(",").map(i=>i.trim()),pX=!1,Abt=!1;function eqt(){const i=dgt(),a=o1();return MF(i.xyChart,a.themeVariables.xyChart)}function nqt(){const i=o1();return MF(Bl.xyChart,i.xyChart)}function rqt(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function Lbt(i){const a=o1();return Ef(i.trim(),a)}function zXe(i){tqt=i}function qXe(i){i==="horizontal"?fB.chartOrientation="horizontal":fB.chartOrientation="vertical"}function HXe(i){Pu.xAxis.title=Lbt(i.text)}function iqt(i,a){Pu.xAxis={type:"linear",title:Pu.xAxis.title,min:i,max:a},pX=!0}function VXe(i){Pu.xAxis={type:"band",title:Pu.xAxis.title,categories:i.map(a=>Lbt(a.text))},pX=!0}function UXe(i){Pu.yAxis.title=Lbt(i.text)}function GXe(i,a){Pu.yAxis={type:"linear",title:Pu.yAxis.title,min:i,max:a},Abt=!0}function KXe(i){const a=Math.min(...i),f=Math.max(...i),g=lB(Pu.yAxis)?Pu.yAxis.min:1/0,w=lB(Pu.yAxis)?Pu.yAxis.max:-1/0;Pu.yAxis={type:"linear",title:Pu.yAxis.title,min:Math.min(g,a),max:Math.max(w,f)}}function sqt(i){let a=[];if(i.length===0)return a;if(!pX){const f=lB(Pu.xAxis)?Pu.xAxis.min:1/0,g=lB(Pu.xAxis)?Pu.xAxis.max:-1/0;iqt(Math.min(f,1),Math.max(g,i.length))}if(Abt||KXe(i),Wzt(Pu.xAxis)&&(a=Pu.xAxis.categories.map((f,g)=>[f,i[g]])),lB(Pu.xAxis)){const f=Pu.xAxis.min,g=Pu.xAxis.max,w=(g-f+1)/i.length,v=[];for(let b=f;b<=g;b+=w)v.push(`${b}`);a=v.map((b,E)=>[b,i[E]])}return a}function aqt(i){return _bt[i===0?0:i%_bt.length]}function WXe(i,a){const f=sqt(a);Pu.plots.push({type:"line",strokeFill:aqt(hB),strokeWidth:2,data:f}),hB++}function YXe(i,a){const f=sqt(a);Pu.plots.push({type:"bar",fill:aqt(hB),data:f}),hB++}function XXe(){if(Pu.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return Pu.title=Zg(),$Xe.build(fB,Pu,dB,tqt)}function QXe(){return dB}function JXe(){return fB}const ZXe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:DXe,db:{getDrawableElem:XXe,clear:function(){ag(),hB=0,fB=nqt(),Pu=rqt(),dB=eqt(),_bt=dB.plotColorPalette.split(",").map(i=>i.trim()),pX=!1,Abt=!1},setAccTitle:og,getAccTitle:Xg,setDiagramTitle:S2,getDiagramTitle:Zg,getAccDescription:Jg,setAccDescription:Qg,setOrientation:qXe,setXAxisTitle:HXe,setXAxisRangeData:iqt,setXAxisBand:VXe,setYAxisTitle:UXe,setYAxisRangeData:GXe,setLineData:WXe,setBarData:YXe,setTmpSVGG:zXe,getChartThemeConfig:QXe,getChartConfig:JXe},renderer:{draw:(i,a,f,g)=>{const w=g.db,v=w.getChartThemeConfig(),b=w.getChartConfig();function E(nt){return nt==="top"?"text-before-edge":"middle"}function S(nt){return nt==="left"?"start":nt==="right"?"end":"middle"}function _(nt){return`translate(${nt.x}, ${nt.y}) rotate(${nt.rotation||0})`}Kt.debug(`Rendering xychart chart +`+i);const M=FF(a),F=M.append("g").attr("class","main"),R=F.append("rect").attr("width",b.width).attr("height",b.height).attr("class","background");sg(M,b.height,b.width,!0),M.attr("viewBox",`0 0 ${b.width} ${b.height}`),R.attr("fill",v.backgroundColor),w.setTmpSVGG(M.append("g").attr("class","mermaid-tmp-group"));const B=w.getDrawableElem(),z={};function Y(nt){let ot=F,ft="";for(const[wt]of nt.entries()){let mt=F;wt>0&&z[ft]&&(mt=z[ft]),ft+=nt[wt],ot=z[ft],ot||(ot=z[ft]=mt.append("g").attr("class",nt[wt]))}return ot}for(const nt of B){if(nt.data.length===0)continue;const ot=Y(nt.groupTexts);switch(nt.type){case"rect":ot.selectAll("rect").data(nt.data).enter().append("rect").attr("x",ft=>ft.x).attr("y",ft=>ft.y).attr("width",ft=>ft.width).attr("height",ft=>ft.height).attr("fill",ft=>ft.fill).attr("stroke",ft=>ft.strokeFill).attr("stroke-width",ft=>ft.strokeWidth);break;case"text":ot.selectAll("text").data(nt.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",ft=>ft.fill).attr("font-size",ft=>ft.fontSize).attr("dominant-baseline",ft=>E(ft.verticalPos)).attr("text-anchor",ft=>S(ft.horizontalPos)).attr("transform",ft=>_(ft)).text(ft=>ft.text);break;case"path":ot.selectAll("path").data(nt.data).enter().append("path").attr("d",ft=>ft.path).attr("fill",ft=>ft.fill?ft.fill:"none").attr("stroke",ft=>ft.strokeFill).attr("stroke-width",ft=>ft.strokeWidth);break}}}}}},Symbol.toStringTag,{value:"Module"}));var Dbt=function(){var i=function(Ae,ye,tn,sn){for(tn=tn||{},sn=Ae.length;sn--;tn[Ae[sn]]=ye);return tn},a=[1,3],f=[1,4],g=[1,5],w=[1,6],v=[5,6,8,9,11,13,31,32,33,34,35,36,44,62,63],b=[1,18],E=[2,7],S=[1,22],_=[1,23],M=[1,24],F=[1,25],R=[1,26],B=[1,27],z=[1,20],Y=[1,28],nt=[1,29],ot=[62,63],ft=[5,8,9,11,13,31,32,33,34,35,36,44,51,53,62,63],wt=[1,47],mt=[1,48],ct=[1,49],rt=[1,50],it=[1,51],gt=[1,52],Q=[1,53],dt=[53,54],K=[1,64],yt=[1,60],V=[1,61],Ot=[1,62],It=[1,63],jt=[1,65],xt=[1,69],Ft=[1,70],Ct=[1,67],kt=[1,68],Gt=[5,8,9,11,13,31,32,33,34,35,36,44,62,63],Fe={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,requirementType:17,requirementName:18,STRUCT_START:19,requirementBody:20,ID:21,COLONSEP:22,id:23,TEXT:24,text:25,RISK:26,riskLevel:27,VERIFYMTHD:28,verifyType:29,STRUCT_STOP:30,REQUIREMENT:31,FUNCTIONAL_REQUIREMENT:32,INTERFACE_REQUIREMENT:33,PERFORMANCE_REQUIREMENT:34,PHYSICAL_REQUIREMENT:35,DESIGN_CONSTRAINT:36,LOW_RISK:37,MED_RISK:38,HIGH_RISK:39,VERIFY_ANALYSIS:40,VERIFY_DEMONSTRATION:41,VERIFY_INSPECTION:42,VERIFY_TEST:43,ELEMENT:44,elementName:45,elementBody:46,TYPE:47,type:48,DOCREF:49,ref:50,END_ARROW_L:51,relationship:52,LINE:53,END_ARROW_R:54,CONTAINS:55,COPIES:56,DERIVES:57,SATISFIES:58,VERIFIES:59,REFINES:60,TRACES:61,unqString:62,qString:63,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",19:"STRUCT_START",21:"ID",22:"COLONSEP",24:"TEXT",26:"RISK",28:"VERIFYMTHD",30:"STRUCT_STOP",31:"REQUIREMENT",32:"FUNCTIONAL_REQUIREMENT",33:"INTERFACE_REQUIREMENT",34:"PERFORMANCE_REQUIREMENT",35:"PHYSICAL_REQUIREMENT",36:"DESIGN_CONSTRAINT",37:"LOW_RISK",38:"MED_RISK",39:"HIGH_RISK",40:"VERIFY_ANALYSIS",41:"VERIFY_DEMONSTRATION",42:"VERIFY_INSPECTION",43:"VERIFY_TEST",44:"ELEMENT",47:"TYPE",49:"DOCREF",51:"END_ARROW_L",53:"LINE",54:"END_ARROW_R",55:"CONTAINS",56:"COPIES",57:"DERIVES",58:"SATISFIES",59:"VERIFIES",60:"REFINES",61:"TRACES",62:"unqString",63:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[14,5],[20,5],[20,5],[20,5],[20,5],[20,2],[20,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[27,1],[27,1],[27,1],[29,1],[29,1],[29,1],[29,1],[15,5],[46,5],[46,5],[46,2],[46,1],[16,5],[16,5],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[18,1],[18,1],[23,1],[23,1],[25,1],[25,1],[45,1],[45,1],[48,1],[48,1],[50,1],[50,1]],performAction:function(ye,tn,sn,be,Ne,Xt,_e){var xe=Xt.length-1;switch(Ne){case 4:this.$=Xt[xe].trim(),be.setAccTitle(this.$);break;case 5:case 6:this.$=Xt[xe].trim(),be.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:be.addRequirement(Xt[xe-3],Xt[xe-4]);break;case 14:be.setNewReqId(Xt[xe-2]);break;case 15:be.setNewReqText(Xt[xe-2]);break;case 16:be.setNewReqRisk(Xt[xe-2]);break;case 17:be.setNewReqVerifyMethod(Xt[xe-2]);break;case 20:this.$=be.RequirementType.REQUIREMENT;break;case 21:this.$=be.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 22:this.$=be.RequirementType.INTERFACE_REQUIREMENT;break;case 23:this.$=be.RequirementType.PERFORMANCE_REQUIREMENT;break;case 24:this.$=be.RequirementType.PHYSICAL_REQUIREMENT;break;case 25:this.$=be.RequirementType.DESIGN_CONSTRAINT;break;case 26:this.$=be.RiskLevel.LOW_RISK;break;case 27:this.$=be.RiskLevel.MED_RISK;break;case 28:this.$=be.RiskLevel.HIGH_RISK;break;case 29:this.$=be.VerifyType.VERIFY_ANALYSIS;break;case 30:this.$=be.VerifyType.VERIFY_DEMONSTRATION;break;case 31:this.$=be.VerifyType.VERIFY_INSPECTION;break;case 32:this.$=be.VerifyType.VERIFY_TEST;break;case 33:be.addElement(Xt[xe-3]);break;case 34:be.setNewElementType(Xt[xe-2]);break;case 35:be.setNewElementDocRef(Xt[xe-2]);break;case 38:be.addRelationship(Xt[xe-2],Xt[xe],Xt[xe-4]);break;case 39:be.addRelationship(Xt[xe-2],Xt[xe-4],Xt[xe]);break;case 40:this.$=be.Relationships.CONTAINS;break;case 41:this.$=be.Relationships.COPIES;break;case 42:this.$=be.Relationships.DERIVES;break;case 43:this.$=be.Relationships.SATISFIES;break;case 44:this.$=be.Relationships.VERIFIES;break;case 45:this.$=be.Relationships.REFINES;break;case 46:this.$=be.Relationships.TRACES;break}},table:[{3:1,4:2,6:a,9:f,11:g,13:w},{1:[3]},{3:8,4:2,5:[1,7],6:a,9:f,11:g,13:w},{5:[1,9]},{10:[1,10]},{12:[1,11]},i(v,[2,6]),{3:12,4:2,6:a,9:f,11:g,13:w},{1:[2,2]},{4:17,5:b,7:13,8:E,9:f,11:g,13:w,14:14,15:15,16:16,17:19,23:21,31:S,32:_,33:M,34:F,35:R,36:B,44:z,62:Y,63:nt},i(v,[2,4]),i(v,[2,5]),{1:[2,1]},{8:[1,30]},{4:17,5:b,7:31,8:E,9:f,11:g,13:w,14:14,15:15,16:16,17:19,23:21,31:S,32:_,33:M,34:F,35:R,36:B,44:z,62:Y,63:nt},{4:17,5:b,7:32,8:E,9:f,11:g,13:w,14:14,15:15,16:16,17:19,23:21,31:S,32:_,33:M,34:F,35:R,36:B,44:z,62:Y,63:nt},{4:17,5:b,7:33,8:E,9:f,11:g,13:w,14:14,15:15,16:16,17:19,23:21,31:S,32:_,33:M,34:F,35:R,36:B,44:z,62:Y,63:nt},{4:17,5:b,7:34,8:E,9:f,11:g,13:w,14:14,15:15,16:16,17:19,23:21,31:S,32:_,33:M,34:F,35:R,36:B,44:z,62:Y,63:nt},{4:17,5:b,7:35,8:E,9:f,11:g,13:w,14:14,15:15,16:16,17:19,23:21,31:S,32:_,33:M,34:F,35:R,36:B,44:z,62:Y,63:nt},{18:36,62:[1,37],63:[1,38]},{45:39,62:[1,40],63:[1,41]},{51:[1,42],53:[1,43]},i(ot,[2,20]),i(ot,[2,21]),i(ot,[2,22]),i(ot,[2,23]),i(ot,[2,24]),i(ot,[2,25]),i(ft,[2,49]),i(ft,[2,50]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{19:[1,44]},{19:[2,47]},{19:[2,48]},{19:[1,45]},{19:[2,53]},{19:[2,54]},{52:46,55:wt,56:mt,57:ct,58:rt,59:it,60:gt,61:Q},{52:54,55:wt,56:mt,57:ct,58:rt,59:it,60:gt,61:Q},{5:[1,55]},{5:[1,56]},{53:[1,57]},i(dt,[2,40]),i(dt,[2,41]),i(dt,[2,42]),i(dt,[2,43]),i(dt,[2,44]),i(dt,[2,45]),i(dt,[2,46]),{54:[1,58]},{5:K,20:59,21:yt,24:V,26:Ot,28:It,30:jt},{5:xt,30:Ft,46:66,47:Ct,49:kt},{23:71,62:Y,63:nt},{23:72,62:Y,63:nt},i(Gt,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:K,20:77,21:yt,24:V,26:Ot,28:It,30:jt},i(Gt,[2,19]),i(Gt,[2,33]),{22:[1,78]},{22:[1,79]},{5:xt,30:Ft,46:80,47:Ct,49:kt},i(Gt,[2,37]),i(Gt,[2,38]),i(Gt,[2,39]),{23:81,62:Y,63:nt},{25:82,62:[1,83],63:[1,84]},{27:85,37:[1,86],38:[1,87],39:[1,88]},{29:89,40:[1,90],41:[1,91],42:[1,92],43:[1,93]},i(Gt,[2,18]),{48:94,62:[1,95],63:[1,96]},{50:97,62:[1,98],63:[1,99]},i(Gt,[2,36]),{5:[1,100]},{5:[1,101]},{5:[2,51]},{5:[2,52]},{5:[1,102]},{5:[2,26]},{5:[2,27]},{5:[2,28]},{5:[1,103]},{5:[2,29]},{5:[2,30]},{5:[2,31]},{5:[2,32]},{5:[1,104]},{5:[2,55]},{5:[2,56]},{5:[1,105]},{5:[2,57]},{5:[2,58]},{5:K,20:106,21:yt,24:V,26:Ot,28:It,30:jt},{5:K,20:107,21:yt,24:V,26:Ot,28:It,30:jt},{5:K,20:108,21:yt,24:V,26:Ot,28:It,30:jt},{5:K,20:109,21:yt,24:V,26:Ot,28:It,30:jt},{5:xt,30:Ft,46:110,47:Ct,49:kt},{5:xt,30:Ft,46:111,47:Ct,49:kt},i(Gt,[2,14]),i(Gt,[2,15]),i(Gt,[2,16]),i(Gt,[2,17]),i(Gt,[2,34]),i(Gt,[2,35])],defaultActions:{8:[2,2],12:[2,1],30:[2,3],31:[2,8],32:[2,9],33:[2,10],34:[2,11],35:[2,12],37:[2,47],38:[2,48],40:[2,53],41:[2,54],83:[2,51],84:[2,52],86:[2,26],87:[2,27],88:[2,28],90:[2,29],91:[2,30],92:[2,31],93:[2,32],95:[2,55],96:[2,56],98:[2,57],99:[2,58]},parseError:function(ye,tn){if(tn.recoverable)this.trace(ye);else{var sn=new Error(ye);throw sn.hash=tn,sn}},parse:function(ye){var tn=this,sn=[0],be=[],Ne=[null],Xt=[],_e=this.table,xe="",Mn=0,ce=0,Br=2,we=1,Fi=Xt.slice.call(arguments,1),mi=Object.create(this.lexer),ga={yy:{}};for(var Ss in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ss)&&(ga.yy[Ss]=this.yy[Ss]);mi.setInput(ye,ga.yy),ga.yy.lexer=mi,ga.yy.parser=this,typeof mi.yylloc>"u"&&(mi.yylloc={});var za=mi.yylloc;Xt.push(za);var br=mi.options&&mi.options.ranges;typeof ga.yy.parseError=="function"?this.parseError=ga.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function An(){var va;return va=be.pop()||mi.lex()||we,typeof va!="number"&&(va instanceof Array&&(be=va,va=be.pop()),va=tn.symbols_[va]||va),va}for(var Nn,Bn,ke,pe,Je={},an,xn,qa,xo;;){if(Bn=sn[sn.length-1],this.defaultActions[Bn]?ke=this.defaultActions[Bn]:((Nn===null||typeof Nn>"u")&&(Nn=An()),ke=_e[Bn]&&_e[Bn][Nn]),typeof ke>"u"||!ke.length||!ke[0]){var ko="";xo=[];for(an in _e[Bn])this.terminals_[an]&&an>Br&&xo.push("'"+this.terminals_[an]+"'");mi.showPosition?ko="Parse error on line "+(Mn+1)+`: +`+mi.showPosition()+` +Expecting `+xo.join(", ")+", got '"+(this.terminals_[Nn]||Nn)+"'":ko="Parse error on line "+(Mn+1)+": Unexpected "+(Nn==we?"end of input":"'"+(this.terminals_[Nn]||Nn)+"'"),this.parseError(ko,{text:mi.match,token:this.terminals_[Nn]||Nn,line:mi.yylineno,loc:za,expected:xo})}if(ke[0]instanceof Array&&ke.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Bn+", token: "+Nn);switch(ke[0]){case 1:sn.push(Nn),Ne.push(mi.yytext),Xt.push(mi.yylloc),sn.push(ke[1]),Nn=null,ce=mi.yyleng,xe=mi.yytext,Mn=mi.yylineno,za=mi.yylloc;break;case 2:if(xn=this.productions_[ke[1]][1],Je.$=Ne[Ne.length-xn],Je._$={first_line:Xt[Xt.length-(xn||1)].first_line,last_line:Xt[Xt.length-1].last_line,first_column:Xt[Xt.length-(xn||1)].first_column,last_column:Xt[Xt.length-1].last_column},br&&(Je._$.range=[Xt[Xt.length-(xn||1)].range[0],Xt[Xt.length-1].range[1]]),pe=this.performAction.apply(Je,[xe,ce,Mn,ga.yy,ke[1],Ne,Xt].concat(Fi)),typeof pe<"u")return pe;xn&&(sn=sn.slice(0,-1*xn*2),Ne=Ne.slice(0,-1*xn),Xt=Xt.slice(0,-1*xn)),sn.push(this.productions_[ke[1]][0]),Ne.push(Je.$),Xt.push(Je._$),qa=_e[sn[sn.length-2]][sn[sn.length-1]],sn.push(qa);break;case 3:return!0}}return!0}},Mt=function(){var Ae={EOF:1,parseError:function(tn,sn){if(this.yy.parser)this.yy.parser.parseError(tn,sn);else throw new Error(tn)},setInput:function(ye,tn){return this.yy=tn||this.yy||{},this._input=ye,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ye=this._input[0];this.yytext+=ye,this.yyleng++,this.offset++,this.match+=ye,this.matched+=ye;var tn=ye.match(/(?:\r\n?|\n).*/g);return tn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ye},unput:function(ye){var tn=ye.length,sn=ye.split(/(?:\r\n?|\n)/g);this._input=ye+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-tn),this.offset-=tn;var be=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),sn.length-1&&(this.yylineno-=sn.length-1);var Ne=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:sn?(sn.length===be.length?this.yylloc.first_column:0)+be[be.length-sn.length].length-sn[0].length:this.yylloc.first_column-tn},this.options.ranges&&(this.yylloc.range=[Ne[0],Ne[0]+this.yyleng-tn]),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(ye){this.unput(this.match.slice(ye))},pastInput:function(){var ye=this.matched.substr(0,this.matched.length-this.match.length);return(ye.length>20?"...":"")+ye.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ye=this.match;return ye.length<20&&(ye+=this._input.substr(0,20-ye.length)),(ye.substr(0,20)+(ye.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ye=this.pastInput(),tn=new Array(ye.length+1).join("-");return ye+this.upcomingInput()+` +`+tn+"^"},test_match:function(ye,tn){var sn,be,Ne;if(this.options.backtrack_lexer&&(Ne={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&&(Ne.yylloc.range=this.yylloc.range.slice(0))),be=ye[0].match(/(?:\r\n?|\n).*/g),be&&(this.yylineno+=be.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:be?be[be.length-1].length-be[be.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ye[0].length},this.yytext+=ye[0],this.match+=ye[0],this.matches=ye,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ye[0].length),this.matched+=ye[0],sn=this.performAction.call(this,this.yy,this,tn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),sn)return sn;if(this._backtrack){for(var Xt in Ne)this[Xt]=Ne[Xt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ye,tn,sn,be;this._more||(this.yytext="",this.match="");for(var Ne=this._currentRules(),Xt=0;Xttn[0].length)){if(tn=sn,be=Xt,this.options.backtrack_lexer){if(ye=this.test_match(sn,Ne[Xt]),ye!==!1)return ye;if(this._backtrack){tn=!1;continue}else return!1}else if(!this.options.flex)break}return tn?(ye=this.test_match(tn,Ne[be]),ye!==!1?ye:!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 tn=this.next();return tn||this.lex()},begin:function(tn){this.conditionStack.push(tn)},popState:function(){var tn=this.conditionStack.length-1;return tn>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(tn){return tn=this.conditionStack.length-1-Math.abs(tn||0),tn>=0?this.conditionStack[tn]:"INITIAL"},pushState:function(tn){this.begin(tn)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(tn,sn,be,Ne){switch(be){case 0:return"title";case 1:return this.begin("acc_title"),9;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),11;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 5;case 9:break;case 10:break;case 11:break;case 12:return 8;case 13:return 6;case 14:return 19;case 15:return 30;case 16:return 22;case 17:return 21;case 18:return 24;case 19:return 26;case 20:return 28;case 21:return 31;case 22:return 32;case 23:return 33;case 24:return 34;case 25:return 35;case 26:return 36;case 27:return 37;case 28:return 38;case 29:return 39;case 30:return 40;case 31:return 41;case 32:return 42;case 33:return 43;case 34:return 44;case 35:return 55;case 36:return 56;case 37:return 57;case 38:return 58;case 39:return 59;case 40:return 60;case 41:return 61;case 42:return 47;case 43:return 49;case 44:return 51;case 45:return 54;case 46:return 53;case 47:this.begin("string");break;case 48:this.popState();break;case 49:return"qString";case 50:return sn.yytext=sn.yytext.trim(),62}},rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[48,49],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,50],inclusive:!0}}};return Ae}();Fe.lexer=Mt;function pn(){this.yy={}}return pn.prototype=Fe,Fe.Parser=pn,new pn}();Dbt.parser=Dbt;const tQe=Dbt;let Mbt=[],ub={},gB={},_8={},pB={};const eQe={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},RiskLevel:{LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},VerifyType:{VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},Relationships:{CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},getConfig:()=>Re().req,addRequirement:(i,a)=>(gB[i]===void 0&&(gB[i]={name:i,type:a,id:ub.id,text:ub.text,risk:ub.risk,verifyMethod:ub.verifyMethod}),ub={},gB[i]),getRequirements:()=>gB,setNewReqId:i=>{ub!==void 0&&(ub.id=i)},setNewReqText:i=>{ub!==void 0&&(ub.text=i)},setNewReqRisk:i=>{ub!==void 0&&(ub.risk=i)},setNewReqVerifyMethod:i=>{ub!==void 0&&(ub.verifyMethod=i)},setAccTitle:og,getAccTitle:Xg,setAccDescription:Qg,getAccDescription:Jg,addElement:i=>(pB[i]===void 0&&(pB[i]={name:i,type:_8.type,docRef:_8.docRef},Kt.info("Added new requirement: ",i)),_8={},pB[i]),getElements:()=>pB,setNewElementType:i=>{_8!==void 0&&(_8.type=i)},setNewElementDocRef:i=>{_8!==void 0&&(_8.docRef=i)},addRelationship:(i,a,f)=>{Mbt.push({type:i,src:a,dst:f})},getRelationships:()=>Mbt,clear:()=>{Mbt=[],ub={},gB={},_8={},pB={},ag()}},nQe=i=>` + + marker { + fill: ${i.relationColor}; + stroke: ${i.relationColor}; + } + + marker.cross { + stroke: ${i.lineColor}; + } + + svg { + font-family: ${i.fontFamily}; + font-size: ${i.fontSize}; + } + + .reqBox { + fill: ${i.requirementBackground}; + fill-opacity: 1.0; + stroke: ${i.requirementBorderColor}; + stroke-width: ${i.requirementBorderSize}; + } + + .reqTitle, .reqLabel{ + fill: ${i.requirementTextColor}; + } + .reqLabelBox { + fill: ${i.relationLabelBackground}; + fill-opacity: 1.0; + } + + .req-title-line { + stroke: ${i.requirementBorderColor}; + stroke-width: ${i.requirementBorderSize}; + } + .relationshipLine { + stroke: ${i.relationColor}; + stroke-width: 1; + } + .relationshipLabel { + fill: ${i.relationLabelColor}; + } + +`,Ibt={CONTAINS:"contains",ARROW:"arrow"},oqt={ReqMarkers:Ibt,insertLineEndings:(i,a)=>{let f=i.append("defs").append("marker").attr("id",Ibt.CONTAINS+"_line_ending").attr("refX",0).attr("refY",a.line_height/2).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("g");f.append("circle").attr("cx",a.line_height/2).attr("cy",a.line_height/2).attr("r",a.line_height/2).attr("fill","none"),f.append("line").attr("x1",0).attr("x2",a.line_height).attr("y1",a.line_height/2).attr("y2",a.line_height/2).attr("stroke-width",1),f.append("line").attr("y1",0).attr("y2",a.line_height).attr("x1",a.line_height/2).attr("x2",a.line_height/2).attr("stroke-width",1),i.append("defs").append("marker").attr("id",Ibt.ARROW+"_line_ending").attr("refX",a.line_height).attr("refY",.5*a.line_height).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("path").attr("d",`M0,0 + L${a.line_height},${a.line_height/2} + M${a.line_height},${a.line_height/2} + L0,${a.line_height}`).attr("stroke-width",1)}};let Xh={},cqt=0;const uqt=(i,a)=>i.insert("rect","#"+a).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",Xh.rect_min_width+"px").attr("height",Xh.rect_min_height+"px"),lqt=(i,a,f)=>{let g=Xh.rect_min_width/2,w=i.append("text").attr("class","req reqLabel reqTitle").attr("id",a).attr("x",g).attr("y",Xh.rect_padding).attr("dominant-baseline","hanging"),v=0;f.forEach(_=>{v==0?w.append("tspan").attr("text-anchor","middle").attr("x",Xh.rect_min_width/2).attr("dy",0).text(_):w.append("tspan").attr("text-anchor","middle").attr("x",Xh.rect_min_width/2).attr("dy",Xh.line_height*.75).text(_),v++});let b=1.5*Xh.rect_padding,E=v*Xh.line_height*.75,S=b+E;return i.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",Xh.rect_min_width).attr("y1",S).attr("y2",S),{titleNode:w,y:S}},hqt=(i,a,f,g)=>{let w=i.append("text").attr("class","req reqLabel").attr("id",a).attr("x",Xh.rect_padding).attr("y",g).attr("dominant-baseline","hanging"),v=0;const b=30;let E=[];return f.forEach(S=>{let _=S.length;for(;_>b&&v<3;){let M=S.substring(0,b);S=S.substring(b,S.length),_=S.length,E[E.length]=M,v++}if(v==3){let M=E[E.length-1];E[E.length-1]=M.substring(0,M.length-4)+"..."}else E[E.length]=S;v=0}),E.forEach(S=>{w.append("tspan").attr("x",Xh.rect_padding).attr("dy",Xh.line_height).text(S)}),w},rQe=(i,a,f,g)=>{const w=a.node().getTotalLength(),v=a.node().getPointAtLength(w*.5),b="rel"+cqt;cqt++;const S=i.append("text").attr("class","req relationshipLabel").attr("id",b).attr("x",v.x).attr("y",v.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(g).node().getBBox();i.insert("rect","#"+b).attr("class","req reqLabelBox").attr("x",v.x-S.width/2).attr("y",v.y-S.height/2).attr("width",S.width).attr("height",S.height).attr("fill","white").attr("fill-opacity","85%")},iQe=function(i,a,f,g,w){const v=f.edge(LD(a.src),LD(a.dst)),b=Ax().x(function(S){return S.x}).y(function(S){return S.y}),E=i.insert("path","#"+g).attr("class","er relationshipLine").attr("d",b(v.points)).attr("fill","none");a.type==w.db.Relationships.CONTAINS?E.attr("marker-start","url("+ei.getUrl(Xh.arrowMarkerAbsolute)+"#"+a.type+"_line_ending)"):(E.attr("stroke-dasharray","10,7"),E.attr("marker-end","url("+ei.getUrl(Xh.arrowMarkerAbsolute)+"#"+oqt.ReqMarkers.ARROW+"_line_ending)")),rQe(i,E,Xh,`<<${a.type}>>`)},sQe=(i,a,f)=>{Object.keys(i).forEach(g=>{let w=i[g];g=LD(g),Kt.info("Added new requirement: ",g);const v=f.append("g").attr("id",g),b="req-"+g,E=uqt(v,b);let S=lqt(v,g+"_title",[`<<${w.type}>>`,`${w.name}`]);hqt(v,g+"_body",[`Id: ${w.id}`,`Text: ${w.text}`,`Risk: ${w.risk}`,`Verification: ${w.verifyMethod}`],S.y);const _=E.node().getBBox();a.setNode(g,{width:_.width,height:_.height,shape:"rect",id:g})})},aQe=(i,a,f)=>{Object.keys(i).forEach(g=>{let w=i[g];const v=LD(g),b=f.append("g").attr("id",v),E="element-"+v,S=uqt(b,E);let _=lqt(b,E+"_title",["<>",`${g}`]);hqt(b,E+"_body",[`Type: ${w.type||"Not Specified"}`,`Doc Ref: ${w.docRef||"None"}`],_.y);const M=S.node().getBBox();a.setNode(v,{width:M.width,height:M.height,shape:"rect",id:v})})},oQe=(i,a)=>(i.forEach(function(f){let g=LD(f.src),w=LD(f.dst);a.setEdge(g,w,{relationship:f})}),i),cQe=function(i,a){a.nodes().forEach(function(f){f!==void 0&&a.node(f)!==void 0&&(i.select("#"+f),i.select("#"+f).attr("transform","translate("+(a.node(f).x-a.node(f).width/2)+","+(a.node(f).y-a.node(f).height/2)+" )"))})},LD=i=>i.replace(/\s/g,"").replace(/\./g,"_"),uQe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:tQe,db:eQe,renderer:{draw:(i,a,f,g)=>{Xh=Re().requirement;const w=Xh.securityLevel;let v;w==="sandbox"&&(v=Tr("#i"+a));const E=Tr(w==="sandbox"?v.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);oqt.insertLineEndings(E,Xh);const S=new l1({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:Xh.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let _=g.db.getRequirements(),M=g.db.getElements(),F=g.db.getRelationships();sQe(_,S,E),aQe(M,S,E),oQe(F,S),kD(S),cQe(E,S),F.forEach(function(nt){iQe(E,nt,S,a,g)});const R=Xh.rect_padding,B=E.node().getBBox(),z=B.width+R*2,Y=B.height+R*2;sg(E,Y,z,Xh.useMaxWidth),E.attr("viewBox",`${B.x-R} ${B.y-R} ${z} ${Y}`)}},styles:nQe}},Symbol.toStringTag,{value:"Module"}));var Obt=function(){var i=function(be,Ne,Xt,_e){for(Xt=Xt||{},_e=be.length;_e--;Xt[be[_e]]=Ne);return Xt},a=[1,2],f=[1,3],g=[1,4],w=[2,4],v=[1,9],b=[1,11],E=[1,13],S=[1,14],_=[1,16],M=[1,17],F=[1,18],R=[1,24],B=[1,25],z=[1,26],Y=[1,27],nt=[1,28],ot=[1,29],ft=[1,30],wt=[1,31],mt=[1,32],ct=[1,33],rt=[1,34],it=[1,35],gt=[1,36],Q=[1,37],dt=[1,38],K=[1,39],yt=[1,41],V=[1,42],Ot=[1,43],It=[1,44],jt=[1,45],xt=[1,46],Ft=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,54,59,60,61,62,70],Ct=[4,5,16,50,52,53],kt=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],Gt=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,54,59,60,61,62,70],Fe=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,54,59,60,61,62,70],Mt=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,54,59,60,61,62,70],pn=[68,69,70],Ae=[1,120],ye={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,note:54,placement:55,text2:56,over:57,actor_pair:58,links:59,link:60,properties:61,details:62,spaceList:63,",":64,left_of:65,right_of:66,signaltype:67,"+":68,"-":69,ACTOR:70,SOLID_OPEN_ARROW:71,DOTTED_OPEN_ARROW:72,SOLID_ARROW:73,DOTTED_ARROW:74,SOLID_CROSS:75,DOTTED_CROSS:76,SOLID_POINT:77,DOTTED_POINT:78,TXT:79,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",54:"note",57:"over",59:"links",60:"link",61:"properties",62:"details",64:",",65:"left_of",66:"right_of",68:"+",69:"-",70:"ACTOR",71:"SOLID_OPEN_ARROW",72:"DOTTED_OPEN_ARROW",73:"SOLID_ARROW",74:"DOTTED_ARROW",75:"SOLID_CROSS",76:"DOTTED_CROSS",77:"SOLID_POINT",78:"DOTTED_POINT",79:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[63,2],[63,1],[58,3],[58,1],[55,1],[55,1],[17,5],[17,5],[17,4],[22,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[56,1]],performAction:function(Ne,Xt,_e,xe,Mn,ce,Br){var we=ce.length-1;switch(Mn){case 3:return xe.apply(ce[we]),ce[we];case 4:case 9:this.$=[];break;case 5:case 10:ce[we-1].push(ce[we]),this.$=ce[we-1];break;case 6:case 7:case 11:case 12:this.$=ce[we];break;case 8:case 13:this.$=[];break;case 15:ce[we].type="createParticipant",this.$=ce[we];break;case 16:ce[we-1].unshift({type:"boxStart",boxData:xe.parseBoxData(ce[we-2])}),ce[we-1].push({type:"boxEnd",boxText:ce[we-2]}),this.$=ce[we-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(ce[we-2]),sequenceIndexStep:Number(ce[we-1]),sequenceVisible:!0,signalType:xe.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(ce[we-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:xe.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:xe.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:xe.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:xe.LINETYPE.ACTIVE_START,actor:ce[we-1]};break;case 23:this.$={type:"activeEnd",signalType:xe.LINETYPE.ACTIVE_END,actor:ce[we-1]};break;case 29:xe.setDiagramTitle(ce[we].substring(6)),this.$=ce[we].substring(6);break;case 30:xe.setDiagramTitle(ce[we].substring(7)),this.$=ce[we].substring(7);break;case 31:this.$=ce[we].trim(),xe.setAccTitle(this.$);break;case 32:case 33:this.$=ce[we].trim(),xe.setAccDescription(this.$);break;case 34:ce[we-1].unshift({type:"loopStart",loopText:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.LOOP_START}),ce[we-1].push({type:"loopEnd",loopText:ce[we-2],signalType:xe.LINETYPE.LOOP_END}),this.$=ce[we-1];break;case 35:ce[we-1].unshift({type:"rectStart",color:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.RECT_START}),ce[we-1].push({type:"rectEnd",color:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.RECT_END}),this.$=ce[we-1];break;case 36:ce[we-1].unshift({type:"optStart",optText:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.OPT_START}),ce[we-1].push({type:"optEnd",optText:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.OPT_END}),this.$=ce[we-1];break;case 37:ce[we-1].unshift({type:"altStart",altText:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.ALT_START}),ce[we-1].push({type:"altEnd",signalType:xe.LINETYPE.ALT_END}),this.$=ce[we-1];break;case 38:ce[we-1].unshift({type:"parStart",parText:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.PAR_START}),ce[we-1].push({type:"parEnd",signalType:xe.LINETYPE.PAR_END}),this.$=ce[we-1];break;case 39:ce[we-1].unshift({type:"parStart",parText:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.PAR_OVER_START}),ce[we-1].push({type:"parEnd",signalType:xe.LINETYPE.PAR_END}),this.$=ce[we-1];break;case 40:ce[we-1].unshift({type:"criticalStart",criticalText:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.CRITICAL_START}),ce[we-1].push({type:"criticalEnd",signalType:xe.LINETYPE.CRITICAL_END}),this.$=ce[we-1];break;case 41:ce[we-1].unshift({type:"breakStart",breakText:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.BREAK_START}),ce[we-1].push({type:"breakEnd",optText:xe.parseMessage(ce[we-2]),signalType:xe.LINETYPE.BREAK_END}),this.$=ce[we-1];break;case 43:this.$=ce[we-3].concat([{type:"option",optionText:xe.parseMessage(ce[we-1]),signalType:xe.LINETYPE.CRITICAL_OPTION},ce[we]]);break;case 45:this.$=ce[we-3].concat([{type:"and",parText:xe.parseMessage(ce[we-1]),signalType:xe.LINETYPE.PAR_AND},ce[we]]);break;case 47:this.$=ce[we-3].concat([{type:"else",altText:xe.parseMessage(ce[we-1]),signalType:xe.LINETYPE.ALT_ELSE},ce[we]]);break;case 48:ce[we-3].draw="participant",ce[we-3].type="addParticipant",ce[we-3].description=xe.parseMessage(ce[we-1]),this.$=ce[we-3];break;case 49:ce[we-1].draw="participant",ce[we-1].type="addParticipant",this.$=ce[we-1];break;case 50:ce[we-3].draw="actor",ce[we-3].type="addParticipant",ce[we-3].description=xe.parseMessage(ce[we-1]),this.$=ce[we-3];break;case 51:ce[we-1].draw="actor",ce[we-1].type="addParticipant",this.$=ce[we-1];break;case 52:ce[we-1].type="destroyParticipant",this.$=ce[we-1];break;case 53:this.$=[ce[we-1],{type:"addNote",placement:ce[we-2],actor:ce[we-1].actor,text:ce[we]}];break;case 54:ce[we-2]=[].concat(ce[we-1],ce[we-1]).slice(0,2),ce[we-2][0]=ce[we-2][0].actor,ce[we-2][1]=ce[we-2][1].actor,this.$=[ce[we-1],{type:"addNote",placement:xe.PLACEMENT.OVER,actor:ce[we-2].slice(0,2),text:ce[we]}];break;case 55:this.$=[ce[we-1],{type:"addLinks",actor:ce[we-1].actor,text:ce[we]}];break;case 56:this.$=[ce[we-1],{type:"addALink",actor:ce[we-1].actor,text:ce[we]}];break;case 57:this.$=[ce[we-1],{type:"addProperties",actor:ce[we-1].actor,text:ce[we]}];break;case 58:this.$=[ce[we-1],{type:"addDetails",actor:ce[we-1].actor,text:ce[we]}];break;case 61:this.$=[ce[we-2],ce[we]];break;case 62:this.$=ce[we];break;case 63:this.$=xe.PLACEMENT.LEFTOF;break;case 64:this.$=xe.PLACEMENT.RIGHTOF;break;case 65:this.$=[ce[we-4],ce[we-1],{type:"addMessage",from:ce[we-4].actor,to:ce[we-1].actor,signalType:ce[we-3],msg:ce[we],activate:!0},{type:"activeStart",signalType:xe.LINETYPE.ACTIVE_START,actor:ce[we-1]}];break;case 66:this.$=[ce[we-4],ce[we-1],{type:"addMessage",from:ce[we-4].actor,to:ce[we-1].actor,signalType:ce[we-3],msg:ce[we]},{type:"activeEnd",signalType:xe.LINETYPE.ACTIVE_END,actor:ce[we-4]}];break;case 67:this.$=[ce[we-3],ce[we-1],{type:"addMessage",from:ce[we-3].actor,to:ce[we-1].actor,signalType:ce[we-2],msg:ce[we]}];break;case 68:this.$={type:"addParticipant",actor:ce[we]};break;case 69:this.$=xe.LINETYPE.SOLID_OPEN;break;case 70:this.$=xe.LINETYPE.DOTTED_OPEN;break;case 71:this.$=xe.LINETYPE.SOLID;break;case 72:this.$=xe.LINETYPE.DOTTED;break;case 73:this.$=xe.LINETYPE.SOLID_CROSS;break;case 74:this.$=xe.LINETYPE.DOTTED_CROSS;break;case 75:this.$=xe.LINETYPE.SOLID_POINT;break;case 76:this.$=xe.LINETYPE.DOTTED_POINT;break;case 77:this.$=xe.parseMessage(ce[we].trim().substring(1));break}},table:[{3:1,4:a,5:f,6:g},{1:[3]},{3:5,4:a,5:f,6:g},{3:6,4:a,5:f,6:g},i([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],w,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:v,5:b,8:8,9:10,12:12,13:E,14:S,17:15,18:_,21:M,22:40,23:F,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:z,33:Y,35:nt,36:ot,37:ft,38:wt,39:mt,41:ct,43:rt,44:it,46:gt,50:Q,52:dt,53:K,54:yt,59:V,60:Ot,61:It,62:jt,70:xt},i(Ft,[2,5]),{9:47,12:12,13:E,14:S,17:15,18:_,21:M,22:40,23:F,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:z,33:Y,35:nt,36:ot,37:ft,38:wt,39:mt,41:ct,43:rt,44:it,46:gt,50:Q,52:dt,53:K,54:yt,59:V,60:Ot,61:It,62:jt,70:xt},i(Ft,[2,7]),i(Ft,[2,8]),i(Ft,[2,14]),{12:48,50:Q,52:dt,53:K},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:xt},{22:55,70:xt},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},i(Ft,[2,29]),i(Ft,[2,30]),{32:[1,61]},{34:[1,62]},i(Ft,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,70:xt},{22:72,70:xt},{22:73,70:xt},{67:74,71:[1,75],72:[1,76],73:[1,77],74:[1,78],75:[1,79],76:[1,80],77:[1,81],78:[1,82]},{55:83,57:[1,84],65:[1,85],66:[1,86]},{22:87,70:xt},{22:88,70:xt},{22:89,70:xt},{22:90,70:xt},i([5,51,64,71,72,73,74,75,76,77,78,79],[2,68]),i(Ft,[2,6]),i(Ft,[2,15]),i(Ct,[2,9],{10:91}),i(Ft,[2,17]),{5:[1,93],19:[1,92]},{5:[1,94]},i(Ft,[2,21]),{5:[1,95]},{5:[1,96]},i(Ft,[2,24]),i(Ft,[2,25]),i(Ft,[2,26]),i(Ft,[2,27]),i(Ft,[2,28]),i(Ft,[2,31]),i(Ft,[2,32]),i(kt,w,{7:97}),i(kt,w,{7:98}),i(kt,w,{7:99}),i(Gt,w,{40:100,7:101}),i(Fe,w,{42:102,7:103}),i(Fe,w,{7:103,42:104}),i(Mt,w,{45:105,7:106}),i(kt,w,{7:107}),{5:[1,109],51:[1,108]},{5:[1,111],51:[1,110]},{5:[1,112]},{22:115,68:[1,113],69:[1,114],70:xt},i(pn,[2,69]),i(pn,[2,70]),i(pn,[2,71]),i(pn,[2,72]),i(pn,[2,73]),i(pn,[2,74]),i(pn,[2,75]),i(pn,[2,76]),{22:116,70:xt},{22:118,58:117,70:xt},{70:[2,63]},{70:[2,64]},{56:119,79:Ae},{56:121,79:Ae},{56:122,79:Ae},{56:123,79:Ae},{4:[1,126],5:[1,128],11:125,12:127,16:[1,124],50:Q,52:dt,53:K},{5:[1,129]},i(Ft,[2,19]),i(Ft,[2,20]),i(Ft,[2,22]),i(Ft,[2,23]),{4:v,5:b,8:8,9:10,12:12,13:E,14:S,16:[1,130],17:15,18:_,21:M,22:40,23:F,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:z,33:Y,35:nt,36:ot,37:ft,38:wt,39:mt,41:ct,43:rt,44:it,46:gt,50:Q,52:dt,53:K,54:yt,59:V,60:Ot,61:It,62:jt,70:xt},{4:v,5:b,8:8,9:10,12:12,13:E,14:S,16:[1,131],17:15,18:_,21:M,22:40,23:F,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:z,33:Y,35:nt,36:ot,37:ft,38:wt,39:mt,41:ct,43:rt,44:it,46:gt,50:Q,52:dt,53:K,54:yt,59:V,60:Ot,61:It,62:jt,70:xt},{4:v,5:b,8:8,9:10,12:12,13:E,14:S,16:[1,132],17:15,18:_,21:M,22:40,23:F,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:z,33:Y,35:nt,36:ot,37:ft,38:wt,39:mt,41:ct,43:rt,44:it,46:gt,50:Q,52:dt,53:K,54:yt,59:V,60:Ot,61:It,62:jt,70:xt},{16:[1,133]},{4:v,5:b,8:8,9:10,12:12,13:E,14:S,16:[2,46],17:15,18:_,21:M,22:40,23:F,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:z,33:Y,35:nt,36:ot,37:ft,38:wt,39:mt,41:ct,43:rt,44:it,46:gt,49:[1,134],50:Q,52:dt,53:K,54:yt,59:V,60:Ot,61:It,62:jt,70:xt},{16:[1,135]},{4:v,5:b,8:8,9:10,12:12,13:E,14:S,16:[2,44],17:15,18:_,21:M,22:40,23:F,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:z,33:Y,35:nt,36:ot,37:ft,38:wt,39:mt,41:ct,43:rt,44:it,46:gt,48:[1,136],50:Q,52:dt,53:K,54:yt,59:V,60:Ot,61:It,62:jt,70:xt},{16:[1,137]},{16:[1,138]},{4:v,5:b,8:8,9:10,12:12,13:E,14:S,16:[2,42],17:15,18:_,21:M,22:40,23:F,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:z,33:Y,35:nt,36:ot,37:ft,38:wt,39:mt,41:ct,43:rt,44:it,46:gt,47:[1,139],50:Q,52:dt,53:K,54:yt,59:V,60:Ot,61:It,62:jt,70:xt},{4:v,5:b,8:8,9:10,12:12,13:E,14:S,16:[1,140],17:15,18:_,21:M,22:40,23:F,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:z,33:Y,35:nt,36:ot,37:ft,38:wt,39:mt,41:ct,43:rt,44:it,46:gt,50:Q,52:dt,53:K,54:yt,59:V,60:Ot,61:It,62:jt,70:xt},{15:[1,141]},i(Ft,[2,49]),{15:[1,142]},i(Ft,[2,51]),i(Ft,[2,52]),{22:143,70:xt},{22:144,70:xt},{56:145,79:Ae},{56:146,79:Ae},{56:147,79:Ae},{64:[1,148],79:[2,62]},{5:[2,55]},{5:[2,77]},{5:[2,56]},{5:[2,57]},{5:[2,58]},i(Ft,[2,16]),i(Ct,[2,10]),{12:149,50:Q,52:dt,53:K},i(Ct,[2,12]),i(Ct,[2,13]),i(Ft,[2,18]),i(Ft,[2,34]),i(Ft,[2,35]),i(Ft,[2,36]),i(Ft,[2,37]),{15:[1,150]},i(Ft,[2,38]),{15:[1,151]},i(Ft,[2,39]),i(Ft,[2,40]),{15:[1,152]},i(Ft,[2,41]),{5:[1,153]},{5:[1,154]},{56:155,79:Ae},{56:156,79:Ae},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:157,70:xt},i(Ct,[2,11]),i(Gt,w,{7:101,40:158}),i(Fe,w,{7:103,42:159}),i(Mt,w,{7:106,45:160}),i(Ft,[2,48]),i(Ft,[2,50]),{5:[2,65]},{5:[2,66]},{79:[2,61]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],85:[2,63],86:[2,64],119:[2,55],120:[2,77],121:[2,56],122:[2,57],123:[2,58],145:[2,67],146:[2,53],147:[2,54],155:[2,65],156:[2,66],157:[2,61],158:[2,47],159:[2,45],160:[2,43]},parseError:function(Ne,Xt){if(Xt.recoverable)this.trace(Ne);else{var _e=new Error(Ne);throw _e.hash=Xt,_e}},parse:function(Ne){var Xt=this,_e=[0],xe=[],Mn=[null],ce=[],Br=this.table,we="",Fi=0,mi=0,ga=2,Ss=1,za=ce.slice.call(arguments,1),br=Object.create(this.lexer),An={yy:{}};for(var Nn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Nn)&&(An.yy[Nn]=this.yy[Nn]);br.setInput(Ne,An.yy),An.yy.lexer=br,An.yy.parser=this,typeof br.yylloc>"u"&&(br.yylloc={});var Bn=br.yylloc;ce.push(Bn);var ke=br.options&&br.options.ranges;typeof An.yy.parseError=="function"?this.parseError=An.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pe(){var Zs;return Zs=xe.pop()||br.lex()||Ss,typeof Zs!="number"&&(Zs instanceof Array&&(xe=Zs,Zs=xe.pop()),Zs=Xt.symbols_[Zs]||Zs),Zs}for(var Je,an,xn,qa,xo={},ko,va,Ha,ds;;){if(an=_e[_e.length-1],this.defaultActions[an]?xn=this.defaultActions[an]:((Je===null||typeof Je>"u")&&(Je=pe()),xn=Br[an]&&Br[an][Je]),typeof xn>"u"||!xn.length||!xn[0]){var Fu="";ds=[];for(ko in Br[an])this.terminals_[ko]&&ko>ga&&ds.push("'"+this.terminals_[ko]+"'");br.showPosition?Fu="Parse error on line "+(Fi+1)+`: +`+br.showPosition()+` +Expecting `+ds.join(", ")+", got '"+(this.terminals_[Je]||Je)+"'":Fu="Parse error on line "+(Fi+1)+": Unexpected "+(Je==Ss?"end of input":"'"+(this.terminals_[Je]||Je)+"'"),this.parseError(Fu,{text:br.match,token:this.terminals_[Je]||Je,line:br.yylineno,loc:Bn,expected:ds})}if(xn[0]instanceof Array&&xn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+an+", token: "+Je);switch(xn[0]){case 1:_e.push(Je),Mn.push(br.yytext),ce.push(br.yylloc),_e.push(xn[1]),Je=null,mi=br.yyleng,we=br.yytext,Fi=br.yylineno,Bn=br.yylloc;break;case 2:if(va=this.productions_[xn[1]][1],xo.$=Mn[Mn.length-va],xo._$={first_line:ce[ce.length-(va||1)].first_line,last_line:ce[ce.length-1].last_line,first_column:ce[ce.length-(va||1)].first_column,last_column:ce[ce.length-1].last_column},ke&&(xo._$.range=[ce[ce.length-(va||1)].range[0],ce[ce.length-1].range[1]]),qa=this.performAction.apply(xo,[we,mi,Fi,An.yy,xn[1],Mn,ce].concat(za)),typeof qa<"u")return qa;va&&(_e=_e.slice(0,-1*va*2),Mn=Mn.slice(0,-1*va),ce=ce.slice(0,-1*va)),_e.push(this.productions_[xn[1]][0]),Mn.push(xo.$),ce.push(xo._$),Ha=Br[_e[_e.length-2]][_e[_e.length-1]],_e.push(Ha);break;case 3:return!0}}return!0}},tn=function(){var be={EOF:1,parseError:function(Xt,_e){if(this.yy.parser)this.yy.parser.parseError(Xt,_e);else throw new Error(Xt)},setInput:function(Ne,Xt){return this.yy=Xt||this.yy||{},this._input=Ne,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 Ne=this._input[0];this.yytext+=Ne,this.yyleng++,this.offset++,this.match+=Ne,this.matched+=Ne;var Xt=Ne.match(/(?:\r\n?|\n).*/g);return Xt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ne},unput:function(Ne){var Xt=Ne.length,_e=Ne.split(/(?:\r\n?|\n)/g);this._input=Ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Xt),this.offset-=Xt;var xe=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),_e.length-1&&(this.yylineno-=_e.length-1);var Mn=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:_e?(_e.length===xe.length?this.yylloc.first_column:0)+xe[xe.length-_e.length].length-_e[0].length:this.yylloc.first_column-Xt},this.options.ranges&&(this.yylloc.range=[Mn[0],Mn[0]+this.yyleng-Xt]),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(Ne){this.unput(this.match.slice(Ne))},pastInput:function(){var Ne=this.matched.substr(0,this.matched.length-this.match.length);return(Ne.length>20?"...":"")+Ne.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ne=this.match;return Ne.length<20&&(Ne+=this._input.substr(0,20-Ne.length)),(Ne.substr(0,20)+(Ne.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ne=this.pastInput(),Xt=new Array(Ne.length+1).join("-");return Ne+this.upcomingInput()+` +`+Xt+"^"},test_match:function(Ne,Xt){var _e,xe,Mn;if(this.options.backtrack_lexer&&(Mn={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&&(Mn.yylloc.range=this.yylloc.range.slice(0))),xe=Ne[0].match(/(?:\r\n?|\n).*/g),xe&&(this.yylineno+=xe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:xe?xe[xe.length-1].length-xe[xe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ne[0].length},this.yytext+=Ne[0],this.match+=Ne[0],this.matches=Ne,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(Ne[0].length),this.matched+=Ne[0],_e=this.performAction.call(this,this.yy,this,Xt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),_e)return _e;if(this._backtrack){for(var ce in Mn)this[ce]=Mn[ce];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ne,Xt,_e,xe;this._more||(this.yytext="",this.match="");for(var Mn=this._currentRules(),ce=0;ceXt[0].length)){if(Xt=_e,xe=ce,this.options.backtrack_lexer){if(Ne=this.test_match(_e,Mn[ce]),Ne!==!1)return Ne;if(this._backtrack){Xt=!1;continue}else return!1}else if(!this.options.flex)break}return Xt?(Ne=this.test_match(Xt,Mn[xe]),Ne!==!1?Ne:!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 Xt=this.next();return Xt||this.lex()},begin:function(Xt){this.conditionStack.push(Xt)},popState:function(){var Xt=this.conditionStack.length-1;return Xt>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(Xt){return Xt=this.conditionStack.length-1-Math.abs(Xt||0),Xt>=0?this.conditionStack[Xt]:"INITIAL"},pushState:function(Xt){this.begin(Xt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Xt,_e,xe,Mn){switch(xe){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;case 8:return this.begin("ID"),50;case 9:return this.begin("ID"),52;case 10:return 13;case 11:return this.begin("ID"),53;case 12:return _e.yytext=_e.yytext.trim(),this.begin("ALIAS"),70;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;case 14:return this.popState(),this.popState(),5;case 15:return this.begin("LINE"),36;case 16:return this.begin("LINE"),37;case 17:return this.begin("LINE"),38;case 18:return this.begin("LINE"),39;case 19:return this.begin("LINE"),49;case 20:return this.begin("LINE"),41;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),48;case 23:return this.begin("LINE"),44;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),46;case 26:return this.popState(),15;case 27:return 16;case 28:return 65;case 29:return 66;case 30:return 59;case 31:return 60;case 32:return 61;case 33:return 62;case 34:return 57;case 35:return 54;case 36:return this.begin("ID"),21;case 37:return this.begin("ID"),23;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;case 41:return this.popState(),"acc_title_value";case 42:return this.begin("acc_descr"),33;case 43:return this.popState(),"acc_descr_value";case 44:this.begin("acc_descr_multiline");break;case 45:this.popState();break;case 46:return"acc_descr_multiline_value";case 47:return 6;case 48:return 18;case 49:return 20;case 50:return 64;case 51:return 5;case 52:return _e.yytext=_e.yytext.trim(),70;case 53:return 73;case 54:return 74;case 55:return 71;case 56:return 72;case 57:return 75;case 58:return 76;case 59:return 77;case 60:return 78;case 61:return 79;case 62:return 68;case 63:return 69;case 64:return 5;case 65:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\->:\n,;]+?([\-]*[^\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[45,46],inclusive:!1},acc_descr:{rules:[43],inclusive:!1},acc_title:{rules:[41],inclusive:!1},ID:{rules:[2,3,12],inclusive:!1},ALIAS:{rules:[2,3,13,14],inclusive:!1},LINE:{rules:[2,3,26],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,7,8,9,10,11,15,16,17,18,19,20,21,22,23,24,25,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65],inclusive:!0}}};return be}();ye.lexer=tn;function sn(){this.yy={}}return sn.prototype=ye,ye.Parser=sn,new sn}();Obt.parser=Obt;const lQe=Obt;class hQe{constructor(a){this.init=a,this.records=this.init()}reset(){this.records=this.init()}}const ws=new hQe(()=>({prevActor:void 0,actors:{},createdActors:{},destroyedActors:{},boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0})),fQe=function(i){ws.records.boxes.push({name:i.text,wrap:i.wrap===void 0&&F9()||!!i.wrap,fill:i.color,actorKeys:[]}),ws.records.currentBox=ws.records.boxes.slice(-1)[0]},Nbt=function(i,a,f,g){let w=ws.records.currentBox;const v=ws.records.actors[i];if(v){if(ws.records.currentBox&&v.box&&ws.records.currentBox!==v.box)throw new Error("A same participant should only be defined in one Box: "+v.name+" can't be in '"+v.box.name+"' and in '"+ws.records.currentBox.name+"' at the same time.");if(w=v.box?v.box:ws.records.currentBox,v.box=w,v&&a===v.name&&f==null)return}(f==null||f.text==null)&&(f={text:a,wrap:null,type:g}),(g==null||f.text==null)&&(f={text:a,wrap:null,type:g}),ws.records.actors[i]={box:w,name:a,description:f.text,wrap:f.wrap===void 0&&F9()||!!f.wrap,prevActor:ws.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:g||"participant"},ws.records.prevActor&&ws.records.actors[ws.records.prevActor]&&(ws.records.actors[ws.records.prevActor].nextActor=i),ws.records.currentBox&&ws.records.currentBox.actorKeys.push(i),ws.records.prevActor=i},dQe=i=>{let a,f=0;for(a=0;a>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},b}return ws.records.messages.push({from:i,to:a,message:f.text,wrap:f.wrap===void 0&&F9()||!!f.wrap,type:g,activate:w}),!0},pQe=function(){return ws.records.boxes.length>0},bQe=function(){return ws.records.boxes.some(i=>i.name)},wQe=function(){return ws.records.messages},mQe=function(){return ws.records.boxes},vQe=function(){return ws.records.actors},yQe=function(){return ws.records.createdActors},xQe=function(){return ws.records.destroyedActors},bB=function(i){return ws.records.actors[i]},kQe=function(){return Object.keys(ws.records.actors)},EQe=function(){ws.records.sequenceNumbersEnabled=!0},TQe=function(){ws.records.sequenceNumbersEnabled=!1},CQe=()=>ws.records.sequenceNumbersEnabled,SQe=function(i){ws.records.wrapEnabled=i},F9=()=>ws.records.wrapEnabled!==void 0?ws.records.wrapEnabled:Re().sequence.wrap,_Qe=function(){ws.reset(),ag()},AQe=function(i){const a=i.trim(),f={text:a.replace(/^:?(?:no)?wrap:/,"").trim(),wrap:a.match(/^:?wrap:/)!==null?!0:a.match(/^:?nowrap:/)!==null?!1:void 0};return Kt.debug("parseMessage:",f),f},LQe=function(i){const a=i.match(/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/);let f=a!=null&&a[1]?a[1].trim():"transparent",g=a!=null&&a[2]?a[2].trim():void 0;if(window&&window.CSS)window.CSS.supports("color",f)||(f="transparent",g=i.trim());else{const w=new Option().style;w.color=f,w.color!==f&&(f="transparent",g=i.trim())}return{color:f,text:g!==void 0?Ef(g.replace(/^:?(?:no)?wrap:/,""),Re()):void 0,wrap:g!==void 0?g.match(/^:?wrap:/)!==null?!0:g.match(/^:?nowrap:/)!==null?!1:void 0:void 0}},wB={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},DQe={FILLED:0,OPEN:1},MQe={LEFTOF:0,RIGHTOF:1,OVER:2},fqt=function(i,a,f){const g={actor:i,placement:a,message:f.text,wrap:f.wrap===void 0&&F9()||!!f.wrap},w=[].concat(i,i);ws.records.notes.push(g),ws.records.messages.push({from:w[0],to:w[1],message:f.text,wrap:f.wrap===void 0&&F9()||!!f.wrap,type:wB.NOTE,placement:a})},dqt=function(i,a){const f=bB(i);try{let g=Ef(a.text,Re());g=g.replace(/&/g,"&"),g=g.replace(/=/g,"=");const w=JSON.parse(g);Pbt(f,w)}catch(g){Kt.error("error while parsing actor link text",g)}},IQe=function(i,a){const f=bB(i);try{const b={};let E=Ef(a.text,Re());var g=E.indexOf("@");E=E.replace(/&/g,"&"),E=E.replace(/=/g,"=");var w=E.slice(0,g-1).trim(),v=E.slice(g+1).trim();b[w]=v,Pbt(f,b)}catch(b){Kt.error("error while parsing actor link text",b)}};function Pbt(i,a){if(i.links==null)i.links=a;else for(let f in a)i.links[f]=a[f]}const gqt=function(i,a){const f=bB(i);try{let g=Ef(a.text,Re());const w=JSON.parse(g);pqt(f,w)}catch(g){Kt.error("error while parsing actor properties text",g)}};function pqt(i,a){if(i.properties==null)i.properties=a;else for(let f in a)i.properties[f]=a[f]}function OQe(){ws.records.currentBox=void 0}const bqt=function(i,a){const f=bB(i),g=document.getElementById(a.text);try{const w=g.innerHTML,v=JSON.parse(w);v.properties&&pqt(f,v.properties),v.links&&Pbt(f,v.links)}catch(w){Kt.error("error while parsing actor details text",w)}},NQe=function(i,a){if(i!==void 0&&i.properties!==void 0)return i.properties[a]},wqt=function(i){if(Array.isArray(i))i.forEach(function(a){wqt(a)});else switch(i.type){case"sequenceIndex":ws.records.messages.push({from:void 0,to:void 0,message:{start:i.sequenceIndex,step:i.sequenceIndexStep,visible:i.sequenceVisible},wrap:!1,type:i.signalType});break;case"addParticipant":Nbt(i.actor,i.actor,i.description,i.draw);break;case"createParticipant":if(ws.records.actors[i.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");ws.records.lastCreated=i.actor,Nbt(i.actor,i.actor,i.description,i.draw),ws.records.createdActors[i.actor]=ws.records.messages.length;break;case"destroyParticipant":ws.records.lastDestroyed=i.actor,ws.records.destroyedActors[i.actor]=ws.records.messages.length;break;case"activeStart":Sf(i.actor,void 0,void 0,i.signalType);break;case"activeEnd":Sf(i.actor,void 0,void 0,i.signalType);break;case"addNote":fqt(i.actor,i.placement,i.text);break;case"addLinks":dqt(i.actor,i.text);break;case"addALink":IQe(i.actor,i.text);break;case"addProperties":gqt(i.actor,i.text);break;case"addDetails":bqt(i.actor,i.text);break;case"addMessage":if(ws.records.lastCreated){if(i.to!==ws.records.lastCreated)throw new Error("The created participant "+ws.records.lastCreated+" does not have an associated creating message after its declaration. Please check the sequence diagram.");ws.records.lastCreated=void 0}else if(ws.records.lastDestroyed){if(i.to!==ws.records.lastDestroyed&&i.from!==ws.records.lastDestroyed)throw new Error("The destroyed participant "+ws.records.lastDestroyed+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");ws.records.lastDestroyed=void 0}Sf(i.from,i.to,i.msg,i.signalType,i.activate);break;case"boxStart":fQe(i.boxData);break;case"boxEnd":OQe();break;case"loopStart":Sf(void 0,void 0,i.loopText,i.signalType);break;case"loopEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"rectStart":Sf(void 0,void 0,i.color,i.signalType);break;case"rectEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"optStart":Sf(void 0,void 0,i.optText,i.signalType);break;case"optEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"altStart":Sf(void 0,void 0,i.altText,i.signalType);break;case"else":Sf(void 0,void 0,i.altText,i.signalType);break;case"altEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"setAccTitle":og(i.text);break;case"parStart":Sf(void 0,void 0,i.parText,i.signalType);break;case"and":Sf(void 0,void 0,i.parText,i.signalType);break;case"parEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"criticalStart":Sf(void 0,void 0,i.criticalText,i.signalType);break;case"option":Sf(void 0,void 0,i.optionText,i.signalType);break;case"criticalEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"breakStart":Sf(void 0,void 0,i.breakText,i.signalType);break;case"breakEnd":Sf(void 0,void 0,void 0,i.signalType);break}},mqt={addActor:Nbt,addMessage:gQe,addSignal:Sf,addLinks:dqt,addDetails:bqt,addProperties:gqt,autoWrap:F9,setWrap:SQe,enableSequenceNumbers:EQe,disableSequenceNumbers:TQe,showSequenceNumbers:CQe,getMessages:wQe,getActors:vQe,getCreatedActors:yQe,getDestroyedActors:xQe,getActor:bB,getActorKeys:kQe,getActorProperty:NQe,getAccTitle:Xg,getBoxes:mQe,getDiagramTitle:Zg,setDiagramTitle:S2,getConfig:()=>Re().sequence,clear:_Qe,parseMessage:AQe,parseBoxData:LQe,LINETYPE:wB,ARROWTYPE:DQe,PLACEMENT:MQe,addNote:fqt,setAccTitle:og,apply:wqt,setAccDescription:Qg,getAccDescription:Jg,hasAtLeastOneBox:pQe,hasAtLeastOneBoxWithTitle:bQe},PQe=i=>`.actor { + stroke: ${i.actorBorder}; + fill: ${i.actorBkg}; + } + + text.actor > tspan { + fill: ${i.actorTextColor}; + stroke: none; + } + + .actor-line { + stroke: ${i.actorLineColor}; + } + + .messageLine0 { + stroke-width: 1.5; + stroke-dasharray: none; + stroke: ${i.signalColor}; + } + + .messageLine1 { + stroke-width: 1.5; + stroke-dasharray: 2, 2; + stroke: ${i.signalColor}; + } + + #arrowhead path { + fill: ${i.signalColor}; + stroke: ${i.signalColor}; + } + + .sequenceNumber { + fill: ${i.sequenceNumberColor}; + } + + #sequencenumber { + fill: ${i.signalColor}; + } + + #crosshead path { + fill: ${i.signalColor}; + stroke: ${i.signalColor}; + } + + .messageText { + fill: ${i.signalTextColor}; + stroke: none; + } + + .labelBox { + stroke: ${i.labelBoxBorderColor}; + fill: ${i.labelBoxBkgColor}; + } + + .labelText, .labelText > tspan { + fill: ${i.labelTextColor}; + stroke: none; + } + + .loopText, .loopText > tspan { + fill: ${i.loopTextColor}; + stroke: none; + } + + .loopLine { + stroke-width: 2px; + stroke-dasharray: 2, 2; + stroke: ${i.labelBoxBorderColor}; + fill: ${i.labelBoxBorderColor}; + } + + .note { + //stroke: #decc93; + stroke: ${i.noteBorderColor}; + fill: ${i.noteBkgColor}; + } + + .noteText, .noteText > tspan { + fill: ${i.noteTextColor}; + stroke: none; + } + + .activation0 { + fill: ${i.activationBkgColor}; + stroke: ${i.activationBorderColor}; + } + + .activation1 { + fill: ${i.activationBkgColor}; + stroke: ${i.activationBorderColor}; + } + + .activation2 { + fill: ${i.activationBkgColor}; + stroke: ${i.activationBorderColor}; + } + + .actorPopupMenu { + position: absolute; + } + + .actorPopupMenuPanel { + position: absolute; + fill: ${i.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: ${i.actorBorder}; + fill: ${i.actorBkg}; + } + .actor-man circle, line { + stroke: ${i.actorBorder}; + fill: ${i.actorBkg}; + stroke-width: 2px; + } +`,B9=18*2,vqt="actor-top",yqt="actor-bottom",Fbt=function(i,a){return LY(i,a)},FQe=function(i,a,f,g,w){if(a.links===void 0||a.links===null||Object.keys(a.links).length===0)return{height:0,width:0};const v=a.links,b=a.actorCnt,E=a.rectData;var S="none";w&&(S="block !important");const _=i.append("g");_.attr("id","actor"+b+"_popup"),_.attr("class","actorPopupMenu"),_.attr("display",S);var M="";E.class!==void 0&&(M=" "+E.class);let F=E.width>f?E.width:f;const R=_.append("rect");if(R.attr("class","actorPopupMenuPanel"+M),R.attr("x",E.x),R.attr("y",E.height),R.attr("fill",E.fill),R.attr("stroke",E.stroke),R.attr("width",F),R.attr("height",E.height),R.attr("rx",E.rx),R.attr("ry",E.ry),v!=null){var B=20;for(let nt in v){var z=_.append("a"),Y=h8(v[nt]);z.attr("xlink:href",Y),z.attr("target","_blank"),ZQe(g)(nt,z,E.x+10,E.height+B,F,20,{class:"actor"},g),B+=30}}return R.attr("height",B),{height:E.height+B,width:F}},BQe=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},DD=function(i,a){let f=0,g=0;const w=a.text.split(ei.lineBreakRegex),[v,b]=k9(a.fontSize);let E=[],S=0,_=()=>a.y;if(a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0)switch(a.valign){case"top":case"start":_=()=>Math.round(a.y+a.textMargin);break;case"middle":case"center":_=()=>Math.round(a.y+(f+g+a.textMargin)/2);break;case"bottom":case"end":_=()=>Math.round(a.y+(f+g+2*a.textMargin)-a.textMargin);break}if(a.anchor!==void 0&&a.textMargin!==void 0&&a.width!==void 0)switch(a.anchor){case"left":case"start":a.x=Math.round(a.x+a.textMargin),a.anchor="start",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"middle":case"center":a.x=Math.round(a.x+a.width/2),a.anchor="middle",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"right":case"end":a.x=Math.round(a.x+a.width-a.textMargin),a.anchor="end",a.dominantBaseline="middle",a.alignmentBaseline="middle";break}for(let[M,F]of w.entries()){a.textMargin!==void 0&&a.textMargin===0&&v!==void 0&&(S=M*v);const R=i.append("text");R.attr("x",a.x),R.attr("y",_()),a.anchor!==void 0&&R.attr("text-anchor",a.anchor).attr("dominant-baseline",a.dominantBaseline).attr("alignment-baseline",a.alignmentBaseline),a.fontFamily!==void 0&&R.style("font-family",a.fontFamily),b!==void 0&&R.style("font-size",b),a.fontWeight!==void 0&&R.style("font-weight",a.fontWeight),a.fill!==void 0&&R.attr("fill",a.fill),a.class!==void 0&&R.attr("class",a.class),a.dy!==void 0?R.attr("dy",a.dy):S!==0&&R.attr("dy",S);const B=F||kFt;if(a.tspan){const z=R.append("tspan");z.attr("x",a.x),a.fill!==void 0&&z.attr("fill",a.fill),z.text(B)}else R.text(B);a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0&&(g+=(R._groups||R)[0][0].getBBox().height,f=g),E.push(R)}return E},xqt=function(i,a){function f(w,v,b,E,S){return w+","+v+" "+(w+b)+","+v+" "+(w+b)+","+(v+E-S)+" "+(w+b-S*1.2)+","+(v+E)+" "+w+","+(v+E)}const g=i.append("polygon");return g.attr("points",f(a.x,a.y,a.width,a.height,7)),g.attr("class","labelBox"),a.y=a.y+a.height/2,DD(i,a),g};let f4=-1;const kqt=(i,a,f,g)=>{i.select&&f.forEach(w=>{const v=a[w],b=i.select("#actor"+v.actorCnt);!g.mirrorActors&&v.stopy?b.attr("y2",v.stopy+v.height/2):g.mirrorActors&&b.attr("y2",v.stopy)})},RQe=function(i,a,f,g){const w=g?a.stopy:a.starty,v=a.x+a.width/2,b=w+5,E=i.append("g").lower();var S=E;g||(f4++,Object.keys(a.links||{}).length&&!f.forceMenus&&S.attr("onclick",BQe(`actor${f4}_popup`)).attr("cursor","pointer"),S.append("line").attr("id","actor"+f4).attr("x1",v).attr("y1",b).attr("x2",v).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),S=E.append("g"),a.actorCnt=f4,a.links!=null&&S.attr("id","root-"+f4));const _=_9();var M="actor";a.properties!=null&&a.properties.class?M=a.properties.class:_.fill="#eaeaea",g?M+=` ${yqt}`:M+=` ${vqt}`,_.x=a.x,_.y=w,_.width=a.width,_.height=a.height,_.class=M,_.rx=3,_.ry=3;const F=Fbt(S,_);if(a.rectData=_,a.properties!=null&&a.properties.icon){const B=a.properties.icon.trim();B.charAt(0)==="@"?KRe(S,_.x+_.width-20,_.y+10,B.substr(1)):GRe(S,_.x+_.width-20,_.y+10,B)}Bbt(f)(a.description,S,_.x,_.y,_.width,_.height,{class:"actor"},f);let R=a.height;if(F.node){const B=F.node().getBBox();a.height=B.height,R=B.height}return R},jQe=function(i,a,f,g){const w=g?a.stopy:a.starty,v=a.x+a.width/2,b=w+80;i.lower(),g||(f4++,i.append("line").attr("id","actor"+f4).attr("x1",v).attr("y1",b).attr("x2",v).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),a.actorCnt=f4);const E=i.append("g");let S="actor-man";g?S+=` ${yqt}`:S+=` ${vqt}`,E.attr("class",S);const _=_9();_.x=a.x,_.y=w,_.fill="#eaeaea",_.width=a.width,_.height=a.height,_.class="actor",_.rx=3,_.ry=3,E.append("line").attr("id","actor-man-torso"+f4).attr("x1",v).attr("y1",w+25).attr("x2",v).attr("y2",w+45),E.append("line").attr("id","actor-man-arms"+f4).attr("x1",v-B9/2).attr("y1",w+33).attr("x2",v+B9/2).attr("y2",w+33),E.append("line").attr("x1",v-B9/2).attr("y1",w+60).attr("x2",v).attr("y2",w+45),E.append("line").attr("x1",v).attr("y1",w+45).attr("x2",v+B9/2-2).attr("y2",w+60);const M=E.append("circle");M.attr("cx",a.x+a.width/2),M.attr("cy",w+10),M.attr("r",15),M.attr("width",a.width),M.attr("height",a.height);const F=E.node().getBBox();return a.height=F.height,Bbt(f)(a.description,E,_.x,_.y+35,_.width,_.height,{class:"actor"},f),a.height},$Qe=function(i,a,f,g){switch(a.type){case"actor":return jQe(i,a,f,g);case"participant":return RQe(i,a,f,g)}},zQe=function(i,a,f){const w=i.append("g");Eqt(w,a),a.name&&Bbt(f)(a.name,w,a.x,a.y+(a.textMaxHeight||0)/2,a.width,0,{class:"text"},f),w.lower()},qQe=function(i){return i.append("g")},HQe=function(i,a,f,g,w){const v=_9(),b=a.anchored;v.x=a.startx,v.y=a.starty,v.class="activation"+w%3,v.width=a.stopx-a.startx,v.height=f-a.starty,Fbt(b,v)},VQe=function(i,a,f,g){const{boxMargin:w,boxTextMargin:v,labelBoxHeight:b,labelBoxWidth:E,messageFontFamily:S,messageFontSize:_,messageFontWeight:M}=g,F=i.append("g"),R=function(Y,nt,ot,ft){return F.append("line").attr("x1",Y).attr("y1",nt).attr("x2",ot).attr("y2",ft).attr("class","loopLine")};R(a.startx,a.starty,a.stopx,a.starty),R(a.stopx,a.starty,a.stopx,a.stopy),R(a.startx,a.stopy,a.stopx,a.stopy),R(a.startx,a.starty,a.startx,a.stopy),a.sections!==void 0&&a.sections.forEach(function(Y){R(a.startx,Y.y,a.stopx,Y.y).style("stroke-dasharray","3, 3")});let B=tpt();B.text=f,B.x=a.startx,B.y=a.starty,B.fontFamily=S,B.fontSize=_,B.fontWeight=M,B.anchor="middle",B.valign="middle",B.tspan=!1,B.width=E||50,B.height=b||20,B.textMargin=v,B.class="labelText",xqt(F,B),B=Tqt(),B.text=a.title,B.x=a.startx+E/2+(a.stopx-a.startx)/2,B.y=a.starty+w+v,B.anchor="middle",B.valign="middle",B.textMargin=v,B.class="loopText",B.fontFamily=S,B.fontSize=_,B.fontWeight=M,B.wrap=!0;let z=DD(F,B);return a.sectionTitles!==void 0&&a.sectionTitles.forEach(function(Y,nt){if(Y.message){B.text=Y.message,B.x=a.startx+(a.stopx-a.startx)/2,B.y=a.sections[nt].y+w+v,B.class="loopText",B.anchor="middle",B.valign="middle",B.tspan=!1,B.fontFamily=S,B.fontSize=_,B.fontWeight=M,B.wrap=a.wrap,z=DD(F,B);let ot=Math.round(z.map(ft=>(ft._groups||ft)[0][0].getBBox().height).reduce((ft,wt)=>ft+wt));a.sections[nt].height+=ot-(w+v)}}),a.height=Math.round(a.stopy-a.starty),F},Eqt=function(i,a){sRt(i,a)},UQe=function(i){i.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")},GQe=function(i){i.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")},KQe=function(i){i.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")},WQe=function(i){i.append("defs").append("marker").attr("id","arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},YQe=function(i){i.append("defs").append("marker").attr("id","filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},XQe=function(i){i.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)},QQe=function(i){i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},Tqt=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}},JQe=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},Bbt=function(){function i(w,v,b,E,S,_,M){const F=v.append("text").attr("x",b+S/2).attr("y",E+_/2+5).style("text-anchor","middle").text(w);g(F,M)}function a(w,v,b,E,S,_,M,F){const{actorFontSize:R,actorFontFamily:B,actorFontWeight:z}=F,[Y,nt]=k9(R),ot=w.split(ei.lineBreakRegex);for(let ft=0;fti.height||0))+(this.loops.length===0?0:this.loops.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.messages.length===0?0:this.messages.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.notes.length===0?0:this.notes.map(i=>i.height||0).reduce((i,a)=>i+a))},clear:function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},addBox:function(i){this.boxes.push(i)},addActor:function(i){this.actors.push(i)},addLoop:function(i){this.loops.push(i)},addMessage:function(i){this.messages.push(i)},addNote:function(i){this.notes.push(i)},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,Sqt(Re())},updateVal:function(i,a,f,g){i[a]===void 0?i[a]=f:i[a]=g(f,i[a])},updateBounds:function(i,a,f,g){const w=this;let v=0;function b(E){return function(_){v++;const M=w.sequenceItems.length-v+1;w.updateVal(_,"starty",a-M*bn.boxMargin,Math.min),w.updateVal(_,"stopy",g+M*bn.boxMargin,Math.max),w.updateVal(Wr.data,"startx",i-M*bn.boxMargin,Math.min),w.updateVal(Wr.data,"stopx",f+M*bn.boxMargin,Math.max),E!=="activation"&&(w.updateVal(_,"startx",i-M*bn.boxMargin,Math.min),w.updateVal(_,"stopx",f+M*bn.boxMargin,Math.max),w.updateVal(Wr.data,"starty",a-M*bn.boxMargin,Math.min),w.updateVal(Wr.data,"stopy",g+M*bn.boxMargin,Math.max))}}this.sequenceItems.forEach(b()),this.activations.forEach(b("activation"))},insert:function(i,a,f,g){const w=ei.getMin(i,f),v=ei.getMax(i,f),b=ei.getMin(a,g),E=ei.getMax(a,g);this.updateVal(Wr.data,"startx",w,Math.min),this.updateVal(Wr.data,"starty",b,Math.min),this.updateVal(Wr.data,"stopx",v,Math.max),this.updateVal(Wr.data,"stopy",E,Math.max),this.updateBounds(w,b,v,E)},newActivation:function(i,a,f){const g=f[i.from.actor],w=bX(i.from.actor).length||0,v=g.x+g.width/2+(w-1)*bn.activationWidth/2;this.activations.push({startx:v,starty:this.verticalPos+2,stopx:v+bn.activationWidth,stopy:void 0,actor:i.from.actor,anchored:_f.anchorElement(a)})},endActivation:function(i){const a=this.activations.map(function(f){return f.actor}).lastIndexOf(i.from.actor);return this.activations.splice(a,1)[0]},createLoop:function(i={message:void 0,wrap:!1,width:void 0},a){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:i.message,wrap:i.wrap,width:i.width,height:0,fill:a}},newLoop:function(i={message:void 0,wrap:!1,width:void 0},a){this.sequenceItems.push(this.createLoop(i,a))},endLoop:function(){return this.sequenceItems.pop()},isLoopOverlap:function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},addSectionToLoop:function(i){const a=this.sequenceItems.pop();a.sections=a.sections||[],a.sectionTitles=a.sectionTitles||[],a.sections.push({y:Wr.getVerticalPos(),height:0}),a.sectionTitles.push(i),this.sequenceItems.push(a)},saveVerticalPos:function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},resetVerticalPos:function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},bumpVerticalPos:function(i){this.verticalPos=this.verticalPos+i,this.data.stopy=ei.getMax(this.data.stopy,this.verticalPos)},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return{bounds:this.data,models:this.models}}},tJe=function(i,a){Wr.bumpVerticalPos(bn.boxMargin),a.height=bn.boxMargin,a.starty=Wr.getVerticalPos();const f=_9();f.x=a.startx,f.y=a.starty,f.width=a.width||bn.width,f.class="note";const g=i.append("g"),w=_f.drawRect(g,f),v=tpt();v.x=a.startx,v.y=a.starty,v.width=f.width,v.dy="1em",v.text=a.message,v.class="noteText",v.fontFamily=bn.noteFontFamily,v.fontSize=bn.noteFontSize,v.fontWeight=bn.noteFontWeight,v.anchor=bn.noteAlign,v.textMargin=bn.noteMargin,v.valign="center";const b=DD(g,v),E=Math.round(b.map(S=>(S._groups||S)[0][0].getBBox().height).reduce((S,_)=>S+_));w.attr("height",E+2*bn.noteMargin),a.height+=E+2*bn.noteMargin,Wr.bumpVerticalPos(E+2*bn.noteMargin),a.stopy=a.starty+E+2*bn.noteMargin,a.stopx=a.startx+f.width,Wr.insert(a.startx,a.starty,a.stopx,a.stopy),Wr.models.addNote(a)},R9=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight}),MD=i=>({fontFamily:i.noteFontFamily,fontSize:i.noteFontSize,fontWeight:i.noteFontWeight}),Rbt=i=>({fontFamily:i.actorFontFamily,fontSize:i.actorFontSize,fontWeight:i.actorFontWeight});function eJe(i,a){Wr.bumpVerticalPos(10);const{startx:f,stopx:g,message:w}=a,v=ei.splitBreaks(w).length,b=uo.calculateTextDimensions(w,R9(bn)),E=b.height/v;a.height+=E,Wr.bumpVerticalPos(E);let S,_=b.height-10;const M=b.width;if(f===g){S=Wr.getVerticalPos()+_,bn.rightAngles||(_+=bn.boxMargin,S=Wr.getVerticalPos()+_),_+=30;const F=ei.getMax(M/2,bn.width/2);Wr.insert(f-F,Wr.getVerticalPos()-10+_,g+F,Wr.getVerticalPos()+30+_)}else _+=bn.boxMargin,S=Wr.getVerticalPos()+_,Wr.insert(f,S-10,g,S);return Wr.bumpVerticalPos(_),a.height+=_,a.stopy=a.starty+a.height,Wr.insert(a.fromBounds,a.starty,a.toBounds,a.stopy),S}const nJe=function(i,a,f,g){const{startx:w,stopx:v,starty:b,message:E,type:S,sequenceIndex:_,sequenceVisible:M}=a,F=uo.calculateTextDimensions(E,R9(bn)),R=tpt();R.x=w,R.y=b+10,R.width=v-w,R.class="messageText",R.dy="1em",R.text=E,R.fontFamily=bn.messageFontFamily,R.fontSize=bn.messageFontSize,R.fontWeight=bn.messageFontWeight,R.anchor=bn.messageAlign,R.valign="center",R.textMargin=bn.wrapPadding,R.tspan=!1,DD(i,R);const B=F.width;let z;w===v?bn.rightAngles?z=i.append("path").attr("d",`M ${w},${f} H ${w+ei.getMax(bn.width/2,B/2)} V ${f+25} H ${w}`):z=i.append("path").attr("d","M "+w+","+f+" C "+(w+60)+","+(f-10)+" "+(w+60)+","+(f+30)+" "+w+","+(f+20)):(z=i.append("line"),z.attr("x1",w),z.attr("y1",f),z.attr("x2",v),z.attr("y2",f)),S===g.db.LINETYPE.DOTTED||S===g.db.LINETYPE.DOTTED_CROSS||S===g.db.LINETYPE.DOTTED_POINT||S===g.db.LINETYPE.DOTTED_OPEN?(z.style("stroke-dasharray","3, 3"),z.attr("class","messageLine1")):z.attr("class","messageLine0");let Y="";bn.arrowMarkerAbsolute&&(Y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,Y=Y.replace(/\(/g,"\\("),Y=Y.replace(/\)/g,"\\)")),z.attr("stroke-width",2),z.attr("stroke","none"),z.style("fill","none"),(S===g.db.LINETYPE.SOLID||S===g.db.LINETYPE.DOTTED)&&z.attr("marker-end","url("+Y+"#arrowhead)"),(S===g.db.LINETYPE.SOLID_POINT||S===g.db.LINETYPE.DOTTED_POINT)&&z.attr("marker-end","url("+Y+"#filled-head)"),(S===g.db.LINETYPE.SOLID_CROSS||S===g.db.LINETYPE.DOTTED_CROSS)&&z.attr("marker-end","url("+Y+"#crosshead)"),(M||bn.showSequenceNumbers)&&(z.attr("marker-start","url("+Y+"#sequencenumber)"),i.append("text").attr("x",w).attr("y",f+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(_))},rJe=function(i,a,f,g,w,v,b){let E=0,S=0,_,M=0;for(const F of g){const R=a[F],B=R.box;_&&_!=B&&(b||Wr.models.addBox(_),S+=bn.boxMargin+_.margin),B&&B!=_&&(b||(B.x=E+S,B.y=w),S+=B.margin),R.width=R.width||bn.width,R.height=ei.getMax(R.height||bn.height,bn.height),R.margin=R.margin||bn.actorMargin,M=ei.getMax(M,R.height),f[R.name]&&(S+=R.width/2),R.x=E+S,R.starty=Wr.getVerticalPos(),Wr.insert(R.x,w,R.x+R.width,R.height),E+=R.width+S,R.box&&(R.box.width=E+B.margin-R.box.x),S=R.margin,_=R.box,Wr.models.addActor(R)}_&&!b&&Wr.models.addBox(_),Wr.bumpVerticalPos(M)},jbt=function(i,a,f,g){if(g){let w=0;Wr.bumpVerticalPos(bn.boxMargin*2);for(const v of f){const b=a[v];b.stopy||(b.stopy=Wr.getVerticalPos());const E=_f.drawActor(i,b,bn,!0);w=ei.getMax(w,E)}Wr.bumpVerticalPos(w+bn.boxMargin)}else for(const w of f){const v=a[w];_f.drawActor(i,v,bn,!1)}},Cqt=function(i,a,f,g){let w=0,v=0;for(const b of f){const E=a[b],S=oJe(E),_=_f.drawPopup(i,E,S,bn,bn.forceMenus,g);_.height>w&&(w=_.height),_.width+E.x>v&&(v=_.width+E.x)}return{maxHeight:w,maxWidth:v}},Sqt=function(i){Ld(bn,i),i.fontFamily&&(bn.actorFontFamily=bn.noteFontFamily=bn.messageFontFamily=i.fontFamily),i.fontSize&&(bn.actorFontSize=bn.noteFontSize=bn.messageFontSize=i.fontSize),i.fontWeight&&(bn.actorFontWeight=bn.noteFontWeight=bn.messageFontWeight=i.fontWeight)},bX=function(i){return Wr.activations.filter(function(a){return a.actor===i})},_qt=function(i,a){const f=a[i],g=bX(i),w=g.reduce(function(b,E){return ei.getMin(b,E.startx)},f.x+f.width/2-1),v=g.reduce(function(b,E){return ei.getMax(b,E.stopx)},f.x+f.width/2+1);return[w,v]};function d4(i,a,f,g,w){Wr.bumpVerticalPos(f);let v=g;if(a.id&&a.message&&i[a.id]){const b=i[a.id].width,E=R9(bn);a.message=uo.wrapLabel(`[${a.message}]`,b-2*bn.wrapPadding,E),a.width=b,a.wrap=!0;const S=uo.calculateTextDimensions(a.message,E),_=ei.getMax(S.height,bn.labelBoxHeight);v=g+_,Kt.debug(`${_} - ${a.message}`)}w(a),Wr.bumpVerticalPos(v)}function iJe(i,a,f,g,w,v,b){function E(_,M){_.x{xt.add(Ft.from),xt.add(Ft.to)}),z=z.filter(Ft=>xt.has(Ft))}rJe(_,M,F,z,0,Y,!1);const mt=hJe(Y,M,wt,g);_f.insertArrowHead(_),_f.insertArrowCrossHead(_),_f.insertArrowFilledHead(_),_f.insertSequenceNumber(_);function ct(xt,Ft){const Ct=Wr.endActivation(xt);Ct.starty+18>Ft&&(Ct.starty=Ft-6,Ft+=12),_f.drawActivation(_,Ct,Ft,bn,bX(xt.from.actor).length),Wr.insert(Ct.startx,Ft-10,Ct.stopx,Ft)}let rt=1,it=1;const gt=[],Q=[];Y.forEach(function(xt,Ft){let Ct,kt,Gt;switch(xt.type){case g.db.LINETYPE.NOTE:Wr.resetVerticalPos(),kt=xt.noteModel,tJe(_,kt);break;case g.db.LINETYPE.ACTIVE_START:Wr.newActivation(xt,_,M);break;case g.db.LINETYPE.ACTIVE_END:ct(xt,Wr.getVerticalPos());break;case g.db.LINETYPE.LOOP_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.LOOP_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"loop",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.RECT_START:d4(mt,xt,bn.boxMargin,bn.boxMargin,Fe=>Wr.newLoop(void 0,Fe.message));break;case g.db.LINETYPE.RECT_END:Ct=Wr.endLoop(),Q.push(Ct),Wr.models.addLoop(Ct),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos());break;case g.db.LINETYPE.OPT_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.OPT_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"opt",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.ALT_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.ALT_ELSE:d4(mt,xt,bn.boxMargin+bn.boxTextMargin,bn.boxMargin,Fe=>Wr.addSectionToLoop(Fe));break;case g.db.LINETYPE.ALT_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"alt",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.PAR_START:case g.db.LINETYPE.PAR_OVER_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe)),Wr.saveVerticalPos();break;case g.db.LINETYPE.PAR_AND:d4(mt,xt,bn.boxMargin+bn.boxTextMargin,bn.boxMargin,Fe=>Wr.addSectionToLoop(Fe));break;case g.db.LINETYPE.PAR_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"par",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.AUTONUMBER:rt=xt.message.start||rt,it=xt.message.step||it,xt.message.visible?g.db.enableSequenceNumbers():g.db.disableSequenceNumbers();break;case g.db.LINETYPE.CRITICAL_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.CRITICAL_OPTION:d4(mt,xt,bn.boxMargin+bn.boxTextMargin,bn.boxMargin,Fe=>Wr.addSectionToLoop(Fe));break;case g.db.LINETYPE.CRITICAL_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"critical",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.BREAK_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.BREAK_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"break",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;default:try{Gt=xt.msgModel,Gt.starty=Wr.getVerticalPos(),Gt.sequenceIndex=rt,Gt.sequenceVisible=g.db.showSequenceNumbers();const Fe=eJe(_,Gt);iJe(xt,Gt,Fe,Ft,M,F,R),gt.push({messageModel:Gt,lineStartY:Fe}),Wr.models.addMessage(Gt)}catch(Fe){Kt.error("error while drawing message",Fe)}}[g.db.LINETYPE.SOLID_OPEN,g.db.LINETYPE.DOTTED_OPEN,g.db.LINETYPE.SOLID,g.db.LINETYPE.DOTTED,g.db.LINETYPE.SOLID_CROSS,g.db.LINETYPE.DOTTED_CROSS,g.db.LINETYPE.SOLID_POINT,g.db.LINETYPE.DOTTED_POINT].includes(xt.type)&&(rt=rt+it)}),Kt.debug("createdActors",F),Kt.debug("destroyedActors",R),jbt(_,M,z,!1),gt.forEach(xt=>nJe(_,xt.messageModel,xt.lineStartY,g)),bn.mirrorActors&&jbt(_,M,z,!0),Q.forEach(xt=>_f.drawBackgroundRect(_,xt)),kqt(_,M,z,bn),Wr.models.boxes.forEach(function(xt){xt.height=Wr.getVerticalPos()-xt.y,Wr.insert(xt.x,xt.y,xt.x+xt.width,xt.height),xt.startx=xt.x,xt.starty=xt.y,xt.stopx=xt.startx+xt.width,xt.stopy=xt.starty+xt.height,xt.stroke="rgb(0,0,0, 0.5)",_f.drawBox(_,xt,bn)}),ot&&Wr.bumpVerticalPos(bn.boxMargin);const dt=Cqt(_,M,z,S),{bounds:K}=Wr.getBounds();let yt=K.stopy-K.starty;yt{const b=i[v];b.wrap&&(b.description=uo.wrapLabel(b.description,bn.width-2*bn.wrapPadding,Rbt(bn)));const E=uo.calculateTextDimensions(b.description,Rbt(bn));b.width=b.wrap?bn.width:ei.getMax(bn.width,E.width+2*bn.wrapPadding),b.height=b.wrap?ei.getMax(E.height,bn.height):bn.height,g=ei.getMax(g,b.height)});for(const v in a){const b=i[v];if(!b)continue;const E=i[b.nextActor];if(!E){const F=a[v]+bn.actorMargin-b.width/2;b.margin=ei.getMax(F,bn.actorMargin);continue}const _=a[v]+bn.actorMargin-b.width/2-E.width/2;b.margin=ei.getMax(_,bn.actorMargin)}let w=0;return f.forEach(v=>{const b=R9(bn);let E=v.actorKeys.reduce((M,F)=>M+=i[F].width+(i[F].margin||0),0);E-=2*bn.boxTextMargin,v.wrap&&(v.name=uo.wrapLabel(v.name,E-2*bn.wrapPadding,b));const S=uo.calculateTextDimensions(v.name,b);w=ei.getMax(S.height,w);const _=ei.getMax(E,S.width+2*bn.wrapPadding);if(v.margin=bn.boxTextMargin,E<_){const M=(_-E)/2;v.margin+=M}}),f.forEach(v=>v.textMaxHeight=w),ei.getMax(g,bn.height)}const uJe=function(i,a,f){const g=a[i.from].x,w=a[i.to].x,v=i.wrap&&i.message;let b=uo.calculateTextDimensions(v?uo.wrapLabel(i.message,bn.width,MD(bn)):i.message,MD(bn));const E={width:v?bn.width:ei.getMax(bn.width,b.width+2*bn.noteMargin),height:0,startx:a[i.from].x,stopx:0,starty:0,stopy:0,message:i.message};return i.placement===f.db.PLACEMENT.RIGHTOF?(E.width=v?ei.getMax(bn.width,b.width):ei.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*bn.noteMargin),E.startx=g+(a[i.from].width+bn.actorMargin)/2):i.placement===f.db.PLACEMENT.LEFTOF?(E.width=v?ei.getMax(bn.width,b.width+2*bn.noteMargin):ei.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*bn.noteMargin),E.startx=g-E.width+(a[i.from].width-bn.actorMargin)/2):i.to===i.from?(b=uo.calculateTextDimensions(v?uo.wrapLabel(i.message,ei.getMax(bn.width,a[i.from].width),MD(bn)):i.message,MD(bn)),E.width=v?ei.getMax(bn.width,a[i.from].width):ei.getMax(a[i.from].width,bn.width,b.width+2*bn.noteMargin),E.startx=g+(a[i.from].width-E.width)/2):(E.width=Math.abs(g+a[i.from].width/2-(w+a[i.to].width/2))+bn.actorMargin,E.startx=g2,F=Y=>E?-Y:Y;i.from===i.to?_=S:(i.activate&&!M&&(_+=F(bn.activationWidth/2-1)),[f.db.LINETYPE.SOLID_OPEN,f.db.LINETYPE.DOTTED_OPEN].includes(i.type)||(_+=F(3)));const R=[g,w,v,b],B=Math.abs(S-_);i.wrap&&i.message&&(i.message=uo.wrapLabel(i.message,ei.getMax(B+2*bn.wrapPadding,bn.width),R9(bn)));const z=uo.calculateTextDimensions(i.message,R9(bn));return{width:ei.getMax(i.wrap?0:z.width+2*bn.wrapPadding,B+2*bn.wrapPadding,bn.width),height:0,startx:S,stopx:_,starty:0,stopy:0,message:i.message,type:i.type,wrap:i.wrap,fromBounds:Math.min.apply(null,R),toBounds:Math.max.apply(null,R)}},hJe=function(i,a,f,g){const w={},v=[];let b,E,S;return i.forEach(function(_){switch(_.id=uo.random({length:10}),_.type){case g.db.LINETYPE.LOOP_START:case g.db.LINETYPE.ALT_START:case g.db.LINETYPE.OPT_START:case g.db.LINETYPE.PAR_START:case g.db.LINETYPE.PAR_OVER_START:case g.db.LINETYPE.CRITICAL_START:case g.db.LINETYPE.BREAK_START:v.push({id:_.id,msg:_.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case g.db.LINETYPE.ALT_ELSE:case g.db.LINETYPE.PAR_AND:case g.db.LINETYPE.CRITICAL_OPTION:_.message&&(b=v.pop(),w[b.id]=b,w[_.id]=b,v.push(b));break;case g.db.LINETYPE.LOOP_END:case g.db.LINETYPE.ALT_END:case g.db.LINETYPE.OPT_END:case g.db.LINETYPE.PAR_END:case g.db.LINETYPE.CRITICAL_END:case g.db.LINETYPE.BREAK_END:b=v.pop(),w[b.id]=b;break;case g.db.LINETYPE.ACTIVE_START:{const F=a[_.from?_.from.actor:_.to.actor],R=bX(_.from?_.from.actor:_.to.actor).length,B=F.x+F.width/2+(R-1)*bn.activationWidth/2,z={startx:B,stopx:B+bn.activationWidth,actor:_.from.actor,enabled:!0};Wr.activations.push(z)}break;case g.db.LINETYPE.ACTIVE_END:{const F=Wr.activations.map(R=>R.actor).lastIndexOf(_.from.actor);delete Wr.activations.splice(F,1)[0]}break}_.placement!==void 0?(E=uJe(_,a,g),_.noteModel=E,v.forEach(F=>{b=F,b.from=ei.getMin(b.from,E.startx),b.to=ei.getMax(b.to,E.startx+E.width),b.width=ei.getMax(b.width,Math.abs(b.from-b.to))-bn.labelBoxWidth})):(S=lJe(_,a,g),_.msgModel=S,S.startx&&S.stopx&&v.length>0&&v.forEach(F=>{if(b=F,S.startx===S.stopx){const R=a[_.from],B=a[_.to];b.from=ei.getMin(R.x-S.width/2,R.x-R.width/2,b.from),b.to=ei.getMax(B.x+S.width/2,B.x+R.width/2,b.to),b.width=ei.getMax(b.width,Math.abs(b.to-b.from))-bn.labelBoxWidth}else b.from=ei.getMin(S.startx,b.from),b.to=ei.getMax(S.stopx,b.to),b.width=ei.getMax(b.width,S.width)-bn.labelBoxWidth}))}),Wr.activations=[],Kt.debug("Loop type widths:",w),w},fJe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:lQe,db:mqt,renderer:{bounds:Wr,drawActors:jbt,drawActorsPopup:Cqt,setConf:Sqt,draw:sJe},styles:PQe,init:({wrap:i})=>{mqt.setWrap(i)}}},Symbol.toStringTag,{value:"Module"}));var $bt=function(){var i=function(za,br,An,Nn){for(An=An||{},Nn=za.length;Nn--;An[za[Nn]]=br);return An},a=[1,17],f=[1,18],g=[1,19],w=[1,39],v=[1,40],b=[1,25],E=[1,23],S=[1,24],_=[1,31],M=[1,32],F=[1,33],R=[1,34],B=[1,35],z=[1,36],Y=[1,26],nt=[1,27],ot=[1,28],ft=[1,29],wt=[1,43],mt=[1,30],ct=[1,42],rt=[1,44],it=[1,41],gt=[1,45],Q=[1,9],dt=[1,8,9],K=[1,56],yt=[1,57],V=[1,58],Ot=[1,59],It=[1,60],jt=[1,61],xt=[1,62],Ft=[1,8,9,39],Ct=[1,74],kt=[1,8,9,12,13,21,37,39,42,59,60,61,62,63,64,65,70,72],Gt=[1,8,9,12,13,19,21,37,39,42,46,59,60,61,62,63,64,65,70,72,74,80,95,97,98],Fe=[13,74,80,95,97,98],Mt=[13,64,65,74,80,95,97,98],pn=[13,59,60,61,62,63,74,80,95,97,98],Ae=[1,93],ye=[1,110],tn=[1,108],sn=[1,102],be=[1,103],Ne=[1,104],Xt=[1,105],_e=[1,106],xe=[1,107],Mn=[1,109],ce=[1,8,9,37,39,42],Br=[1,8,9,21],we=[1,8,9,78],Fi=[1,8,9,21,73,74,78,80,81,82,83,84,85],mi={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,className:17,classLiteralName:18,GENERICTYPE:19,relationStatement:20,LABEL:21,namespaceStatement:22,classStatement:23,memberStatement:24,annotationStatement:25,clickStatement:26,styleStatement:27,cssClassStatement:28,noteStatement:29,direction:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,namespaceIdentifier:36,STRUCT_START:37,classStatements:38,STRUCT_STOP:39,NAMESPACE:40,classIdentifier:41,STYLE_SEPARATOR:42,members:43,CLASS:44,ANNOTATION_START:45,ANNOTATION_END:46,MEMBER:47,SEPARATOR:48,relation:49,NOTE_FOR:50,noteText:51,NOTE:52,direction_tb:53,direction_bt:54,direction_rl:55,direction_lr:56,relationType:57,lineType:58,AGGREGATION:59,EXTENSION:60,COMPOSITION:61,DEPENDENCY:62,LOLLIPOP:63,LINE:64,DOTTED_LINE:65,CALLBACK:66,LINK:67,LINK_TARGET:68,CLICK:69,CALLBACK_NAME:70,CALLBACK_ARGS:71,HREF:72,STYLE:73,ALPHA:74,stylesOpt:75,CSSCLASS:76,style:77,COMMA:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,commentToken:86,textToken:87,graphCodeTokens:88,textNoTagsToken:89,TAGSTART:90,TAGEND:91,"==":92,"--":93,DEFAULT:94,MINUS:95,keywords:96,UNICODE_TEXT:97,BQUOTE_STR:98,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",19:"GENERICTYPE",21:"LABEL",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",37:"STRUCT_START",39:"STRUCT_STOP",40:"NAMESPACE",42:"STYLE_SEPARATOR",44:"CLASS",45:"ANNOTATION_START",46:"ANNOTATION_END",47:"MEMBER",48:"SEPARATOR",50:"NOTE_FOR",52:"NOTE",53:"direction_tb",54:"direction_bt",55:"direction_rl",56:"direction_lr",59:"AGGREGATION",60:"EXTENSION",61:"COMPOSITION",62:"DEPENDENCY",63:"LOLLIPOP",64:"LINE",65:"DOTTED_LINE",66:"CALLBACK",67:"LINK",68:"LINK_TARGET",69:"CLICK",70:"CALLBACK_NAME",71:"CALLBACK_ARGS",72:"HREF",73:"STYLE",74:"ALPHA",76:"CSSCLASS",78:"COMMA",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",88:"graphCodeTokens",90:"TAGSTART",91:"TAGEND",92:"==",93:"--",94:"DEFAULT",95:"MINUS",96:"keywords",97:"UNICODE_TEXT",98:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,2],[17,1],[17,1],[17,2],[17,2],[17,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[22,4],[22,5],[36,2],[38,1],[38,2],[38,3],[23,1],[23,3],[23,4],[23,6],[41,2],[41,3],[25,4],[43,1],[43,2],[24,1],[24,2],[24,1],[24,1],[20,3],[20,4],[20,4],[20,5],[29,3],[29,2],[30,1],[30,1],[30,1],[30,1],[49,3],[49,2],[49,2],[49,1],[57,1],[57,1],[57,1],[57,1],[57,1],[58,1],[58,1],[26,3],[26,4],[26,3],[26,4],[26,4],[26,5],[26,3],[26,4],[26,4],[26,5],[26,4],[26,5],[26,5],[26,6],[27,3],[28,3],[75,1],[75,3],[77,1],[77,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[86,1],[86,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[89,1],[89,1],[89,1],[89,1],[16,1],[16,1],[16,1],[16,1],[18,1],[51,1]],performAction:function(br,An,Nn,Bn,ke,pe,Je){var an=pe.length-1;switch(ke){case 8:this.$=pe[an-1];break;case 9:case 11:case 12:this.$=pe[an];break;case 10:case 13:this.$=pe[an-1]+pe[an];break;case 14:case 15:this.$=pe[an-1]+"~"+pe[an]+"~";break;case 16:Bn.addRelation(pe[an]);break;case 17:pe[an-1].title=Bn.cleanupLabel(pe[an]),Bn.addRelation(pe[an-1]);break;case 27:this.$=pe[an].trim(),Bn.setAccTitle(this.$);break;case 28:case 29:this.$=pe[an].trim(),Bn.setAccDescription(this.$);break;case 30:Bn.addClassesToNamespace(pe[an-3],pe[an-1]);break;case 31:Bn.addClassesToNamespace(pe[an-4],pe[an-1]);break;case 32:this.$=pe[an],Bn.addNamespace(pe[an]);break;case 33:this.$=[pe[an]];break;case 34:this.$=[pe[an-1]];break;case 35:pe[an].unshift(pe[an-2]),this.$=pe[an];break;case 37:Bn.setCssClass(pe[an-2],pe[an]);break;case 38:Bn.addMembers(pe[an-3],pe[an-1]);break;case 39:Bn.setCssClass(pe[an-5],pe[an-3]),Bn.addMembers(pe[an-5],pe[an-1]);break;case 40:this.$=pe[an],Bn.addClass(pe[an]);break;case 41:this.$=pe[an-1],Bn.addClass(pe[an-1]),Bn.setClassLabel(pe[an-1],pe[an]);break;case 42:Bn.addAnnotation(pe[an],pe[an-2]);break;case 43:this.$=[pe[an]];break;case 44:pe[an].push(pe[an-1]),this.$=pe[an];break;case 45:break;case 46:Bn.addMember(pe[an-1],Bn.cleanupLabel(pe[an]));break;case 47:break;case 48:break;case 49:this.$={id1:pe[an-2],id2:pe[an],relation:pe[an-1],relationTitle1:"none",relationTitle2:"none"};break;case 50:this.$={id1:pe[an-3],id2:pe[an],relation:pe[an-1],relationTitle1:pe[an-2],relationTitle2:"none"};break;case 51:this.$={id1:pe[an-3],id2:pe[an],relation:pe[an-2],relationTitle1:"none",relationTitle2:pe[an-1]};break;case 52:this.$={id1:pe[an-4],id2:pe[an],relation:pe[an-2],relationTitle1:pe[an-3],relationTitle2:pe[an-1]};break;case 53:Bn.addNote(pe[an],pe[an-1]);break;case 54:Bn.addNote(pe[an]);break;case 55:Bn.setDirection("TB");break;case 56:Bn.setDirection("BT");break;case 57:Bn.setDirection("RL");break;case 58:Bn.setDirection("LR");break;case 59:this.$={type1:pe[an-2],type2:pe[an],lineType:pe[an-1]};break;case 60:this.$={type1:"none",type2:pe[an],lineType:pe[an-1]};break;case 61:this.$={type1:pe[an-1],type2:"none",lineType:pe[an]};break;case 62:this.$={type1:"none",type2:"none",lineType:pe[an]};break;case 63:this.$=Bn.relationType.AGGREGATION;break;case 64:this.$=Bn.relationType.EXTENSION;break;case 65:this.$=Bn.relationType.COMPOSITION;break;case 66:this.$=Bn.relationType.DEPENDENCY;break;case 67:this.$=Bn.relationType.LOLLIPOP;break;case 68:this.$=Bn.lineType.LINE;break;case 69:this.$=Bn.lineType.DOTTED_LINE;break;case 70:case 76:this.$=pe[an-2],Bn.setClickEvent(pe[an-1],pe[an]);break;case 71:case 77:this.$=pe[an-3],Bn.setClickEvent(pe[an-2],pe[an-1]),Bn.setTooltip(pe[an-2],pe[an]);break;case 72:this.$=pe[an-2],Bn.setLink(pe[an-1],pe[an]);break;case 73:this.$=pe[an-3],Bn.setLink(pe[an-2],pe[an-1],pe[an]);break;case 74:this.$=pe[an-3],Bn.setLink(pe[an-2],pe[an-1]),Bn.setTooltip(pe[an-2],pe[an]);break;case 75:this.$=pe[an-4],Bn.setLink(pe[an-3],pe[an-2],pe[an]),Bn.setTooltip(pe[an-3],pe[an-1]);break;case 78:this.$=pe[an-3],Bn.setClickEvent(pe[an-2],pe[an-1],pe[an]);break;case 79:this.$=pe[an-4],Bn.setClickEvent(pe[an-3],pe[an-2],pe[an-1]),Bn.setTooltip(pe[an-3],pe[an]);break;case 80:this.$=pe[an-3],Bn.setLink(pe[an-2],pe[an]);break;case 81:this.$=pe[an-4],Bn.setLink(pe[an-3],pe[an-1],pe[an]);break;case 82:this.$=pe[an-4],Bn.setLink(pe[an-3],pe[an-1]),Bn.setTooltip(pe[an-3],pe[an]);break;case 83:this.$=pe[an-5],Bn.setLink(pe[an-4],pe[an-2],pe[an]),Bn.setTooltip(pe[an-4],pe[an-1]);break;case 84:this.$=pe[an-2],Bn.setCssStyle(pe[an-1],pe[an]);break;case 85:Bn.setCssClass(pe[an-1],pe[an]);break;case 86:this.$=[pe[an]];break;case 87:pe[an-2].push(pe[an]),this.$=pe[an-2];break;case 89:this.$=pe[an-1]+pe[an];break}},table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:a,33:f,35:g,36:21,40:w,41:22,44:v,45:b,47:E,48:S,50:_,52:M,53:F,54:R,55:B,56:z,66:Y,67:nt,69:ot,73:ft,74:wt,76:mt,80:ct,95:rt,97:it,98:gt},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},i(Q,[2,5],{8:[1,46]}),{8:[1,47]},i(dt,[2,16],{21:[1,48]}),i(dt,[2,18]),i(dt,[2,19]),i(dt,[2,20]),i(dt,[2,21]),i(dt,[2,22]),i(dt,[2,23]),i(dt,[2,24]),i(dt,[2,25]),i(dt,[2,26]),{32:[1,49]},{34:[1,50]},i(dt,[2,29]),i(dt,[2,45],{49:51,57:54,58:55,13:[1,52],21:[1,53],59:K,60:yt,61:V,62:Ot,63:It,64:jt,65:xt}),{37:[1,63]},i(Ft,[2,36],{37:[1,65],42:[1,64]}),i(dt,[2,47]),i(dt,[2,48]),{16:66,74:wt,80:ct,95:rt,97:it},{16:37,17:67,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{16:37,17:68,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{16:37,17:69,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{74:[1,70]},{13:[1,71]},{16:37,17:72,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{13:Ct,51:73},i(dt,[2,55]),i(dt,[2,56]),i(dt,[2,57]),i(dt,[2,58]),i(kt,[2,11],{16:37,18:38,17:75,19:[1,76],74:wt,80:ct,95:rt,97:it,98:gt}),i(kt,[2,12],{19:[1,77]}),{15:78,16:79,74:wt,80:ct,95:rt,97:it},{16:37,17:80,18:38,74:wt,80:ct,95:rt,97:it,98:gt},i(Gt,[2,112]),i(Gt,[2,113]),i(Gt,[2,114]),i(Gt,[2,115]),i([1,8,9,12,13,19,21,37,39,42,59,60,61,62,63,64,65,70,72],[2,116]),i(Q,[2,6],{10:5,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,17:20,36:21,41:22,16:37,18:38,5:81,31:a,33:f,35:g,40:w,44:v,45:b,47:E,48:S,50:_,52:M,53:F,54:R,55:B,56:z,66:Y,67:nt,69:ot,73:ft,74:wt,76:mt,80:ct,95:rt,97:it,98:gt}),{5:82,10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:a,33:f,35:g,36:21,40:w,41:22,44:v,45:b,47:E,48:S,50:_,52:M,53:F,54:R,55:B,56:z,66:Y,67:nt,69:ot,73:ft,74:wt,76:mt,80:ct,95:rt,97:it,98:gt},i(dt,[2,17]),i(dt,[2,27]),i(dt,[2,28]),{13:[1,84],16:37,17:83,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{49:85,57:54,58:55,59:K,60:yt,61:V,62:Ot,63:It,64:jt,65:xt},i(dt,[2,46]),{58:86,64:jt,65:xt},i(Fe,[2,62],{57:87,59:K,60:yt,61:V,62:Ot,63:It}),i(Mt,[2,63]),i(Mt,[2,64]),i(Mt,[2,65]),i(Mt,[2,66]),i(Mt,[2,67]),i(pn,[2,68]),i(pn,[2,69]),{8:[1,89],23:90,38:88,41:22,44:v},{16:91,74:wt,80:ct,95:rt,97:it},{43:92,47:Ae},{46:[1,94]},{13:[1,95]},{13:[1,96]},{70:[1,97],72:[1,98]},{21:ye,73:tn,74:sn,75:99,77:100,79:101,80:be,81:Ne,82:Xt,83:_e,84:xe,85:Mn},{74:[1,111]},{13:Ct,51:112},i(dt,[2,54]),i(dt,[2,117]),i(kt,[2,13]),i(kt,[2,14]),i(kt,[2,15]),{37:[2,32]},{15:113,16:79,37:[2,9],74:wt,80:ct,95:rt,97:it},i(ce,[2,40],{11:114,12:[1,115]}),i(Q,[2,7]),{9:[1,116]},i(Br,[2,49]),{16:37,17:117,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{13:[1,119],16:37,17:118,18:38,74:wt,80:ct,95:rt,97:it,98:gt},i(Fe,[2,61],{57:120,59:K,60:yt,61:V,62:Ot,63:It}),i(Fe,[2,60]),{39:[1,121]},{23:90,38:122,41:22,44:v},{8:[1,123],39:[2,33]},i(Ft,[2,37],{37:[1,124]}),{39:[1,125]},{39:[2,43],43:126,47:Ae},{16:37,17:127,18:38,74:wt,80:ct,95:rt,97:it,98:gt},i(dt,[2,70],{13:[1,128]}),i(dt,[2,72],{13:[1,130],68:[1,129]}),i(dt,[2,76],{13:[1,131],71:[1,132]}),{13:[1,133]},i(dt,[2,84],{78:[1,134]}),i(we,[2,86],{79:135,21:ye,73:tn,74:sn,80:be,81:Ne,82:Xt,83:_e,84:xe,85:Mn}),i(Fi,[2,88]),i(Fi,[2,90]),i(Fi,[2,91]),i(Fi,[2,92]),i(Fi,[2,93]),i(Fi,[2,94]),i(Fi,[2,95]),i(Fi,[2,96]),i(Fi,[2,97]),i(Fi,[2,98]),i(dt,[2,85]),i(dt,[2,53]),{37:[2,10]},i(ce,[2,41]),{13:[1,136]},{1:[2,4]},i(Br,[2,51]),i(Br,[2,50]),{16:37,17:137,18:38,74:wt,80:ct,95:rt,97:it,98:gt},i(Fe,[2,59]),i(dt,[2,30]),{39:[1,138]},{23:90,38:139,39:[2,34],41:22,44:v},{43:140,47:Ae},i(Ft,[2,38]),{39:[2,44]},i(dt,[2,42]),i(dt,[2,71]),i(dt,[2,73]),i(dt,[2,74],{68:[1,141]}),i(dt,[2,77]),i(dt,[2,78],{13:[1,142]}),i(dt,[2,80],{13:[1,144],68:[1,143]}),{21:ye,73:tn,74:sn,77:145,79:101,80:be,81:Ne,82:Xt,83:_e,84:xe,85:Mn},i(Fi,[2,89]),{14:[1,146]},i(Br,[2,52]),i(dt,[2,31]),{39:[2,35]},{39:[1,147]},i(dt,[2,75]),i(dt,[2,79]),i(dt,[2,81]),i(dt,[2,82],{68:[1,148]}),i(we,[2,87],{79:135,21:ye,73:tn,74:sn,80:be,81:Ne,82:Xt,83:_e,84:xe,85:Mn}),i(ce,[2,8]),i(Ft,[2,39]),i(dt,[2,83])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],78:[2,32],113:[2,10],116:[2,4],126:[2,44],139:[2,35]},parseError:function(br,An){if(An.recoverable)this.trace(br);else{var Nn=new Error(br);throw Nn.hash=An,Nn}},parse:function(br){var An=this,Nn=[0],Bn=[],ke=[null],pe=[],Je=this.table,an="",xn=0,qa=0,xo=2,ko=1,va=pe.slice.call(arguments,1),Ha=Object.create(this.lexer),ds={yy:{}};for(var Fu in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Fu)&&(ds.yy[Fu]=this.yy[Fu]);Ha.setInput(br,ds.yy),ds.yy.lexer=Ha,ds.yy.parser=this,typeof Ha.yylloc>"u"&&(Ha.yylloc={});var Zs=Ha.yylloc;pe.push(Zs);var d1=Ha.options&&Ha.options.ranges;typeof ds.yy.parseError=="function"?this.parseError=ds.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function I2(){var ea;return ea=Bn.pop()||Ha.lex()||ko,typeof ea!="number"&&(ea instanceof Array&&(Bn=ea,ea=Bn.pop()),ea=An.symbols_[ea]||ea),ea}for(var ll,Ic,wc,Ea,gu={},ta,fo,mc,ca;;){if(Ic=Nn[Nn.length-1],this.defaultActions[Ic]?wc=this.defaultActions[Ic]:((ll===null||typeof ll>"u")&&(ll=I2()),wc=Je[Ic]&&Je[Ic][ll]),typeof wc>"u"||!wc.length||!wc[0]){var ya="";ca=[];for(ta in Je[Ic])this.terminals_[ta]&&ta>xo&&ca.push("'"+this.terminals_[ta]+"'");Ha.showPosition?ya="Parse error on line "+(xn+1)+`: +`+Ha.showPosition()+` +Expecting `+ca.join(", ")+", got '"+(this.terminals_[ll]||ll)+"'":ya="Parse error on line "+(xn+1)+": Unexpected "+(ll==ko?"end of input":"'"+(this.terminals_[ll]||ll)+"'"),this.parseError(ya,{text:Ha.match,token:this.terminals_[ll]||ll,line:Ha.yylineno,loc:Zs,expected:ca})}if(wc[0]instanceof Array&&wc.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ic+", token: "+ll);switch(wc[0]){case 1:Nn.push(ll),ke.push(Ha.yytext),pe.push(Ha.yylloc),Nn.push(wc[1]),ll=null,qa=Ha.yyleng,an=Ha.yytext,xn=Ha.yylineno,Zs=Ha.yylloc;break;case 2:if(fo=this.productions_[wc[1]][1],gu.$=ke[ke.length-fo],gu._$={first_line:pe[pe.length-(fo||1)].first_line,last_line:pe[pe.length-1].last_line,first_column:pe[pe.length-(fo||1)].first_column,last_column:pe[pe.length-1].last_column},d1&&(gu._$.range=[pe[pe.length-(fo||1)].range[0],pe[pe.length-1].range[1]]),Ea=this.performAction.apply(gu,[an,qa,xn,ds.yy,wc[1],ke,pe].concat(va)),typeof Ea<"u")return Ea;fo&&(Nn=Nn.slice(0,-1*fo*2),ke=ke.slice(0,-1*fo),pe=pe.slice(0,-1*fo)),Nn.push(this.productions_[wc[1]][0]),ke.push(gu.$),pe.push(gu._$),mc=Je[Nn[Nn.length-2]][Nn[Nn.length-1]],Nn.push(mc);break;case 3:return!0}}return!0}},ga=function(){var za={EOF:1,parseError:function(An,Nn){if(this.yy.parser)this.yy.parser.parseError(An,Nn);else throw new Error(An)},setInput:function(br,An){return this.yy=An||this.yy||{},this._input=br,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 br=this._input[0];this.yytext+=br,this.yyleng++,this.offset++,this.match+=br,this.matched+=br;var An=br.match(/(?:\r\n?|\n).*/g);return An?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),br},unput:function(br){var An=br.length,Nn=br.split(/(?:\r\n?|\n)/g);this._input=br+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-An),this.offset-=An;var Bn=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),Nn.length-1&&(this.yylineno-=Nn.length-1);var ke=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:Nn?(Nn.length===Bn.length?this.yylloc.first_column:0)+Bn[Bn.length-Nn.length].length-Nn[0].length:this.yylloc.first_column-An},this.options.ranges&&(this.yylloc.range=[ke[0],ke[0]+this.yyleng-An]),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(br){this.unput(this.match.slice(br))},pastInput:function(){var br=this.matched.substr(0,this.matched.length-this.match.length);return(br.length>20?"...":"")+br.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var br=this.match;return br.length<20&&(br+=this._input.substr(0,20-br.length)),(br.substr(0,20)+(br.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var br=this.pastInput(),An=new Array(br.length+1).join("-");return br+this.upcomingInput()+` +`+An+"^"},test_match:function(br,An){var Nn,Bn,ke;if(this.options.backtrack_lexer&&(ke={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&&(ke.yylloc.range=this.yylloc.range.slice(0))),Bn=br[0].match(/(?:\r\n?|\n).*/g),Bn&&(this.yylineno+=Bn.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Bn?Bn[Bn.length-1].length-Bn[Bn.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+br[0].length},this.yytext+=br[0],this.match+=br[0],this.matches=br,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(br[0].length),this.matched+=br[0],Nn=this.performAction.call(this,this.yy,this,An,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Nn)return Nn;if(this._backtrack){for(var pe in ke)this[pe]=ke[pe];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var br,An,Nn,Bn;this._more||(this.yytext="",this.match="");for(var ke=this._currentRules(),pe=0;peAn[0].length)){if(An=Nn,Bn=pe,this.options.backtrack_lexer){if(br=this.test_match(Nn,ke[pe]),br!==!1)return br;if(this._backtrack){An=!1;continue}else return!1}else if(!this.options.flex)break}return An?(br=this.test_match(An,ke[Bn]),br!==!1?br:!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 An=this.next();return An||this.lex()},begin:function(An){this.conditionStack.push(An)},popState:function(){var An=this.conditionStack.length-1;return An>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(An){return An=this.conditionStack.length-1-Math.abs(An||0),An>=0?this.conditionStack[An]:"INITIAL"},pushState:function(An){this.begin(An)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(An,Nn,Bn,ke){switch(Bn){case 0:return 53;case 1:return 54;case 2:return 55;case 3:return 56;case 4:break;case 5:break;case 6:return this.begin("acc_title"),31;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),33;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 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 70;case 22:this.popState();break;case 23:return 71;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 73;case 28:return this.begin("namespace"),40;case 29:return this.popState(),8;case 30:break;case 31:return this.begin("namespace-body"),37;case 32:return this.popState(),39;case 33:return"EOF_IN_STRUCT";case 34:return 8;case 35:break;case 36:return"EDGE_STATE";case 37:return this.begin("class"),44;case 38:return this.popState(),8;case 39:break;case 40:return this.popState(),this.popState(),39;case 41:return this.begin("class-body"),37;case 42:return this.popState(),39;case 43:return"EOF_IN_STRUCT";case 44:return"EDGE_STATE";case 45:return"OPEN_IN_STRUCT";case 46:break;case 47:return"MEMBER";case 48:return 76;case 49:return 66;case 50:return 67;case 51:return 69;case 52:return 50;case 53:return 52;case 54:return 45;case 55:return 46;case 56:return 72;case 57:this.popState();break;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 60:this.popState();break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:return 68;case 64:return 68;case 65:return 68;case 66:return 68;case 67:return 60;case 68:return 60;case 69:return 62;case 70:return 62;case 71:return 61;case 72:return 59;case 73:return 63;case 74:return 64;case 75:return 65;case 76:return 21;case 77:return 42;case 78:return 95;case 79:return"DOT";case 80:return"PLUS";case 81:return 81;case 82:return 78;case 83:return 84;case 84:return 84;case 85:return 85;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 74;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 80;case 93:return 97;case 94:return 83;case 95:return 83;case 96:return 9}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,32,33,34,35,36,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},namespace:{rules:[26,28,29,30,31,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},"class-body":{rules:[26,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},class:{rules:[26,38,39,40,41,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr:{rules:[9,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_title:{rules:[7,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_args:{rules:[22,23,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_name:{rules:[19,20,21,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},href:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},struct:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},generic:{rules:[26,48,49,50,51,52,53,54,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},bqstring:{rules:[26,48,49,50,51,52,53,54,55,56,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},string:{rules:[24,25,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96],inclusive:!0}}};return za}();mi.lexer=ga;function Ss(){this.yy={}}return Ss.prototype=mi,mi.Parser=Ss,new Ss}();$bt.parser=$bt;const Aqt=$bt,Lqt=["#","+","~","-",""];class Dqt{constructor(a,f){this.memberType=f,this.visibility="",this.classifier="";const g=Ef(a,Re());this.parseMember(g)}getDisplayDetails(){let a=this.visibility+kF(this.id);this.memberType==="method"&&(a+=`(${kF(this.parameters.trim())})`,this.returnType&&(a+=" : "+kF(this.returnType))),a=a.trim();const f=this.parseClassifier();return{displayText:a,cssStyle:f}}parseMember(a){let f="";if(this.memberType==="method"){const g=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/,w=a.match(g);if(w){const v=w[1]?w[1].trim():"";if(Lqt.includes(v)&&(this.visibility=v),this.id=w[2].trim(),this.parameters=w[3]?w[3].trim():"",f=w[4]?w[4].trim():"",this.returnType=w[5]?w[5].trim():"",f===""){const b=this.returnType.substring(this.returnType.length-1);b.match(/[$*]/)&&(f=b,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{const g=a.length,w=a.substring(0,1),v=a.substring(g-1);Lqt.includes(w)&&(this.visibility=w),v.match(/[$*]/)&&(f=v),this.id=a.substring(this.visibility===""?0:1,f===""?g:g-1)}this.classifier=f}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}const wX="classId-";let zbt=[],Jl={},mX=[],Mqt=0,A8={},qbt=0,mB=[];const j9=i=>ei.sanitizeText(i,Re()),$9=function(i){const a=ei.sanitizeText(i,Re());let f="",g=a;if(a.indexOf("~")>0){const w=a.split("~");g=j9(w[0]),f=j9(w[1])}return{className:g,type:f}},dJe=function(i,a){const f=ei.sanitizeText(i,Re());a&&(a=j9(a));const{className:g}=$9(f);Jl[g].label=a},vX=function(i){const a=ei.sanitizeText(i,Re()),{className:f,type:g}=$9(a);if(Object.hasOwn(Jl,f))return;const w=ei.sanitizeText(f,Re());Jl[w]={id:w,type:g,label:w,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:wX+w+"-"+Mqt},Mqt++},Iqt=function(i){const a=ei.sanitizeText(i,Re());if(a in Jl)return Jl[a].domId;throw new Error("Class not found: "+a)},gJe=function(){zbt=[],Jl={},mX=[],mB=[],mB.push(Nqt),A8={},qbt=0,ag()},pJe=function(i){return Jl[i]},bJe=function(){return Jl},wJe=function(){return zbt},mJe=function(){return mX},vJe=function(i){Kt.debug("Adding relation: "+JSON.stringify(i)),vX(i.id1),vX(i.id2),i.id1=$9(i.id1).className,i.id2=$9(i.id2).className,i.relationTitle1=ei.sanitizeText(i.relationTitle1.trim(),Re()),i.relationTitle2=ei.sanitizeText(i.relationTitle2.trim(),Re()),zbt.push(i)},yJe=function(i,a){const f=$9(i).className;Jl[f].annotations.push(a)},Oqt=function(i,a){vX(i);const f=$9(i).className,g=Jl[f];if(typeof a=="string"){const w=a.trim();w.startsWith("<<")&&w.endsWith(">>")?g.annotations.push(j9(w.substring(2,w.length-2))):w.indexOf(")")>0?g.methods.push(new Dqt(w,"method")):w&&g.members.push(new Dqt(w,"attribute"))}},xJe=function(i,a){Array.isArray(a)&&(a.reverse(),a.forEach(f=>Oqt(i,f)))},kJe=function(i,a){const f={id:`note${mX.length}`,class:a,text:i};mX.push(f)},EJe=function(i){return i.startsWith(":")&&(i=i.substring(1)),j9(i.trim())},Hbt=function(i,a){i.split(",").forEach(function(f){let g=f;f[0].match(/\d/)&&(g=wX+g),Jl[g]!==void 0&&Jl[g].cssClasses.push(a)})},TJe=function(i,a){i.split(",").forEach(function(f){a!==void 0&&(Jl[f].tooltip=j9(a))})},CJe=function(i,a){return a?A8[a].classes[i].tooltip:Jl[i].tooltip},SJe=function(i,a,f){const g=Re();i.split(",").forEach(function(w){let v=w;w[0].match(/\d/)&&(v=wX+v),Jl[v]!==void 0&&(Jl[v].link=uo.formatUrl(a,g),g.securityLevel==="sandbox"?Jl[v].linkTarget="_top":typeof f=="string"?Jl[v].linkTarget=j9(f):Jl[v].linkTarget="_blank")}),Hbt(i,"clickable")},_Je=function(i,a,f){i.split(",").forEach(function(g){AJe(g,a,f),Jl[g].haveCallback=!0}),Hbt(i,"clickable")},AJe=function(i,a,f){const g=ei.sanitizeText(i,Re());if(Re().securityLevel!=="loose"||a===void 0)return;const v=g;if(Jl[v]!==void 0){const b=Iqt(v);let E=[];if(typeof f=="string"){E=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let S=0;S")),w.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),Tr(this).classed("hover",!1)})};mB.push(Nqt);let Pqt="TB";const yX={setAccTitle:og,getAccTitle:Xg,getAccDescription:Jg,setAccDescription:Qg,getConfig:()=>Re().class,addClass:vX,bindFunctions:LJe,clear:gJe,getClass:pJe,getClasses:bJe,getNotes:mJe,addAnnotation:yJe,addNote:kJe,getRelations:wJe,addRelation:vJe,getDirection:()=>Pqt,setDirection:i=>{Pqt=i},addMember:Oqt,addMembers:xJe,cleanupLabel:EJe,lineType:DJe,relationType:MJe,setClickEvent:_Je,setCssClass:Hbt,setLink:SJe,getTooltip:CJe,setTooltip:TJe,lookUpDomId:Iqt,setDiagramTitle:S2,getDiagramTitle:Zg,setClassLabel:dJe,addNamespace:function(i){A8[i]===void 0&&(A8[i]={id:i,classes:{},children:{},domId:wX+i+"-"+qbt},qbt++)},addClassesToNamespace:function(i,a){if(A8[i]!==void 0)for(const f of a){const{className:g}=$9(f);Jl[g].parent=i,A8[i].classes[g]=Jl[g]}},getNamespace:function(i){return A8[i]},getNamespaces:function(){return A8},setCssStyle:function(i,a){const f=Jl[i];if(!(!a||!f))for(const g of a)g.includes(",")?f.styles.push(...g.split(",")):f.styles.push(g)}},Fqt=i=>`g.classGroup text { + fill: ${i.nodeBorder||i.classText}; + stroke: none; + font-family: ${i.fontFamily}; + font-size: 10px; + + .title { + font-weight: bolder; + } + +} + +.nodeLabel, .edgeLabel { + color: ${i.classText}; +} +.edgeLabel .label rect { + fill: ${i.mainBkg}; +} +.label text { + fill: ${i.classText}; +} +.edgeLabel .label span { + background: ${i.mainBkg}; +} + +.classTitle { + font-weight: bolder; +} +.node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + + +.divider { + stroke: ${i.nodeBorder}; + stroke-width: 1; +} + +g.clickable { + cursor: pointer; +} + +g.classGroup rect { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; +} + +g.classGroup line { + stroke: ${i.nodeBorder}; + stroke-width: 1; +} + +.classLabel .box { + stroke: none; + stroke-width: 0; + fill: ${i.mainBkg}; + opacity: 0.5; +} + +.classLabel .label { + fill: ${i.nodeBorder}; + font-size: 10px; +} + +.relation { + stroke: ${i.lineColor}; + stroke-width: 1; + fill: none; +} + +.dashed-line{ + stroke-dasharray: 3; +} + +.dotted-line{ + stroke-dasharray: 1 2; +} + +#compositionStart, .composition { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#compositionEnd, .composition { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#extensionStart, .extension { + fill: transparent !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#extensionEnd, .extension { + fill: transparent !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#aggregationStart, .aggregation { + fill: transparent !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#aggregationEnd, .aggregation { + fill: transparent !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#lollipopStart, .lollipop { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#lollipopEnd, .lollipop { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +.edgeTerminals { + font-size: 11px; + line-height: initial; +} + +.classTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; +} +`;let Bqt=0;const IJe=function(i,a,f,g,w){const v=function(ft){switch(ft){case w.db.relationType.AGGREGATION:return"aggregation";case w.db.relationType.EXTENSION:return"extension";case w.db.relationType.COMPOSITION:return"composition";case w.db.relationType.DEPENDENCY:return"dependency";case w.db.relationType.LOLLIPOP:return"lollipop"}};a.points=a.points.filter(ft=>!Number.isNaN(ft.y));const b=a.points,E=Ax().x(function(ft){return ft.x}).y(function(ft){return ft.y}).curve(wF),S=i.append("path").attr("d",E(b)).attr("id","edge"+Bqt).attr("class","relation");let _="";g.arrowMarkerAbsolute&&(_=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,_=_.replace(/\(/g,"\\("),_=_.replace(/\)/g,"\\)")),f.relation.lineType==1&&S.attr("class","relation dashed-line"),f.relation.lineType==10&&S.attr("class","relation dotted-line"),f.relation.type1!=="none"&&S.attr("marker-start","url("+_+"#"+v(f.relation.type1)+"Start)"),f.relation.type2!=="none"&&S.attr("marker-end","url("+_+"#"+v(f.relation.type2)+"End)");let M,F;const R=a.points.length;let B=uo.calcLabelPosition(a.points);M=B.x,F=B.y;let z,Y,nt,ot;if(R%2!==0&&R>1){let ft=uo.calcCardinalityPosition(f.relation.type1!=="none",a.points,a.points[0]),wt=uo.calcCardinalityPosition(f.relation.type2!=="none",a.points,a.points[R-1]);Kt.debug("cardinality_1_point "+JSON.stringify(ft)),Kt.debug("cardinality_2_point "+JSON.stringify(wt)),z=ft.x,Y=ft.y,nt=wt.x,ot=wt.y}if(f.title!==void 0){const ft=i.append("g").attr("class","classLabel"),wt=ft.append("text").attr("class","label").attr("x",M).attr("y",F).attr("fill","red").attr("text-anchor","middle").text(f.title);window.label=wt;const mt=wt.node().getBBox();ft.insert("rect",":first-child").attr("class","box").attr("x",mt.x-g.padding/2).attr("y",mt.y-g.padding/2).attr("width",mt.width+g.padding).attr("height",mt.height+g.padding)}Kt.info("Rendering relation "+JSON.stringify(f)),f.relationTitle1!==void 0&&f.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",z).attr("y",Y).attr("fill","black").attr("font-size","6").text(f.relationTitle1),f.relationTitle2!==void 0&&f.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",nt).attr("y",ot).attr("fill","black").attr("font-size","6").text(f.relationTitle2),Bqt++},OJe=function(i,a,f,g){Kt.debug("Rendering class ",a,f);const w=a.id,v={id:w,label:a.id,width:0,height:0},b=i.append("g").attr("id",g.db.lookUpDomId(w)).attr("class","classGroup");let E;a.link?E=b.append("svg:a").attr("xlink:href",a.link).attr("target",a.linkTarget).append("text").attr("y",f.textHeight+f.padding).attr("x",0):E=b.append("text").attr("y",f.textHeight+f.padding).attr("x",0);let S=!0;a.annotations.forEach(function(wt){const mt=E.append("tspan").text("«"+wt+"»");S||mt.attr("dy",f.textHeight),S=!1});let _=Rqt(a);const M=E.append("tspan").text(_).attr("class","title");S||M.attr("dy",f.textHeight);const F=E.node().getBBox().height;let R,B,z;if(a.members.length>0){R=b.append("line").attr("x1",0).attr("y1",f.padding+F+f.dividerMargin/2).attr("y2",f.padding+F+f.dividerMargin/2);const wt=b.append("text").attr("x",f.padding).attr("y",F+f.dividerMargin+f.textHeight).attr("fill","white").attr("class","classText");S=!0,a.members.forEach(function(mt){jqt(wt,mt,S,f),S=!1}),B=wt.node().getBBox()}if(a.methods.length>0){z=b.append("line").attr("x1",0).attr("y1",f.padding+F+f.dividerMargin+B.height).attr("y2",f.padding+F+f.dividerMargin+B.height);const wt=b.append("text").attr("x",f.padding).attr("y",F+2*f.dividerMargin+B.height+f.textHeight).attr("fill","white").attr("class","classText");S=!0,a.methods.forEach(function(mt){jqt(wt,mt,S,f),S=!1})}const Y=b.node().getBBox();var nt=" ";a.cssClasses.length>0&&(nt=nt+a.cssClasses.join(" "));const ft=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",Y.width+2*f.padding).attr("height",Y.height+f.padding+.5*f.dividerMargin).attr("class",nt).node().getBBox().width;return E.node().childNodes.forEach(function(wt){wt.setAttribute("x",(ft-wt.getBBox().width)/2)}),a.tooltip&&E.insert("title").text(a.tooltip),R&&R.attr("x2",ft),z&&z.attr("x2",ft),v.width=ft,v.height=Y.height+f.padding+.5*f.dividerMargin,v},Rqt=function(i){let a=i.id;return i.type&&(a+="<"+kF(i.type)+">"),a},NJe=function(i,a,f,g){Kt.debug("Rendering note ",a,f);const w=a.id,v={id:w,text:a.text,width:0,height:0},b=i.append("g").attr("id",w).attr("class","classGroup");let E=b.append("text").attr("y",f.textHeight+f.padding).attr("x",0);const S=JSON.parse(`"${a.text}"`).split(` +`);S.forEach(function(R){Kt.debug(`Adding line: ${R}`),E.append("tspan").text(R).attr("class","title").attr("dy",f.textHeight)});const _=b.node().getBBox(),F=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",_.width+2*f.padding).attr("height",_.height+S.length*f.textHeight+f.padding+.5*f.dividerMargin).node().getBBox().width;return E.node().childNodes.forEach(function(R){R.setAttribute("x",(F-R.getBBox().width)/2)}),v.width=F,v.height=_.height+S.length*f.textHeight+f.padding+.5*f.dividerMargin,v},jqt=function(i,a,f,g){const{displayText:w,cssStyle:v}=a.getDisplayDetails(),b=i.append("tspan").attr("x",g.padding).text(w);v!==""&&b.attr("style",a.cssStyle),f||b.attr("dy",g.textHeight)},Vbt={getClassTitleString:Rqt,drawClass:OJe,drawEdge:IJe,drawNote:NJe};let xX={};const kX=20,vB=function(i){const a=Object.entries(xX).find(f=>f[1].label===i);if(a)return a[0]},PJe=function(i){i.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"),i.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"),i.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"),i.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"),i.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"),i.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"),i.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"),i.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")},FJe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Aqt,db:yX,renderer:{draw:function(i,a,f,g){const w=Re().class;xX={},Kt.info("Rendering diagram "+i);const v=Re().securityLevel;let b;v==="sandbox"&&(b=Tr("#i"+a));const E=Tr(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),S=E.select(`[id='${a}']`);PJe(S);const _=new l1({multigraph:!0});_.setGraph({isMultiGraph:!0}),_.setDefaultEdgeLabel(function(){return{}});const M=g.db.getClasses(),F=Object.keys(M);for(const ft of F){const wt=M[ft],mt=Vbt.drawClass(S,wt,w,g);xX[mt.id]=mt,_.setNode(mt.id,mt),Kt.info("Org height: "+mt.height)}g.db.getRelations().forEach(function(ft){Kt.info("tjoho"+vB(ft.id1)+vB(ft.id2)+JSON.stringify(ft)),_.setEdge(vB(ft.id1),vB(ft.id2),{relation:ft},ft.title||"DEFAULT")}),g.db.getNotes().forEach(function(ft){Kt.debug(`Adding note: ${JSON.stringify(ft)}`);const wt=Vbt.drawNote(S,ft,w,g);xX[wt.id]=wt,_.setNode(wt.id,wt),ft.class&&ft.class in M&&_.setEdge(ft.id,vB(ft.class),{relation:{id1:ft.id,id2:ft.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),kD(_),_.nodes().forEach(function(ft){ft!==void 0&&_.node(ft)!==void 0&&(Kt.debug("Node "+ft+": "+JSON.stringify(_.node(ft))),E.select("#"+(g.db.lookUpDomId(ft)||ft)).attr("transform","translate("+(_.node(ft).x-_.node(ft).width/2)+","+(_.node(ft).y-_.node(ft).height/2)+" )"))}),_.edges().forEach(function(ft){ft!==void 0&&_.edge(ft)!==void 0&&(Kt.debug("Edge "+ft.v+" -> "+ft.w+": "+JSON.stringify(_.edge(ft))),Vbt.drawEdge(S,_.edge(ft),_.edge(ft).relation,w,g))});const z=S.node().getBBox(),Y=z.width+kX*2,nt=z.height+kX*2;sg(S,nt,Y,w.useMaxWidth);const ot=`${z.x-kX} ${z.y-kX} ${Y} ${nt}`;Kt.debug(`viewBox ${ot}`),S.attr("viewBox",ot)}},styles:Fqt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,yX.clear()}}},Symbol.toStringTag,{value:"Module"})),Ubt=i=>ei.sanitizeText(i,Re());let Gbt={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const BJe=function(i,a,f,g){const w=Object.keys(i);Kt.info("keys:",w),Kt.info(i),w.forEach(function(v){var _,M;const b=i[v],S={shape:"rect",id:b.id,domId:b.domId,labelText:Ubt(b.id),labelStyle:"",style:"fill: none; stroke: black",padding:((_=Re().flowchart)==null?void 0:_.padding)??((M=Re().class)==null?void 0:M.padding)};a.setNode(b.id,S),$qt(b.classes,a,f,g,b.id),Kt.info("setNode",S)})},$qt=function(i,a,f,g,w){const v=Object.keys(i);Kt.info("keys:",v),Kt.info(i),v.filter(b=>i[b].parent==w).forEach(function(b){var z,Y;const E=i[b],S=E.cssClasses.join(" "),_=C2(E.styles),M=E.label??E.id,F=0,R="class_box",B={labelStyle:_.labelStyle,shape:R,labelText:Ubt(M),classData:E,rx:F,ry:F,class:S,style:_.style,id:E.id,domId:E.domId,tooltip:g.db.getTooltip(E.id,w)||"",haveCallback:E.haveCallback,link:E.link,width:E.type==="group"?500:void 0,type:E.type,padding:((z=Re().flowchart)==null?void 0:z.padding)??((Y=Re().class)==null?void 0:Y.padding)};a.setNode(E.id,B),w&&a.setParent(E.id,w),Kt.info("setNode",B)})},RJe=function(i,a,f,g){Kt.info(i),i.forEach(function(w,v){var Y,nt;const b=w,E="",S={labelStyle:"",style:""},_=b.text,M=0,F="note",R={labelStyle:S.labelStyle,shape:F,labelText:Ubt(_),noteData:b,rx:M,ry:M,class:E,style:S.style,id:b.id,domId:b.id,tooltip:"",type:"note",padding:((Y=Re().flowchart)==null?void 0:Y.padding)??((nt=Re().class)==null?void 0:nt.padding)};if(a.setNode(b.id,R),Kt.info("setNode",R),!b.class||!(b.class in g))return;const B=f+v,z={id:`edgeNote${B}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:Xw(Gbt.curve,Kg)};a.setEdge(b.id,b.class,z,B)})},jJe=function(i,a){const f=Re().flowchart;let g=0;i.forEach(function(w){var b;g++;const v={classes:"relation",pattern:w.relation.lineType==1?"dashed":"solid",id:`id_${w.id1}_${w.id2}_${g}`,arrowhead:w.type==="arrow_open"?"none":"normal",startLabelRight:w.relationTitle1==="none"?"":w.relationTitle1,endLabelLeft:w.relationTitle2==="none"?"":w.relationTitle2,arrowTypeStart:zqt(w.relation.type1),arrowTypeEnd:zqt(w.relation.type2),style:"fill:none",labelStyle:"",curve:Xw(f==null?void 0:f.curve,Kg)};if(Kt.info(v,w),w.style!==void 0){const E=C2(w.style);v.style=E.style,v.labelStyle=E.labelStyle}w.text=w.title,w.text===void 0?w.style!==void 0&&(v.arrowheadStyle="fill: #333"):(v.arrowheadStyle="fill: #333",v.labelpos="c",((b=Re().flowchart)==null?void 0:b.htmlLabels)??Re().htmlLabels?(v.labelType="html",v.label=''+w.text+""):(v.labelType="text",v.label=w.text.replace(ei.lineBreakRegex,` +`),w.style===void 0&&(v.style=v.style||"stroke: #333; stroke-width: 1.5px;fill:none"),v.labelStyle=v.labelStyle.replace("color:","fill:"))),a.setEdge(w.id1,w.id2,v,g)})},$Je=function(i){Gbt={...Gbt,...i}},zJe=async function(i,a,f,g){Kt.info("Drawing class - ",a);const w=Re().flowchart??Re().class,v=Re().securityLevel;Kt.info("config:",w);const b=(w==null?void 0:w.nodeSpacing)??50,E=(w==null?void 0:w.rankSpacing)??50,S=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:g.db.getDirection(),nodesep:b,ranksep:E,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),_=g.db.getNamespaces(),M=g.db.getClasses(),F=g.db.getRelations(),R=g.db.getNotes();Kt.info(F),BJe(_,S,a,g),$qt(M,S,a,g),jJe(F,S),RJe(R,S,F.length+1,M);let B;v==="sandbox"&&(B=Tr("#i"+a));const z=Tr(v==="sandbox"?B.nodes()[0].contentDocument.body:"body"),Y=z.select(`[id="${a}"]`),nt=z.select("#"+a+" g");if(await ebt(nt,S,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",a),uo.insertTitle(Y,"classTitleText",(w==null?void 0:w.titleTopMargin)??5,g.db.getDiagramTitle()),w8(S,Y,w==null?void 0:w.diagramPadding,w==null?void 0:w.useMaxWidth),!(w!=null&&w.htmlLabels)){const ot=v==="sandbox"?B.nodes()[0].contentDocument:document,ft=ot.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const wt of ft){const mt=wt.getBBox(),ct=ot.createElementNS("http://www.w3.org/2000/svg","rect");ct.setAttribute("rx",0),ct.setAttribute("ry",0),ct.setAttribute("width",mt.width),ct.setAttribute("height",mt.height),wt.insertBefore(ct,wt.firstChild)}}};function zqt(i){let a;switch(i){case 0:a="aggregation";break;case 1:a="extension";break;case 2:a="composition";break;case 3:a="dependency";break;case 4:a="lollipop";break;default:a="none"}return a}const qJe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Aqt,db:yX,renderer:{setConf:$Je,draw:zJe},styles:Fqt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,yX.clear()}}},Symbol.toStringTag,{value:"Module"}));var Kbt=function(){var i=function(xt,Ft,Ct,kt){for(Ct=Ct||{},kt=xt.length;kt--;Ct[xt[kt]]=Ft);return Ct},a=[1,2],f=[1,3],g=[1,4],w=[2,4],v=[1,9],b=[1,11],E=[1,15],S=[1,16],_=[1,17],M=[1,18],F=[1,30],R=[1,19],B=[1,20],z=[1,21],Y=[1,22],nt=[1,23],ot=[1,25],ft=[1,26],wt=[1,27],mt=[1,28],ct=[1,29],rt=[1,32],it=[1,33],gt=[1,34],Q=[1,35],dt=[1,31],K=[1,4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],yt=[1,4,5,13,14,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],V=[4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],Ot={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,cssClassStatement:11,idStatement:12,DESCR:13,"-->":14,HIDE_EMPTY:15,scale:16,WIDTH:17,COMPOSIT_STATE:18,STRUCT_START:19,STRUCT_STOP:20,STATE_DESCR:21,AS:22,ID:23,FORK:24,JOIN:25,CHOICE:26,CONCURRENT:27,note:28,notePosition:29,NOTE_TEXT:30,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,classDef:37,CLASSDEF_ID:38,CLASSDEF_STYLEOPTS:39,DEFAULT:40,class:41,CLASSENTITY_IDS:42,STYLECLASS:43,direction_tb:44,direction_bt:45,direction_rl:46,direction_lr:47,eol:48,";":49,EDGE_STATE:50,STYLE_SEPARATOR:51,left_of:52,right_of:53,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",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",30:"NOTE_TEXT",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:"direction_tb",45:"direction_bt",46:"direction_rl",47:"direction_lr",49:";",50:"EDGE_STATE",51:"STYLE_SEPARATOR",52:"left_of",53:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[31,1],[31,1],[31,1],[31,1],[48,1],[48,1],[12,1],[12,1],[12,3],[12,3],[29,1],[29,1]],performAction:function(Ft,Ct,kt,Gt,Fe,Mt,pn){var Ae=Mt.length-1;switch(Fe){case 3:return Gt.setRootDoc(Mt[Ae]),Mt[Ae];case 4:this.$=[];break;case 5:Mt[Ae]!="nl"&&(Mt[Ae-1].push(Mt[Ae]),this.$=Mt[Ae-1]);break;case 6:case 7:this.$=Mt[Ae];break;case 8:this.$="nl";break;case 11:this.$=Mt[Ae];break;case 12:const be=Mt[Ae-1];be.description=Gt.trimColon(Mt[Ae]),this.$=be;break;case 13:this.$={stmt:"relation",state1:Mt[Ae-2],state2:Mt[Ae]};break;case 14:const Ne=Gt.trimColon(Mt[Ae]);this.$={stmt:"relation",state1:Mt[Ae-3],state2:Mt[Ae-1],description:Ne};break;case 18:this.$={stmt:"state",id:Mt[Ae-3],type:"default",description:"",doc:Mt[Ae-1]};break;case 19:var ye=Mt[Ae],tn=Mt[Ae-2].trim();if(Mt[Ae].match(":")){var sn=Mt[Ae].split(":");ye=sn[0],tn=[tn,sn[1]]}this.$={stmt:"state",id:ye,type:"default",description:tn};break;case 20:this.$={stmt:"state",id:Mt[Ae-3],type:"default",description:Mt[Ae-5],doc:Mt[Ae-1]};break;case 21:this.$={stmt:"state",id:Mt[Ae],type:"fork"};break;case 22:this.$={stmt:"state",id:Mt[Ae],type:"join"};break;case 23:this.$={stmt:"state",id:Mt[Ae],type:"choice"};break;case 24:this.$={stmt:"state",id:Gt.getDividerId(),type:"divider"};break;case 25:this.$={stmt:"state",id:Mt[Ae-1].trim(),note:{position:Mt[Ae-2].trim(),text:Mt[Ae].trim()}};break;case 28:this.$=Mt[Ae].trim(),Gt.setAccTitle(this.$);break;case 29:case 30:this.$=Mt[Ae].trim(),Gt.setAccDescription(this.$);break;case 31:case 32:this.$={stmt:"classDef",id:Mt[Ae-1].trim(),classes:Mt[Ae].trim()};break;case 33:this.$={stmt:"applyClass",id:Mt[Ae-1].trim(),styleClass:Mt[Ae].trim()};break;case 34:Gt.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 35:Gt.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 36:Gt.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 37:Gt.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 40:case 41:this.$={stmt:"state",id:Mt[Ae].trim(),type:"default",description:""};break;case 42:this.$={stmt:"state",id:Mt[Ae-2].trim(),classes:[Mt[Ae].trim()],type:"default",description:""};break;case 43:this.$={stmt:"state",id:Mt[Ae-2].trim(),classes:[Mt[Ae].trim()],type:"default",description:""};break}},table:[{3:1,4:a,5:f,6:g},{1:[3]},{3:5,4:a,5:f,6:g},{3:6,4:a,5:f,6:g},i([1,4,5,15,16,18,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],w,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:v,5:b,8:8,9:10,10:12,11:13,12:14,15:E,16:S,18:_,21:M,23:F,24:R,25:B,26:z,27:Y,28:nt,31:24,32:ot,34:ft,36:wt,37:mt,41:ct,44:rt,45:it,46:gt,47:Q,50:dt},i(K,[2,5]),{9:36,10:12,11:13,12:14,15:E,16:S,18:_,21:M,23:F,24:R,25:B,26:z,27:Y,28:nt,31:24,32:ot,34:ft,36:wt,37:mt,41:ct,44:rt,45:it,46:gt,47:Q,50:dt},i(K,[2,7]),i(K,[2,8]),i(K,[2,9]),i(K,[2,10]),i(K,[2,11],{13:[1,37],14:[1,38]}),i(K,[2,15]),{17:[1,39]},i(K,[2,17],{19:[1,40]}),{22:[1,41]},i(K,[2,21]),i(K,[2,22]),i(K,[2,23]),i(K,[2,24]),{29:42,30:[1,43],52:[1,44],53:[1,45]},i(K,[2,27]),{33:[1,46]},{35:[1,47]},i(K,[2,30]),{38:[1,48],40:[1,49]},{42:[1,50]},i(yt,[2,40],{51:[1,51]}),i(yt,[2,41],{51:[1,52]}),i(K,[2,34]),i(K,[2,35]),i(K,[2,36]),i(K,[2,37]),i(K,[2,6]),i(K,[2,12]),{12:53,23:F,50:dt},i(K,[2,16]),i(V,w,{7:54}),{23:[1,55]},{23:[1,56]},{22:[1,57]},{23:[2,44]},{23:[2,45]},i(K,[2,28]),i(K,[2,29]),{39:[1,58]},{39:[1,59]},{43:[1,60]},{23:[1,61]},{23:[1,62]},i(K,[2,13],{13:[1,63]}),{4:v,5:b,8:8,9:10,10:12,11:13,12:14,15:E,16:S,18:_,20:[1,64],21:M,23:F,24:R,25:B,26:z,27:Y,28:nt,31:24,32:ot,34:ft,36:wt,37:mt,41:ct,44:rt,45:it,46:gt,47:Q,50:dt},i(K,[2,19],{19:[1,65]}),{30:[1,66]},{23:[1,67]},i(K,[2,31]),i(K,[2,32]),i(K,[2,33]),i(yt,[2,42]),i(yt,[2,43]),i(K,[2,14]),i(K,[2,18]),i(V,w,{7:68}),i(K,[2,25]),i(K,[2,26]),{4:v,5:b,8:8,9:10,10:12,11:13,12:14,15:E,16:S,18:_,20:[1,69],21:M,23:F,24:R,25:B,26:z,27:Y,28:nt,31:24,32:ot,34:ft,36:wt,37:mt,41:ct,44:rt,45:it,46:gt,47:Q,50:dt},i(K,[2,20])],defaultActions:{5:[2,1],6:[2,2],44:[2,44],45:[2,45]},parseError:function(Ft,Ct){if(Ct.recoverable)this.trace(Ft);else{var kt=new Error(Ft);throw kt.hash=Ct,kt}},parse:function(Ft){var Ct=this,kt=[0],Gt=[],Fe=[null],Mt=[],pn=this.table,Ae="",ye=0,tn=0,sn=2,be=1,Ne=Mt.slice.call(arguments,1),Xt=Object.create(this.lexer),_e={yy:{}};for(var xe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xe)&&(_e.yy[xe]=this.yy[xe]);Xt.setInput(Ft,_e.yy),_e.yy.lexer=Xt,_e.yy.parser=this,typeof Xt.yylloc>"u"&&(Xt.yylloc={});var Mn=Xt.yylloc;Mt.push(Mn);var ce=Xt.options&&Xt.options.ranges;typeof _e.yy.parseError=="function"?this.parseError=_e.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Br(){var ke;return ke=Gt.pop()||Xt.lex()||be,typeof ke!="number"&&(ke instanceof Array&&(Gt=ke,ke=Gt.pop()),ke=Ct.symbols_[ke]||ke),ke}for(var we,Fi,mi,ga,Ss={},za,br,An,Nn;;){if(Fi=kt[kt.length-1],this.defaultActions[Fi]?mi=this.defaultActions[Fi]:((we===null||typeof we>"u")&&(we=Br()),mi=pn[Fi]&&pn[Fi][we]),typeof mi>"u"||!mi.length||!mi[0]){var Bn="";Nn=[];for(za in pn[Fi])this.terminals_[za]&&za>sn&&Nn.push("'"+this.terminals_[za]+"'");Xt.showPosition?Bn="Parse error on line "+(ye+1)+`: +`+Xt.showPosition()+` +Expecting `+Nn.join(", ")+", got '"+(this.terminals_[we]||we)+"'":Bn="Parse error on line "+(ye+1)+": Unexpected "+(we==be?"end of input":"'"+(this.terminals_[we]||we)+"'"),this.parseError(Bn,{text:Xt.match,token:this.terminals_[we]||we,line:Xt.yylineno,loc:Mn,expected:Nn})}if(mi[0]instanceof Array&&mi.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Fi+", token: "+we);switch(mi[0]){case 1:kt.push(we),Fe.push(Xt.yytext),Mt.push(Xt.yylloc),kt.push(mi[1]),we=null,tn=Xt.yyleng,Ae=Xt.yytext,ye=Xt.yylineno,Mn=Xt.yylloc;break;case 2:if(br=this.productions_[mi[1]][1],Ss.$=Fe[Fe.length-br],Ss._$={first_line:Mt[Mt.length-(br||1)].first_line,last_line:Mt[Mt.length-1].last_line,first_column:Mt[Mt.length-(br||1)].first_column,last_column:Mt[Mt.length-1].last_column},ce&&(Ss._$.range=[Mt[Mt.length-(br||1)].range[0],Mt[Mt.length-1].range[1]]),ga=this.performAction.apply(Ss,[Ae,tn,ye,_e.yy,mi[1],Fe,Mt].concat(Ne)),typeof ga<"u")return ga;br&&(kt=kt.slice(0,-1*br*2),Fe=Fe.slice(0,-1*br),Mt=Mt.slice(0,-1*br)),kt.push(this.productions_[mi[1]][0]),Fe.push(Ss.$),Mt.push(Ss._$),An=pn[kt[kt.length-2]][kt[kt.length-1]],kt.push(An);break;case 3:return!0}}return!0}},It=function(){var xt={EOF:1,parseError:function(Ct,kt){if(this.yy.parser)this.yy.parser.parseError(Ct,kt);else throw new Error(Ct)},setInput:function(Ft,Ct){return this.yy=Ct||this.yy||{},this._input=Ft,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 Ft=this._input[0];this.yytext+=Ft,this.yyleng++,this.offset++,this.match+=Ft,this.matched+=Ft;var Ct=Ft.match(/(?:\r\n?|\n).*/g);return Ct?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ft},unput:function(Ft){var Ct=Ft.length,kt=Ft.split(/(?:\r\n?|\n)/g);this._input=Ft+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ct),this.offset-=Ct;var Gt=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),kt.length-1&&(this.yylineno-=kt.length-1);var Fe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:kt?(kt.length===Gt.length?this.yylloc.first_column:0)+Gt[Gt.length-kt.length].length-kt[0].length:this.yylloc.first_column-Ct},this.options.ranges&&(this.yylloc.range=[Fe[0],Fe[0]+this.yyleng-Ct]),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(Ft){this.unput(this.match.slice(Ft))},pastInput:function(){var Ft=this.matched.substr(0,this.matched.length-this.match.length);return(Ft.length>20?"...":"")+Ft.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ft=this.match;return Ft.length<20&&(Ft+=this._input.substr(0,20-Ft.length)),(Ft.substr(0,20)+(Ft.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ft=this.pastInput(),Ct=new Array(Ft.length+1).join("-");return Ft+this.upcomingInput()+` +`+Ct+"^"},test_match:function(Ft,Ct){var kt,Gt,Fe;if(this.options.backtrack_lexer&&(Fe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Fe.yylloc.range=this.yylloc.range.slice(0))),Gt=Ft[0].match(/(?:\r\n?|\n).*/g),Gt&&(this.yylineno+=Gt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Gt?Gt[Gt.length-1].length-Gt[Gt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ft[0].length},this.yytext+=Ft[0],this.match+=Ft[0],this.matches=Ft,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(Ft[0].length),this.matched+=Ft[0],kt=this.performAction.call(this,this.yy,this,Ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),kt)return kt;if(this._backtrack){for(var Mt in Fe)this[Mt]=Fe[Mt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ft,Ct,kt,Gt;this._more||(this.yytext="",this.match="");for(var Fe=this._currentRules(),Mt=0;MtCt[0].length)){if(Ct=kt,Gt=Mt,this.options.backtrack_lexer){if(Ft=this.test_match(kt,Fe[Mt]),Ft!==!1)return Ft;if(this._backtrack){Ct=!1;continue}else return!1}else if(!this.options.flex)break}return Ct?(Ft=this.test_match(Ct,Fe[Gt]),Ft!==!1?Ft:!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 Ct=this.next();return Ct||this.lex()},begin:function(Ct){this.conditionStack.push(Ct)},popState:function(){var Ct=this.conditionStack.length-1;return Ct>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(Ct){return Ct=this.conditionStack.length-1-Math.abs(Ct||0),Ct>=0?this.conditionStack[Ct]:"INITIAL"},pushState:function(Ct){this.begin(Ct)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ct,kt,Gt,Fe){switch(Gt){case 0:return 40;case 1:return 44;case 2:return 45;case 3:return 46;case 4:return 47;case 5:break;case 6:break;case 7:return 5;case 8:break;case 9:break;case 10:break;case 11:break;case 12:return this.pushState("SCALE"),16;case 13:return 17;case 14:this.popState();break;case 15:return this.begin("acc_title"),32;case 16:return this.popState(),"acc_title_value";case 17:return this.begin("acc_descr"),34;case 18:return this.popState(),"acc_descr_value";case 19:this.begin("acc_descr_multiline");break;case 20:this.popState();break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),37;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 24:return this.popState(),this.pushState("CLASSDEFID"),38;case 25:return this.popState(),39;case 26:return this.pushState("CLASS"),41;case 27:return this.popState(),this.pushState("CLASS_STYLE"),42;case 28:return this.popState(),43;case 29:return this.pushState("SCALE"),16;case 30:return 17;case 31:this.popState();break;case 32:this.pushState("STATE");break;case 33:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),24;case 34:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),25;case 35:return this.popState(),kt.yytext=kt.yytext.slice(0,-10).trim(),26;case 36:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),24;case 37:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),25;case 38:return this.popState(),kt.yytext=kt.yytext.slice(0,-10).trim(),26;case 39:return 44;case 40:return 45;case 41:return 46;case 42:return 47;case 43:this.pushState("STATE_STRING");break;case 44:return this.pushState("STATE_ID"),"AS";case 45:return this.popState(),"ID";case 46:this.popState();break;case 47:return"STATE_DESCR";case 48:return 18;case 49:this.popState();break;case 50:return this.popState(),this.pushState("struct"),19;case 51:break;case 52:return this.popState(),20;case 53:break;case 54:return this.begin("NOTE"),28;case 55:return this.popState(),this.pushState("NOTE_ID"),52;case 56:return this.popState(),this.pushState("NOTE_ID"),53;case 57:this.popState(),this.pushState("FLOATING_NOTE");break;case 58:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 59:break;case 60:return"NOTE_TEXT";case 61:return this.popState(),"ID";case 62:return this.popState(),this.pushState("NOTE_TEXT"),23;case 63:return this.popState(),kt.yytext=kt.yytext.substr(2).trim(),30;case 64:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),30;case 65:return 6;case 66:return 6;case 67:return 15;case 68:return 50;case 69:return 23;case 70:return kt.yytext=kt.yytext.trim(),13;case 71:return 14;case 72:return 27;case 73:return 51;case 74:return 5;case 75: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,/^(?:%%(?!\{)[^\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:[9,10],inclusive:!1},struct:{rules:[9,10,22,26,32,39,40,41,42,51,52,53,54,68,69,70,71,72],inclusive:!1},FLOATING_NOTE_ID:{rules:[61],inclusive:!1},FLOATING_NOTE:{rules:[58,59,60],inclusive:!1},NOTE_TEXT:{rules:[63,64],inclusive:!1},NOTE_ID:{rules:[62],inclusive:!1},NOTE:{rules:[55,56,57],inclusive:!1},CLASS_STYLE:{rules:[28],inclusive:!1},CLASS:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[25],inclusive:!1},CLASSDEF:{rules:[23,24],inclusive:!1},acc_descr_multiline:{rules:[20,21],inclusive:!1},acc_descr:{rules:[18],inclusive:!1},acc_title:{rules:[16],inclusive:!1},SCALE:{rules:[13,14,30,31],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[45],inclusive:!1},STATE_STRING:{rules:[46,47],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[9,10,33,34,35,36,37,38,43,44,48,49,50],inclusive:!1},ID:{rules:[9,10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,10,11,12,15,17,19,22,26,29,32,50,54,65,66,67,68,69,70,71,73,74,75],inclusive:!0}}};return xt}();Ot.lexer=It;function jt(){this.yy={}}return jt.prototype=Ot,Ot.Parser=jt,new jt}();Kbt.parser=Kbt;const qqt=Kbt,HJe="LR",VJe="TB",EX="state",Wbt="relation",UJe="classDef",GJe="applyClass",yB="default",Hqt="divider",Ybt="[*]",Vqt="start",Uqt=Ybt,Gqt="end",Kqt="color",Wqt="fill",KJe="bgFill",WJe=",";function Yqt(){return{}}let Xqt=HJe,TX=[],xB=Yqt();const Qqt=()=>({relations:[],states:{},documents:{}});let CX={root:Qqt()},lg=CX.root,kB=0,Jqt=0;const YJe={LINE:0,DOTTED_LINE:1},XJe={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},SX=i=>JSON.parse(JSON.stringify(i)),QJe=i=>{Kt.info("Setting root doc",i),TX=i},JJe=()=>TX,_X=(i,a,f)=>{if(a.stmt===Wbt)_X(i,a.state1,!0),_X(i,a.state2,!1);else if(a.stmt===EX&&(a.id==="[*]"?(a.id=f?i.id+"_start":i.id+"_end",a.start=f):a.id=a.id.trim()),a.doc){const g=[];let w=[],v;for(v=0;v0&&w.length>0){const b={stmt:EX,id:_Ft(),type:"divider",doc:SX(w)};g.push(SX(b)),a.doc=g}a.doc.forEach(b=>_X(a,b,!0))}},ZJe=()=>(_X({id:"root"},{id:"root",doc:TX},!0),{id:"root",doc:TX}),tZe=i=>{let a;i.doc?a=i.doc:a=i,Kt.info(a),Zqt(!0),Kt.info("Extract",a),a.forEach(f=>{switch(f.stmt){case EX:z9(f.id.trim(),f.type,f.doc,f.description,f.note,f.classes,f.styles,f.textStyles);break;case Wbt:tHt(f.state1,f.state2,f.description);break;case UJe:eHt(f.id.trim(),f.classes);break;case GJe:Zbt(f.id.trim(),f.styleClass);break}})},z9=function(i,a=yB,f=null,g=null,w=null,v=null,b=null,E=null){const S=i==null?void 0:i.trim();lg.states[S]===void 0?(Kt.info("Adding state ",S,g),lg.states[S]={id:S,descriptions:[],type:a,doc:f,note:w,classes:[],styles:[],textStyles:[]}):(lg.states[S].doc||(lg.states[S].doc=f),lg.states[S].type||(lg.states[S].type=a)),g&&(Kt.info("Setting state description",S,g),typeof g=="string"&&Jbt(S,g.trim()),typeof g=="object"&&g.forEach(_=>Jbt(S,_.trim()))),w&&(lg.states[S].note=w,lg.states[S].note.text=ei.sanitizeText(lg.states[S].note.text,Re())),v&&(Kt.info("Setting state classes",S,v),(typeof v=="string"?[v]:v).forEach(M=>Zbt(S,M.trim()))),b&&(Kt.info("Setting state styles",S,b),(typeof b=="string"?[b]:b).forEach(M=>lZe(S,M.trim()))),E&&(Kt.info("Setting state styles",S,b),(typeof E=="string"?[E]:E).forEach(M=>hZe(S,M.trim())))},Zqt=function(i){CX={root:Qqt()},lg=CX.root,kB=0,xB=Yqt(),i||ag()},EB=function(i){return lg.states[i]},eZe=function(){return lg.states},nZe=function(){Kt.info("Documents = ",CX)},rZe=function(){return lg.relations};function Xbt(i=""){let a=i;return i===Ybt&&(kB++,a=`${Vqt}${kB}`),a}function Qbt(i="",a=yB){return i===Ybt?Vqt:a}function iZe(i=""){let a=i;return i===Uqt&&(kB++,a=`${Gqt}${kB}`),a}function sZe(i="",a=yB){return i===Uqt?Gqt:a}function aZe(i,a,f){let g=Xbt(i.id.trim()),w=Qbt(i.id.trim(),i.type),v=Xbt(a.id.trim()),b=Qbt(a.id.trim(),a.type);z9(g,w,i.doc,i.description,i.note,i.classes,i.styles,i.textStyles),z9(v,b,a.doc,a.description,a.note,a.classes,a.styles,a.textStyles),lg.relations.push({id1:g,id2:v,relationTitle:ei.sanitizeText(f,Re())})}const tHt=function(i,a,f){if(typeof i=="object")aZe(i,a,f);else{const g=Xbt(i.trim()),w=Qbt(i),v=iZe(a.trim()),b=sZe(a);z9(g,w),z9(v,b),lg.relations.push({id1:g,id2:v,title:ei.sanitizeText(f,Re())})}},Jbt=function(i,a){const f=lg.states[i],g=a.startsWith(":")?a.replace(":","").trim():a;f.descriptions.push(ei.sanitizeText(g,Re()))},oZe=function(i){return i.substring(0,1)===":"?i.substr(2).trim():i.trim()},cZe=()=>(Jqt++,"divider-id-"+Jqt),eHt=function(i,a=""){xB[i]===void 0&&(xB[i]={id:i,styles:[],textStyles:[]});const f=xB[i];a!=null&&a.split(WJe).forEach(g=>{const w=g.replace(/([^;]*);/,"$1").trim();if(g.match(Kqt)){const b=w.replace(Wqt,KJe).replace(Kqt,Wqt);f.textStyles.push(b)}f.styles.push(w)})},uZe=function(){return xB},Zbt=function(i,a){i.split(",").forEach(function(f){let g=EB(f);if(g===void 0){const w=f.trim();z9(w),g=EB(w)}g.classes.push(a)})},lZe=function(i,a){const f=EB(i);f!==void 0&&f.textStyles.push(a)},hZe=function(i,a){const f=EB(i);f!==void 0&&f.textStyles.push(a)},Hx={getConfig:()=>Re().state,addState:z9,clear:Zqt,getState:EB,getStates:eZe,getRelations:rZe,getClasses:uZe,getDirection:()=>Xqt,addRelation:tHt,getDividerId:cZe,setDirection:i=>{Xqt=i},cleanupLabel:oZe,lineType:YJe,relationType:XJe,logDocuments:nZe,getRootDoc:JJe,setRootDoc:QJe,getRootDocV2:ZJe,extract:tZe,trimColon:i=>i&&i[0]===":"?i.substr(1).trim():i.trim(),getAccTitle:Xg,setAccTitle:og,getAccDescription:Jg,setAccDescription:Qg,addStyleClass:eHt,setCssClass:Zbt,addDescription:Jbt,setDiagramTitle:S2,getDiagramTitle:Zg},nHt=i=>` +defs #statediagram-barbEnd { + fill: ${i.transitionColor}; + stroke: ${i.transitionColor}; + } +g.stateGroup text { + fill: ${i.nodeBorder}; + stroke: none; + font-size: 10px; +} +g.stateGroup text { + fill: ${i.textColor}; + stroke: none; + font-size: 10px; + +} +g.stateGroup .state-title { + font-weight: bolder; + fill: ${i.stateLabelColor}; +} + +g.stateGroup rect { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; +} + +g.stateGroup line { + stroke: ${i.lineColor}; + stroke-width: 1; +} + +.transition { + stroke: ${i.transitionColor}; + stroke-width: 1; + fill: none; +} + +.stateGroup .composit { + fill: ${i.background}; + border-bottom: 1px +} + +.stateGroup .alt-composit { + fill: #e0e0e0; + border-bottom: 1px +} + +.state-note { + stroke: ${i.noteBorderColor}; + fill: ${i.noteBkgColor}; + + text { + fill: ${i.noteTextColor}; + stroke: none; + font-size: 10px; + } +} + +.stateLabel .box { + stroke: none; + stroke-width: 0; + fill: ${i.mainBkg}; + opacity: 0.5; +} + +.edgeLabel .label rect { + fill: ${i.labelBackgroundColor}; + opacity: 0.5; +} +.edgeLabel .label text { + fill: ${i.transitionLabelColor||i.tertiaryTextColor}; +} +.label div .edgeLabel { + color: ${i.transitionLabelColor||i.tertiaryTextColor}; +} + +.stateLabel text { + fill: ${i.stateLabelColor}; + font-size: 10px; + font-weight: bold; +} + +.node circle.state-start { + fill: ${i.specialStateColor}; + stroke: ${i.specialStateColor}; +} + +.node .fork-join { + fill: ${i.specialStateColor}; + stroke: ${i.specialStateColor}; +} + +.node circle.state-end { + fill: ${i.innerEndBackground}; + stroke: ${i.background}; + stroke-width: 1.5 +} +.end-state-inner { + fill: ${i.compositeBackground||i.background}; + // stroke: ${i.background}; + stroke-width: 1.5 +} + +.node rect { + fill: ${i.stateBkg||i.mainBkg}; + stroke: ${i.stateBorder||i.nodeBorder}; + stroke-width: 1px; +} +.node polygon { + fill: ${i.mainBkg}; + stroke: ${i.stateBorder||i.nodeBorder};; + stroke-width: 1px; +} +#statediagram-barbEnd { + fill: ${i.lineColor}; +} + +.statediagram-cluster rect { + fill: ${i.compositeTitleBackground}; + stroke: ${i.stateBorder||i.nodeBorder}; + stroke-width: 1px; +} + +.cluster-label, .nodeLabel { + color: ${i.stateLabelColor}; +} + +.statediagram-cluster rect.outer { + rx: 5px; + ry: 5px; +} +.statediagram-state .divider { + stroke: ${i.stateBorder||i.nodeBorder}; +} + +.statediagram-state .title-state { + rx: 5px; + ry: 5px; +} +.statediagram-cluster.statediagram-cluster .inner { + fill: ${i.compositeBackground||i.background}; +} +.statediagram-cluster.statediagram-cluster-alt .inner { + fill: ${i.altBackground?i.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: ${i.altBackground?i.altBackground:"#efefef"}; +} + +.note-edge { + stroke-dasharray: 5; +} + +.statediagram-note rect { + fill: ${i.noteBkgColor}; + stroke: ${i.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} +.statediagram-note rect { + fill: ${i.noteBkgColor}; + stroke: ${i.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} + +.statediagram-note text { + fill: ${i.noteTextColor}; +} + +.statediagram-note .nodeLabel { + color: ${i.noteTextColor}; +} +.statediagram .edgeLabel { + color: red; // ${i.noteTextColor}; +} + +#dependencyStart, #dependencyEnd { + fill: ${i.lineColor}; + stroke: ${i.lineColor}; + stroke-width: 1; +} + +.statediagramTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; +} +`,t2t={},fZe=(i,a)=>{t2t[i]=a},dZe=i=>t2t[i],rHt=()=>Object.keys(t2t),gZe={get:dZe,set:fZe,keys:rHt,size:()=>rHt().length},pZe=i=>i.append("circle").attr("class","start-state").attr("r",Re().state.sizeUnit).attr("cx",Re().state.padding+Re().state.sizeUnit).attr("cy",Re().state.padding+Re().state.sizeUnit),bZe=i=>i.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",Re().state.textHeight).attr("class","divider").attr("x2",Re().state.textHeight*2).attr("y1",0).attr("y2",0),wZe=(i,a)=>{const f=i.append("text").attr("x",2*Re().state.padding).attr("y",Re().state.textHeight+2*Re().state.padding).attr("font-size",Re().state.fontSize).attr("class","state-title").text(a.id),g=f.node().getBBox();return i.insert("rect",":first-child").attr("x",Re().state.padding).attr("y",Re().state.padding).attr("width",g.width+2*Re().state.padding).attr("height",g.height+2*Re().state.padding).attr("rx",Re().state.radius),f},mZe=(i,a)=>{const f=function(R,B,z){const Y=R.append("tspan").attr("x",2*Re().state.padding).text(B);z||Y.attr("dy",Re().state.textHeight)},w=i.append("text").attr("x",2*Re().state.padding).attr("y",Re().state.textHeight+1.3*Re().state.padding).attr("font-size",Re().state.fontSize).attr("class","state-title").text(a.descriptions[0]).node().getBBox(),v=w.height,b=i.append("text").attr("x",Re().state.padding).attr("y",v+Re().state.padding*.4+Re().state.dividerMargin+Re().state.textHeight).attr("class","state-description");let E=!0,S=!0;a.descriptions.forEach(function(R){E||(f(b,R,S),S=!1),E=!1});const _=i.append("line").attr("x1",Re().state.padding).attr("y1",Re().state.padding+v+Re().state.dividerMargin/2).attr("y2",Re().state.padding+v+Re().state.dividerMargin/2).attr("class","descr-divider"),M=b.node().getBBox(),F=Math.max(M.width,w.width);return _.attr("x2",F+3*Re().state.padding),i.insert("rect",":first-child").attr("x",Re().state.padding).attr("y",Re().state.padding).attr("width",F+2*Re().state.padding).attr("height",M.height+v+2*Re().state.padding).attr("rx",Re().state.radius),i},vZe=(i,a,f)=>{const g=Re().state.padding,w=2*Re().state.padding,v=i.node().getBBox(),b=v.width,E=v.x,S=i.append("text").attr("x",0).attr("y",Re().state.titleShift).attr("font-size",Re().state.fontSize).attr("class","state-title").text(a.id),M=S.node().getBBox().width+w;let F=Math.max(M,b);F===b&&(F=F+w);let R;const B=i.node().getBBox();a.doc,R=E-g,M>b&&(R=(b-F)/2+g),Math.abs(E-B.x)b&&(R=E-(M-b)/2);const z=1-Re().state.textHeight;return i.insert("rect",":first-child").attr("x",R).attr("y",z).attr("class",f?"alt-composit":"composit").attr("width",F).attr("height",B.height+Re().state.textHeight+Re().state.titleShift+1).attr("rx","0"),S.attr("x",R+g),M<=b&&S.attr("x",E+(F-w)/2-M/2+g),i.insert("rect",":first-child").attr("x",R).attr("y",Re().state.titleShift-Re().state.textHeight-Re().state.padding).attr("width",F).attr("height",Re().state.textHeight*3).attr("rx",Re().state.radius),i.insert("rect",":first-child").attr("x",R).attr("y",Re().state.titleShift-Re().state.textHeight-Re().state.padding).attr("width",F).attr("height",B.height+3+2*Re().state.textHeight).attr("rx",Re().state.radius),i},yZe=i=>(i.append("circle").attr("class","end-state-outer").attr("r",Re().state.sizeUnit+Re().state.miniPadding).attr("cx",Re().state.padding+Re().state.sizeUnit+Re().state.miniPadding).attr("cy",Re().state.padding+Re().state.sizeUnit+Re().state.miniPadding),i.append("circle").attr("class","end-state-inner").attr("r",Re().state.sizeUnit).attr("cx",Re().state.padding+Re().state.sizeUnit+2).attr("cy",Re().state.padding+Re().state.sizeUnit+2)),xZe=(i,a)=>{let f=Re().state.forkWidth,g=Re().state.forkHeight;if(a.parentId){let w=f;f=g,g=w}return i.append("rect").style("stroke","black").style("fill","black").attr("width",f).attr("height",g).attr("x",Re().state.padding).attr("y",Re().state.padding)},kZe=(i,a,f,g)=>{let w=0;const v=g.append("text");v.style("text-anchor","start"),v.attr("class","noteText");let b=i.replace(/\r\n/g,"
");b=b.replace(/\n/g,"
");const E=b.split(ei.lineBreakRegex);let S=1.25*Re().state.noteMargin;for(const _ of E){const M=_.trim();if(M.length>0){const F=v.append("tspan");if(F.text(M),S===0){const R=F.node().getBBox();S+=R.height}w+=S,F.attr("x",a+Re().state.noteMargin),F.attr("y",f+w+1.25*Re().state.noteMargin)}}return{textWidth:v.node().getBBox().width,textHeight:w}},EZe=(i,a)=>{a.attr("class","state-note");const f=a.append("rect").attr("x",0).attr("y",Re().state.padding),g=a.append("g"),{textWidth:w,textHeight:v}=kZe(i,0,0,g);return f.attr("height",v+2*Re().state.noteMargin),f.attr("width",w+Re().state.noteMargin*2),f},iHt=function(i,a){const f=a.id,g={id:f,label:a.id,width:0,height:0},w=i.append("g").attr("id",f).attr("class","stateGroup");a.type==="start"&&pZe(w),a.type==="end"&&yZe(w),(a.type==="fork"||a.type==="join")&&xZe(w,a),a.type==="note"&&EZe(a.note.text,w),a.type==="divider"&&bZe(w),a.type==="default"&&a.descriptions.length===0&&wZe(w,a),a.type==="default"&&a.descriptions.length>0&&mZe(w,a);const v=w.node().getBBox();return g.width=v.width+2*Re().state.padding,g.height=v.height+2*Re().state.padding,gZe.set(f,g),g};let sHt=0;const TZe=function(i,a,f){const g=function(S){switch(S){case Hx.relationType.AGGREGATION:return"aggregation";case Hx.relationType.EXTENSION:return"extension";case Hx.relationType.COMPOSITION:return"composition";case Hx.relationType.DEPENDENCY:return"dependency"}};a.points=a.points.filter(S=>!Number.isNaN(S.y));const w=a.points,v=Ax().x(function(S){return S.x}).y(function(S){return S.y}).curve(wF),b=i.append("path").attr("d",v(w)).attr("id","edge"+sHt).attr("class","transition");let E="";if(Re().state.arrowMarkerAbsolute&&(E=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,E=E.replace(/\(/g,"\\("),E=E.replace(/\)/g,"\\)")),b.attr("marker-end","url("+E+"#"+g(Hx.relationType.DEPENDENCY)+"End)"),f.title!==void 0){const S=i.append("g").attr("class","stateLabel"),{x:_,y:M}=uo.calcLabelPosition(a.points),F=ei.getRows(f.title);let R=0;const B=[];let z=0,Y=0;for(let ft=0;ft<=F.length;ft++){const wt=S.append("text").attr("text-anchor","middle").text(F[ft]).attr("x",_).attr("y",M+R),mt=wt.node().getBBox();z=Math.max(z,mt.width),Y=Math.min(Y,mt.x),Kt.info(mt.x,_,M+R),R===0&&(R=wt.node().getBBox().height,Kt.info("Title height",R,M)),B.push(wt)}let nt=R*F.length;if(F.length>1){const ft=(F.length-1)*R*.5;B.forEach((wt,mt)=>wt.attr("y",M+mt*R-ft)),nt=R*F.length}const ot=S.node().getBBox();S.insert("rect",":first-child").attr("class","box").attr("x",_-z/2-Re().state.padding/2).attr("y",M-nt/2-Re().state.padding/2-3.5).attr("width",z+Re().state.padding).attr("height",nt+Re().state.padding),Kt.info(ot)}sHt++};let M2;const e2t={},CZe=function(){},SZe=function(i){i.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")},_Ze=function(i,a,f,g){M2=Re().state;const w=Re().securityLevel;let v;w==="sandbox"&&(v=Tr("#i"+a));const b=Tr(w==="sandbox"?v.nodes()[0].contentDocument.body:"body"),E=w==="sandbox"?v.nodes()[0].contentDocument:document;Kt.debug("Rendering diagram "+i);const S=b.select(`[id='${a}']`);SZe(S);const _=g.db.getRootDoc();aHt(_,S,void 0,!1,b,E,g);const M=M2.padding,F=S.node().getBBox(),R=F.width+M*2,B=F.height+M*2,z=R*1.75;sg(S,B,z,M2.useMaxWidth),S.attr("viewBox",`${F.x-M2.padding} ${F.y-M2.padding} `+R+" "+B)},AZe=i=>i?i.length*M2.fontSizeFactor:1,aHt=(i,a,f,g,w,v,b)=>{const E=new l1({compound:!0,multigraph:!0});let S,_=!0;for(S=0;S{const mt=wt.parentElement;let ct=0,rt=0;mt&&(mt.parentElement&&(ct=mt.parentElement.getBBox().width),rt=parseInt(mt.getAttribute("data-x-shift"),10),Number.isNaN(rt)&&(rt=0)),wt.setAttribute("x1",0-rt+8),wt.setAttribute("x2",ct-rt-8)})):Kt.debug("No Node "+ot+": "+JSON.stringify(E.node(ot)))});let Y=z.getBBox();E.edges().forEach(function(ot){ot!==void 0&&E.edge(ot)!==void 0&&(Kt.debug("Edge "+ot.v+" -> "+ot.w+": "+JSON.stringify(E.edge(ot))),TZe(a,E.edge(ot),E.edge(ot).relation))}),Y=z.getBBox();const nt={id:f||"root",label:f||"root",width:0,height:0};return nt.width=Y.width+2*M2.padding,nt.height=Y.height+2*M2.padding,Kt.debug("Doc rendered",nt,E),nt},LZe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:qqt,db:Hx,renderer:{setConf:CZe,draw:_Ze},styles:nHt,init:i=>{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,Hx.clear()}}},Symbol.toStringTag,{value:"Module"})),AX="rect",n2t="rectWithTitle",DZe="start",MZe="end",IZe="divider",OZe="roundedWithTitle",NZe="note",PZe="noteGroup",ID="statediagram",FZe=`${ID}-state`,oHt="transition",BZe="note",RZe=`${oHt} note-edge`,jZe=`${ID}-${BZe}`,$Ze=`${ID}-cluster`,zZe=`${ID}-cluster-alt`,cHt="parent",uHt="note",qZe="state",r2t="----",HZe=`${r2t}${uHt}`,lHt=`${r2t}${cHt}`,hHt="fill:none",fHt="fill: #333",dHt="c",gHt="text",pHt="normal";let LX={},L8=0;const VZe=function(i){const a=Object.keys(i);for(const f of a)i[f]},UZe=function(i,a){return a.db.extract(a.db.getRootDocV2()),a.db.getClasses()};function GZe(i){return i==null?"":i.classes?i.classes.join(" "):""}function i2t(i="",a=0,f="",g=r2t){const w=f!==null&&f.length>0?`${g}${f}`:"";return`${qZe}-${i}${w}-${a}`}const TB=(i,a,f,g,w,v)=>{const b=f.id,E=GZe(g[b]);if(b!=="root"){let S=AX;f.start===!0&&(S=DZe),f.start===!1&&(S=MZe),f.type!==yB&&(S=f.type),LX[b]||(LX[b]={id:b,shape:S,description:ei.sanitizeText(b,Re()),classes:`${E} ${FZe}`});const _=LX[b];f.description&&(Array.isArray(_.description)?(_.shape=n2t,_.description.push(f.description)):_.description.length>0?(_.shape=n2t,_.description===b?_.description=[f.description]:_.description=[_.description,f.description]):(_.shape=AX,_.description=f.description),_.description=ei.sanitizeTextOrArray(_.description,Re())),_.description.length===1&&_.shape===n2t&&(_.shape=AX),!_.type&&f.doc&&(Kt.info("Setting cluster for ",b,s2t(f)),_.type="group",_.dir=s2t(f),_.shape=f.type===Hqt?IZe:OZe,_.classes=_.classes+" "+$Ze+" "+(v?zZe:""));const M={labelStyle:"",shape:_.shape,labelText:_.description,classes:_.classes,style:"",id:b,dir:_.dir,domId:i2t(b,L8),type:_.type,padding:15};if(M.centerLabel=!0,f.note){const F={labelStyle:"",shape:NZe,labelText:f.note.text,classes:jZe,style:"",id:b+HZe+"-"+L8,domId:i2t(b,L8,uHt),type:_.type,padding:15},R={labelStyle:"",shape:PZe,labelText:f.note.text,classes:_.classes,style:"",id:b+lHt,domId:i2t(b,L8,cHt),type:"group",padding:0};L8++;const B=b+lHt;i.setNode(B,R),i.setNode(F.id,F),i.setNode(b,M),i.setParent(b,B),i.setParent(F.id,B);let z=b,Y=F.id;f.note.position==="left of"&&(z=F.id,Y=b),i.setEdge(z,Y,{arrowhead:"none",arrowType:"",style:hHt,labelStyle:"",classes:RZe,arrowheadStyle:fHt,labelpos:dHt,labelType:gHt,thickness:pHt})}else i.setNode(b,M)}a&&a.id!=="root"&&(Kt.trace("Setting node ",b," to be child of its parent ",a.id),i.setParent(b,a.id)),f.doc&&(Kt.trace("Adding nodes children "),KZe(i,f,f.doc,g,w,!v))},KZe=(i,a,f,g,w,v)=>{Kt.trace("items",f),f.forEach(b=>{switch(b.stmt){case EX:TB(i,a,b,g,w,v);break;case yB:TB(i,a,b,g,w,v);break;case Wbt:{TB(i,a,b.state1,g,w,v),TB(i,a,b.state2,g,w,v);const E={id:"edge"+L8,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:hHt,labelStyle:"",label:ei.sanitizeText(b.description,Re()),arrowheadStyle:fHt,labelpos:dHt,labelType:gHt,thickness:pHt,classes:oHt};i.setEdge(b.state1.id,b.state2.id,E,L8),L8++}break}})},s2t=(i,a=VJe)=>{let f=a;if(i.doc)for(let g=0;g{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,Hx.clear()}}},Symbol.toStringTag,{value:"Module"}));var a2t=function(){var i=function(F,R,B,z){for(B=B||{},z=F.length;z--;B[F[z]]=R);return B},a=[6,8,10,11,12,14,16,17,18],f=[1,9],g=[1,10],w=[1,11],v=[1,12],b=[1,13],E=[1,14],S={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:function(R,B,z,Y,nt,ot,ft){var wt=ot.length-1;switch(nt){case 1:return ot[wt-1];case 2:this.$=[];break;case 3:ot[wt-1].push(ot[wt]),this.$=ot[wt-1];break;case 4:case 5:this.$=ot[wt];break;case 6:case 7:this.$=[];break;case 8:Y.setDiagramTitle(ot[wt].substr(6)),this.$=ot[wt].substr(6);break;case 9:this.$=ot[wt].trim(),Y.setAccTitle(this.$);break;case 10:case 11:this.$=ot[wt].trim(),Y.setAccDescription(this.$);break;case 12:Y.addSection(ot[wt].substr(8)),this.$=ot[wt].substr(8);break;case 13:Y.addTask(ot[wt-1],ot[wt]),this.$="task";break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:f,12:g,14:w,16:v,17:b,18:E},i(a,[2,7],{1:[2,1]}),i(a,[2,3]),{9:15,11:f,12:g,14:w,16:v,17:b,18:E},i(a,[2,5]),i(a,[2,6]),i(a,[2,8]),{13:[1,16]},{15:[1,17]},i(a,[2,11]),i(a,[2,12]),{19:[1,18]},i(a,[2,4]),i(a,[2,9]),i(a,[2,10]),i(a,[2,13])],defaultActions:{},parseError:function(R,B){if(B.recoverable)this.trace(R);else{var z=new Error(R);throw z.hash=B,z}},parse:function(R){var B=this,z=[0],Y=[],nt=[null],ot=[],ft=this.table,wt="",mt=0,ct=0,rt=2,it=1,gt=ot.slice.call(arguments,1),Q=Object.create(this.lexer),dt={yy:{}};for(var K in this.yy)Object.prototype.hasOwnProperty.call(this.yy,K)&&(dt.yy[K]=this.yy[K]);Q.setInput(R,dt.yy),dt.yy.lexer=Q,dt.yy.parser=this,typeof Q.yylloc>"u"&&(Q.yylloc={});var yt=Q.yylloc;ot.push(yt);var V=Q.options&&Q.options.ranges;typeof dt.yy.parseError=="function"?this.parseError=dt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ot(){var Ae;return Ae=Y.pop()||Q.lex()||it,typeof Ae!="number"&&(Ae instanceof Array&&(Y=Ae,Ae=Y.pop()),Ae=B.symbols_[Ae]||Ae),Ae}for(var It,jt,xt,Ft,Ct={},kt,Gt,Fe,Mt;;){if(jt=z[z.length-1],this.defaultActions[jt]?xt=this.defaultActions[jt]:((It===null||typeof It>"u")&&(It=Ot()),xt=ft[jt]&&ft[jt][It]),typeof xt>"u"||!xt.length||!xt[0]){var pn="";Mt=[];for(kt in ft[jt])this.terminals_[kt]&&kt>rt&&Mt.push("'"+this.terminals_[kt]+"'");Q.showPosition?pn="Parse error on line "+(mt+1)+`: +`+Q.showPosition()+` +Expecting `+Mt.join(", ")+", got '"+(this.terminals_[It]||It)+"'":pn="Parse error on line "+(mt+1)+": Unexpected "+(It==it?"end of input":"'"+(this.terminals_[It]||It)+"'"),this.parseError(pn,{text:Q.match,token:this.terminals_[It]||It,line:Q.yylineno,loc:yt,expected:Mt})}if(xt[0]instanceof Array&&xt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+jt+", token: "+It);switch(xt[0]){case 1:z.push(It),nt.push(Q.yytext),ot.push(Q.yylloc),z.push(xt[1]),It=null,ct=Q.yyleng,wt=Q.yytext,mt=Q.yylineno,yt=Q.yylloc;break;case 2:if(Gt=this.productions_[xt[1]][1],Ct.$=nt[nt.length-Gt],Ct._$={first_line:ot[ot.length-(Gt||1)].first_line,last_line:ot[ot.length-1].last_line,first_column:ot[ot.length-(Gt||1)].first_column,last_column:ot[ot.length-1].last_column},V&&(Ct._$.range=[ot[ot.length-(Gt||1)].range[0],ot[ot.length-1].range[1]]),Ft=this.performAction.apply(Ct,[wt,ct,mt,dt.yy,xt[1],nt,ot].concat(gt)),typeof Ft<"u")return Ft;Gt&&(z=z.slice(0,-1*Gt*2),nt=nt.slice(0,-1*Gt),ot=ot.slice(0,-1*Gt)),z.push(this.productions_[xt[1]][0]),nt.push(Ct.$),ot.push(Ct._$),Fe=ft[z[z.length-2]][z[z.length-1]],z.push(Fe);break;case 3:return!0}}return!0}},_=function(){var F={EOF:1,parseError:function(B,z){if(this.yy.parser)this.yy.parser.parseError(B,z);else throw new Error(B)},setInput:function(R,B){return this.yy=B||this.yy||{},this._input=R,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 R=this._input[0];this.yytext+=R,this.yyleng++,this.offset++,this.match+=R,this.matched+=R;var B=R.match(/(?:\r\n?|\n).*/g);return B?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),R},unput:function(R){var B=R.length,z=R.split(/(?:\r\n?|\n)/g);this._input=R+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-B),this.offset-=B;var Y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),z.length-1&&(this.yylineno-=z.length-1);var nt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:z?(z.length===Y.length?this.yylloc.first_column:0)+Y[Y.length-z.length].length-z[0].length:this.yylloc.first_column-B},this.options.ranges&&(this.yylloc.range=[nt[0],nt[0]+this.yyleng-B]),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(R){this.unput(this.match.slice(R))},pastInput:function(){var R=this.matched.substr(0,this.matched.length-this.match.length);return(R.length>20?"...":"")+R.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var R=this.match;return R.length<20&&(R+=this._input.substr(0,20-R.length)),(R.substr(0,20)+(R.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var R=this.pastInput(),B=new Array(R.length+1).join("-");return R+this.upcomingInput()+` +`+B+"^"},test_match:function(R,B){var z,Y,nt;if(this.options.backtrack_lexer&&(nt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(nt.yylloc.range=this.yylloc.range.slice(0))),Y=R[0].match(/(?:\r\n?|\n).*/g),Y&&(this.yylineno+=Y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Y?Y[Y.length-1].length-Y[Y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+R[0].length},this.yytext+=R[0],this.match+=R[0],this.matches=R,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(R[0].length),this.matched+=R[0],z=this.performAction.call(this,this.yy,this,B,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),z)return z;if(this._backtrack){for(var ot in nt)this[ot]=nt[ot];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var R,B,z,Y;this._more||(this.yytext="",this.match="");for(var nt=this._currentRules(),ot=0;otB[0].length)){if(B=z,Y=ot,this.options.backtrack_lexer){if(R=this.test_match(z,nt[ot]),R!==!1)return R;if(this._backtrack){B=!1;continue}else return!1}else if(!this.options.flex)break}return B?(R=this.test_match(B,nt[Y]),R!==!1?R:!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 B=this.next();return B||this.lex()},begin:function(B){this.conditionStack.push(B)},popState:function(){var B=this.conditionStack.length-1;return B>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(B){return B=this.conditionStack.length-1-Math.abs(B||0),B>=0?this.conditionStack[B]:"INITIAL"},pushState:function(B){this.begin(B)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(B,z,Y,nt){switch(Y){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return F}();S.lexer=_;function M(){this.yy={}}return M.prototype=S,S.Parser=M,new M}();a2t.parser=a2t;const YZe=a2t;let OD="";const o2t=[],CB=[],SB=[],XZe=function(){o2t.length=0,CB.length=0,OD="",SB.length=0,ag()},QZe=function(i){OD=i,o2t.push(i)},JZe=function(){return o2t},ZZe=function(){let i=bHt();const a=100;let f=0;for(;!i&&f{f.people&&i.push(...f.people)}),[...new Set(i)].sort()},etn=function(i,a){const f=a.substr(1).split(":");let g=0,w=[];f.length===1?(g=Number(f[0]),w=[]):(g=Number(f[0]),w=f[1].split(","));const v=w.map(E=>E.trim()),b={section:OD,type:OD,people:v,task:i,score:g};SB.push(b)},ntn=function(i){const a={section:OD,type:OD,description:i,task:i,classes:[]};CB.push(a)},bHt=function(){const i=function(f){return SB[f].processed};let a=!0;for(const[f,g]of SB.entries())i(f),a=a&&g.processed;return a},wHt={getConfig:()=>Re().journey,clear:XZe,setDiagramTitle:S2,getDiagramTitle:Zg,setAccTitle:og,getAccTitle:Xg,setAccDescription:Qg,getAccDescription:Jg,addSection:QZe,getSections:JZe,getTasks:ZZe,addTask:etn,addTaskOrg:ntn,getActors:function(){return ttn()}},rtn=i=>`.label { + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + color: ${i.textColor}; + } + .mouth { + stroke: #666; + } + + line { + stroke: ${i.textColor} + } + + .legend { + fill: ${i.textColor}; + } + + .label text { + fill: #333; + } + .label { + color: ${i.textColor} + } + + .face { + ${i.faceColor?`fill: ${i.faceColor}`:"fill: #FFF8DC"}; + stroke: #999; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 1.5px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.5; + } + text-align: center; + } + + .cluster rect { + } + + .cluster text { + fill: ${i.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: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .task-type-0, .section-type-0 { + ${i.fillType0?`fill: ${i.fillType0}`:""}; + } + .task-type-1, .section-type-1 { + ${i.fillType0?`fill: ${i.fillType1}`:""}; + } + .task-type-2, .section-type-2 { + ${i.fillType0?`fill: ${i.fillType2}`:""}; + } + .task-type-3, .section-type-3 { + ${i.fillType0?`fill: ${i.fillType3}`:""}; + } + .task-type-4, .section-type-4 { + ${i.fillType0?`fill: ${i.fillType4}`:""}; + } + .task-type-5, .section-type-5 { + ${i.fillType0?`fill: ${i.fillType5}`:""}; + } + .task-type-6, .section-type-6 { + ${i.fillType0?`fill: ${i.fillType6}`:""}; + } + .task-type-7, .section-type-7 { + ${i.fillType0?`fill: ${i.fillType7}`:""}; + } + + .actor-0 { + ${i.actor0?`fill: ${i.actor0}`:""}; + } + .actor-1 { + ${i.actor1?`fill: ${i.actor1}`:""}; + } + .actor-2 { + ${i.actor2?`fill: ${i.actor2}`:""}; + } + .actor-3 { + ${i.actor3?`fill: ${i.actor3}`:""}; + } + .actor-4 { + ${i.actor4?`fill: ${i.actor4}`:""}; + } + .actor-5 { + ${i.actor5?`fill: ${i.actor5}`:""}; + } +`,c2t=function(i,a){return LY(i,a)},itn=function(i,a){const g=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),w=i.append("g");w.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),w.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function v(S){const _=YL().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);S.append("path").attr("class","mouth").attr("d",_).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(S){const _=YL().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);S.append("path").attr("class","mouth").attr("d",_).attr("transform","translate("+a.cx+","+(a.cy+7)+")")}function E(S){S.append("line").attr("class","mouth").attr("stroke",2).attr("x1",a.cx-5).attr("y1",a.cy+7).attr("x2",a.cx+5).attr("y2",a.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.score>3?v(w):a.score<3?b(w):E(w),g},mHt=function(i,a){const f=i.append("circle");return f.attr("cx",a.cx),f.attr("cy",a.cy),f.attr("class","actor-"+a.pos),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("r",a.r),f.class!==void 0&&f.attr("class",f.class),a.title!==void 0&&f.append("title").text(a.title),f},vHt=function(i,a){return URe(i,a)},stn=function(i,a){function f(w,v,b,E,S){return w+","+v+" "+(w+b)+","+v+" "+(w+b)+","+(v+E-S)+" "+(w+b-S*1.2)+","+(v+E)+" "+w+","+(v+E)}const g=i.append("polygon");g.attr("points",f(a.x,a.y,50,20,7)),g.attr("class","labelBox"),a.y=a.y+a.labelMargin,a.x=a.x+.5*a.labelMargin,vHt(i,a)},atn=function(i,a,f){const g=i.append("g"),w=_9();w.x=a.x,w.y=a.y,w.fill=a.fill,w.width=f.width*a.taskCount+f.diagramMarginX*(a.taskCount-1),w.height=f.height,w.class="journey-section section-type-"+a.num,w.rx=3,w.ry=3,c2t(g,w),xHt(f)(a.text,g,w.x,w.y,w.width,w.height,{class:"journey-section section-type-"+a.num},f,a.colour)};let yHt=-1;const otn=function(i,a,f){const g=a.x+f.width/2,w=i.append("g");yHt++;const v=300+5*30;w.append("line").attr("id","task"+yHt).attr("x1",g).attr("y1",a.y).attr("x2",g).attr("y2",v).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),itn(w,{cx:g,cy:300+(5-a.score)*30,score:a.score});const b=_9();b.x=a.x,b.y=a.y,b.fill=a.fill,b.width=f.width,b.height=f.height,b.class="task task-type-"+a.num,b.rx=3,b.ry=3,c2t(w,b);let E=a.x+14;a.people.forEach(S=>{const _=a.actors[S].color,M={cx:E,cy:a.y,r:7,fill:_,stroke:"#000",title:S,pos:a.actors[S].position};mHt(w,M),E+=10}),xHt(f)(a.task,w,b.x,b.y,b.width,b.height,{class:"task"},f,a.colour)},ctn=function(i,a){sRt(i,a)},xHt=function(){function i(w,v,b,E,S,_,M,F){const R=v.append("text").attr("x",b+S/2).attr("y",E+_/2+5).style("font-color",F).style("text-anchor","middle").text(w);g(R,M)}function a(w,v,b,E,S,_,M,F,R){const{taskFontSize:B,taskFontFamily:z}=F,Y=w.split(//gi);for(let nt=0;nt{const w=Vx[g].color,v={cx:20,cy:f,r:7,fill:w,stroke:"#000",pos:Vx[g].position};_B.drawCircle(i,v);const b={x:40,y:f+7,fill:"#666",text:g,textMargin:a.boxTextMargin|5};_B.drawText(i,b),f+=20})}const DX=Re().journey,q9=DX.leftMargin,htn=function(i,a,f,g){const w=Re().journey,v=Re().securityLevel;let b;v==="sandbox"&&(b=Tr("#i"+a));const E=Tr(v==="sandbox"?b.nodes()[0].contentDocument.body:"body");em.init();const S=E.select("#"+a);_B.initGraphics(S);const _=g.db.getTasks(),M=g.db.getDiagramTitle(),F=g.db.getActors();for(const ot in Vx)delete Vx[ot];let R=0;F.forEach(ot=>{Vx[ot]={color:w.actorColours[R%w.actorColours.length],position:R},R++}),ltn(S),em.insert(0,0,q9,Object.keys(Vx).length*50),ftn(S,_,0);const B=em.getBounds();M&&S.append("text").text(M).attr("x",q9).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);const z=B.stopy-B.starty+2*w.diagramMarginY,Y=q9+B.stopx+2*w.diagramMarginX;sg(S,z,Y,w.useMaxWidth),S.append("line").attr("x1",q9).attr("y1",w.height*4).attr("x2",Y-q9-4).attr("y2",w.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");const nt=M?70:0;S.attr("viewBox",`${B.startx} -25 ${Y} ${z+nt}`),S.attr("preserveAspectRatio","xMinYMin meet"),S.attr("height",z+nt+25)},em={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(i,a,f,g){i[a]===void 0?i[a]=f:i[a]=g(f,i[a])},updateBounds:function(i,a,f,g){const w=Re().journey,v=this;let b=0;function E(S){return function(M){b++;const F=v.sequenceItems.length-b+1;v.updateVal(M,"starty",a-F*w.boxMargin,Math.min),v.updateVal(M,"stopy",g+F*w.boxMargin,Math.max),v.updateVal(em.data,"startx",i-F*w.boxMargin,Math.min),v.updateVal(em.data,"stopx",f+F*w.boxMargin,Math.max),S!=="activation"&&(v.updateVal(M,"startx",i-F*w.boxMargin,Math.min),v.updateVal(M,"stopx",f+F*w.boxMargin,Math.max),v.updateVal(em.data,"starty",a-F*w.boxMargin,Math.min),v.updateVal(em.data,"stopy",g+F*w.boxMargin,Math.max))}}this.sequenceItems.forEach(E())},insert:function(i,a,f,g){const w=Math.min(i,f),v=Math.max(i,f),b=Math.min(a,g),E=Math.max(a,g);this.updateVal(em.data,"startx",w,Math.min),this.updateVal(em.data,"starty",b,Math.min),this.updateVal(em.data,"stopx",v,Math.max),this.updateVal(em.data,"stopy",E,Math.max),this.updateBounds(w,b,v,E)},bumpVerticalPos:function(i){this.verticalPos=this.verticalPos+i,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}},u2t=DX.sectionFills,kHt=DX.sectionColours,ftn=function(i,a,f){const g=Re().journey;let w="";const v=g.height*2+g.diagramMarginY,b=f+v;let E=0,S="#CCC",_="black",M=0;for(const[F,R]of a.entries()){if(w!==R.section){S=u2t[E%u2t.length],M=E%u2t.length,_=kHt[E%kHt.length];let z=0;const Y=R.section;for(let ot=F;ot(Vx[Y]&&(z[Y]=Vx[Y]),z),{});R.x=F*g.taskMargin+F*g.width+q9,R.y=b,R.width=g.diagramMarginX,R.height=g.diagramMarginY,R.colour=_,R.fill=S,R.num=M,R.actors=B,_B.drawTask(i,R,g),em.insert(R.x,R.y,R.x+R.width+g.taskMargin,300+5*30)}},EHt={setConf:utn,draw:htn},dtn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:YZe,db:wHt,renderer:EHt,styles:rtn,init:i=>{EHt.setConf(i.journey),wHt.clear()}}},Symbol.toStringTag,{value:"Module"})),gtn=(i,a,f)=>{const{parentById:g}=f,w=new Set;let v=i;for(;v;){if(w.add(v),v===a)return v;v=g[v]}for(v=a;v;){if(w.has(v))return v;v=g[v]}return"root"};function MX(i){throw new Error('Could not dynamically require "'+i+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var THt={exports:{}};(function(i,a){(function(f){i.exports=f()})(function(){return function(){function f(g,w,v){function b(_,M){if(!w[_]){if(!g[_]){var F=typeof MX=="function"&&MX;if(!M&&F)return F(_,!0);if(E)return E(_,!0);var R=new Error("Cannot find module '"+_+"'");throw R.code="MODULE_NOT_FOUND",R}var B=w[_]={exports:{}};g[_][0].call(B.exports,function(z){var Y=g[_][1][z];return b(Y||z)},B,B.exports,f,g,w,v)}return w[_].exports}for(var E=typeof MX=="function"&&MX,S=0;S0&&arguments[0]!==void 0?arguments[0]:{},R=F.defaultLayoutOptions,B=R===void 0?{}:R,z=F.algorithms,Y=z===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:z,nt=F.workerFactory,ot=F.workerUrl;if(b(this,_),this.defaultLayoutOptions=B,this.initialized=!1,typeof ot>"u"&&typeof nt>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var ft=nt;typeof ot<"u"&&typeof nt>"u"&&(ft=function(ct){return new Worker(ct)});var wt=ft(ot);if(typeof wt.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new S(wt),this.worker.postMessage({cmd:"register",algorithms:Y}).then(function(mt){return M.initialized=!0}).catch(console.err)}return v(_,[{key:"layout",value:function(F){var R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},B=R.layoutOptions,z=B===void 0?this.defaultLayoutOptions:B,Y=R.logging,nt=Y===void 0?!1:Y,ot=R.measureExecutionTime,ft=ot===void 0?!1:ot;return F?this.worker.postMessage({cmd:"layout",graph:F,layoutOptions:z,options:{logging:nt,measureExecutionTime:ft}}):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()}}]),_}();w.default=E;var S=function(){function _(M){var F=this;if(b(this,_),M===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=M,this.worker.onmessage=function(R){setTimeout(function(){F.receive(F,R)},0)}}return v(_,[{key:"postMessage",value:function(F){var R=this.id||0;this.id=R+1,F.id=R;var B=this;return new Promise(function(z,Y){B.resolvers[R]=function(nt,ot){nt?(B.convertGwtStyleError(nt),Y(nt)):z(ot)},B.worker.postMessage(F)})}},{key:"receive",value:function(F,R){var B=R.data,z=F.resolvers[B.id];z&&(delete F.resolvers[B.id],B.error?z(B.error):z(null,B.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(F){if(F){var R=F.__java$exception;R&&(R.cause&&R.cause.backingJsObject&&(F.cause=R.cause.backingJsObject,this.convertGwtStyleError(F.cause)),delete F.__java$exception)}}}]),_}()},{}],2:[function(f,g,w){(function(v){(function(){var b;typeof window<"u"?b=window:typeof v<"u"?b=v:typeof self<"u"&&(b=self);var E;function S(){}function _(){}function M(){}function F(){}function R(){}function B(){}function z(){}function Y(){}function nt(){}function ot(){}function ft(){}function wt(){}function mt(){}function ct(){}function rt(){}function it(){}function gt(){}function Q(){}function dt(){}function K(){}function yt(){}function V(){}function Ot(){}function It(){}function jt(){}function xt(){}function Ft(){}function Ct(){}function kt(){}function Gt(){}function Fe(){}function Mt(){}function pn(){}function Ae(){}function ye(){}function tn(){}function sn(){}function be(){}function Ne(){}function Xt(){}function _e(){}function xe(){}function Mn(){}function ce(){}function Br(){}function we(){}function Fi(){}function mi(){}function ga(){}function Ss(){}function za(){}function br(){}function An(){}function Nn(){}function Bn(){}function ke(){}function pe(){}function Je(){}function an(){}function xn(){}function qa(){}function xo(){}function ko(){}function va(){}function Ha(){}function ds(){}function Fu(){}function Zs(){}function d1(){}function I2(){}function ll(){}function Ic(){}function wc(){}function Ea(){}function gu(){}function ta(){}function fo(){}function mc(){}function ca(){}function ya(){}function ea(){}function Zl(){}function Uc(){}function rm(){}function kh(){}function Md(){}function w0(){}function Id(){}function m0(){}function hg(){}function Gi(){}function cn(){}function Nr(){}function Si(){}function vc(){}function Rc(){}function Eh(){}function Zc(){}function Qh(){}function Od(){}function cs(){}function As(){}function to(){}function Ci(){}function pu(){}function Le(){}function iy(){}function $e(){}function g1(){}function ip(){}function sy(){}function D8(){}function g4(){}function th(){}function fg(){}function O2(){}function M8(){}function N2(){}function p4(){}function U1(){}function Nd(){}function Pd(){}function I8(){}function im(){}function Gx(){}function hb(){}function Kx(){}function b4(){}function ay(){}function sp(){}function BD(){}function $l(){}function U9(){}function Gc(){}function $X(){}function P2(){}function zX(){}function MB(){}function qX(){}function IB(){}function p1(){}function oy(){}function G9(){}function OB(){}function fb(){}function cy(){}function HX(){}function F2(){}function VX(){}function UX(){}function Wx(){}function K9(){}function NB(){}function O8(){}function GX(){}function N8(){}function KX(){}function WX(){}function YX(){}function XX(){}function QX(){}function JX(){}function ZX(){}function tQ(){}function eQ(){}function nQ(){}function rQ(){}function RD(){}function iQ(){}function sQ(){}function W9(){}function PB(){}function Yx(){}function aQ(){}function oQ(){}function cQ(){}function uQ(){}function lQ(){}function Y9(){}function jD(){}function FB(){}function w4(){}function m4(){}function hQ(){}function Lf(){}function Xx(){}function fQ(){}function P8(){}function v0(){}function dQ(){}function gQ(){}function pQ(){}function BB(){}function bQ(){}function X9(){}function Q9(){}function RB(){}function $D(){}function Qx(){}function wQ(){}function jB(){}function $B(){}function mQ(){}function vQ(){}function yQ(){}function xQ(){}function kQ(){}function EQ(){}function y0(){}function sm(){}function TQ(){}function J9(){}function Z9(){}function CQ(){}function v4(){}function F8(){}function zD(){}function uy(){}function B8(){}function SQ(){}function tC(){}function Fd(){}function zB(){}function qD(){}function R8(){}function HD(){}function qB(){}function _Q(){}function VD(){}function AQ(){}function LQ(){}function HB(){}function Jx(){}function VB(){}function Zx(){}function DQ(){}function UD(){}function MQ(){}function IQ(){}function OQ(){}function NQ(){}function UB(){}function PQ(){}function FQ(){}function GB(){}function BQ(){}function RQ(){}function jQ(){}function $Q(){}function KB(){}function zQ(){}function qQ(){}function WB(){}function YB(){}function XB(){}function HQ(){}function VQ(){}function j8(){}function t6(){}function eC(){}function UQ(){}function GD(){}function nC(){}function KD(){}function QB(){}function JB(){}function GQ(){}function KQ(){}function WQ(){}function ZB(){}function tR(){}function YQ(){}function XQ(){}function QQ(){}function JQ(){}function ZQ(){}function eR(){}function tJ(){}function eJ(){}function nJ(){}function rJ(){}function nR(){}function rC(){}function iJ(){}function sJ(){}function rR(){}function aJ(){}function oJ(){}function cJ(){}function uJ(){}function lJ(){}function hJ(){}function iR(){}function fJ(){}function sR(){}function dJ(){}function gJ(){}function pJ(){}function iC(){}function bJ(){}function sC(){}function wJ(){}function aR(){}function oR(){}function cR(){}function uR(){}function am(){}function lR(){}function hR(){}function fR(){}function dR(){}function mJ(){}function e6(){}function WD(){}function y4(){}function vJ(){}function yJ(){}function aC(){}function gR(){}function xJ(){}function kJ(){}function EJ(){}function TJ(){}function CJ(){}function SJ(){}function _J(){}function AJ(){}function LJ(){}function DJ(){}function oC(){}function pR(){}function MJ(){}function IJ(){}function OJ(){}function NJ(){}function PJ(){}function bR(){}function wR(){}function FJ(){}function mR(){}function vR(){}function BJ(){}function RJ(){}function jJ(){}function $J(){}function zJ(){}function qJ(){}function HJ(){}function VJ(){}function YD(){}function UJ(){}function $8(){}function yR(){}function GJ(){}function KJ(){}function WJ(){}function YJ(){}function XJ(){}function QJ(){}function JJ(){}function ZJ(){}function tZ(){}function eZ(){}function nZ(){}function rZ(){}function iZ(){}function sZ(){}function aZ(){}function n6(){}function xR(){}function oZ(){}function cZ(){}function uZ(){}function kR(){}function lZ(){}function cC(){}function hZ(){}function fZ(){}function dZ(){}function gZ(){}function pZ(){}function bZ(){}function wZ(){}function mZ(){}function vZ(){}function yZ(){}function r6(){}function xZ(){}function kZ(){}function EZ(){}function TZ(){}function CZ(){}function SZ(){}function _Z(){}function AZ(){}function uC(){}function LZ(){}function DZ(){}function MZ(){}function IZ(){}function OZ(){}function NZ(){}function PZ(){}function FZ(){}function i6(){}function ER(){}function BZ(){}function XD(){}function RZ(){}function jZ(){}function $Z(){}function zZ(){}function qZ(){}function HZ(){}function VZ(){}function TR(){}function UZ(){}function CR(){}function GZ(){}function SR(){}function _R(){}function AR(){}function KZ(){}function WZ(){}function LR(){}function YZ(){}function DR(){}function XZ(){}function QZ(){}function QD(){}function JZ(){}function ZZ(){}function ttt(){}function ett(){}function ntt(){}function MR(){}function rtt(){}function itt(){}function stt(){}function A2t(){}function att(){}function ott(){}function ctt(){}function utt(){}function ltt(){}function htt(){}function ftt(){}function dtt(){}function gtt(){}function ptt(){}function btt(){}function wtt(){}function mtt(){}function vtt(){}function ytt(){}function xtt(){}function Kc(){}function ktt(){}function lC(){}function yc(){}function bu(){}function Xi(){}function JD(){}function Ett(){}function Ttt(){}function Ctt(){}function s6(){}function B2(){}function z8(){}function Stt(){}function ZD(){}function _tt(){}function Att(){}function Ltt(){}function IR(){}function Dtt(){}function Mtt(){}function tM(){}function Itt(){}function zl(){}function Yu(){}function OR(){}function Ott(){}function Ntt(){}function ly(){}function x4(){}function hy(){}function ap(){}function a6(){}function eM(){}function NR(){}function PR(){}function Ptt(){}function G1(){}function FR(){}function fy(){}function q8(){}function nM(){}function o6(){}function db(){}function BR(){}function RR(){}function jR(){}function Ftt(){}function c6(){}function dy(){}function op(){}function gb(){}function k4(){}function H8(){}function hC(){}function rM(){}function Btt(){}function Rtt(){}function $R(){}function zR(){}function je(){}function V8(){}function qR(){}function HR(){}function jtt(){}function U8(){}function G8(){}function VR(){}function $tt(){}function ztt(){}function qtt(){}function Htt(){}function Vtt(){}function Utt(){}function iM(){}function Gtt(){}function Ktt(){}function UR(){}function fC(){}function Wtt(){}function sM(){}function K8(){}function W8(){}function Y8(){}function GR(){}function Ytt(){}function KR(){}function WR(){}function Xtt(){}function dC(){}function pb(){}function YR(){}function XR(){}function gC(){}function Qtt(){}function E4(){}function QR(){}function aM(){}function Oc(){}function oM(){}function cM(){}function pC(){}function Jtt(){}function Ztt(){}function bC(){}function tet(){}function wC(){}function mC(){}function b1(){}function uM(){}function lM(){}function u6(){}function eet(){}function net(){}function ret(){}function iet(){}function x0(){}function vC(){}function l6(){}function K1(){}function JR(){}function ZR(){}function tj(){}function ej(){}function nj(){}function rj(){}function w1(){}function Bu(){}function set(){}function aet(){}function oet(){}function Ru(){}function yC(){}function ij(){}function sj(){}function h6(){}function cet(){}function X8(){}function uet(){}function aj(){}function het(){}function fet(){}function xC(){}function oj(){}function hM(){}function kC(){}function det(){}function get(){}function fM(){}function EC(){}function W1(){}function Q8(){}function pet(){}function J8(){}function dM(){}function R2(){}function TC(){}function gM(){}function m1(){}function CC(){}function Y1(){}function X1(){}function bet(){}function wet(){}function T4(){}function Z8(){}function tE(){}function SC(){}function met(){}function vet(){}function f6(){}function cj(){}function uj(){}function yet(){}function lj(){}function xet(){}function hj(){}function pM(){}function ket(){}function _C(){}function Eet(){}function Tet(){}function Cet(){}function _et(){}function Aet(){}function fj(){}function Let(){}function Det(){}function Met(){}function dj(){}function Iet(){}function Oet(){}function AC(){}function Net(){}function Pet(){}function Fet(){}function Bet(){}function Ret(){}function jet(){}function gj(){}function $et(){}function pj(){}function zet(){}function bM(){}function qet(){}function bj(){}function Het(){}function wj(){}function Vet(){}function mj(){}function vj(){}function yj(){}function wM(){}function C4(){}function LC(){}function Q1(){}function xj(){}function eE(){}function mM(){}function kj(){}function j2(){}function Ej(){}function DC(){UC()}function Uet(){jM()}function Tj(){RH()}function Cj(){Mat()}function Sj(){b_()}function MC(){u6t()}function IC(){Vf()}function _j(){vxt()}function Aj(){TO()}function d6(){$M()}function om(){gI()}function nE(){UYt()}function Lj(){ok()}function Get(){vse()}function Dj(){m4t()}function g6(){ore()}function vM(){v4t()}function Mj(){Xse()}function Ket(){are()}function Ij(){g7()}function OC(){Ooe()}function NC(){Ioe()}function yM(){nie()}function Wet(){Noe()}function Yet(){Vb()}function Xet(){T$()}function Qet(){o8t()}function Jet(){De()}function Zet(){Poe()}function tnt(){cce()}function ent(){cre()}function nnt(){Ohe()}function rnt(){ure()}function int(){W0e()}function snt(){j6t()}function ant(){Sg()}function ont(){Wue()}function p6(){Cc()}function cnt(){mre()}function rE(){ak()}function Jh(){xkt()}function unt(){Ub()}function iE(){kkt()}function PC(){fd()}function lnt(){LO()}function hnt(){rct()}function fnt(){fot()}function Zh(){WZt()}function dnt(){Tq()}function gnt(){VH()}function Oj(){ai()}function pnt(){aH()}function Nj(){Y5t()}function Pj(){fat()}function Fj(){fV()}function Bj(){Okt()}function Df(t){Wn(t)}function Rj(t){this.a=t}function FC(t){this.a=t}function jj(t){this.a=t}function $j(t){this.a=t}function bnt(t){this.a=t}function wnt(t){this.a=t}function zj(t){this.a=t}function mnt(t){this.a=t}function qj(t){this.a=t}function bb(t){this.a=t}function vnt(t){this.a=t}function ynt(t){this.a=t}function xM(t){this.a=t}function xnt(t){this.a=t}function knt(t){this.a=t}function sE(t){this.a=t}function wb(t){this.a=t}function Hj(t){this.a=t}function aE(t){this.a=t}function S4(t){this.a=t}function kM(t){this.a=t}function b6(t){this.a=t}function EM(t){this.b=t}function dg(t){this.c=t}function Ent(t){this.a=t}function gy(t){this.a=t}function Vj(t){this.a=t}function Uj(t){this.a=t}function TM(t){this.a=t}function CM(t){this.a=t}function Gj(t){this.a=t}function w6(t){this.a=t}function oE(t){this.a=t}function Tnt(t){this.a=t}function Kj(t){this.a=t}function Wj(t){this.a=t}function Yj(t){this.a=t}function Xj(t){this.a=t}function xc(t){this.a=t}function cE(t){this.a=t}function uE(t){this.a=t}function cp(){this.a=[]}function Cnt(t,e){t.a=e}function Snt(t,e){t.a=e}function _nt(t,e){t.b=e}function Ant(t,e){t.b=e}function Lnt(t,e){t.b=e}function Qj(t,e){t.j=e}function L2t(t,e){t.g=e}function Jj(t,e){t.i=e}function Dnt(t,e){t.c=e}function m6(t,e){t.c=e}function D2t(t,e){t.d=e}function v6(t,e){t.d=e}function y(t,e){t.k=e}function p(t,e){t.c=e}function x(t,e){t.c=e}function C(t,e){t.a=e}function L(t,e){t.a=e}function O(t,e){t.f=e}function N(t,e){t.a=e}function j(t,e){t.b=e}function H(t,e){t.d=e}function q(t,e){t.i=e}function W(t,e){t.o=e}function Z(t,e){t.r=e}function st(t,e){t.a=e}function bt(t,e){t.b=e}function pt(t,e){t.e=e}function _t(t,e){t.f=e}function St(t,e){t.g=e}function Et(t,e){t.e=e}function Nt(t,e){t.f=e}function Pt(t,e){t.f=e}function qt(t,e){t.a=e}function re(t,e){t.b=e}function ee(t,e){t.n=e}function Ut(t,e){t.a=e}function de(t,e){t.c=e}function Yt(t,e){t.c=e}function Ee(t,e){t.c=e}function Te(t,e){t.a=e}function ie(t,e){t.a=e}function ze(t,e){t.d=e}function me(t,e){t.d=e}function yn(t,e){t.e=e}function nn(t,e){t.e=e}function qe(t,e){t.g=e}function Tn(t,e){t.f=e}function Xn(t,e){t.j=e}function lr(t,e){t.a=e}function Sn(t,e){t.a=e}function or(t,e){t.b=e}function pr(t){t.b=t.a}function kr(t){t.c=t.d.d}function wr(t){this.a=t}function Cr(t){this.a=t}function $n(t){this.a=t}function cr(t){this.a=t}function mr(t){this.a=t}function Sr(t){this.a=t}function gi(t){this.a=t}function ss(t){this.a=t}function na(t){this.a=t}function vi(t){this.a=t}function si(t){this.a=t}function Qi(t){this.a=t}function ks(t){this.a=t}function as(t){this.a=t}function Es(t){this.b=t}function eo(t){this.b=t}function Ta(t){this.b=t}function pa(t){this.a=t}function mo(t){this.a=t}function Kn(t){this.c=t}function G(t){this.c=t}function Vn(t){this.c=t}function gr(t){this.d=t}function nr(t){this.a=t}function Be(t){this.a=t}function Ls(t){this.a=t}function hr(t){this.a=t}function us(t){this.a=t}function Ya(t){this.a=t}function kc(t){this.a=t}function Ca(t){this.a=t}function oc(t){this.a=t}function ra(t){this.a=t}function no(t){this.a=t}function ql(t){this.a=t}function Sl(t){this.a=t}function mb(t){this.a=t}function vb(t){this.a=t}function v1(t){this.a=t}function up(t){this.a=t}function Bd(t){this.a=t}function cm(t){this.a=t}function py(t){this.a=t}function y6(t){this.a=t}function _4(t){this.a=t}function x6(t){this.a=t}function BC(t){this.a=t}function A4(t){this.a=t}function k0(t){this.a=t}function J1(t){this.a=t}function E0(t){this.a=t}function by(t){this.a=t}function $2(t){this.a=t}function Zj(t){this.a=t}function Mnt(t){this.a=t}function Int(t){this.a=t}function RC(t){this.a=t}function Ont(t){this.a=t}function Nnt(t){this.a=t}function L4(t){this.a=t}function t$(t){this.a=t}function lE(t){this.a=t}function SM(t){this.a=t}function jC(t){this.a=t}function e$(t){this.a=t}function n$(t){this.a=t}function Pnt(t){this.a=t}function lp(t){this.a=t}function $C(t){this.a=t}function _M(t){this.a=t}function z2(t){this.a=t}function T0(t){this.e=t}function D4(t){this.a=t}function yVt(t){this.a=t}function k6(t){this.a=t}function M2t(t){this.a=t}function xVt(t){this.a=t}function kVt(t){this.a=t}function EVt(t){this.a=t}function TVt(t){this.a=t}function CVt(t){this.a=t}function SVt(t){this.a=t}function _Vt(t){this.a=t}function AVt(t){this.a=t}function LVt(t){this.a=t}function DVt(t){this.a=t}function MVt(t){this.a=t}function I2t(t){this.a=t}function IVt(t){this.a=t}function OVt(t){this.a=t}function NVt(t){this.a=t}function PVt(t){this.a=t}function FVt(t){this.a=t}function BVt(t){this.a=t}function RVt(t){this.a=t}function jVt(t){this.a=t}function $Vt(t){this.a=t}function zVt(t){this.a=t}function qVt(t){this.a=t}function HVt(t){this.a=t}function VVt(t){this.a=t}function UVt(t){this.a=t}function GVt(t){this.a=t}function KVt(t){this.a=t}function WVt(t){this.a=t}function YVt(t){this.a=t}function XVt(t){this.a=t}function QVt(t){this.a=t}function JVt(t){this.a=t}function ZVt(t){this.a=t}function tUt(t){this.a=t}function eUt(t){this.a=t}function nUt(t){this.a=t}function rUt(t){this.a=t}function iUt(t){this.a=t}function sUt(t){this.a=t}function aUt(t){this.a=t}function oUt(t){this.a=t}function cUt(t){this.a=t}function uUt(t){this.a=t}function lUt(t){this.a=t}function hUt(t){this.a=t}function fUt(t){this.a=t}function dUt(t){this.a=t}function gUt(t){this.a=t}function pUt(t){this.a=t}function bUt(t){this.c=t}function wUt(t){this.b=t}function mUt(t){this.a=t}function vUt(t){this.a=t}function yUt(t){this.a=t}function xUt(t){this.a=t}function kUt(t){this.a=t}function EUt(t){this.a=t}function TUt(t){this.a=t}function CUt(t){this.a=t}function SUt(t){this.a=t}function _Ut(t){this.a=t}function AUt(t){this.a=t}function LUt(t){this.a=t}function DUt(t){this.a=t}function MUt(t){this.a=t}function IUt(t){this.a=t}function OUt(t){this.a=t}function NUt(t){this.a=t}function PUt(t){this.a=t}function FUt(t){this.a=t}function BUt(t){this.a=t}function RUt(t){this.a=t}function jUt(t){this.a=t}function $Ut(t){this.a=t}function zUt(t){this.a=t}function qUt(t){this.a=t}function HUt(t){this.a=t}function VUt(t){this.a=t}function gg(t){this.a=t}function M4(t){this.a=t}function UUt(t){this.a=t}function GUt(t){this.a=t}function KUt(t){this.a=t}function WUt(t){this.a=t}function YUt(t){this.a=t}function XUt(t){this.a=t}function QUt(t){this.a=t}function JUt(t){this.a=t}function ZUt(t){this.a=t}function tGt(t){this.a=t}function eGt(t){this.a=t}function nGt(t){this.a=t}function rGt(t){this.a=t}function iGt(t){this.a=t}function sGt(t){this.a=t}function aGt(t){this.a=t}function oGt(t){this.a=t}function cGt(t){this.a=t}function uGt(t){this.a=t}function lGt(t){this.a=t}function hGt(t){this.a=t}function fGt(t){this.a=t}function dGt(t){this.a=t}function gGt(t){this.a=t}function pGt(t){this.a=t}function bGt(t){this.a=t}function r$(t){this.a=t}function wGt(t){this.f=t}function mGt(t){this.a=t}function vGt(t){this.a=t}function yGt(t){this.a=t}function xGt(t){this.a=t}function kGt(t){this.a=t}function EGt(t){this.a=t}function TGt(t){this.a=t}function CGt(t){this.a=t}function SGt(t){this.a=t}function _Gt(t){this.a=t}function AGt(t){this.a=t}function LGt(t){this.a=t}function DGt(t){this.a=t}function MGt(t){this.a=t}function IGt(t){this.a=t}function OGt(t){this.a=t}function NGt(t){this.a=t}function PGt(t){this.a=t}function FGt(t){this.a=t}function BGt(t){this.a=t}function RGt(t){this.a=t}function jGt(t){this.a=t}function $Gt(t){this.a=t}function zGt(t){this.a=t}function qGt(t){this.a=t}function HGt(t){this.a=t}function VGt(t){this.a=t}function UGt(t){this.a=t}function Fnt(t){this.a=t}function O2t(t){this.a=t}function Oi(t){this.b=t}function GGt(t){this.a=t}function KGt(t){this.a=t}function WGt(t){this.a=t}function YGt(t){this.a=t}function XGt(t){this.a=t}function QGt(t){this.a=t}function JGt(t){this.a=t}function ZGt(t){this.b=t}function tKt(t){this.a=t}function AM(t){this.a=t}function eKt(t){this.a=t}function nKt(t){this.a=t}function N2t(t){this.c=t}function i$(t){this.e=t}function s$(t){this.a=t}function a$(t){this.a=t}function Bnt(t){this.a=t}function rKt(t){this.d=t}function iKt(t){this.a=t}function P2t(t){this.a=t}function F2t(t){this.a=t}function um(t){this.e=t}function vnn(){this.a=0}function _r(){dl(this)}function fe(){Qrt(this)}function Rnt(){zee(this)}function sKt(){}function lm(){this.c=qIt}function aKt(t,e){t.b+=e}function ynn(t,e){e.Wb(t)}function xnn(t){return t.a}function knn(t){return t.a}function Enn(t){return t.a}function Tnn(t){return t.a}function Cnn(t){return t.a}function at(t){return t.e}function Snn(){return null}function _nn(){return null}function Ann(){xwt(),oSn()}function Lnn(t){t.b.Of(t.e)}function oKt(t){t.b=new irt}function zC(t,e){t.b=e-t.b}function qC(t,e){t.a=e-t.a}function In(t,e){t.push(e)}function cKt(t,e){t.sort(e)}function uKt(t,e){e.jd(t.a)}function Dnn(t,e){Xs(e,t)}function Mnn(t,e,n){t.Yd(n,e)}function LM(t,e){t.e=e,e.b=t}function B2t(t){Vd(),this.a=t}function lKt(t){Vd(),this.a=t}function hKt(t){Vd(),this.a=t}function jnt(t){Dm(),this.a=t}function fKt(t){$E(),Aht.le(t)}function R2t(){R2t=V,new _r}function q2(){MJt.call(this)}function j2t(){MJt.call(this)}function $2t(){q2.call(this)}function $nt(){q2.call(this)}function dKt(){q2.call(this)}function DM(){q2.call(this)}function Xu(){q2.call(this)}function E6(){q2.call(this)}function Vr(){q2.call(this)}function Th(){q2.call(this)}function gKt(){q2.call(this)}function cc(){q2.call(this)}function pKt(){q2.call(this)}function bKt(){this.a=this}function o$(){this.Bb|=256}function wKt(){this.b=new TQt}function wy(t,e){t.length=e}function c$(t,e){ge(t.a,e)}function Inn(t,e){h6t(t.c,e)}function Onn(t,e){qs(t.b,e)}function Nnn(t,e){IH(t.a,e)}function Pnn(t,e){jat(t.a,e)}function hE(t,e){Ei(t.e,e)}function T6(t){WH(t.c,t.b)}function Fnn(t,e){t.kc().Nb(e)}function z2t(t){this.a=A2n(t)}function Os(){this.a=new _r}function mKt(){this.a=new _r}function q2t(){this.a=new BYt}function u$(){this.a=new fe}function znt(){this.a=new fe}function H2t(){this.a=new fe}function tf(){this.a=new I2}function H2(){this.a=new dse}function V2t(){this.a=new O2}function U2t(){this.a=new sre}function G2t(){this.a=new wZt}function vKt(){this.a=new fe}function yKt(){this.a=new fe}function xKt(){this.a=new fe}function K2t(){this.a=new fe}function kKt(){this.d=new fe}function EKt(){this.a=new Cre}function TKt(){this.a=new Os}function CKt(){this.a=new _r}function SKt(){this.b=new _r}function _Kt(){this.b=new fe}function W2t(){this.e=new fe}function AKt(){this.a=new Yet}function LKt(){this.d=new fe}function DKt(){Dne.call(this)}function MKt(){Dne.call(this)}function IKt(){fe.call(this)}function Y2t(){$2t.call(this)}function X2t(){u$.call(this)}function OKt(){gz.call(this)}function NKt(){K2t.call(this)}function HC(){sKt.call(this)}function qnt(){HC.call(this)}function C6(){sKt.call(this)}function Q2t(){C6.call(this)}function PKt(){ewt.call(this)}function FKt(){ewt.call(this)}function BKt(){ewt.call(this)}function RKt(){nwt.call(this)}function VC(){Wtt.call(this)}function J2t(){Wtt.call(this)}function Qu(){Ki.call(this)}function jKt(){tWt.call(this)}function $Kt(){tWt.call(this)}function zKt(){_r.call(this)}function qKt(){_r.call(this)}function HKt(){_r.call(this)}function Hnt(){Roe.call(this)}function VKt(){Os.call(this)}function UKt(){o$.call(this)}function Vnt(){Pmt.call(this)}function Z2t(){_r.call(this)}function Unt(){Pmt.call(this)}function Gnt(){_r.call(this)}function GKt(){_r.call(this)}function twt(){E4.call(this)}function KKt(){twt.call(this)}function WKt(){E4.call(this)}function YKt(){kj.call(this)}function ewt(){this.a=new Os}function XKt(){this.a=new _r}function QKt(){this.a=new fe}function nwt(){this.a=new _r}function S6(){this.a=new Ki}function JKt(){this.j=new fe}function ZKt(){this.a=new QWt}function tWt(){this.a=new Qtt}function rwt(){this.a=new Xi}function UC(){UC=V,yht=new _}function Knt(){Knt=V,xht=new nWt}function Wnt(){Wnt=V,kht=new eWt}function eWt(){sE.call(this,"")}function nWt(){sE.call(this,"")}function rWt(t){ooe.call(this,t)}function iWt(t){ooe.call(this,t)}function iwt(t){qj.call(this,t)}function swt(t){SYt.call(this,t)}function Bnn(t){SYt.call(this,t)}function Rnn(t){swt.call(this,t)}function jnn(t){swt.call(this,t)}function $nn(t){swt.call(this,t)}function sWt(t){Sst.call(this,t)}function aWt(t){Sst.call(this,t)}function oWt(t){jZt.call(this,t)}function cWt(t){Awt.call(this,t)}function GC(t){y$.call(this,t)}function awt(t){y$.call(this,t)}function uWt(t){y$.call(this,t)}function owt(t){c4n.call(this,t)}function cwt(t){owt.call(this,t)}function uc(t){aee.call(this,t)}function lWt(t){uc.call(this,t)}function _6(){uE.call(this,{})}function hWt(){hWt=V,Kve=new K}function l$(){l$=V,Cht=new oJt}function fWt(){fWt=V,r9t=new S}function uwt(){uwt=V,i9t=new ct}function h$(){h$=V,mA=new gt}function Ynt(t){EE(),this.a=t}function Xnt(t){F4t(),this.a=t}function my(t){Nit(),this.f=t}function Qnt(t){Nit(),this.f=t}function dWt(t){KZt(),this.a=t}function gWt(t){t.b=null,t.c=0}function znn(t,e){t.e=e,Wde(t,e)}function qnn(t,e){t.a=e,Y4n(t)}function Jnt(t,e,n){t.a[e.g]=n}function Hnn(t,e,n){lyn(n,t,e)}function Vnn(t,e){jan(e.i,t.n)}function pWt(t,e){ubn(t).Cd(e)}function Unn(t,e){t.a.ec().Mc(e)}function bWt(t,e){return t.g-e.g}function Gnn(t,e){return t*t/e}function Ie(t){return Wn(t),t}function Rt(t){return Wn(t),t}function MM(t){return Wn(t),t}function Knn(t){return new cE(t)}function Wnn(t){return new Oy(t)}function lwt(t){return Wn(t),t}function Ynn(t){return Wn(t),t}function f$(t){uc.call(this,t)}function Bo(t){uc.call(this,t)}function wWt(t){uc.call(this,t)}function Znt(t){aee.call(this,t)}function fE(t){uc.call(this,t)}function zn(t){uc.call(this,t)}function Ro(t){uc.call(this,t)}function mWt(t){uc.call(this,t)}function A6(t){uc.call(this,t)}function hp(t){uc.call(this,t)}function fp(t){uc.call(this,t)}function L6(t){uc.call(this,t)}function Rd(t){uc.call(this,t)}function trt(t){uc.call(this,t)}function Yr(t){uc.call(this,t)}function hl(t){Wn(t),this.a=t}function hwt(t){return cw(t),t}function KC(t){Eyt(t,t.length)}function WC(t){return t.b==t.c}function vy(t){return!!t&&t.b}function Xnn(t){return!!t&&t.k}function Qnn(t){return!!t&&t.j}function Jnn(t,e,n){t.c.Ef(e,n)}function vWt(t,e){t.be(e),e.ae(t)}function D6(t){Vd(),this.a=Hr(t)}function ert(){this.a=Gr(Hr(ao))}function yWt(){throw at(new Vr)}function Znn(){throw at(new Vr)}function fwt(){throw at(new Vr)}function xWt(){throw at(new Vr)}function trn(){throw at(new Vr)}function ern(){throw at(new Vr)}function d$(){d$=V,$E()}function dp(){Sr.call(this,"")}function YC(){Sr.call(this,"")}function yb(){Sr.call(this,"")}function I4(){Sr.call(this,"")}function dwt(t){Bo.call(this,t)}function gwt(t){Bo.call(this,t)}function jd(t){zn.call(this,t)}function dE(t){Ta.call(this,t)}function kWt(t){dE.call(this,t)}function nrt(t){uz.call(this,t)}function rrt(t){Kmt.call(this,t,0)}function irt(){s3t.call(this,12,3)}function ut(t,e){return Zne(t,e)}function g$(t,e){return zst(t,e)}function nrn(t,e){return t.a-e.a}function rrn(t,e){return t.a-e.a}function irn(t,e){return t.a-e.a}function srn(t,e){return e in t.a}function EWt(t){return t.a?t.b:0}function arn(t){return t.a?t.b:0}function orn(t,e,n){e.Cd(t.a[n])}function crn(t,e,n){e.Pe(t.a[n])}function urn(t,e){t.b=new io(e)}function lrn(t,e){return t.b=e,t}function TWt(t,e){return t.c=e,t}function CWt(t,e){return t.f=e,t}function hrn(t,e){return t.g=e,t}function pwt(t,e){return t.a=e,t}function bwt(t,e){return t.f=e,t}function frn(t,e){return t.k=e,t}function wwt(t,e){return t.a=e,t}function drn(t,e){return t.e=e,t}function mwt(t,e){return t.e=e,t}function grn(t,e){return t.f=e,t}function prn(t,e){t.b=!0,t.d=e}function brn(t,e){return t.b-e.b}function wrn(t,e){return t.g-e.g}function mrn(t,e){return t?0:e-1}function SWt(t,e){return t?0:e-1}function vrn(t,e){return t?e-1:0}function yrn(t,e){return t.s-e.s}function xrn(t,e){return e.rg(t)}function hm(t,e){return t.b=e,t}function p$(t,e){return t.a=e,t}function fm(t,e){return t.c=e,t}function dm(t,e){return t.d=e,t}function gm(t,e){return t.e=e,t}function vwt(t,e){return t.f=e,t}function XC(t,e){return t.a=e,t}function gE(t,e){return t.b=e,t}function pE(t,e){return t.c=e,t}function Ve(t,e){return t.c=e,t}function fn(t,e){return t.b=e,t}function Ue(t,e){return t.d=e,t}function Ge(t,e){return t.e=e,t}function krn(t,e){return t.f=e,t}function Ke(t,e){return t.g=e,t}function We(t,e){return t.a=e,t}function Ye(t,e){return t.i=e,t}function Xe(t,e){return t.j=e,t}function Ern(t,e){Vb(),hc(e,t)}function Trn(t,e,n){$un(t.a,e,n)}function b$(t){pit.call(this,t)}function _Wt(t){H2n.call(this,t)}function AWt(t){one.call(this,t)}function ywt(t){one.call(this,t)}function xb(t){$m.call(this,t)}function LWt(t){ist.call(this,t)}function DWt(t){ist.call(this,t)}function MWt(){Lmt.call(this,"")}function Sa(){this.a=0,this.b=0}function IWt(){this.b=0,this.a=0}function OWt(t,e){t.b=0,Hy(t,e)}function NWt(t,e){return t.k=e,t}function Crn(t,e){return t.j=e,t}function Srn(t,e){t.c=e,t.b=!0}function PWt(){PWt=V,aye=Byn()}function kb(){kb=V,Z7e=Wvn()}function FWt(){FWt=V,da=a3n()}function xwt(){xwt=V,b2=e7()}function bE(){bE=V,zIt=Yvn()}function BWt(){BWt=V,BTe=Xvn()}function kwt(){kwt=V,Bc=G4n()}function y1(t){return t.e&&t.e()}function RWt(t){return t.l|t.m<<22}function jWt(t,e){return t.c._b(e)}function $Wt(t,e){return Bue(t.b,e)}function srt(t){return t?t.d:null}function _rn(t){return t?t.g:null}function Arn(t){return t?t.i:null}function V2(t){return wg(t),t.o}function O4(t,e){return t.a+=e,t}function art(t,e){return t.a+=e,t}function gp(t,e){return t.a+=e,t}function pm(t,e){return t.a+=e,t}function Ewt(t,e){for(;t.Bd(e););}function w$(t){this.a=new M6(t)}function zWt(){throw at(new Vr)}function qWt(){throw at(new Vr)}function HWt(){throw at(new Vr)}function VWt(){throw at(new Vr)}function UWt(){throw at(new Vr)}function GWt(){throw at(new Vr)}function pp(t){this.a=new Bit(t)}function KWt(){this.a=new L_(PLt)}function WWt(){this.b=new L_(tLt)}function YWt(){this.a=new L_(sDt)}function XWt(){this.b=new L_(bdt)}function QWt(){this.b=new L_(bdt)}function m$(t){this.a=0,this.b=t}function Twt(t){Spe(),ySn(this,t)}function wE(t){return Mb(t),t.a}function IM(t){return t.b!=t.d.c}function Cwt(t,e){return t.d[e.p]}function JWt(t,e){return Bkn(t,e)}function Swt(t,e,n){t.splice(e,n)}function N4(t,e){for(;t.Re(e););}function ZWt(t){t.c?f0e(t):d0e(t)}function tYt(){throw at(new Vr)}function eYt(){throw at(new Vr)}function nYt(){throw at(new Vr)}function rYt(){throw at(new Vr)}function iYt(){throw at(new Vr)}function sYt(){throw at(new Vr)}function aYt(){throw at(new Vr)}function oYt(){throw at(new Vr)}function cYt(){throw at(new Vr)}function uYt(){throw at(new Vr)}function Lrn(){throw at(new cc)}function Drn(){throw at(new cc)}function OM(t){this.a=new lYt(t)}function lYt(t){Ngn(this,t,f4n())}function NM(t){return!t||$ee(t)}function PM(t){return _d[t]!=-1}function Mrn(){MU!=0&&(MU=0),IU=-1}function hYt(){vht==null&&(vht=[])}function FM(t,e){W4.call(this,t,e)}function mE(t,e){FM.call(this,t,e)}function fYt(t,e){this.a=t,this.b=e}function dYt(t,e){this.a=t,this.b=e}function gYt(t,e){this.a=t,this.b=e}function pYt(t,e){this.a=t,this.b=e}function bYt(t,e){this.a=t,this.b=e}function wYt(t,e){this.a=t,this.b=e}function mYt(t,e){this.a=t,this.b=e}function vE(t,e){this.e=t,this.d=e}function _wt(t,e){this.b=t,this.c=e}function vYt(t,e){this.b=t,this.a=e}function yYt(t,e){this.b=t,this.a=e}function xYt(t,e){this.b=t,this.a=e}function kYt(t,e){this.b=t,this.a=e}function EYt(t,e){this.a=t,this.b=e}function ort(t,e){this.a=t,this.b=e}function TYt(t,e){this.a=t,this.f=e}function bm(t,e){this.g=t,this.i=e}function Rr(t,e){this.f=t,this.g=e}function CYt(t,e){this.b=t,this.c=e}function SYt(t){Bmt(t.dc()),this.c=t}function Irn(t,e){this.a=t,this.b=e}function _Yt(t,e){this.a=t,this.b=e}function AYt(t){this.a=u(Hr(t),15)}function Awt(t){this.a=u(Hr(t),15)}function LYt(t){this.a=u(Hr(t),85)}function v$(t){this.b=u(Hr(t),85)}function y$(t){this.b=u(Hr(t),51)}function x$(){this.q=new b.Date}function crt(t,e){this.a=t,this.b=e}function DYt(t,e){return Tu(t.b,e)}function BM(t,e){return t.b.Hc(e)}function MYt(t,e){return t.b.Ic(e)}function IYt(t,e){return t.b.Qc(e)}function OYt(t,e){return t.b.Hc(e)}function NYt(t,e){return t.c.uc(e)}function PYt(t,e){return Ti(t.c,e)}function x1(t,e){return t.a._b(e)}function FYt(t,e){return t>e&&e0}function grt(t,e){return $c(t,e)<0}function JYt(t,e){return Dit(t.a,e)}function Qrn(t,e){tre.call(this,t,e)}function Pwt(t){Yit(),jZt.call(this,t)}function Fwt(t,e){Kte(t,t.length,e)}function zM(t,e){xee(t,t.length,e)}function iS(t,e){return t.a.get(e)}function ZYt(t,e){return Tu(t.e,e)}function Bwt(t){return Wn(t),!1}function Rwt(t){this.a=u(Hr(t),229)}function D$(t){gn.call(this,t,21)}function M$(t,e){Rr.call(this,t,e)}function prt(t,e){Rr.call(this,t,e)}function tXt(t,e){this.b=t,this.a=e}function I$(t,e){this.d=t,this.e=e}function eXt(t,e){this.a=t,this.b=e}function nXt(t,e){this.a=t,this.b=e}function rXt(t,e){this.a=t,this.b=e}function iXt(t,e){this.a=t,this.b=e}function O6(t,e){this.a=t,this.b=e}function sXt(t,e){this.b=t,this.a=e}function jwt(t,e){this.b=t,this.a=e}function $wt(t,e){Rr.call(this,t,e)}function zwt(t,e){Rr.call(this,t,e)}function P4(t,e){Rr.call(this,t,e)}function brt(t,e){Rr.call(this,t,e)}function wrt(t,e){Rr.call(this,t,e)}function mrt(t,e){Rr.call(this,t,e)}function O$(t,e){Rr.call(this,t,e)}function qwt(t,e){this.b=t,this.a=e}function N$(t,e){Rr.call(this,t,e)}function Hwt(t,e){this.b=t,this.a=e}function P$(t,e){Rr.call(this,t,e)}function aXt(t,e){this.b=t,this.a=e}function Vwt(t,e){Rr.call(this,t,e)}function vrt(t,e){Rr.call(this,t,e)}function qM(t,e){Rr.call(this,t,e)}function sS(t,e,n){t.splice(e,0,n)}function Jrn(t,e,n){t.Mb(n)&&e.Cd(n)}function Zrn(t,e,n){e.Pe(t.a.Ye(n))}function tin(t,e,n){e.Dd(t.a.Ze(n))}function ein(t,e,n){e.Cd(t.a.Kb(n))}function nin(t,e){return Zu(t.c,e)}function rin(t,e){return Zu(t.e,e)}function F$(t,e){Rr.call(this,t,e)}function B$(t,e){Rr.call(this,t,e)}function aS(t,e){Rr.call(this,t,e)}function Uwt(t,e){Rr.call(this,t,e)}function Ns(t,e){Rr.call(this,t,e)}function R$(t,e){Rr.call(this,t,e)}function oXt(t,e){this.a=t,this.b=e}function cXt(t,e){this.a=t,this.b=e}function uXt(t,e){this.a=t,this.b=e}function lXt(t,e){this.a=t,this.b=e}function hXt(t,e){this.a=t,this.b=e}function fXt(t,e){this.a=t,this.b=e}function dXt(t,e){this.b=t,this.a=e}function gXt(t,e){this.b=t,this.a=e}function Gwt(t,e){this.b=t,this.a=e}function kE(t,e){this.c=t,this.d=e}function pXt(t,e){this.e=t,this.d=e}function bXt(t,e){this.a=t,this.b=e}function wXt(t,e){this.a=t,this.b=e}function mXt(t,e){this.a=t,this.b=e}function vXt(t,e){this.b=t,this.a=e}function yXt(t,e){this.b=e,this.c=t}function j$(t,e){Rr.call(this,t,e)}function HM(t,e){Rr.call(this,t,e)}function yrt(t,e){Rr.call(this,t,e)}function Kwt(t,e){Rr.call(this,t,e)}function oS(t,e){Rr.call(this,t,e)}function xrt(t,e){Rr.call(this,t,e)}function krt(t,e){Rr.call(this,t,e)}function VM(t,e){Rr.call(this,t,e)}function Wwt(t,e){Rr.call(this,t,e)}function Ert(t,e){Rr.call(this,t,e)}function cS(t,e){Rr.call(this,t,e)}function Ywt(t,e){Rr.call(this,t,e)}function uS(t,e){Rr.call(this,t,e)}function lS(t,e){Rr.call(this,t,e)}function ky(t,e){Rr.call(this,t,e)}function Trt(t,e){Rr.call(this,t,e)}function Crt(t,e){Rr.call(this,t,e)}function Xwt(t,e){Rr.call(this,t,e)}function UM(t,e){Rr.call(this,t,e)}function F4(t,e){Rr.call(this,t,e)}function Srt(t,e){Rr.call(this,t,e)}function $$(t,e){Rr.call(this,t,e)}function GM(t,e){Rr.call(this,t,e)}function Ey(t,e){Rr.call(this,t,e)}function z$(t,e){Rr.call(this,t,e)}function Qwt(t,e){Rr.call(this,t,e)}function _rt(t,e){Rr.call(this,t,e)}function Art(t,e){Rr.call(this,t,e)}function Lrt(t,e){Rr.call(this,t,e)}function Drt(t,e){Rr.call(this,t,e)}function Mrt(t,e){Rr.call(this,t,e)}function Irt(t,e){Rr.call(this,t,e)}function Ort(t,e){Rr.call(this,t,e)}function xXt(t,e){this.b=t,this.a=e}function Jwt(t,e){Rr.call(this,t,e)}function kXt(t,e){this.a=t,this.b=e}function EXt(t,e){this.a=t,this.b=e}function TXt(t,e){this.a=t,this.b=e}function Zwt(t,e){Rr.call(this,t,e)}function tmt(t,e){Rr.call(this,t,e)}function CXt(t,e){this.a=t,this.b=e}function iin(t,e){return LE(),e!=t}function KM(t){return ur(t.a),t.b}function Nrt(t){return hxn(t,t.c),t}function SXt(){return PWt(),new aye}function _Xt(){vz(),this.a=new wvt}function AXt(){rV(),this.a=new Os}function LXt(){gst(),this.b=new Os}function DXt(t,e){this.b=t,this.d=e}function MXt(t,e){this.a=t,this.b=e}function IXt(t,e){this.a=t,this.b=e}function OXt(t,e){this.a=t,this.b=e}function NXt(t,e){this.b=t,this.a=e}function emt(t,e){Rr.call(this,t,e)}function nmt(t,e){Rr.call(this,t,e)}function q$(t,e){Rr.call(this,t,e)}function mm(t,e){Rr.call(this,t,e)}function Prt(t,e){Rr.call(this,t,e)}function H$(t,e){Rr.call(this,t,e)}function rmt(t,e){Rr.call(this,t,e)}function imt(t,e){Rr.call(this,t,e)}function WM(t,e){Rr.call(this,t,e)}function smt(t,e){Rr.call(this,t,e)}function Frt(t,e){Rr.call(this,t,e)}function V$(t,e){Rr.call(this,t,e)}function Brt(t,e){Rr.call(this,t,e)}function Rrt(t,e){Rr.call(this,t,e)}function jrt(t,e){Rr.call(this,t,e)}function $rt(t,e){Rr.call(this,t,e)}function amt(t,e){Rr.call(this,t,e)}function zrt(t,e){Rr.call(this,t,e)}function omt(t,e){Rr.call(this,t,e)}function YM(t,e){Rr.call(this,t,e)}function qrt(t,e){Rr.call(this,t,e)}function cmt(t,e){Rr.call(this,t,e)}function XM(t,e){Rr.call(this,t,e)}function umt(t,e){Rr.call(this,t,e)}function PXt(t,e){this.b=t,this.a=e}function FXt(t,e){this.b=t,this.a=e}function BXt(t,e){this.b=t,this.a=e}function RXt(t,e){this.b=t,this.a=e}function lmt(t,e){this.a=t,this.b=e}function jXt(t,e){this.a=t,this.b=e}function $Xt(t,e){this.a=t,this.b=e}function ae(t,e){this.a=t,this.b=e}function hS(t,e){Rr.call(this,t,e)}function QM(t,e){Rr.call(this,t,e)}function N6(t,e){Rr.call(this,t,e)}function fS(t,e){Rr.call(this,t,e)}function JM(t,e){Rr.call(this,t,e)}function Hrt(t,e){Rr.call(this,t,e)}function U$(t,e){Rr.call(this,t,e)}function dS(t,e){Rr.call(this,t,e)}function Vrt(t,e){Rr.call(this,t,e)}function G$(t,e){Rr.call(this,t,e)}function B4(t,e){Rr.call(this,t,e)}function ZM(t,e){Rr.call(this,t,e)}function gS(t,e){Rr.call(this,t,e)}function pS(t,e){Rr.call(this,t,e)}function tI(t,e){Rr.call(this,t,e)}function K$(t,e){Rr.call(this,t,e)}function R4(t,e){Rr.call(this,t,e)}function Urt(t,e){Rr.call(this,t,e)}function zXt(t,e){Rr.call(this,t,e)}function W$(t,e){Rr.call(this,t,e)}function qXt(t,e){this.a=t,this.b=e}function HXt(t,e){this.a=t,this.b=e}function VXt(t,e){this.a=t,this.b=e}function UXt(t,e){this.a=t,this.b=e}function GXt(t,e){this.a=t,this.b=e}function KXt(t,e){this.a=t,this.b=e}function Ws(t,e){this.a=t,this.b=e}function WXt(t,e){this.a=t,this.b=e}function YXt(t,e){this.a=t,this.b=e}function XXt(t,e){this.a=t,this.b=e}function QXt(t,e){this.a=t,this.b=e}function JXt(t,e){this.a=t,this.b=e}function ZXt(t,e){this.a=t,this.b=e}function tQt(t,e){this.b=t,this.a=e}function eQt(t,e){this.b=t,this.a=e}function nQt(t,e){this.b=t,this.a=e}function rQt(t,e){this.b=t,this.a=e}function iQt(t,e){this.a=t,this.b=e}function sQt(t,e){this.a=t,this.b=e}function Y$(t,e){Rr.call(this,t,e)}function aQt(t,e){this.a=t,this.b=e}function oQt(t,e){this.a=t,this.b=e}function P6(t,e){Rr.call(this,t,e)}function cQt(t,e){this.f=t,this.c=e}function hmt(t,e){return Zu(t.g,e)}function sin(t,e){return Zu(e.b,t)}function uQt(t,e){return Yat(t.a,e)}function ain(t,e){return-t.b.af(e)}function oin(t,e){t&&hi(VP,t,e)}function fmt(t,e){t.i=null,Gq(t,e)}function cin(t,e,n){tfe(e,zot(t,n))}function uin(t,e,n){tfe(e,zot(t,n))}function lin(t,e){R6n(t.a,u(e,58))}function lQt(t,e){N0n(t.a,u(e,12))}function X$(t,e){this.a=t,this.b=e}function hQt(t,e){this.a=t,this.b=e}function fQt(t,e){this.a=t,this.b=e}function dQt(t,e){this.a=t,this.b=e}function gQt(t,e){this.a=t,this.b=e}function pQt(t,e){this.d=t,this.b=e}function bQt(t,e){this.e=t,this.a=e}function eI(t,e){this.b=t,this.c=e}function dmt(t,e){this.i=t,this.g=e}function gmt(t,e){this.d=t,this.e=e}function hin(t,e){Y0n(new Zn(t),e)}function Q$(t){return wO(t.c,t.b)}function Ko(t){return t?t.md():null}function $t(t){return t??null}function ba(t){return typeof t===Nct}function Ty(t){return typeof t===kk}function Cy(t){return typeof t===u8t}function vm(t,e){return $c(t,e)==0}function J$(t,e){return $c(t,e)>=0}function bS(t,e){return $c(t,e)!=0}function Z$(t,e){return fpn(t.Kc(),e)}function Cb(t,e){return t.Rd().Xb(e)}function wQt(t){return Ll(t),t.d.gc()}function tz(t){return AS(t==null),t}function wS(t,e){return t.a+=""+e,t}function Mo(t,e){return t.a+=""+e,t}function mS(t,e){return t.a+=""+e,t}function tu(t,e){return t.a+=""+e,t}function ni(t,e){return t.a+=""+e,t}function pmt(t,e){return t.a+=""+e,t}function fin(t){return""+(Wn(t),t)}function mQt(t){dl(this),t_(this,t)}function vQt(){i3t(),lyt.call(this)}function yQt(t,e){pyt.call(this,t,e)}function xQt(t,e){pyt.call(this,t,e)}function ez(t,e){pyt.call(this,t,e)}function ro(t,e){hs(t,e,t.c.b,t.c)}function j4(t,e){hs(t,e,t.a,t.a.a)}function bmt(t){return vn(t,0),null}function kQt(){this.b=0,this.a=!1}function EQt(){this.b=0,this.a=!1}function TQt(){this.b=new M6(zy(12))}function CQt(){CQt=V,t3e=$r(not())}function SQt(){SQt=V,k4e=$r(Bde())}function _Qt(){_Qt=V,Uke=$r(pce())}function wmt(){wmt=V,R2t(),s9t=new _r}function k1(t){return t.a=0,t.b=0,t}function AQt(t,e){return t.a=e.g+1,t}function Grt(t,e){Dy.call(this,t,e)}function un(t,e){rs.call(this,t,e)}function $4(t,e){dmt.call(this,t,e)}function LQt(t,e){sI.call(this,t,e)}function Krt(t,e){o7.call(this,t,e)}function ui(t,e){A$(),hi(KK,t,e)}function DQt(t,e){t.q.setTime(tw(e))}function din(t){b.clearTimeout(t)}function gin(t){return Hr(t),new vS(t)}function MQt(t,e){return $t(t)===$t(e)}function IQt(t,e){return t.a.a.a.cc(e)}function Wrt(t,e){return Lh(t.a,0,e)}function mmt(t){return wln(u(t,74))}function F6(t){return Ys((Wn(t),t))}function pin(t){return Ys((Wn(t),t))}function OQt(t){return Eu(t.l,t.m,t.h)}function vmt(t,e){return jc(t.a,e.a)}function bin(t,e){return vee(t.a,e.a)}function win(t,e){return Bi(t.a,e.a)}function $d(t,e){return t.indexOf(e)}function min(t,e){return t.j[e.p]==2}function ym(t,e){return t==e?0:t?1:-1}function nz(t){return t<10?"0"+t:""+t}function ec(t){return typeof t===u8t}function vin(t){return t==bv||t==y3}function yin(t){return t==bv||t==v3}function NQt(t,e){return jc(t.g,e.g)}function ymt(t){return Xo(t.b.b,t,0)}function PQt(){Lz.call(this,0,0,0,0)}function zd(){hr.call(this,new kp)}function xmt(t,e){GE(t,0,t.length,e)}function xin(t,e){return ge(t.a,e),e}function kin(t,e){return Bf(),e.a+=t}function Ein(t,e){return Bf(),e.a+=t}function Tin(t,e){return Bf(),e.c+=t}function Cin(t,e){return ge(t.c,e),t}function kmt(t,e){return ch(t.a,e),t}function FQt(t){this.a=SXt(),this.b=t}function BQt(t){this.a=SXt(),this.b=t}function io(t){this.a=t.a,this.b=t.b}function vS(t){this.a=t,DC.call(this)}function RQt(t){this.a=t,DC.call(this)}function B6(){Ah.call(this,0,0,0,0)}function rz(t){return ch(new Fs,t)}function jQt(t){return Kz(u(t,123))}function Hl(t){return t.vh()&&t.wh()}function z4(t){return t!=Td&&t!=d2}function bg(t){return t==Uo||t==tc}function q4(t){return t==Gh||t==kd}function $Qt(t){return t==J5||t==Q5}function Sin(t,e){return jc(t.g,e.g)}function zQt(t,e){return new o7(e,t)}function _in(t,e){return new o7(e,t)}function Emt(t){return Wcn(t.b.Kc(),t.a)}function Yrt(t,e){p7(t,e),t7(t,t.D)}function Xrt(t,e,n){Rq(t,e),Bq(t,n)}function H4(t,e,n){qm(t,e),zm(t,n)}function Ch(t,e,n){Su(t,e),_u(t,n)}function nI(t,e,n){XE(t,e),JE(t,n)}function rI(t,e,n){QE(t,e),ZE(t,n)}function qQt(t,e,n){svt.call(this,t,e,n)}function Tmt(t){cQt.call(this,t,!0)}function HQt(){M$.call(this,"Tail",3)}function VQt(){M$.call(this,"Head",1)}function Sb(t){Xd(),cpn.call(this,t)}function xm(t){Lz.call(this,t,t,t,t)}function Qrt(t){t.c=Vt(aa,Ln,1,0,5,1)}function Cmt(t){return t.b&&bct(t),t.a}function Smt(t){return t.b&&bct(t),t.c}function Ain(t,e){wd||(t.b=e)}function Lin(t,e){return t[t.length]=e}function Din(t,e){return t[t.length]=e}function Min(t,e){return qy(e,ed(t))}function Iin(t,e){return qy(e,ed(t))}function Oin(t,e){return Hq(Kit(t.d),e)}function Nin(t,e){return Hq(Kit(t.g),e)}function Pin(t,e){return Hq(Kit(t.j),e)}function _a(t,e){rs.call(this,t.b,e)}function Fin(t,e){Or(Wc(t.a),hre(e))}function Bin(t,e){Or(Al(t.a),fre(e))}function Rin(t,e,n){Ch(n,n.i+t,n.j+e)}function UQt(t,e,n){ls(t.c[e.g],e.g,n)}function jin(t,e,n){u(t.c,71).Gi(e,n)}function Jrt(t,e,n){return ls(t,e,n),n}function GQt(t){Cu(t.Sf(),new Int(t))}function V4(t){return t!=null?$i(t):0}function $in(t){return t==null?0:$i(t)}function yS(t){yi(),um.call(this,t)}function KQt(t){this.a=t,$vt.call(this,t)}function Z1(){Z1=V,b.Math.log(2)}function Sh(){Sh=V,Q0=(XYt(),sTe)}function WQt(){WQt=V,I1t=new d_(Udt)}function Ur(){Ur=V,new YQt,new fe}function YQt(){new _r,new _r,new _r}function zin(){throw at(new hp(Mve))}function qin(){throw at(new hp(Mve))}function Hin(){throw at(new hp(Ive))}function Vin(){throw at(new hp(Ive))}function Zrt(t){this.a=t,v$.call(this,t)}function tit(t){this.a=t,v$.call(this,t)}function XQt(t,e){Dm(),this.a=t,this.b=e}function Uin(t,e){Hr(e),X4(t).Jc(new ot)}function Ds(t,e){Mit(t.c,t.c.length,e)}function lc(t){return t.ae?1:0}function Amt(t,e){return $c(t,e)>0?t:e}function Eu(t,e,n){return{l:t,m:e,h:n}}function Gin(t,e){t.a!=null&&lQt(e,t.a)}function Kin(t){Xa(t,null),xa(t,null)}function Win(t,e,n){return hi(t.g,n,e)}function U4(t,e,n){return Q5t(e,n,t.c)}function Yin(t,e,n){return hi(t.k,n,e)}function Xin(t,e,n){return P9n(t,e,n),n}function Qin(t,e){return rh(),e.n.b+=t}function JQt(t){Qyt.call(this),this.b=t}function Lmt(t){bvt.call(this),this.a=t}function ZQt(){M$.call(this,"Range",2)}function iz(t){this.b=t,this.a=new fe}function tJt(t){this.b=new pu,this.a=t}function eJt(t){t.a=new Ae,t.c=new Ae}function nJt(t){t.a=new _r,t.d=new _r}function rJt(t){pst(t,null),bst(t,null)}function iJt(t,e){return B9n(t.a,e,null)}function Jin(t,e){return hi(t.a,e.a,e)}function Oa(t){return new ae(t.a,t.b)}function Dmt(t){return new ae(t.c,t.d)}function Zin(t){return new ae(t.c,t.d)}function xS(t,e){return YTn(t.c,t.b,e)}function Lt(t,e){return t!=null&&aot(t,e)}function eit(t,e){return qpn(t.Kc(),e)!=-1}function sz(t){return t.Ob()?t.Pb():null}function tsn(t){this.b=(mn(),new Kn(t))}function Mmt(t){this.a=t,_r.call(this)}function sJt(){sI.call(this,null,null)}function aJt(){fz.call(this,null,null)}function oJt(){Rr.call(this,"INSTANCE",0)}function cJt(){Dxt(),this.a=new L_(SCt)}function uJt(t){return af(t,0,t.length)}function esn(t,e){return new _Jt(t.Kc(),e)}function Imt(t,e){return t.a.Bc(e)!=null}function lJt(t,e){Ir(t),t.Gc(u(e,15))}function nsn(t,e,n){t.c.bd(e,u(n,136))}function rsn(t,e,n){t.c.Ui(e,u(n,136))}function hJt(t,e){t.c&&(Zvt(e),Bne(e))}function isn(t,e){t.q.setHours(e),N_(t,e)}function ssn(t,e){Tm(e,t.a.a.a,t.a.a.b)}function asn(t,e,n,r){ls(t.a[e.g],n.g,r)}function nit(t,e,n){return t.a[e.g][n.g]}function osn(t,e){return t.e[e.c.p][e.p]}function csn(t,e){return t.c[e.c.p][e.p]}function td(t,e){return t.a[e.c.p][e.p]}function usn(t,e){return t.j[e.p]=y6n(e)}function rit(t,e){return t.a.Bc(e)!=null}function lsn(t,e){return Rt(Ht(e.a))<=t}function hsn(t,e){return Rt(Ht(e.a))>=t}function fsn(t,e){return F3t(t.f,e.Pg())}function R6(t,e){return t.a*e.a+t.b*e.b}function dsn(t,e){return t.a<_vt(e)?-1:1}function gsn(t,e){return F3t(t.b,e.Pg())}function psn(t,e,n){return n?e!=0:e!=t-1}function fJt(t,e,n){t.a=e^1502,t.b=n^dut}function bsn(t,e,n){return t.a=e,t.b=n,t}function qd(t,e){return t.a*=e,t.b*=e,t}function ge(t,e){return In(t.c,e),!0}function kS(t,e,n){return ls(t.g,e,n),n}function Ps(t,e,n){mI.call(this,t,e,n)}function az(t,e,n){Ps.call(this,t,e,n)}function Omt(t,e,n){kz.call(this,t,e,n)}function dJt(t,e,n){kz.call(this,t,e,n)}function gJt(t,e,n){Omt.call(this,t,e,n)}function Ju(t,e,n){Ps.call(this,t,e,n)}function pJt(t,e,n){az.call(this,t,e,n)}function Nmt(t,e,n){mI.call(this,t,e,n)}function G4(t,e,n){mI.call(this,t,e,n)}function bJt(t,e,n){Nmt.call(this,t,e,n)}function oz(t){t.j=Vt(m9t,ue,319,0,0,1)}function K4(){this.a=Vt(aa,Ln,1,8,5,1)}function Pmt(){this.Bb|=256,this.Bb|=512}function Zn(t){this.i=t,this.f=this.i.j}function _b(t){this.c=t,this.a=this.c.a}function W4(t,e){this.a=t,v$.call(this,e)}function Fmt(t,e){return I2n(t,new yb,e).a}function Bmt(t){if(!t)throw at(new DM)}function Rmt(t){if(!t)throw at(new Xu)}function jmt(){jmt=V,jmt(),uye=new sn}function wJt(){wJt=V,hrt(),NTe=new Bj}function EE(){EE=V,A9t=new Ynt(null)}function wsn(t){SI(t,sme),ZH(t,PCn(t))}function mJt(t){t.a=u(jn(t.b.a,4),129)}function vJt(t){t.a=u(jn(t.b.a,4),129)}function yJt(t){t.b.Qb(),--t.d.f.d,Nz(t.d)}function $mt(t){this.a=t,dg.call(this,t.d)}function xJt(t,e){this.a=t,rrt.call(this,e)}function kJt(t,e){this.a=t,rrt.call(this,e)}function EJt(t,e){this.a=t,rrt.call(this,e)}function zmt(t,e){this.a=e,rrt.call(this,t)}function TJt(t,e){this.a=e,Sst.call(this,t)}function CJt(t,e){this.a=t,Sst.call(this,e)}function SJt(t,e){this.a=e,y$.call(this,t)}function _Jt(t,e){this.a=e,y$.call(this,t)}function sr(t,e){return Hr(e),new SJt(t,e)}function AJt(t,e){return new Zfe(t.a,t.b,e)}function qmt(t,e,n){return t.indexOf(e,n)}function cz(t,e){return t.lastIndexOf(e)}function ES(t){return t==null?Vu:rc(t)}function msn(t){return t==null?null:t.name}function vsn(t){return t.l+t.m*Sk+t.h*bw}function ysn(t){return IM(t.a)?dre(t):null}function ef(t){Sr.call(this,(Wn(t),t))}function eh(t){Sr.call(this,(Wn(t),t))}function LJt(t){sE.call(this,u(Hr(t),34))}function DJt(t){sE.call(this,u(Hr(t),34))}function iit(t){hr.call(this,new U3t(t))}function uz(t){Ta.call(this,t),this.a=t}function Hmt(t){eo.call(this,t),this.a=t}function Vmt(t){dE.call(this,t),this.a=t}function MJt(){oz(this),Xz(this),this.je()}function IJt(t){this.a=t,Es.call(this,t)}function Vl(t){return ur(t.a!=null),t.a}function OJt(t,e){return ge(e.a,t.a),t.a}function NJt(t,e){return ge(e.b,t.a),t.a}function km(t,e){return ge(e.a,t.a),t.a}function iI(t,e,n){return dat(t,e,e,n),t}function lz(t,e){return++t.b,ge(t.a,e)}function Umt(t,e){return++t.b,zu(t.a,e)}function xsn(t,e){return Bi(t.c.d,e.c.d)}function ksn(t,e){return Bi(t.c.c,e.c.c)}function Esn(t,e){return Bi(t.n.a,e.n.a)}function ju(t,e){return u(Ai(t.b,e),15)}function Tsn(t,e){return t.n.b=(Wn(e),e)}function Csn(t,e){return t.n.b=(Wn(e),e)}function Zu(t,e){return!!e&&t.b[e.g]==e}function TS(t){return lc(t.a)||lc(t.b)}function Em(t){return t.$H||(t.$H=++i_n)}function Ssn(t){return t.a!=null?t.a:null}function _sn(t,e){return Bi(t.e.b,e.e.b)}function Asn(t,e){return Bi(t.e.a,e.e.a)}function Lsn(t,e,n){return bie(t,e,n,t.b)}function Gmt(t,e,n){return bie(t,e,n,t.c)}function Dsn(t){return Bf(),!!t&&!t.dc()}function PJt(){ZC(),this.b=new WVt(this)}function hz(){hz=V,$U=new rs(Xbe,0)}function Pn(){Pn=V,t2=!1,bT=!0}function wp(t){var e;e=t.a,t.a=t.b,t.b=e}function sI(t,e){rS(),this.a=t,this.b=e}function fz(t,e){bp(),this.b=t,this.c=e}function sit(t,e){Nit(),this.f=e,this.d=t}function Kmt(t,e){P3t(e,t),this.d=t,this.c=e}function Wmt(t,e){ixt.call(this,t,e,null)}function FJt(t,e,n,r){byt.call(this,t,e,n,r)}function j6(t){this.d=t,Zn.call(this,t)}function $6(t){this.c=t,Zn.call(this,t)}function aI(t){this.c=t,j6.call(this,t)}function Msn(t){return new By(3,t)}function C0(t){return oh(t,c3),new wu(t)}function BJt(t){return $E(),parseInt(t)||-1}function Isn(t){return l$(),jr((Vne(),zve),t)}function TE(t,e,n){return qmt(t,Hu(e),n)}function ait(t,e){return new FZt(t,t.gc(),e)}function Osn(t,e){return Pit(t.c).Md().Xb(e)}function CE(t,e,n){var r;r=t.fd(e),r.Rb(n)}function Ymt(t,e,n){u(UI(t,e),21).Fc(n)}function Nsn(t,e,n){jat(t.a,n),IH(t.a,e)}function oI(t){Lt(t,158)&&u(t,158).pi()}function RJt(t){zvt.call(this,t,null,null)}function oit(t){yy(),this.b=t,this.a=!0}function jJt(t){k$(),this.b=t,this.a=!0}function SE(t){return ur(t.b!=0),t.a.a.c}function Pf(t){return ur(t.b!=0),t.c.b.c}function Psn(t,e){return dat(t,e,e+1,""),t}function qi(t,e){return!!t.q&&Tu(t.q,e)}function $Jt(t){return t.b=u(Uyt(t.a),44)}function Fsn(t){return t.f!=null?t.f:""+t.g}function cit(t){return t.f!=null?t.f:""+t.g}function Bsn(t,e){return t>0?e/(t*t):e*100}function Rsn(t,e){return t>0?e*e/t:e*e*100}function Sy(t,e){return u(od(t.a,e),34)}function jsn(t,e){return Vb(),dn(t,e.e,e)}function $sn(t,e,n){return C$(),n.Mg(t,e)}function zsn(t){return Sg(),t.e.a+t.f.a/2}function qsn(t,e,n){return Sg(),n.e.a-t*e}function Hsn(t){return Sg(),t.e.b+t.f.b/2}function Vsn(t,e,n){return Sg(),n.e.b-t*e}function zJt(t){t.d=new RJt(t),t.e=new _r}function qJt(){this.a=new Fm,this.b=new Fm}function HJt(t){this.c=t,this.a=1,this.b=1}function VJt(t){Ict(),oKt(this),this.Ff(t)}function Usn(t,e,n){Tq(),t.pf(e)&&n.Cd(t)}function Gsn(t,e,n){return ge(e,ele(t,n))}function Tm(t,e,n){return t.a+=e,t.b+=n,t}function Ksn(t,e,n){return t.a*=e,t.b*=n,t}function Xmt(t,e){return t.a=e.a,t.b=e.b,t}function dz(t){return t.a=-t.a,t.b=-t.b,t}function CS(t,e,n){return t.a-=e,t.b-=n,t}function UJt(t){Ki.call(this),XS(this,t)}function GJt(){Rr.call(this,"GROW_TREE",0)}function KJt(){Rr.call(this,"POLYOMINO",0)}function Ul(t,e,n){nl.call(this,t,e,n,2)}function Wsn(t,e,n){h_(Wc(t.a),e,hre(n))}function WJt(t,e){rS(),sI.call(this,t,e)}function Qmt(t,e){bp(),fz.call(this,t,e)}function YJt(t,e){bp(),Qmt.call(this,t,e)}function XJt(t,e){bp(),fz.call(this,t,e)}function Ysn(t,e){return t.c.Fc(u(e,136))}function Xsn(t,e,n){h_(Al(t.a),e,fre(n))}function QJt(t){this.c=t,Su(t,0),_u(t,0)}function uit(t,e){Sh(),Iz.call(this,t,e)}function JJt(t,e){Sh(),uit.call(this,t,e)}function Jmt(t,e){Sh(),uit.call(this,t,e)}function Zmt(t,e){Sh(),Iz.call(this,t,e)}function ZJt(t,e){Sh(),Jmt.call(this,t,e)}function tZt(t,e){Sh(),Zmt.call(this,t,e)}function eZt(t,e){Sh(),Iz.call(this,t,e)}function Qsn(t,e,n){return e.zl(t.e,t.c,n)}function Jsn(t,e,n){return e.Al(t.e,t.c,n)}function tvt(t,e,n){return pV(VI(t,e),n)}function lit(t,e){return jb(t.e,u(e,54))}function Zsn(t){return t==null?null:TCn(t)}function tan(t){return t==null?null:w4n(t)}function ean(t){return t==null?null:rc(t)}function nan(t){return t==null?null:rc(t)}function Me(t){return AS(t==null||Ty(t)),t}function Ht(t){return AS(t==null||Cy(t)),t}function Gr(t){return AS(t==null||ba(t)),t}function wg(t){t.o==null&&Yxn(t)}function evt(t){if(!t)throw at(new DM)}function ran(t){if(!t)throw at(new $nt)}function ur(t){if(!t)throw at(new cc)}function _y(t){if(!t)throw at(new Xu)}function nZt(t){if(!t)throw at(new Th)}function _E(){_E=V,GP=new jKt,new $Kt}function Y4(){Y4=V,ex=new Oi("root")}function nvt(){Roe.call(this),this.Bb|=po}function ian(t,e){this.d=t,kr(this),this.b=e}function rvt(t,e){Bst.call(this,t),this.a=e}function ivt(t,e){Bst.call(this,t),this.a=e}function svt(t,e,n){yq.call(this,t,e,n,null)}function rZt(t,e,n){yq.call(this,t,e,n,null)}function cI(t,e){this.c=t,vE.call(this,t,e)}function SS(t,e){this.a=t,cI.call(this,t,e)}function avt(t){this.q=new b.Date(tw(t))}function iZt(t){return t>8?0:t+1}function sZt(t,e){wd||ge(t.a,e)}function san(t,e){return $M(),a7(e.d.i,t)}function aan(t,e){return ok(),new F0e(e,t)}function oan(t,e,n){return t.Ne(e,n)<=0?n:e}function can(t,e,n){return t.Ne(e,n)<=0?e:n}function uan(t,e){return u(od(t.b,e),143)}function lan(t,e){return u(od(t.c,e),233)}function hit(t){return u(Oe(t.a,t.b),293)}function aZt(t){return new ae(t.c,t.d+t.a)}function oZt(t){return Wn(t),t?1231:1237}function cZt(t){return rh(),$Qt(u(t,203))}function Ay(){Ay=V,tCt=en((Yl(),qw))}function han(t,e){e.a?pxn(t,e):rit(t.a,e.b)}function uI(t,e,n){++t.j,t.tj(),Fst(t,e,n)}function uZt(t,e,n){++t.j,t.qj(e,t.Zi(e,n))}function lZt(t,e,n){var r;r=t.fd(e),r.Rb(n)}function ovt(t,e,n){return n=hh(t,e,6,n),n}function cvt(t,e,n){return n=hh(t,e,3,n),n}function uvt(t,e,n){return n=hh(t,e,9,n),n}function Hd(t,e){return SI(e,I8t),t.f=e,t}function lvt(t,e){return(e&xi)%t.d.length}function hZt(t,e,n){return qkt(t.c,t.b,e,n)}function fZt(t,e){this.c=t,$m.call(this,e)}function dZt(t,e){this.a=t,ZGt.call(this,e)}function lI(t,e){this.a=t,ZGt.call(this,e)}function rs(t,e){Oi.call(this,t),this.a=e}function hvt(t,e){N2t.call(this,t),this.a=e}function fit(t,e){N2t.call(this,t),this.a=e}function fan(t){U5t.call(this,0,0),this.f=t}function gZt(t,e,n){return t.a+=af(e,0,n),t}function hI(t){return!t.a&&(t.a=new dt),t.a}function fvt(t,e){var n;return n=t.e,t.e=e,n}function dvt(t,e){var n;return n=e,!!t.Fe(n)}function dan(t,e){return Pn(),t==e?0:t?1:-1}function Ly(t,e){t.a.bd(t.b,e),++t.b,t.c=-1}function fI(t){t.b?fI(t.b):t.f.c.zc(t.e,t.d)}function pZt(t){dl(t.e),t.d.b=t.d,t.d.a=t.d}function gan(t,e,n){U2(),Cnt(t,e.Ve(t.a,n))}function gvt(t,e,n){return W6(t,u(e,22),n)}function Ff(t,e){return g$(new Array(e),t)}function pan(t){return qr(Ab(t,32))^qr(t)}function dit(t){return String.fromCharCode(t)}function ban(t){return t==null?null:t.message}function wan(t,e,n){return t.apply(e,n)}function man(t,e){var n;n=t[fut],n.call(t,e)}function van(t,e){var n;n=t[fut],n.call(t,e)}function yan(t,e){return $M(),!a7(e.d.i,t)}function pvt(t,e,n,r){Lz.call(this,t,e,n,r)}function bZt(){gz.call(this),this.a=new Sa}function bvt(){this.n=new Sa,this.o=new Sa}function wZt(){this.b=new Sa,this.c=new fe}function mZt(){this.a=new fe,this.b=new fe}function vZt(){this.a=new O2,this.b=new wKt}function wvt(){this.b=new kp,this.a=new kp}function yZt(){this.b=new Os,this.a=new Os}function xZt(){this.b=new _r,this.a=new _r}function kZt(){this.b=new WWt,this.a=new uC}function EZt(){this.a=new Xet,this.b=new AJ}function TZt(){this.a=new fe,this.d=new fe}function gz(){this.n=new C6,this.i=new B6}function CZt(t){this.a=(oh(t,c3),new wu(t))}function SZt(t){this.a=(oh(t,c3),new wu(t))}function xan(t){return t<100?null:new xb(t)}function kan(t,e){return t.n.a=(Wn(e),e+10)}function Ean(t,e){return t.n.a=(Wn(e),e+10)}function Tan(t,e){return e==t||L7(JH(e),t)}function _Zt(t,e){return hi(t.a,e,"")==null}function Can(t,e){var n;return n=e.qi(t.a),n}function ki(t,e){return t.a+=e.a,t.b+=e.b,t}function ia(t,e){return t.a-=e.a,t.b-=e.b,t}function San(t){return wy(t.j.c,0),t.a=-1,t}function mvt(t,e,n){return n=hh(t,e,11,n),n}function _an(t,e,n){n!=null&&Vq(e,wot(t,n))}function Aan(t,e,n){n!=null&&Uq(e,wot(t,n))}function z6(t,e,n,r){Jt.call(this,t,e,n,r)}function vvt(t,e,n,r){Jt.call(this,t,e,n,r)}function AZt(t,e,n,r){vvt.call(this,t,e,n,r)}function LZt(t,e,n,r){jz.call(this,t,e,n,r)}function git(t,e,n,r){jz.call(this,t,e,n,r)}function yvt(t,e,n,r){jz.call(this,t,e,n,r)}function DZt(t,e,n,r){git.call(this,t,e,n,r)}function xvt(t,e,n,r){git.call(this,t,e,n,r)}function kn(t,e,n,r){yvt.call(this,t,e,n,r)}function MZt(t,e,n,r){xvt.call(this,t,e,n,r)}function IZt(t,e,n,r){vyt.call(this,t,e,n,r)}function Dy(t,e){Bo.call(this,uA+t+Ew+e)}function kvt(t,e){return t.jk().wi().ri(t,e)}function Evt(t,e){return t.jk().wi().ti(t,e)}function OZt(t,e){return Wn(t),$t(t)===$t(e)}function hn(t,e){return Wn(t),$t(t)===$t(e)}function Lan(t,e){return t.b.Bd(new nXt(t,e))}function Dan(t,e){return t.b.Bd(new rXt(t,e))}function NZt(t,e){return t.b.Bd(new iXt(t,e))}function Man(t,e){return t.e=u(t.d.Kb(e),159)}function Tvt(t,e,n){return t.lastIndexOf(e,n)}function Ian(t,e,n){return Bi(t[e.a],t[n.a])}function Oan(t,e){return Zt(e,(De(),iP),t)}function Nan(t,e){return jc(e.a.d.p,t.a.d.p)}function Pan(t,e){return jc(t.a.d.p,e.a.d.p)}function Fan(t,e){return Bi(t.c-t.s,e.c-e.s)}function Ban(t,e){return Bi(t.b.e.a,e.b.e.a)}function Ran(t,e){return Bi(t.c.e.a,e.c.e.a)}function PZt(t){return t.c?Xo(t.c.a,t,0):-1}function q6(t){return t==zw||t==Y0||t==hu}function Cvt(t,e){this.c=t,zit.call(this,t,e)}function FZt(t,e,n){this.a=t,Kmt.call(this,e,n)}function BZt(t){this.c=t,ez.call(this,rN,0)}function RZt(t,e,n){this.c=e,this.b=n,this.a=t}function dI(t){LE(),this.d=t,this.a=new K4}function jZt(t){Vd(),this.a=(mn(),new dE(t))}function jan(t,e){bg(t.f)?zxn(t,e):m3n(t,e)}function $Zt(t,e){Jcn.call(this,t,t.length,e)}function $an(t,e){wd||e&&(t.d=e)}function zZt(t,e){return Lt(e,15)&&b0e(t.c,e)}function zan(t,e,n){return u(t.c,71).Wk(e,n)}function pz(t,e,n){return u(t.c,71).Xk(e,n)}function qan(t,e,n){return Qsn(t,u(e,343),n)}function Svt(t,e,n){return Jsn(t,u(e,343),n)}function Han(t,e,n){return cfe(t,u(e,343),n)}function qZt(t,e,n){return M3n(t,u(e,343),n)}function _S(t,e){return e==null?null:Gy(t.b,e)}function _vt(t){return Cy(t)?(Wn(t),t):t.ue()}function bz(t){return!isNaN(t)&&!isFinite(t)}function pit(t){eJt(this),nh(this),Ma(this,t)}function fl(t){Qrt(this),Hvt(this.c,0,t.Pc())}function _h(t,e,n){this.a=t,this.b=e,this.c=n}function HZt(t,e,n){this.a=t,this.b=e,this.c=n}function VZt(t,e,n){this.d=t,this.b=n,this.a=e}function UZt(t){this.a=t,pg(),Pc(Date.now())}function GZt(t){Kl(t.a),q3t(t.c,t.b),t.b=null}function bit(){bit=V,_9t=new ye,oye=new tn}function KZt(){KZt=V,lTe=Vt(aa,Ln,1,0,5,1)}function WZt(){WZt=V,ATe=Vt(aa,Ln,1,0,5,1)}function Avt(){Avt=V,LTe=Vt(aa,Ln,1,0,5,1)}function Vd(){Vd=V,new B2t((mn(),mn(),co))}function Van(t){return KE(),jr((tae(),lye),t)}function Uan(t){return bl(),jr((Vse(),bye),t)}function Gan(t){return TH(),jr((Lie(),kye),t)}function Kan(t){return Mq(),jr((Die(),Eye),t)}function Wan(t){return aV(),jr((Lce(),Tye),t)}function Yan(t){return A1(),jr((qse(),_ye),t)}function Xan(t){return pl(),jr((zse(),Lye),t)}function Qan(t){return qu(),jr((Hse(),Mye),t)}function Jan(t){return yV(),jr((CQt(),t3e),t)}function Zan(t){return Gm(),jr((nae(),n3e),t)}function ton(t){return dk(),jr((iae(),i3e),t)}function eon(t){return m_(),jr((rae(),o3e),t)}function non(t){return E$(),jr((eie(),c3e),t)}function ron(t){return Iq(),jr((Mie(),C3e),t)}function ion(t){return WS(),jr((Use(),Q3e),t)}function son(t){return Ua(),jr((jae(),e4e),t)}function aon(t){return u7(),jr((aae(),a4e),t)}function oon(t){return lw(),jr((sae(),f4e),t)}function Lvt(t,e){if(!t)throw at(new zn(e))}function AE(t){if(!t)throw at(new Ro(l8t))}function wit(t,e){if(t!=e)throw at(new Th)}function YZt(t,e,n){this.a=t,this.b=e,this.c=n}function Dvt(t,e,n){this.a=t,this.b=e,this.c=n}function XZt(t,e,n){this.a=t,this.b=e,this.c=n}function wz(t,e,n){this.b=t,this.a=e,this.c=n}function Mvt(t,e,n){this.b=t,this.c=e,this.a=n}function Ivt(t,e,n){this.a=t,this.b=e,this.c=n}function mz(t,e,n){this.e=e,this.b=t,this.d=n}function QZt(t,e,n){this.b=t,this.a=e,this.c=n}function con(t,e,n){return U2(),t.a.Yd(e,n),e}function mit(t){var e;return e=new ll,e.e=t,e}function Ovt(t){var e;return e=new kKt,e.b=t,e}function gI(){gI=V,XU=new pQ,QU=new BB}function vz(){vz=V,_4e=new SQ,S4e=new tC}function Bf(){Bf=V,I4e=new iJ,O4e=new sJ}function uon(t){return Vm(),jr((Ese(),H4e),t)}function lon(t){return Za(),jr((SQt(),k4e),t)}function hon(t){return rH(),jr((cae(),C4e),t)}function fon(t){return ud(),jr((oae(),F4e),t)}function don(t){return Qy(),jr(($ae(),R4e),t)}function gon(t){return iV(),jr((gce(),V4e),t)}function pon(t){return wk(),jr((hoe(),U4e),t)}function bon(t){return Eq(),jr((Pie(),G4e),t)}function won(t){return QS(),jr((yse(),K4e),t)}function mon(t){return $q(),jr((xse(),W4e),t)}function von(t){return Ip(),jr((zae(),Y4e),t)}function yon(t){return YI(),jr((Nie(),X4e),t)}function xon(t){return M7(),jr((goe(),n5e),t)}function kon(t){return Co(),jr((Uce(),r5e),t)}function Eon(t){return c7(),jr((Cse(),i5e),t)}function Ton(t){return Cg(),jr((Tse(),a5e),t)}function Con(t){return fq(),jr((zie(),o5e),t)}function Son(t){return AO(),jr((doe(),e5e),t)}function _on(t){return ow(),jr((kse(),J4e),t)}function Aon(t){return UH(),jr((foe(),Z4e),t)}function Lon(t){return qI(),jr((Oie(),t5e),t)}function Don(t){return Rh(),jr((Hae(),c5e),t)}function Mon(t){return Bp(),jr((Sce(),I6e),t)}function Ion(t){return o_(),jr((Sse(),O6e),t)}function Oon(t){return Yy(),jr((uae(),N6e),t)}function Non(t){return w_(),jr((qae(),P6e),t)}function Pon(t){return cf(),jr((Gce(),F6e),t)}function Fon(t){return Wd(),jr((lae(),B6e),t)}function Bon(t){return KI(),jr((Fie(),R6e),t)}function Ron(t){return To(),jr((Lse(),$6e),t)}function jon(t){return tH(),jr((_se(),z6e),t)}function $on(t){return i_(),jr((Ase(),q6e),t)}function zon(t){return b7(),jr((Mse(),H6e),t)}function qon(t){return jq(),jr((Dse(),V6e),t)}function Hon(t){return iH(),jr((Ise(),U6e),t)}function Von(t){return Hm(),jr(($se(),oke),t)}function Uon(t){return US(),jr((Bie(),fke),t)}function Gon(t){return Gd(),jr((Rie(),vke),t)}function Kon(t){return nd(),jr((jie(),xke),t)}function Won(t){return C1(),jr(($ie(),Fke),t)}function Yon(t){return Bm(),jr((qie(),Hke),t)}function Xon(t){return bk(),jr((wae(),Vke),t)}function Qon(t){return I_(),jr((_Qt(),Uke),t)}function Jon(t){return s_(),jr((Ose(),Gke),t)}function Zon(t){return a_(),jr((bae(),p8e),t)}function tcn(t){return uq(),jr((Vie(),b8e),t)}function ecn(t){return Kq(),jr((Uie(),x8e),t)}function ncn(t){return zH(),jr((Vae(),E8e),t)}function rcn(t){return uO(),jr((Nse(),C8e),t)}function icn(t){return Cq(),jr((Hie(),T8e),t)}function scn(t){return NH(),jr((pae(),U8e),t)}function acn(t){return Zq(),jr((Pse(),G8e),t)}function ocn(t){return vH(),jr((Fse(),K8e),t)}function ccn(t){return DH(),jr((Bse(),Y8e),t)}function ucn(t){return dH(),jr((Rse(),J8e),t)}function lcn(t){return wq(),jr((Gie(),vEe),t)}function hcn(t){return r7(),jr((Iie(),x4e),t)}function fcn(t){return Un(),jr((poe(),b4e),t)}function dcn(t){return Sq(),jr((jse(),yEe),t)}function gcn(t){return gat(),jr((Kie(),xEe),t)}function pcn(t){return A_(),jr((Uae(),EEe),t)}function bcn(t){return S$(),jr((uie(),CEe),t)}function wcn(t){return pO(),jr((Kse(),TEe),t)}function mcn(t){return _$(),jr((lie(),_Ee),t)}function vcn(t){return BI(),jr((Wie(),AEe),t)}function ycn(t){return DO(),jr((Gae(),LEe),t)}function xcn(t){return tS(),jr((hie(),UEe),t)}function kcn(t){return sO(),jr((Yie(),GEe),t)}function Ecn(t){return D1(),jr((Wae(),JEe),t)}function Tcn(t){return Fp(),jr((fce(),t7e),t)}function Ccn(t){return I0(),jr((boe(),e7e),t)}function Scn(t){return fw(),jr((woe(),o7e),t)}function _cn(t){return Rs(),jr((Kae(),S7e),t)}function Acn(t){return cd(),jr((Wse(),_7e),t)}function Lcn(t){return Lg(),jr((mae(),A7e),t)}function Dcn(t){return HH(),jr((moe(),L7e),t)}function Mcn(t){return Ag(),jr((Gse(),M7e),t)}function Icn(t){return uh(),jr((vae(),O7e),t)}function Ocn(t){return e3(),jr((Ace(),N7e),t)}function Ncn(t){return o5(),jr((Yae(),P7e),t)}function Pcn(t){return ka(),jr((voe(),F7e),t)}function Fcn(t){return wl(),jr((yoe(),B7e),t)}function Bcn(t){return ve(),jr((Xae(),R7e),t)}function Rcn(t){return Yl(),jr((yae(),H7e),t)}function jcn(t){return Ml(),jr((_ce(),V7e),t)}function $cn(t){return lk(),jr((Yse(),U7e),t)}function zcn(t,e){return Wn(t),t+(Wn(e),e)}function qcn(t){return vit(),jr((Xie(),G7e),t)}function Hcn(t){return pH(),jr((xae(),K7e),t)}function Vcn(t){return sH(),jr((kae(),X7e),t)}function LE(){LE=V,JAt=(ve(),Gn),nK=Jn}function vit(){vit=V,bIt=new _te,wIt=new fee}function Ucn(t){return!t.e&&(t.e=new fe),t.e}function yit(t,e){this.c=t,this.a=e,this.b=e-t}function JZt(t,e,n){this.a=t,this.b=e,this.c=n}function xit(t,e,n){this.a=t,this.b=e,this.c=n}function Nvt(t,e,n){this.a=t,this.b=e,this.c=n}function Pvt(t,e,n){this.a=t,this.b=e,this.c=n}function ZZt(t,e,n){this.a=t,this.b=e,this.c=n}function tte(t,e,n){this.a=t,this.b=e,this.c=n}function mp(t,e,n){this.e=t,this.a=e,this.c=n}function ete(t,e,n){Sh(),Zyt.call(this,t,e,n)}function kit(t,e,n){Sh(),Fyt.call(this,t,e,n)}function Fvt(t,e,n){Sh(),Fyt.call(this,t,e,n)}function Bvt(t,e,n){Sh(),Fyt.call(this,t,e,n)}function nte(t,e,n){Sh(),kit.call(this,t,e,n)}function Rvt(t,e,n){Sh(),kit.call(this,t,e,n)}function rte(t,e,n){Sh(),Rvt.call(this,t,e,n)}function ite(t,e,n){Sh(),Fvt.call(this,t,e,n)}function ste(t,e,n){Sh(),Bvt.call(this,t,e,n)}function Eit(t){Lz.call(this,t.d,t.c,t.a,t.b)}function jvt(t){Lz.call(this,t.d,t.c,t.a,t.b)}function $vt(t){this.d=t,kr(this),this.b=Vun(t.d)}function Gcn(t){return O7(),jr((dce(),uTe),t)}function pI(t,e){return Hr(t),Hr(e),new dYt(t,e)}function H6(t,e){return Hr(t),Hr(e),new mte(t,e)}function Kcn(t,e){return Hr(t),Hr(e),new vte(t,e)}function Wcn(t,e){return Hr(t),Hr(e),new kYt(t,e)}function Tit(t){return ur(t.b!=0),Oh(t,t.a.a)}function Ycn(t){return ur(t.b!=0),Oh(t,t.c.b)}function Xcn(t){return!t.c&&(t.c=new x0),t.c}function DE(t){var e;return e=new fe,Wst(e,t),e}function Qcn(t){var e;return e=new Os,Wst(e,t),e}function ate(t){var e;return e=new q2t,oat(e,t),e}function bI(t){var e;return e=new Ki,oat(e,t),e}function u(t,e){return AS(t==null||aot(t,e)),t}function Jcn(t,e,n){see.call(this,e,n),this.a=t}function ote(t,e){this.c=t,this.b=e,this.a=!1}function cte(){this.a=";,;",this.b="",this.c=""}function ute(t,e,n){this.b=t,yQt.call(this,e,n)}function zvt(t,e,n){this.c=t,I$.call(this,e,n)}function qvt(t,e,n){kE.call(this,t,e),this.b=n}function Hvt(t,e,n){N6t(n,0,t,e,n.length,!1)}function S0(t,e,n,r,s){t.b=e,t.c=n,t.d=r,t.a=s}function Vvt(t,e,n,r,s){t.d=e,t.c=n,t.a=r,t.b=s}function Zcn(t,e){e&&(t.b=e,t.a=(Mb(e),e.a))}function wI(t,e){if(!t)throw at(new zn(e))}function V6(t,e){if(!t)throw at(new Ro(e))}function Uvt(t,e){if(!t)throw at(new wWt(e))}function tun(t,e){return T$(),jc(t.d.p,e.d.p)}function eun(t,e){return Sg(),Bi(t.e.b,e.e.b)}function nun(t,e){return Sg(),Bi(t.e.a,e.e.a)}function run(t,e){return jc(Tte(t.d),Tte(e.d))}function yz(t,e){return e&&Vz(t,e.d)?e:null}function iun(t,e){return e==(ve(),Gn)?t.c:t.d}function Gvt(t){return Fb(rln(ec(t)?rf(t):t))}function sun(t){return new ae(t.c+t.b,t.d+t.a)}function lte(t){return t!=null&&!Uat(t,CL,SL)}function aun(t,e){return(que(t)<<4|que(e))&js}function hte(t,e,n,r,s){t.c=e,t.d=n,t.b=r,t.a=s}function Kvt(t){var e,n;e=t.b,n=t.c,t.b=n,t.c=e}function Wvt(t){var e,n;n=t.d,e=t.a,t.d=e,t.a=n}function oun(t,e){var n;return n=t.c,S4t(t,e),n}function Yvt(t,e){return e<0?t.g=-1:t.g=e,t}function xz(t,e){return pgn(t),t.a*=e,t.b*=e,t}function fte(t,e,n){aoe.call(this,e,n),this.d=t}function mI(t,e,n){gmt.call(this,t,e),this.c=n}function kz(t,e,n){gmt.call(this,t,e),this.c=n}function Xvt(t){Avt(),E4.call(this),this.ci(t)}function dte(){VE(),Aln.call(this,(Eb(),yf))}function gte(t){return yi(),new _0(0,t)}function pte(){pte=V,a0t=(mn(),new pa(lht))}function Ez(){Ez=V,new oxt((Wnt(),kht),(Knt(),xht))}function bte(){bte=V,d9t=Vt(Ra,ue,17,256,0,1)}function wte(){this.b=Rt(Ht(Se((Vf(),eft))))}function Cit(t){this.b=t,this.a=K2(this.b.a).Od()}function mte(t,e){this.b=t,this.a=e,DC.call(this)}function vte(t,e){this.a=t,this.b=e,DC.call(this)}function yte(t,e,n){this.a=t,$4.call(this,e,n)}function xte(t,e,n){this.a=t,$4.call(this,e,n)}function ME(t,e,n){var r;r=new Oy(n),_1(t,e,r)}function Qvt(t,e,n){var r;return r=t[e],t[e]=n,r}function Tz(t){var e;return e=t.slice(),zst(e,t)}function Cz(t){var e;return e=t.n,t.a.b+e.d+e.a}function kte(t){var e;return e=t.n,t.e.b+e.d+e.a}function Jvt(t){var e;return e=t.n,t.e.a+e.b+e.c}function Zvt(t){t.a.b=t.b,t.b.a=t.a,t.a=t.b=null}function Zr(t,e){return hs(t,e,t.c.b,t.c),!0}function cun(t){return t.a?t.a:Zit(t)}function uun(t){return J6(),O0(t)==Ji(qb(t))}function lun(t){return J6(),qb(t)==Ji(O0(t))}function Cm(t,e){return k_(t,new kE(e.a,e.b))}function hun(t,e){return Gz(),got(t,e),new Vee(t,e)}function fun(t,e){return t.c=e)throw at(new Y2t)}function My(t,e){return dO(t,(Wn(e),new no(e)))}function G6(t,e){return dO(t,(Wn(e),new ql(e)))}function oee(t,e,n){return RSn(t,u(e,12),u(n,12))}function cee(t){return rl(),u(t,12).g.c.length!=0}function uee(t){return rl(),u(t,12).e.c.length!=0}function Xun(t,e){return ok(),Bi(e.a.o.a,t.a.o.a)}function Qun(t,e){e.Bb&Fc&&!t.a.o&&(t.a.o=e)}function Jun(t,e){e.Ug("General 'Rotator",1),fCn(t)}function Zun(t,e,n){e.qf(n,Rt(Ht(tr(t.b,n)))*t.a)}function lee(t,e,n){return w5(),i7(t,e)&&i7(t,n)}function IS(t){return wl(),!t.Hc(Hg)&&!t.Hc(g2)}function tln(t){return t.e?$3t(t.e):null}function OS(t){return ec(t)?""+t:p0e(t)}function myt(t){var e;for(e=t;e.f;)e=e.f;return e}function eln(t,e,n){return ls(e,0,iyt(e[0],n[0])),e}function vp(t,e,n,r){var s;s=t.i,s.i=e,s.a=n,s.b=r}function Jt(t,e,n,r){Ps.call(this,t,e,n),this.b=r}function ha(t,e,n,r,s){jst.call(this,t,e,n,r,s,-1)}function NS(t,e,n,r,s){jI.call(this,t,e,n,r,s,-1)}function jz(t,e,n,r){mI.call(this,t,e,n),this.b=r}function hee(t){cQt.call(this,t,!1),this.a=!1}function fee(){zXt.call(this,"LOOKAHEAD_LAYOUT",1)}function dee(t){this.b=t,j6.call(this,t),mJt(this)}function gee(t){this.b=t,aI.call(this,t),vJt(this)}function Iy(t,e,n){this.a=t,z6.call(this,e,n,5,6)}function vyt(t,e,n,r){this.b=t,Ps.call(this,e,n,r)}function pee(t,e){this.b=t,dg.call(this,t.b),this.a=e}function bee(t){this.a=Zle(t.a),this.b=new fl(t.b)}function yyt(t,e){Dm(),Irn.call(this,t,uH(new hl(e)))}function $z(t,e){return yi(),new Pyt(t,e,0)}function Rit(t,e){return yi(),new Pyt(6,t,e)}function Na(t,e){for(Wn(e);t.Ob();)e.Cd(t.Pb())}function Tu(t,e){return ba(e)?ost(t,e):!!Eo(t.f,e)}function jit(t,e){return e.Vh()?jb(t.b,u(e,54)):e}function nln(t,e){return hn(t.substr(0,e.length),e)}function A0(t){return new rr(new zmt(t.a.length,t.a))}function zz(t){return new ae(t.c+t.b/2,t.d+t.a/2)}function rln(t){return Eu(~t.l&Il,~t.m&Il,~t.h&Fg)}function $it(t){return typeof t===ZO||typeof t===Pct}function dl(t){t.f=new FQt(t),t.i=new BQt(t),++t.g}function wee(t){if(!t)throw at(new cc);return t.d}function K6(t){var e;return e=r_(t),ur(e!=null),e}function iln(t){var e;return e=y2n(t),ur(e!=null),e}function OE(t,e){var n;return n=t.a.gc(),P3t(e,n),n-e}function qs(t,e){var n;return n=t.a.zc(e,t),n==null}function yI(t,e){return t.a.zc(e,(Pn(),t2))==null}function xyt(t){return new ln(null,uln(t,t.length))}function kyt(t,e,n){return jge(t,u(e,42),u(n,176))}function W6(t,e,n){return zf(t.a,e),Qvt(t.b,e.g,n)}function sln(t,e,n){IE(n,t.a.c.length),Mh(t.a,n,e)}function zt(t,e,n,r){pue(e,n,t.length),aln(t,e,n,r)}function aln(t,e,n,r){var s;for(s=e;s0?b.Math.log(t/e):-100}function vee(t,e){return $c(t,e)<0?-1:$c(t,e)>0?1:0}function xI(t,e){lJt(t,Lt(e,160)?e:u(e,2036).Rl())}function Syt(t,e){if(t==null)throw at(new A6(e))}function uln(t,e){return hgn(e,t.length),new Ste(t,e)}function _yt(t,e){return e?Ma(t,e):!1}function lln(){return l$(),lt(ut($ve,1),te,549,0,[Cht])}function FS(t){return t.e==0?t:new Y2(-t.e,t.d,t.a)}function hln(t,e){return Bi(t.c.c+t.c.b,e.c.c+e.c.b)}function kI(t,e){hs(t.d,e,t.b.b,t.b),++t.a,t.c=null}function yee(t,e){return t.c?yee(t.c,e):ge(t.b,e),t}function fln(t,e,n){var r;return r=$y(t,e),Est(t,e,n),r}function xee(t,e,n){var r;for(r=0;r=t.g}function ls(t,e,n){return ran(n==null||JEn(t,n)),t[e]=n}function Iyt(t,e){return qn(e,t.length+1),t.substr(e)}function Xit(t,e){for(Wn(e);t.c=t?new Lwt:Pgn(t-1)}function Pa(t){return!t.a&&t.c?t.c.b:t.a}function Byt(t){return Lt(t,616)?t:new $ne(t)}function Mb(t){t.c?Mb(t.c):($b(t),t.d=!0)}function jS(t){t.c?t.c.$e():(t.d=!0,Z6n(t))}function zee(t){t.b=!1,t.c=!1,t.d=!1,t.a=!1}function qee(t){var e,n;return e=t.c.i.c,n=t.d.i.c,e==n}function Mln(t,e){var n;n=t.Ih(e),n>=0?t.ki(n):C6t(t,e)}function Hee(t,e){t.c<0||t.b.b0;)t=t<<1|(t<0?1:0);return t}function Qee(t,e){var n;return n=new eu(t),In(e.c,n),n}function Jee(t,e){t.u.Hc((wl(),Hg))&&F5n(t,e),t0n(t,e)}function Nc(t,e){return $t(t)===$t(e)||t!=null&&Ti(t,e)}function Io(t,e){return Dit(t.a,e)?t.b[u(e,22).g]:null}function Vln(){return E$(),lt(ut(rCt,1),te,488,0,[Wht])}function Uln(){return S$(),lt(ut(IDt,1),te,489,0,[wdt])}function Gln(){return _$(),lt(ut(SEe,1),te,558,0,[mdt])}function Kln(){return tS(),lt(ut(ZDt,1),te,539,0,[kP])}function Kz(t){return!t.n&&(t.n=new Jt(Po,t,1,7)),t.n}function Jit(t){return!t.c&&(t.c=new Jt(kl,t,9,9)),t.c}function zyt(t){return!t.c&&(t.c=new kn(vr,t,5,8)),t.c}function Wln(t){return!t.b&&(t.b=new kn(vr,t,4,7)),t.b}function EI(t){return t.j.c.length=0,Hyt(t.c),San(t.a),t}function RE(t){return t.e==dT&&nn(t,qwn(t.g,t.b)),t.e}function TI(t){return t.f==dT&&Tn(t,Ovn(t.g,t.b)),t.f}function fi(t,e,n,r){return xce(t,e,n,!1),lH(t,r),t}function Zee(t,e){this.b=t,zit.call(this,t,e),mJt(this)}function tne(t,e){this.b=t,Cvt.call(this,t,e),vJt(this)}function $S(t){this.d=t,this.a=this.d.b,this.b=this.d.c}function qyt(t,e){this.b=t,this.c=e,this.a=new I6(this.b)}function Va(t,e){return qn(e,t.length),t.charCodeAt(e)}function Yln(t,e){L5t(t,Rt(_g(e,"x")),Rt(_g(e,"y")))}function Xln(t,e){L5t(t,Rt(_g(e,"x")),Rt(_g(e,"y")))}function _i(t,e){return $b(t),new ln(t,new Z3t(e,t.a))}function Wo(t,e){return $b(t),new ln(t,new R3t(e,t.a))}function Ny(t,e){return $b(t),new rvt(t,new use(e,t.a))}function Wz(t,e){return $b(t),new ivt(t,new lse(e,t.a))}function Qln(t,e){return new Tne(u(Hr(t),50),u(Hr(e),50))}function Jln(t,e){return Bi(t.d.c+t.d.b/2,e.d.c+e.d.b/2)}function ene(t,e,n){n.a?_u(t,e.b-t.f/2):Su(t,e.a-t.g/2)}function Zln(t,e){return Bi(t.g.c+t.g.b/2,e.g.c+e.g.b/2)}function thn(t,e){return Iwt(),Bi((Wn(t),t),(Wn(e),e))}function ehn(t){return t!=null&&BM(WK,t.toLowerCase())}function Hyt(t){var e;for(e=t.Kc();e.Ob();)e.Pb(),e.Qb()}function X4(t){var e;return e=t.b,!e&&(t.b=e=new vnt(t)),e}function Zit(t){var e;return e=jgn(t),e||null}function nne(t,e){var n,r;return n=t/e,r=Ys(n),n>r&&++r,r}function nhn(t,e,n){var r;r=u(t.d.Kb(n),159),r&&r.Nb(e)}function rhn(t,e,n){sTn(t.a,n),Fpn(n),Sxn(t.b,n),STn(e,n)}function Yz(t,e,n,r){this.a=t,this.c=e,this.b=n,this.d=r}function Vyt(t,e,n,r){this.c=t,this.b=e,this.a=n,this.d=r}function rne(t,e,n,r){this.c=t,this.b=e,this.d=n,this.a=r}function Ah(t,e,n,r){this.c=t,this.d=e,this.b=n,this.a=r}function ine(t,e,n,r){this.a=t,this.d=e,this.c=n,this.b=r}function tst(t,e,n,r){this.a=t,this.e=e,this.d=n,this.c=r}function sne(t,e,n,r){this.a=t,this.c=e,this.d=n,this.b=r}function est(t,e,n){this.a=b8t,this.d=t,this.b=e,this.c=n}function X6(t,e,n,r){Rr.call(this,t,e),this.a=n,this.b=r}function ane(t,e){this.d=(Wn(t),t),this.a=16449,this.c=e}function one(t){this.a=new fe,this.e=Vt(Fr,ue,53,t,0,2)}function ihn(t){t.Ug("No crossing minimization",1),t.Vg()}function cne(){uc.call(this,"There is no more element.")}function une(t,e,n,r){this.a=t,this.b=e,this.c=n,this.d=r}function lne(t,e,n,r){this.a=t,this.b=e,this.c=n,this.d=r}function X2(t,e,n,r){this.e=t,this.a=e,this.c=n,this.d=r}function hne(t,e,n,r){this.a=t,this.c=e,this.d=n,this.b=r}function fne(t,e,n,r){Sh(),hse.call(this,e,n,r),this.a=t}function dne(t,e,n,r){Sh(),hse.call(this,e,n,r),this.a=t}function nst(t,e,n){var r,s;return r=n8t(t),s=e.ti(n,r),s}function mg(t){var e,n;return n=(e=new lm,e),YE(n,t),n}function rst(t){var e,n;return n=(e=new lm,e),a6t(n,t),n}function shn(t,e){var n;return n=tr(t.f,e),j4t(e,n),null}function gne(t){return!t.b&&(t.b=new Jt(Ts,t,12,3)),t.b}function pne(t){return AS(t==null||$it(t)&&t.Tm!==yt),t}function Xz(t){return t.n&&(t.e!==wbe&&t.je(),t.j=null),t}function jE(t){if(Ll(t.d),t.d.d!=t.c)throw at(new Th)}function Uyt(t){return ur(t.b0&&Khe(this)}function bne(t,e){this.a=t,ian.call(this,t,u(t.d,15).fd(e))}function ahn(t,e){return Bi(tl(t)*Gl(t),tl(e)*Gl(e))}function ohn(t,e){return Bi(tl(t)*Gl(t),tl(e)*Gl(e))}function chn(t){return Zm(t)&&Ie(Me(ne(t,(De(),Mw))))}function uhn(t,e){return dn(t,u(X(e,(De(),OT)),17),e)}function lhn(t,e){return u(X(t,(oe(),Uk)),15).Fc(e),e}function Gyt(t,e){return t.b=e.b,t.c=e.c,t.d=e.d,t.a=e.a,t}function wne(t,e,n,r){this.b=t,this.c=r,ez.call(this,e,n)}function hhn(t,e,n){t.i=0,t.e=0,e!=n&&tue(t,e,n)}function fhn(t,e,n){t.i=0,t.e=0,e!=n&&eue(t,e,n)}function dhn(t,e,n){return ZC(),$2n(u(tr(t.e,e),529),n)}function Q6(t){var e;return e=t.f,e||(t.f=new vE(t,t.c))}function mne(t,e){return a5(t.j,e.s,e.c)+a5(e.e,t.s,t.c)}function vne(t,e){t.e&&!t.e.a&&(aKt(t.e,e),vne(t.e,e))}function yne(t,e){t.d&&!t.d.a&&(aKt(t.d,e),yne(t.d,e))}function ghn(t,e){return-Bi(tl(t)*Gl(t),tl(e)*Gl(e))}function phn(t){return u(t.ld(),149).Pg()+":"+rc(t.md())}function xne(){Fot(this,new Fj),this.wb=(Lb(),Fn),bE()}function kne(t){this.b=new fe,Hs(this.b,this.b),this.a=t}function Kyt(t,e){new Ki,this.a=new Qu,this.b=t,this.c=e}function Nm(){Nm=V,C9t=new Gt,Oht=new Gt,S9t=new Fe}function mn(){mn=V,co=new jt,q0=new Ft,FU=new Ct}function Wyt(){Wyt=V,vye=new Ha,xye=new uyt,yye=new ds}function J6(){J6=V,VU=new fe,Jht=new _r,Qht=new fe}function Qz(t,e){if(t==null)throw at(new A6(e));return t}function Jz(t){return!t.a&&(t.a=new Jt(bi,t,10,11)),t.a}function Di(t){return!t.q&&(t.q=new Jt(vf,t,11,10)),t.q}function Qt(t){return!t.s&&(t.s=new Jt(Wu,t,21,17)),t.s}function bhn(t){return Hr(t),uhe(new rr(sr(t.a.Kc(),new z)))}function whn(t,e){return Wl(t),Wl(e),bWt(u(t,22),u(e,22))}function Q2(t,e,n){var r,s;r=_vt(n),s=new cE(r),_1(t,e,s)}function sst(t,e,n,r,s,o){jI.call(this,t,e,n,r,s,o?-2:-1)}function Ene(t,e,n,r){gmt.call(this,e,n),this.b=t,this.a=r}function Tne(t,e){Rnn.call(this,new Bit(t)),this.a=t,this.b=e}function Yyt(t){this.b=t,this.c=t,t.e=null,t.c=null,this.a=1}function mhn(t){Bf();var e;e=u(t.g,10),e.n.a=t.d.c+e.d.b}function $E(){$E=V;var t,e;e=!Cwn(),t=new it,Aht=e?new rt:t}function ast(t){return mn(),Lt(t,59)?new nrt(t):new uz(t)}function Zz(t){return Lt(t,16)?new LS(u(t,16)):Qcn(t.Kc())}function vhn(t){return new xJt(t,t.e.Rd().gc()*t.c.Rd().gc())}function yhn(t){return new kJt(t,t.e.Rd().gc()*t.c.Rd().gc())}function Xyt(t){return t&&t.hashCode?t.hashCode():Em(t)}function ost(t,e){return e==null?!!Eo(t.f,null):Fun(t.i,e)}function xhn(t,e){var n;return n=Imt(t.a,e),n&&(e.d=null),n}function Cne(t,e,n){return t.f?t.f.ef(e,n):!1}function CI(t,e,n,r){ls(t.c[e.g],n.g,r),ls(t.c[n.g],e.g,r)}function cst(t,e,n,r){ls(t.c[e.g],e.g,n),ls(t.b[e.g],e.g,r)}function khn(t,e,n){return Rt(Ht(n.a))<=t&&Rt(Ht(n.b))>=e}function Sne(t,e){this.g=t,this.d=lt(ut(V0,1),jp,10,0,[e])}function _ne(t){this.c=t,this.b=new pp(u(Hr(new Fu),50))}function Ane(t){this.c=t,this.b=new pp(u(Hr(new b4),50))}function Lne(t){this.b=t,this.a=new pp(u(Hr(new Ci),50))}function Dne(){this.b=new Os,this.d=new Ki,this.e=new X2t}function Qyt(){this.c=new Sa,this.d=new Sa,this.e=new Sa}function Pm(){this.a=new Qu,this.b=(oh(3,c3),new wu(3))}function yp(t,e){this.e=t,this.a=aa,this.b=M0e(e),this.c=e}function tq(t){this.c=t.c,this.d=t.d,this.b=t.b,this.a=t.a}function Mne(t,e,n,r,s,o){this.a=t,tat.call(this,e,n,r,s,o)}function Ine(t,e,n,r,s,o){this.a=t,tat.call(this,e,n,r,s,o)}function Ib(t,e,n,r,s,o,h){return new Cst(t.e,e,n,r,s,o,h)}function Ehn(t,e,n){return n>=0&&hn(t.substr(n,e.length),e)}function One(t,e){return Lt(e,149)&&hn(t.b,u(e,149).Pg())}function Thn(t,e){return t.a?e.Gh().Kc():u(e.Gh(),71).Ii()}function Nne(t,e){var n;return n=t.b.Qc(e),Aie(n,t.b.gc()),n}function SI(t,e){if(t==null)throw at(new A6(e));return t}function Yo(t){return t.u||(_l(t),t.u=new dZt(t,t)),t.u}function ust(t){this.a=(mn(),Lt(t,59)?new nrt(t):new uz(t))}function $u(t){var e;return e=u(jn(t,16),29),e||t.ii()}function eq(t,e){var n;return n=V2(t.Rm),e==null?n:n+": "+e}function Lh(t,e,n){return Da(e,n,t.length),t.substr(e,n-e)}function Pne(t,e){gz.call(this),c4t(this),this.a=t,this.c=e}function Chn(t){t&&eq(t,t.ie())}function Shn(t){d$(),b.setTimeout(function(){throw t},0)}function _hn(){return TH(),lt(ut(N9t,1),te,436,0,[zht,O9t])}function Ahn(){return Mq(),lt(ut(F9t,1),te,435,0,[P9t,qht])}function Lhn(){return Iq(),lt(ut(lCt,1),te,432,0,[Zht,UU])}function Dhn(){return r7(),lt(ut(y4e,1),te,517,0,[KN,dft])}function Mhn(){return qI(),lt(ut(NSt,1),te,487,0,[OSt,EG])}function Ihn(){return YI(),lt(ut(MSt,1),te,428,0,[xG,DSt])}function Ohn(){return Eq(),lt(ut(ESt,1),te,431,0,[kSt,Aft])}function Nhn(){return KI(),lt(ut(jAt,1),te,430,0,[T1t,C1t])}function Phn(){return US(),lt(ut(hke,1),te,531,0,[KA,GA])}function Fhn(){return Gd(),lt(ut(mke,1),te,523,0,[Dv,Gp])}function Bhn(){return nd(),lt(ut(yke,1),te,522,0,[Fw,yd])}function Rhn(){return C1(),lt(ut(Pke,1),te,528,0,[F3,o2])}function jhn(){return fq(),lt(ut(KSt,1),te,429,0,[Hft,GSt])}function $hn(){return wq(),lt(ut(CDt,1),te,490,0,[gdt,TDt])}function zhn(){return gat(),lt(ut(MDt,1),te,491,0,[LDt,DDt])}function qhn(){return uq(),lt(ut(NLt,1),te,433,0,[K1t,OLt])}function Hhn(){return Cq(),lt(ut(BLt,1),te,434,0,[FLt,Z1t])}function Vhn(){return Bm(),lt(ut(qke,1),te,464,0,[c2,Z5])}function Uhn(){return Kq(),lt(ut(PLt,1),te,500,0,[hK,nx])}function Ghn(){return BI(),lt(ut(ODt,1),te,438,0,[vdt,kK])}function Khn(){return sO(),lt(ut(eMt,1),te,437,0,[TK,tMt])}function Whn(){return vit(),lt(ut(jK,1),te,347,0,[bIt,wIt])}function nq(t,e,n,r){return n>=0?t.Uh(e,n,r):t.Ch(null,n,r)}function _I(t){return t.b.b==0?t.a.sf():Tit(t.b)}function Yhn(t){if(t.p!=5)throw at(new Xu);return qr(t.f)}function Xhn(t){if(t.p!=5)throw at(new Xu);return qr(t.k)}function Jyt(t){return $t(t.a)===$t((fat(),r0t))&&WTn(t),t.a}function Qhn(t,e){t.b=e,t.c>0&&t.b>0&&(t.g=Dz(t.c,t.b,t.a))}function Jhn(t,e){t.c=e,t.c>0&&t.b>0&&(t.g=Dz(t.c,t.b,t.a))}function Fne(t,e){st(this,new ae(t.a,t.b)),bt(this,bI(e))}function Fm(){jnn.call(this,new M6(zy(12))),Bmt(!0),this.a=2}function lst(t,e,n){yi(),um.call(this,t),this.b=e,this.a=n}function Zyt(t,e,n){Sh(),i$.call(this,e),this.a=t,this.b=n}function Bne(t){var e;e=t.c.d.b,t.b=e,t.a=t.c.d,e.a=t.c.d.b=t}function Zhn(t){return t.b==0?null:(ur(t.b!=0),Oh(t,t.a.a))}function nu(t,e){return e==null?Ko(Eo(t.f,null)):iS(t.i,e)}function Rne(t,e,n,r,s){return new Rot(t,(KE(),Bht),e,n,r,s)}function rq(t,e){return Cie(e),Egn(t,Vt(Fr,ii,28,e,15,1),e)}function iq(t,e){return Qz(t,"set1"),Qz(e,"set2"),new _Yt(t,e)}function tfn(t,e){var n=_ht[t.charCodeAt(0)];return n??t}function jne(t,e){var n,r;return n=e,r=new be,dpe(t,n,r),r.d}function hst(t,e,n,r){var s;s=new bZt,e.a[n.g]=s,W6(t.b,r,s)}function efn(t,e){var n;return n=ygn(t.f,e),ki(dz(n),t.f.d)}function sq(t){var e;Mgn(t.a),GQt(t.a),e=new RC(t.a),j5t(e)}function nfn(t,e){x0e(t,!0),Cu(t.e.Rf(),new Mvt(t,!0,e))}function rfn(t,e){return J6(),t==Ji(O0(e))||t==Ji(qb(e))}function ifn(t,e){return Sg(),u(X(e,(Cc(),h0)),17).a==t}function Ys(t){return Math.max(Math.min(t,xi),-2147483648)|0}function $ne(t){this.a=u(Hr(t),277),this.b=(mn(),new Vmt(t))}function zne(t,e,n){this.i=new fe,this.b=t,this.g=e,this.a=n}function t3t(t,e,n){this.a=new fe,this.e=t,this.f=e,this.c=n}function aq(t,e,n){this.c=new fe,this.e=t,this.f=e,this.b=n}function qne(t){gz.call(this),c4t(this),this.a=t,this.c=!0}function sfn(t){function e(){}return e.prototype=t||{},new e}function afn(t){if(t.Ae())return null;var e=t.n;return DU[e]}function AI(t){return t.Db>>16!=3?null:u(t.Cb,27)}function ed(t){return t.Db>>16!=9?null:u(t.Cb,27)}function Hne(t){return t.Db>>16!=6?null:u(t.Cb,74)}function Bm(){Bm=V,c2=new nmt(_k,0),Z5=new nmt(Ak,1)}function Gd(){Gd=V,Dv=new Zwt(Ak,0),Gp=new Zwt(_k,1)}function nd(){nd=V,Fw=new tmt(xut,0),yd=new tmt("UP",1)}function Vne(){Vne=V,zve=$r((l$(),lt(ut($ve,1),te,549,0,[Cht])))}function Une(t){var e;return e=new w$(zy(t.length)),J4t(e,t),e}function Gne(t,e){return t.b+=e.b,t.c+=e.c,t.d+=e.d,t.a+=e.a,t}function ofn(t,e){return Ice(t,e)?(Aoe(t),!0):!1}function vg(t,e){if(e==null)throw at(new E6);return _wn(t,e)}function LI(t,e){var n;n=t.q.getHours(),t.q.setDate(e),N_(t,n)}function e3t(t,e,n){var r;r=t.Ih(e),r>=0?t.bi(r,n):J6t(t,e,n)}function Kne(t,e){var n;return n=t.Ih(e),n>=0?t.Wh(n):Vot(t,e)}function Wne(t,e){var n;for(Hr(e),n=t.a;n;n=n.c)e.Yd(n.g,n.i)}function fst(t,e,n){var r;r=Jce(t,e,n),t.b=new Yq(r.c.length)}function Q4(t,e,n){oq(),t&&hi(t0t,t,e),t&&hi(VP,t,n)}function cfn(t,e){return vz(),Pn(),u(e.a,17).a0}function n3t(t){var e;return e=t.d,e=t.bj(t.f),Or(t,e),e.Ob()}function Yne(t,e){var n;return n=new ayt(e),yfe(n,t),new fl(n)}function hfn(t){if(t.p!=0)throw at(new Xu);return bS(t.f,0)}function ffn(t){if(t.p!=0)throw at(new Xu);return bS(t.k,0)}function Xne(t){return t.Db>>16!=7?null:u(t.Cb,241)}function zE(t){return t.Db>>16!=6?null:u(t.Cb,241)}function Qne(t){return t.Db>>16!=7?null:u(t.Cb,167)}function Ji(t){return t.Db>>16!=11?null:u(t.Cb,27)}function Py(t){return t.Db>>16!=17?null:u(t.Cb,29)}function Jne(t){return t.Db>>16!=3?null:u(t.Cb,155)}function r3t(t){var e;return $b(t),e=new Os,_i(t,new A4(e))}function Zne(t,e){var n=t.a=t.a||[];return n[e]||(n[e]=t.ve(e))}function dfn(t,e){var n;n=t.q.getHours(),t.q.setMonth(e),N_(t,n)}function tre(t,e){oz(this),this.f=e,this.g=t,Xz(this),this.je()}function ere(t,e){this.a=t,this.c=Oa(this.a),this.b=new tq(e)}function nre(t,e,n){this.a=e,this.c=t,this.b=(Hr(n),new fl(n))}function rre(t,e,n){this.a=e,this.c=t,this.b=(Hr(n),new fl(n))}function ire(t){this.a=t,this.b=Vt(cke,ue,2043,t.e.length,0,2)}function sre(){this.a=new zd,this.e=new Os,this.g=0,this.i=0}function oq(){oq=V,t0t=new _r,VP=new _r,oin(sye,new dC)}function are(){are=V,G6e=el(new Fs,(Ua(),Zo),(Za(),WN))}function i3t(){i3t=V,K6e=el(new Fs,(Ua(),Zo),(Za(),WN))}function ore(){ore=V,Y6e=el(new Fs,(Ua(),Zo),(Za(),WN))}function cre(){cre=V,dke=ri(new Fs,(Ua(),Zo),(Za(),CA))}function rh(){rh=V,bke=ri(new Fs,(Ua(),Zo),(Za(),CA))}function ure(){ure=V,wke=ri(new Fs,(Ua(),Zo),(Za(),CA))}function gst(){gst=V,kke=ri(new Fs,(Ua(),Zo),(Za(),CA))}function zS(t,e,n,r,s,o){return new Tg(t.e,e,t.Lj(),n,r,s,o)}function jo(t,e,n){return e==null?yu(t.f,null,n):Km(t.i,e,n)}function Xa(t,e){t.c&&zu(t.c.g,t),t.c=e,t.c&&ge(t.c.g,t)}function Aa(t,e){t.c&&zu(t.c.a,t),t.c=e,t.c&&ge(t.c.a,t)}function hc(t,e){t.i&&zu(t.i.j,t),t.i=e,t.i&&ge(t.i.j,t)}function xa(t,e){t.d&&zu(t.d.e,t),t.d=e,t.d&&ge(t.d.e,t)}function pst(t,e){t.a&&zu(t.a.k,t),t.a=e,t.a&&ge(t.a.k,t)}function bst(t,e){t.b&&zu(t.b.f,t),t.b=e,t.b&&ge(t.b.f,t)}function lre(t,e){Cln(t,t.b,t.c),u(t.b.b,68),e&&u(e.b,68).b}function gfn(t,e){return Bi(u(t.c,65).c.e.b,u(e.c,65).c.e.b)}function pfn(t,e){return Bi(u(t.c,65).c.e.a,u(e.c,65).c.e.a)}function bfn(t){return Iat(),Pn(),u(t.a,86).d.e!=0}function cq(t,e){Lt(t.Cb,184)&&(u(t.Cb,184).tb=null),mu(t,e)}function wst(t,e){Lt(t.Cb,90)&&t3(_l(u(t.Cb,90)),4),mu(t,e)}function wfn(t,e){D5t(t,e),Lt(t.Cb,90)&&t3(_l(u(t.Cb,90)),2)}function mfn(t,e){var n,r;n=e.c,r=n!=null,r&&Y6(t,new Oy(e.c))}function hre(t){var e,n;return n=(bE(),e=new lm,e),YE(n,t),n}function fre(t){var e,n;return n=(bE(),e=new lm,e),YE(n,t),n}function dre(t){for(var e;;)if(e=t.Pb(),!t.Ob())return e}function vfn(t,e,n){return ge(t.a,(Gz(),got(e,n),new bm(e,n))),t}function ru(t,e){return vo(),Gst(e)?new Sz(e,t):new eI(e,t)}function DI(t){return Xd(),$c(t,0)>=0?zb(t):FS(zb(Cp(t)))}function yfn(t){var e;return e=u(Tz(t.b),9),new _h(t.a,e,t.c)}function gre(t,e){var n;return n=u(Gy(Q6(t.a),e),16),n?n.gc():0}function pre(t,e,n){var r;$ue(e,n,t.c.length),r=n-e,Swt(t.c,e,r)}function xp(t,e,n){$ue(e,n,t.gc()),this.c=t,this.a=e,this.b=n-e}function Z6(t){this.c=new Ki,this.b=t.b,this.d=t.c,this.a=t.a}function mst(t){this.a=b.Math.cos(t),this.b=b.Math.sin(t)}function J2(t,e,n,r){this.c=t,this.d=r,pst(this,e),bst(this,n)}function s3t(t,e){Bnn.call(this,new M6(zy(t))),oh(e,hbe),this.a=e}function bre(t,e,n){return new Rot(t,(KE(),Fht),null,!1,e,n)}function wre(t,e,n){return new Rot(t,(KE(),Rht),e,n,null,!1)}function xfn(){return bl(),lt(ut(Ho,1),te,108,0,[I9t,sc,w3])}function kfn(){return qu(),lt(ut(Dye,1),te,471,0,[O1,n2,Kf])}function Efn(){return pl(),lt(ut(Aye,1),te,470,0,[c0,e2,Gf])}function Tfn(){return A1(),lt(ut(m3,1),te,237,0,[Ac,xu,Lc])}function Cfn(){return WS(),lt(ut(CCt,1),te,391,0,[rft,nft,ift])}function Sfn(){return Vm(),lt(ut(vft,1),te,372,0,[mv,r2,wv])}function _fn(){return QS(),lt(ut(CSt,1),te,322,0,[_A,QN,TSt])}function Afn(){return $q(),lt(ut(_St,1),te,351,0,[SSt,yG,Lft])}function Lfn(){return ow(),lt(ut(Q4e,1),te,459,0,[Ift,_T,z5])}function Dfn(){return c7(),lt(ut(qft,1),te,298,0,[$ft,zft,JN])}function Mfn(){return Cg(),lt(ut(s5e,1),te,311,0,[ZN,H5,qk])}function Ifn(){return o_(),lt(ut(LAt,1),te,390,0,[w1t,AAt,QG])}function Ofn(){return To(),lt(ut(j6e,1),te,462,0,[HA,vl,ku])}function Nfn(){return tH(),lt(ut(qAt,1),te,387,0,[$At,S1t,zAt])}function Pfn(){return i_(),lt(ut(HAt,1),te,349,0,[A1t,_1t,lP])}function Ffn(){return b7(),lt(ut(UAt,1),te,350,0,[L1t,VAt,VA])}function Bfn(){return jq(),lt(ut(WAt,1),te,352,0,[KAt,D1t,GAt])}function Rfn(){return iH(),lt(ut(YAt,1),te,388,0,[M1t,$T,P3])}function jfn(){return Hm(),lt(ut(ake,1),te,463,0,[hP,UA,eK])}function rd(t){return dc(lt(ut(la,1),ue,8,0,[t.i.n,t.n,t.a]))}function $fn(){return s_(),lt(ut(fLt,1),te,392,0,[hLt,N1t,dP])}function mre(){mre=V,w8e=el(new Fs,(bk(),YA),(I_(),nLt))}function uq(){uq=V,K1t=new rmt("DFS",0),OLt=new rmt("BFS",1)}function vre(t,e,n){var r;r=new hZ,r.b=e,r.a=n,++e.b,ge(t.d,r)}function zfn(t,e,n){var r;r=new io(n.d),ki(r,t),L5t(e,r.a,r.b)}function qfn(t,e){fJt(t,qr(sa(_m(e,24),TV)),qr(sa(e,TV)))}function Fy(t,e){if(t<0||t>e)throw at(new Bo(C8t+t+S8t+e))}function vn(t,e){if(t<0||t>=e)throw at(new Bo(C8t+t+S8t+e))}function qn(t,e){if(t<0||t>=e)throw at(new dwt(C8t+t+S8t+e))}function gn(t,e){this.b=(Wn(t),t),this.a=e&u3?e:e|64|Jd}function a3t(t){var e;return $b(t),e=(Nm(),Nm(),Oht),Pq(t,e)}function Hfn(t,e,n){var r;return r=B_(t,e,!1),r.b<=e&&r.a<=n}function Vfn(){return Sq(),lt(ut(ADt,1),te,439,0,[pdt,_Dt,SDt])}function Ufn(){return dH(),lt(ut(cDt,1),te,394,0,[oDt,hdt,aDt])}function Gfn(){return vH(),lt(ut(sDt,1),te,445,0,[mP,pK,sdt])}function Kfn(){return DH(),lt(ut(W8e,1),te,455,0,[adt,cdt,odt])}function Wfn(){return uO(),lt(ut($Lt,1),te,393,0,[fK,RLt,jLt])}function Yfn(){return Zq(),lt(ut(iDt,1),te,299,0,[idt,rDt,nDt])}function Xfn(){return cd(),lt(ut(XMt,1),te,278,0,[GT,$3,KT])}function Qfn(){return lk(),lt(ut(pIt,1),te,280,0,[gIt,q3,RK])}function Jfn(){return Ag(),lt(ut(cIt,1),te,346,0,[IK,Xp,bL])}function Zfn(){return pO(),lt(ut(bdt,1),te,444,0,[vK,yK,xK])}function Rm(t){return Hr(t),Lt(t,16)?new fl(u(t,16)):DE(t.Kc())}function o3t(t,e){return t&&t.equals?t.equals(e):$t(t)===$t(e)}function sa(t,e){return Fb(Uun(ec(t)?rf(t):t,ec(e)?rf(e):e))}function T1(t,e){return Fb(Gun(ec(t)?rf(t):t,ec(e)?rf(e):e))}function vst(t,e){return Fb(Kun(ec(t)?rf(t):t,ec(e)?rf(e):e))}function t1n(t,e){var n;return n=(Wn(t),t).g,evt(!!n),Wn(e),n(e)}function yre(t,e){var n,r;return r=OE(t,e),n=t.a.fd(r),new CYt(t,n)}function e1n(t){return t.Db>>16!=6?null:u(Kot(t),241)}function n1n(t){if(t.p!=2)throw at(new Xu);return qr(t.f)&js}function r1n(t){if(t.p!=2)throw at(new Xu);return qr(t.k)&js}function et(t){return ur(t.ar?1:0}function Tre(t,e){var n,r;return n=qst(e),r=n,u(tr(t.c,r),17).a}function yst(t,e,n){var r;r=t.d[e.p],t.d[e.p]=t.d[n.p],t.d[n.p]=r}function g1n(t,e,n){var r;t.n&&e&&n&&(r=new Ktt,ge(t.e,r))}function xst(t,e){if(qs(t.a,e),e.d)throw at(new uc(Nbe));e.d=t}function l3t(t,e){this.a=new fe,this.d=new fe,this.f=t,this.c=e}function Cre(){this.c=new cJt,this.a=new gse,this.b=new SKt,VYt()}function Sre(){ck(),this.b=new _r,this.a=new _r,this.c=new fe}function _re(t,e,n){this.d=t,this.j=e,this.e=n,this.o=-1,this.p=3}function Are(t,e,n){this.d=t,this.k=e,this.f=n,this.o=-1,this.p=5}function Lre(t,e,n,r,s,o){l4t.call(this,t,e,n,r,s),o&&(this.o=-2)}function Dre(t,e,n,r,s,o){h4t.call(this,t,e,n,r,s),o&&(this.o=-2)}function Mre(t,e,n,r,s,o){A3t.call(this,t,e,n,r,s),o&&(this.o=-2)}function Ire(t,e,n,r,s,o){g4t.call(this,t,e,n,r,s),o&&(this.o=-2)}function Ore(t,e,n,r,s,o){L3t.call(this,t,e,n,r,s),o&&(this.o=-2)}function Nre(t,e,n,r,s,o){f4t.call(this,t,e,n,r,s),o&&(this.o=-2)}function Pre(t,e,n,r,s,o){d4t.call(this,t,e,n,r,s),o&&(this.o=-2)}function Fre(t,e,n,r,s,o){D3t.call(this,t,e,n,r,s),o&&(this.o=-2)}function Bre(t,e,n,r){i$.call(this,n),this.b=t,this.c=e,this.d=r}function Rre(t,e){this.f=t,this.a=(VE(),QK),this.c=QK,this.b=e}function jre(t,e){this.g=t,this.d=(VE(),JK),this.a=JK,this.b=e}function h3t(t,e){!t.c&&(t.c=new ps(t,0)),gV(t.c,(Ni(),AL),e)}function p1n(t,e){return Qxn(t,e,Lt(e,102)&&(u(e,19).Bb&po)!=0)}function b1n(t,e){return vee(Pc(t.q.getTime()),Pc(e.q.getTime()))}function $re(t){return _it(t.e.Rd().gc()*t.c.Rd().gc(),16,new wnt(t))}function w1n(t){return!!t.u&&Wc(t.u.a).i!=0&&!(t.n&&lot(t.n))}function m1n(t){return!!t.a&&Al(t.a.a).i!=0&&!(t.b&&hot(t.b))}function f3t(t,e){return e==0?!!t.o&&t.o.f!=0:iot(t,e)}function v1n(t,e,n){var r;return r=u(t.Zb().xc(e),16),!!r&&r.Hc(n)}function zre(t,e,n){var r;return r=u(t.Zb().xc(e),16),!!r&&r.Mc(n)}function qre(t,e){var n;return n=1-e,t.a[n]=Wq(t.a[n],n),Wq(t,e)}function Hre(t,e){var n,r;return r=sa(t,So),n=Rf(e,32),T1(n,r)}function Vre(t,e,n){var r;r=(Hr(t),new fl(t)),xvn(new nre(r,e,n))}function MI(t,e,n){var r;r=(Hr(t),new fl(t)),kvn(new rre(r,e,n))}function Ec(t,e,n,r,s,o){return xce(t,e,n,o),x5t(t,r),k5t(t,s),t}function Ure(t,e,n,r){return t.a+=""+Lh(e==null?Vu:rc(e),n,r),t}function La(t,e){this.a=t,gr.call(this,t),Fy(e,t.gc()),this.b=e}function Gre(t){this.a=Vt(aa,Ln,1,W4t(b.Math.max(8,t))<<1,5,1)}function II(t){return u(ld(t,Vt(V0,jp,10,t.c.length,0,1)),199)}function Kd(t){return u(ld(t,Vt(hft,Rut,18,t.c.length,0,1)),482)}function Kre(t){return t.a?t.e.length==0?t.a.a:t.a.a+(""+t.e):t.c}function qS(t){for(;t.d>0&&t.a[--t.d]==0;);t.a[t.d++]==0&&(t.e=0)}function Wre(t){return ur(t.b.b!=t.d.a),t.c=t.b=t.b.b,--t.a,t.c.c}function y1n(t,e,n){t.a=e,t.c=n,t.b.a.$b(),nh(t.d),wy(t.e.a.c,0)}function Yre(t,e){var n;t.e=new rwt,n=n3(e),Ds(n,t.c),l0e(t,n,0)}function Bs(t,e,n,r){var s;s=new q8,s.a=e,s.b=n,s.c=r,Zr(t.a,s)}function le(t,e,n,r){var s;s=new q8,s.a=e,s.b=n,s.c=r,Zr(t.b,s)}function Xre(t,e,n){if(t<0||en)throw at(new Bo(O4n(t,e,n)))}function OI(t,e){if(t<0||t>=e)throw at(new Bo(l5n(t,e)));return t}function x1n(t){if(!("stack"in t))try{throw t}catch{}return t}function J4(t){return ZC(),Lt(t.g,10)?u(t.g,10):null}function k1n(t){return X4(t).dc()?!1:(Uin(t,new ft),!0)}function tw(t){var e;return ec(t)?(e=t,e==-0?0:e):B0n(t)}function Qre(t,e){return Lt(e,44)?bot(t.a,u(e,44)):!1}function Jre(t,e){return Lt(e,44)?bot(t.a,u(e,44)):!1}function Zre(t,e){return Lt(e,44)?bot(t.a,u(e,44)):!1}function d3t(t){var e;return Mb(t),e=new Mt,N4(t.a,new _4(e)),e}function g3t(){var t,e,n;return e=(n=(t=new lm,t),n),ge(QIt,e),e}function lq(t){var e;return Mb(t),e=new pn,N4(t.a,new x6(e)),e}function E1n(t,e){return t.a<=t.b?(e.Dd(t.a++),!0):!1}function tie(t){uat.call(this,t,(KE(),Pht),null,!1,null,!1)}function eie(){eie=V,c3e=$r((E$(),lt(ut(rCt,1),te,488,0,[Wht])))}function nie(){nie=V,QAt=Wee(he(1),he(4)),XAt=Wee(he(1),he(2))}function T1n(t,e){return new xit(e,CS(Oa(e.e),t,t),(Pn(),!0))}function hq(t){return new wu((oh(t,jct),Oq(Qa(Qa(5,t),t/10|0))))}function C1n(t){return _it(t.e.Rd().gc()*t.c.Rd().gc(),273,new bnt(t))}function rie(t){return u(ld(t,Vt(w4e,f2e,12,t.c.length,0,1)),2042)}function S1n(t){return rh(),!go(t)&&!(!go(t)&&t.c.i.c==t.d.i.c)}function _1n(t,e){return ak(),u(X(e,(Cc(),tx)),17).a>=t.gc()}function HS(t,e){uSn(e,t),Kvt(t.d),Kvt(u(X(t,(De(),VG)),214))}function kst(t,e){lSn(e,t),Wvt(t.d),Wvt(u(X(t,(De(),VG)),214))}function A1n(t,e,n){t.d&&zu(t.d.e,t),t.d=e,t.d&&Sm(t.d.e,n,t)}function L1n(t,e,n){return n.f.c.length>0?kyt(t.a,e,n):kyt(t.b,e,n)}function D1n(t,e,n){var r;r=Kwn();try{return wan(t,e,n)}finally{kdn(r)}}function jm(t,e){var n,r;return n=vg(t,e),r=null,n&&(r=n.pe()),r}function VS(t,e){var n,r;return n=vg(t,e),r=null,n&&(r=n.se()),r}function qE(t,e){var n,r;return n=$y(t,e),r=null,n&&(r=n.se()),r}function yg(t,e){var n,r;return n=vg(t,e),r=null,n&&(r=d6t(n)),r}function M1n(t,e,n){var r;return r=T7(n),uV(t.g,r,e),uV(t.i,e,n),e}function p3t(t,e,n){this.d=new gUt(this),this.e=t,this.i=e,this.f=n}function iie(t,e,n,r){this.e=null,this.c=t,this.d=e,this.a=n,this.b=r}function sie(t,e,n,r){nJt(this),this.c=t,this.e=e,this.f=n,this.b=r}function b3t(t,e,n,r){this.d=t,this.n=e,this.g=n,this.o=r,this.p=-1}function aie(t,e,n,r){return Lt(n,59)?new FJt(t,e,n,r):new byt(t,e,n,r)}function HE(t){return Lt(t,16)?u(t,16).dc():!t.Kc().Ob()}function oie(t){if(t.e.g!=t.b)throw at(new Th);return!!t.c&&t.d>0}function Ar(t){return ur(t.b!=t.d.c),t.c=t.b,t.b=t.b.a,++t.a,t.c.c}function w3t(t,e){Wn(e),ls(t.a,t.c,e),t.c=t.c+1&t.a.length-1,Lhe(t)}function Ob(t,e){Wn(e),t.b=t.b-1&t.a.length-1,ls(t.a,t.b,e),Lhe(t)}function cie(t){var e;e=t.Gh(),this.a=Lt(e,71)?u(e,71).Ii():e.Kc()}function I1n(t){return new gn(wgn(u(t.a.md(),16).gc(),t.a.ld()),16)}function uie(){uie=V,CEe=$r((S$(),lt(ut(IDt,1),te,489,0,[wdt])))}function lie(){lie=V,_Ee=$r((_$(),lt(ut(SEe,1),te,558,0,[mdt])))}function hie(){hie=V,UEe=$r((tS(),lt(ut(ZDt,1),te,539,0,[kP])))}function O1n(){return lw(),lt(ut(LCt,1),te,389,0,[x3,ACt,uft,lft])}function N1n(){return KE(),lt(ut(BU,1),te,303,0,[Pht,Fht,Bht,Rht])}function P1n(){return dk(),lt(ut(r3e,1),te,332,0,[$N,jN,zN,qN])}function F1n(){return m_(),lt(ut(a3e,1),te,406,0,[HN,zU,qU,VN])}function B1n(){return Gm(),lt(ut(e3e,1),te,417,0,[RN,BN,Ght,Kht])}function R1n(){return u7(),lt(ut(s4e,1),te,416,0,[bv,y3,v3,F5])}function j1n(){return ud(),lt(ut(P4e,1),te,421,0,[zk,yT,xT,mft])}function $1n(){return rH(),lt(ut(T4e,1),te,371,0,[wft,gG,pG,YN])}function z1n(){return Yy(),lt(ut(v1t,1),te,203,0,[JG,m1t,J5,Q5])}function q1n(){return Wd(),lt(ut(RAt,1),te,284,0,[Up,BAt,k1t,E1t])}function H1n(t){var e;return t.j==(ve(),Er)&&(e=J1e(t),Zu(e,Jn))}function V1n(t,e){var n;n=e.a,Xa(n,e.c.d),xa(n,e.d.d),Vy(n.a,t.n)}function m3t(t,e){var n;return n=u(od(t.b,e),67),!n&&(n=new Ki),n}function ek(t){return ZC(),Lt(t.g,154)?u(t.g,154):null}function U1n(t){t.a=null,t.e=null,wy(t.b.c,0),wy(t.f.c,0),t.c=null}function fq(){fq=V,Hft=new Xwt(J7,0),GSt=new Xwt("TOP_LEFT",1)}function US(){US=V,KA=new Jwt("UPPER",0),GA=new Jwt("LOWER",1)}function G1n(t,e){return R6(new ae(e.e.a+e.f.a/2,e.e.b+e.f.b/2),t)}function fie(t,e){return u(Vl(My(u(Ai(t.k,e),15).Oc(),R5)),113)}function die(t,e){return u(Vl(G6(u(Ai(t.k,e),15).Oc(),R5)),113)}function K1n(){return bk(),lt(ut(tLt,1),te,405,0,[sK,WA,YA,XA])}function W1n(){return a_(),lt(ut(ILt,1),te,353,0,[G1t,lK,U1t,V1t])}function Y1n(){return NH(),lt(ut(eDt,1),te,354,0,[rdt,ZLt,tDt,JLt])}function X1n(){return Yl(),lt(ut(xL,1),te,386,0,[RP,qw,BP,z3])}function Q1n(){return uh(),lt(ut(I7e,1),te,290,0,[NP,K0,h2,OP])}function J1n(){return Lg(),lt(ut(Udt,1),te,223,0,[Vdt,IP,WT,e8])}function Z1n(){return pH(),lt(ut(xIt,1),te,320,0,[Wdt,mIt,yIt,vIt])}function tdn(){return sH(),lt(ut(Y7e,1),te,415,0,[Ydt,EIt,kIt,TIt])}function edn(t){return oq(),Tu(t0t,t)?u(tr(t0t,t),341).Qg():null}function Dh(t,e,n){return e<0?Vot(t,n):u(n,69).wk().Bk(t,t.hi(),e)}function ndn(t,e,n){var r;return r=T7(n),uV(t.j,r,e),hi(t.k,e,n),e}function rdn(t,e,n){var r;return r=T7(n),uV(t.d,r,e),hi(t.e,e,n),e}function gie(t){var e,n;return e=(kb(),n=new sM,n),t&&ZH(e,t),e}function v3t(t){var e;return e=t.aj(t.i),t.i>0&&Xc(t.g,0,e,0,t.i),e}function pie(t,e){var n;for(n=t.j.c.length;n>24}function sdn(t){if(t.p!=1)throw at(new Xu);return qr(t.k)<<24>>24}function adn(t){if(t.p!=7)throw at(new Xu);return qr(t.k)<<16>>16}function odn(t){if(t.p!=7)throw at(new Xu);return qr(t.f)<<16>>16}function Z4(t,e){return e.e==0||t.e==0?yA:(F7(),Zot(t,e))}function mie(t,e){return $t(e)===$t(t)?"(this Map)":e==null?Vu:rc(e)}function cdn(t,e,n){return Fit(Ht(Ko(Eo(t.f,e))),Ht(Ko(Eo(t.f,n))))}function udn(t,e,n){var r;r=u(tr(t.g,n),60),ge(t.a.c,new Ws(e,r))}function vie(t,e,n){t.i=0,t.e=0,e!=n&&(eue(t,e,n),tue(t,e,n))}function ldn(t,e,n,r,s){var o;o=h6n(s,n,r),ge(e,r5n(s,o)),W3n(t,s,e)}function y3t(t,e,n,r,s){this.i=t,this.a=e,this.e=n,this.j=r,this.f=s}function yie(t,e){Qyt.call(this),this.a=t,this.b=e,ge(this.a.b,this)}function xie(t){this.b=new _r,this.c=new _r,this.d=new _r,this.a=t}function kie(t,e){var n;return n=new I4,t.Gd(n),n.a+="..",e.Hd(n),n.a}function Eie(t,e){var n;for(n=e;n;)Tm(t,n.i,n.j),n=Ji(n);return t}function Tie(t,e,n){var r;return r=T7(n),hi(t.b,r,e),hi(t.c,e,n),e}function xg(t){var e;for(e=0;t.Ob();)t.Pb(),e=Qa(e,1);return Oq(e)}function D0(t,e){vo();var n;return n=u(t,69).vk(),l4n(n,e),n.xl(e)}function hdn(t,e,n){if(n){var r=n.oe();t.a[e]=r(n)}else delete t.a[e]}function x3t(t,e){var n;n=t.q.getHours(),t.q.setFullYear(e+Wb),N_(t,n)}function fdn(t,e){return u(e==null?Ko(Eo(t.f,null)):iS(t.i,e),288)}function k3t(t,e){return t==(Un(),xs)&&e==xs?4:t==xs||e==xs?8:32}function dq(t,e,n){return hV(t,e,n,Lt(e,102)&&(u(e,19).Bb&po)!=0)}function ddn(t,e,n){return $7(t,e,n,Lt(e,102)&&(u(e,19).Bb&po)!=0)}function gdn(t,e,n){return i6n(t,e,n,Lt(e,102)&&(u(e,19).Bb&po)!=0)}function E3t(t){t.b!=t.c&&(t.a=Vt(aa,Ln,1,8,5,1),t.b=0,t.c=0)}function GS(t){return ur(t.a=0&&t.a[n]===e[n];n--);return n<0}function gq(t){var e;return t?new ayt(t):(e=new zd,oat(e,t),e)}function xdn(t,e){var n,r;r=!1;do n=Vce(t,e),r=r|n;while(n);return r}function kdn(t){t&&W0n((uwt(),i9t)),--MU,t&&IU!=-1&&(din(IU),IU=-1)}function pq(t){Qxt(),fJt(this,qr(sa(_m(t,24),TV)),qr(sa(t,TV)))}function Lie(){Lie=V,kye=$r((TH(),lt(ut(N9t,1),te,436,0,[zht,O9t])))}function Die(){Die=V,Eye=$r((Mq(),lt(ut(F9t,1),te,435,0,[P9t,qht])))}function Mie(){Mie=V,C3e=$r((Iq(),lt(ut(lCt,1),te,432,0,[Zht,UU])))}function Iie(){Iie=V,x4e=$r((r7(),lt(ut(y4e,1),te,517,0,[KN,dft])))}function Oie(){Oie=V,t5e=$r((qI(),lt(ut(NSt,1),te,487,0,[OSt,EG])))}function Nie(){Nie=V,X4e=$r((YI(),lt(ut(MSt,1),te,428,0,[xG,DSt])))}function Pie(){Pie=V,G4e=$r((Eq(),lt(ut(ESt,1),te,431,0,[kSt,Aft])))}function Fie(){Fie=V,R6e=$r((KI(),lt(ut(jAt,1),te,430,0,[T1t,C1t])))}function Bie(){Bie=V,fke=$r((US(),lt(ut(hke,1),te,531,0,[KA,GA])))}function Rie(){Rie=V,vke=$r((Gd(),lt(ut(mke,1),te,523,0,[Dv,Gp])))}function jie(){jie=V,xke=$r((nd(),lt(ut(yke,1),te,522,0,[Fw,yd])))}function $ie(){$ie=V,Fke=$r((C1(),lt(ut(Pke,1),te,528,0,[F3,o2])))}function zie(){zie=V,o5e=$r((fq(),lt(ut(KSt,1),te,429,0,[Hft,GSt])))}function qie(){qie=V,Hke=$r((Bm(),lt(ut(qke,1),te,464,0,[c2,Z5])))}function Hie(){Hie=V,T8e=$r((Cq(),lt(ut(BLt,1),te,434,0,[FLt,Z1t])))}function Vie(){Vie=V,b8e=$r((uq(),lt(ut(NLt,1),te,433,0,[K1t,OLt])))}function Uie(){Uie=V,x8e=$r((Kq(),lt(ut(PLt,1),te,500,0,[hK,nx])))}function Gie(){Gie=V,vEe=$r((wq(),lt(ut(CDt,1),te,490,0,[gdt,TDt])))}function Kie(){Kie=V,xEe=$r((gat(),lt(ut(MDt,1),te,491,0,[LDt,DDt])))}function Wie(){Wie=V,AEe=$r((BI(),lt(ut(ODt,1),te,438,0,[vdt,kK])))}function Yie(){Yie=V,GEe=$r((sO(),lt(ut(eMt,1),te,437,0,[TK,tMt])))}function Xie(){Xie=V,G7e=$r((vit(),lt(ut(jK,1),te,347,0,[bIt,wIt])))}function Edn(){return Rs(),lt(ut(gL,1),te,88,0,[Ed,tc,Uo,kd,Gh])}function Tdn(){return ve(),lt(ut(bo,1),qc,64,0,[bc,Hn,Jn,Er,Gn])}function Cdn(t,e,n){return u(e==null?yu(t.f,null,n):Km(t.i,e,n),288)}function Sdn(t){return(t.k==(Un(),xs)||t.k==Ms)&&qi(t,(oe(),MA))}function _st(t){return t.c&&t.d?u3t(t.c)+"->"+u3t(t.d):"e_"+Em(t)}function Fa(t,e){var n,r;for(Wn(e),r=t.Kc();r.Ob();)n=r.Pb(),e.Cd(n)}function _dn(t,e){var n;n=new _6,Q2(n,"x",e.a),Q2(n,"y",e.b),Y6(t,n)}function Adn(t,e){var n;n=new _6,Q2(n,"x",e.a),Q2(n,"y",e.b),Y6(t,n)}function Qie(t,e){var n;for(n=e;n;)Tm(t,-n.i,-n.j),n=Ji(n);return t}function C3t(t,e){var n,r;for(n=e,r=0;n>0;)r+=t.a[n],n-=n&-n;return r}function Mh(t,e,n){var r;return r=(vn(e,t.c.length),t.c[e]),t.c[e]=n,r}function S3t(t,e,n){t.a.c.length=0,ZTn(t,e,n),t.a.c.length==0||_En(t,e)}function NI(t){t.i=0,zM(t.b,null),zM(t.c,null),t.a=null,t.e=null,++t.g}function bq(){bq=V,wd=!0,fye=!1,dye=!1,pye=!1,gye=!1}function Ast(t){bq(),!wd&&(this.c=t,this.e=!0,this.a=new fe)}function Jie(t,e){this.c=0,this.b=e,xQt.call(this,t,17493),this.a=this.c}function Zie(t){nbe(),oKt(this),this.a=new Ki,s5t(this,t),Zr(this.a,t)}function tse(){Qrt(this),this.b=new ae(Zi,Zi),this.a=new ae(Vs,Vs)}function wq(){wq=V,gdt=new amt(eEt,0),TDt=new amt("TARGET_WIDTH",1)}function t5(t,e){return($b(t),wE(new ln(t,new Z3t(e,t.a)))).Bd(Rk)}function Ldn(){return Ua(),lt(ut(SCt,1),te,367,0,[Wf,H0,Qc,cu,Zo])}function Ddn(){return Qy(),lt(ut(B4e,1),te,375,0,[XN,mG,vG,wG,bG])}function Mdn(){return Ip(),lt(ut(LSt,1),te,348,0,[Dft,ASt,Mft,ST,CT])}function Idn(){return w_(),lt(ut(MAt,1),te,323,0,[DAt,y1t,x1t,zA,qA])}function Odn(){return Rh(),lt(ut(a_t,1),te,171,0,[rP,OA,s2,NA,S3])}function Ndn(){return zH(),lt(ut(k8e,1),te,368,0,[Q1t,W1t,J1t,Y1t,X1t])}function Pdn(){return A_(),lt(ut(kEe,1),te,373,0,[rx,Xk,aL,sL,xP])}function Fdn(){return DO(),lt(ut(BDt,1),te,324,0,[NDt,ydt,FDt,xdt,PDt])}function Bdn(){return D1(),lt(ut(G0,1),te,170,0,[_n,Qs,f0,Bw,Wp])}function Rdn(){return o5(),lt(ut(mL,1),te,256,0,[f2,PP,uIt,wL,lIt])}function jdn(t){return d$(),function(){return D1n(t,this,arguments)}}function go(t){return!t.c||!t.d?!1:!!t.c.i&&t.c.i==t.d.i}function _3t(t,e){return Lt(e,143)?hn(t.c,u(e,143).c):!1}function _l(t){return t.t||(t.t=new QGt(t),h_(new dWt(t),0,t.t)),t.t}function ese(t){this.b=t,Zn.call(this,t),this.a=u(jn(this.b.a,4),129)}function nse(t){this.b=t,$6.call(this,t),this.a=u(jn(this.b.a,4),129)}function jf(t,e,n,r,s){fse.call(this,e,r,s),this.c=t,this.b=n}function A3t(t,e,n,r,s){_re.call(this,e,r,s),this.c=t,this.a=n}function L3t(t,e,n,r,s){Are.call(this,e,r,s),this.c=t,this.a=n}function D3t(t,e,n,r,s){fse.call(this,e,r,s),this.c=t,this.a=n}function Lst(t,e){var n;return n=u(od(t.d,e),23),n||u(od(t.e,e),23)}function rse(t,e){var n,r;return n=e.ld(),r=t.Fe(n),!!r&&Nc(r.e,e.md())}function ise(t,e){var n;return n=e.ld(),new bm(n,t.e.pc(n,u(e.md(),16)))}function $dn(t,e){var n;return n=t.a.get(e),n??Vt(aa,Ln,1,0,5,1)}function sse(t){var e;return e=t.length,hn(Qn.substr(Qn.length-e,e),t)}function dr(t){if(Mr(t))return t.c=t.a,t.a.Pb();throw at(new cc)}function M3t(t,e){return e==0||t.e==0?t:e>0?Yde(t,e):mle(t,-e)}function nk(t,e){return e==0||t.e==0?t:e>0?mle(t,e):Yde(t,-e)}function I3t(t){Qrn.call(this,t==null?Vu:rc(t),Lt(t,82)?u(t,82):null)}function ase(t){var e;return t.c||(e=t.r,Lt(e,90)&&(t.c=u(e,29))),t.c}function Dst(t){var e;return e=new Pm,Qo(e,t),Zt(e,(De(),Vo),null),e}function ose(t){var e,n;return e=t.c.i,n=t.d.i,e.k==(Un(),Ms)&&n.k==Ms}function Mst(t){var e,n,r;return e=t&Il,n=t>>22&Il,r=t<0?Fg:0,Eu(e,n,r)}function zdn(t){var e,n,r,s;for(n=t,r=0,s=n.length;r=0?t.Lh(r,n,!0):tv(t,e,n)}function Hdn(t,e,n){return Bi(R6(S7(t),Oa(e.b)),R6(S7(t),Oa(n.b)))}function Vdn(t,e,n){return Bi(R6(S7(t),Oa(e.e)),R6(S7(t),Oa(n.e)))}function Udn(t,e){return b.Math.min(Nb(e.a,t.d.d.c),Nb(e.b,t.d.d.c))}function PI(t,e){t._i(t.i+1),kS(t,t.i,t.Zi(t.i,e)),t.Mi(t.i++,e),t.Ni()}function KS(t){var e,n;++t.j,e=t.g,n=t.i,t.g=null,t.i=0,t.Oi(n,e),t.Ni()}function cse(t,e,n){var r;r=new Mmt(t.a),t_(r,t.a.a),yu(r.f,e,n),t.a.a=r}function O3t(t,e,n,r){var s;for(s=0;se)throw at(new Bo(x6t(t,e,"index")));return t}function Ep(t,e){var n;return n=(vn(e,t.c.length),t.c[e]),Swt(t.c,e,1),n}function F3t(t,e){var n,r;return n=(Wn(t),t),r=(Wn(e),e),n==r?0:ne.p?-1:0}function bse(t){var e;return t.a||(e=t.r,Lt(e,156)&&(t.a=u(e,156))),t.a}function Qdn(t,e,n){var r;return++t.e,--t.f,r=u(t.d[e].gd(n),136),r.md()}function Jdn(t){var e,n;return e=t.ld(),n=u(t.md(),16),pI(n.Nc(),new mnt(e))}function wse(t,e){return Tu(t.a,e)?(rk(t.a,e),!0):!1}function ik(t,e,n){return OI(e,t.e.Rd().gc()),OI(n,t.c.Rd().gc()),t.a[e][n]}function vq(t,e,n){this.a=t,this.b=e,this.c=n,ge(t.t,this),ge(e.i,this)}function yq(t,e,n,r){this.f=t,this.e=e,this.d=n,this.b=r,this.c=r?r.d:null}function FI(){this.b=new Ki,this.a=new Ki,this.b=new Ki,this.a=new Ki}function VE(){VE=V;var t,e;QK=(bE(),e=new o$,e),JK=(t=new Hnt,t)}function Zdn(t){var e;return $b(t),e=new ute(t,t.a.e,t.a.d|4),new rvt(t,e)}function mse(t){var e;for(Mb(t),e=0;t.a.Bd(new xn);)e=Qa(e,1);return e}function xq(t,e){return Wn(e),t.c=0,"Initial capacity must not be negative")}function kq(){kq=V,oL=new Oi("org.eclipse.elk.labels.labelManager")}function vse(){vse=V,wSt=new rs("separateLayerConnections",(rH(),wft))}function C1(){C1=V,F3=new emt("REGULAR",0),o2=new emt("CRITICAL",1)}function BI(){BI=V,vdt=new cmt("FIXED",0),kK=new cmt("CENTER_NODE",1)}function Eq(){Eq=V,kSt=new Kwt("QUADRATIC",0),Aft=new Kwt("SCANLINE",1)}function yse(){yse=V,K4e=$r((QS(),lt(ut(CSt,1),te,322,0,[_A,QN,TSt])))}function xse(){xse=V,W4e=$r(($q(),lt(ut(_St,1),te,351,0,[SSt,yG,Lft])))}function kse(){kse=V,J4e=$r((ow(),lt(ut(Q4e,1),te,459,0,[Ift,_T,z5])))}function Ese(){Ese=V,H4e=$r((Vm(),lt(ut(vft,1),te,372,0,[mv,r2,wv])))}function Tse(){Tse=V,a5e=$r((Cg(),lt(ut(s5e,1),te,311,0,[ZN,H5,qk])))}function Cse(){Cse=V,i5e=$r((c7(),lt(ut(qft,1),te,298,0,[$ft,zft,JN])))}function Sse(){Sse=V,O6e=$r((o_(),lt(ut(LAt,1),te,390,0,[w1t,AAt,QG])))}function _se(){_se=V,z6e=$r((tH(),lt(ut(qAt,1),te,387,0,[$At,S1t,zAt])))}function Ase(){Ase=V,q6e=$r((i_(),lt(ut(HAt,1),te,349,0,[A1t,_1t,lP])))}function Lse(){Lse=V,$6e=$r((To(),lt(ut(j6e,1),te,462,0,[HA,vl,ku])))}function Dse(){Dse=V,V6e=$r((jq(),lt(ut(WAt,1),te,352,0,[KAt,D1t,GAt])))}function Mse(){Mse=V,H6e=$r((b7(),lt(ut(UAt,1),te,350,0,[L1t,VAt,VA])))}function Ise(){Ise=V,U6e=$r((iH(),lt(ut(YAt,1),te,388,0,[M1t,$T,P3])))}function Ose(){Ose=V,Gke=$r((s_(),lt(ut(fLt,1),te,392,0,[hLt,N1t,dP])))}function Nse(){Nse=V,C8e=$r((uO(),lt(ut($Lt,1),te,393,0,[fK,RLt,jLt])))}function Pse(){Pse=V,G8e=$r((Zq(),lt(ut(iDt,1),te,299,0,[idt,rDt,nDt])))}function Fse(){Fse=V,K8e=$r((vH(),lt(ut(sDt,1),te,445,0,[mP,pK,sdt])))}function Bse(){Bse=V,Y8e=$r((DH(),lt(ut(W8e,1),te,455,0,[adt,cdt,odt])))}function Rse(){Rse=V,J8e=$r((dH(),lt(ut(cDt,1),te,394,0,[oDt,hdt,aDt])))}function jse(){jse=V,yEe=$r((Sq(),lt(ut(ADt,1),te,439,0,[pdt,_Dt,SDt])))}function $se(){$se=V,oke=$r((Hm(),lt(ut(ake,1),te,463,0,[hP,UA,eK])))}function zse(){zse=V,Lye=$r((pl(),lt(ut(Aye,1),te,470,0,[c0,e2,Gf])))}function qse(){qse=V,_ye=$r((A1(),lt(ut(m3,1),te,237,0,[Ac,xu,Lc])))}function Hse(){Hse=V,Mye=$r((qu(),lt(ut(Dye,1),te,471,0,[O1,n2,Kf])))}function Vse(){Vse=V,bye=$r((bl(),lt(ut(Ho,1),te,108,0,[I9t,sc,w3])))}function Use(){Use=V,Q3e=$r((WS(),lt(ut(CCt,1),te,391,0,[rft,nft,ift])))}function Gse(){Gse=V,M7e=$r((Ag(),lt(ut(cIt,1),te,346,0,[IK,Xp,bL])))}function Kse(){Kse=V,TEe=$r((pO(),lt(ut(bdt,1),te,444,0,[vK,yK,xK])))}function Wse(){Wse=V,_7e=$r((cd(),lt(ut(XMt,1),te,278,0,[GT,$3,KT])))}function Yse(){Yse=V,U7e=$r((lk(),lt(ut(pIt,1),te,280,0,[gIt,q3,RK])))}function ad(t,e){return!t.o&&(t.o=new nl((zc(),X0),Qp,t,0)),Yat(t.o,e)}function t0n(t,e){var n;t.C&&(n=u(Io(t.b,e),127).n,n.d=t.C.d,n.a=t.C.a)}function z3t(t){var e,n,r,s;s=t.d,e=t.a,n=t.b,r=t.c,t.d=n,t.a=r,t.b=s,t.c=e}function e0n(t){return!t.g&&(t.g=new gC),!t.g.b&&(t.g.b=new KGt(t)),t.g.b}function RI(t){return!t.g&&(t.g=new gC),!t.g.c&&(t.g.c=new XGt(t)),t.g.c}function n0n(t){return!t.g&&(t.g=new gC),!t.g.d&&(t.g.d=new WGt(t)),t.g.d}function r0n(t){return!t.g&&(t.g=new gC),!t.g.a&&(t.g.a=new YGt(t)),t.g.a}function i0n(t,e,n,r){return n&&(r=n.Rh(e,ns(n.Dh(),t.c.uk()),null,r)),r}function s0n(t,e,n,r){return n&&(r=n.Th(e,ns(n.Dh(),t.c.uk()),null,r)),r}function Pst(t,e,n,r){var s;return s=Vt(Fr,ii,28,e+1,15,1),u7n(s,t,e,n,r),s}function Vt(t,e,n,r,s,o){var h;return h=yhe(s,r),s!=10&<(ut(t,o),e,n,s,h),h}function a0n(t,e,n){var r,s;for(s=new o7(e,t),r=0;rn||e=0?t.Lh(n,!0,!0):tv(t,e,!0)}function E0n(t,e,n){var r;return r=Jce(t,e,n),t.b=new Yq(r.c.length),ukt(t,r)}function T0n(t){if(t.b<=0)throw at(new cc);return--t.b,t.a-=t.c.c,he(t.a)}function C0n(t){var e;if(!t.a)throw at(new cne);return e=t.a,t.a=Ji(t.a),e}function S0n(t){for(;!t.a;)if(!NZt(t.c,new BC(t)))return!1;return!0}function sk(t){var e;return Hr(t),Lt(t,204)?(e=u(t,204),e):new b6(t)}function _0n(t){Tq(),u(t.of((ai(),j3)),181).Fc((wl(),FP)),t.qf(zdt,null)}function Tq(){Tq=V,YEe=new NR,QEe=new PR,XEe=pbn((ai(),zdt),YEe,l2,QEe)}function Cq(){Cq=V,FLt=new smt("LEAF_NUMBER",0),Z1t=new smt("NODE_SIZE",1)}function $st(t){t.a=Vt(Fr,ii,28,t.b+1,15,1),t.c=Vt(Fr,ii,28,t.b,15,1),t.d=0}function A0n(t,e){t.a.Ne(e.d,t.b)>0&&(ge(t.c,new qvt(e.c,e.d,t.d)),t.b=e.d)}function Q3t(t,e){if(t.g==null||e>=t.i)throw at(new Grt(e,t.i));return t.g[e]}function Zse(t,e,n){if(d7(t,n),n!=null&&!t.fk(n))throw at(new $nt);return n}function zst(t,e){return WI(e)!=10&<(Wl(e),e.Sm,e.__elementTypeId$,WI(e),t),t}function GE(t,e,n,r){var s;r=(Nm(),r||C9t),s=t.slice(e,n),k6t(s,t,e,n,-e,r)}function Ih(t,e,n,r,s){return e<0?tv(t,n,r):u(n,69).wk().yk(t,t.hi(),e,r,s)}function L0n(t,e){return Bi(Rt(Ht(X(t,(oe(),xv)))),Rt(Ht(X(e,xv))))}function tae(){tae=V,lye=$r((KE(),lt(ut(BU,1),te,303,0,[Pht,Fht,Bht,Rht])))}function KE(){KE=V,Pht=new M$("All",0),Fht=new VQt,Bht=new ZQt,Rht=new HQt}function pl(){pl=V,c0=new wrt(_k,0),e2=new wrt(J7,1),Gf=new wrt(Ak,2)}function eae(){eae=V,fV(),sOt=Zi,JTe=Vs,aOt=new na(Zi),ZTe=new na(Vs)}function nae(){nae=V,n3e=$r((Gm(),lt(ut(e3e,1),te,417,0,[RN,BN,Ght,Kht])))}function rae(){rae=V,o3e=$r((m_(),lt(ut(a3e,1),te,406,0,[HN,zU,qU,VN])))}function iae(){iae=V,i3e=$r((dk(),lt(ut(r3e,1),te,332,0,[$N,jN,zN,qN])))}function sae(){sae=V,f4e=$r((lw(),lt(ut(LCt,1),te,389,0,[x3,ACt,uft,lft])))}function aae(){aae=V,a4e=$r((u7(),lt(ut(s4e,1),te,416,0,[bv,y3,v3,F5])))}function oae(){oae=V,F4e=$r((ud(),lt(ut(P4e,1),te,421,0,[zk,yT,xT,mft])))}function cae(){cae=V,C4e=$r((rH(),lt(ut(T4e,1),te,371,0,[wft,gG,pG,YN])))}function uae(){uae=V,N6e=$r((Yy(),lt(ut(v1t,1),te,203,0,[JG,m1t,J5,Q5])))}function lae(){lae=V,B6e=$r((Wd(),lt(ut(RAt,1),te,284,0,[Up,BAt,k1t,E1t])))}function qI(){qI=V,OSt=new Ywt(r0,0),EG=new Ywt("IMPROVE_STRAIGHTNESS",1)}function hae(t,e){var n,r;return r=e/t.c.Rd().gc()|0,n=e%t.c.Rd().gc(),ik(t,r,n)}function fae(t){var e;if(t.nl())for(e=t.i-1;e>=0;--e)Dt(t,e);return v3t(t)}function J3t(t){var e,n;if(!t.b)return null;for(n=t.b;e=n.a[0];)n=e;return n}function dae(t){var e,n;if(!t.b)return null;for(n=t.b;e=n.a[1];)n=e;return n}function D0n(t){return Lt(t,180)?""+u(t,180).a:t==null?null:rc(t)}function M0n(t){return Lt(t,180)?""+u(t,180).a:t==null?null:rc(t)}function gae(t,e){if(e.a)throw at(new uc(Nbe));qs(t.a,e),e.a=t,!t.j&&(t.j=e)}function Z3t(t,e){ez.call(this,e.zd(),e.yd()&-16449),Wn(t),this.a=t,this.c=e}function I0n(t,e){return new xit(e,Tm(Oa(e.e),e.f.a+t,e.f.b+t),(Pn(),!1))}function O0n(t,e){return LE(),ge(t,new Ws(e,he(e.e.c.length+e.g.c.length)))}function N0n(t,e){return LE(),ge(t,new Ws(e,he(e.e.c.length+e.g.c.length)))}function pae(){pae=V,U8e=$r((NH(),lt(ut(eDt,1),te,354,0,[rdt,ZLt,tDt,JLt])))}function bae(){bae=V,p8e=$r((a_(),lt(ut(ILt,1),te,353,0,[G1t,lK,U1t,V1t])))}function wae(){wae=V,Vke=$r((bk(),lt(ut(tLt,1),te,405,0,[sK,WA,YA,XA])))}function mae(){mae=V,A7e=$r((Lg(),lt(ut(Udt,1),te,223,0,[Vdt,IP,WT,e8])))}function vae(){vae=V,O7e=$r((uh(),lt(ut(I7e,1),te,290,0,[NP,K0,h2,OP])))}function yae(){yae=V,H7e=$r((Yl(),lt(ut(xL,1),te,386,0,[RP,qw,BP,z3])))}function xae(){xae=V,K7e=$r((pH(),lt(ut(xIt,1),te,320,0,[Wdt,mIt,yIt,vIt])))}function kae(){kae=V,X7e=$r((sH(),lt(ut(Y7e,1),te,415,0,[Ydt,EIt,kIt,TIt])))}function Sq(){Sq=V,pdt=new zrt(J2e,0),_Dt=new zrt(y7t,1),SDt=new zrt(r0,2)}function jy(t,e,n,r,s){return Wn(t),Wn(e),Wn(n),Wn(r),Wn(s),new Tyt(t,e,r)}function Eae(t,e){var n;return n=u(rk(t.e,e),400),n?(Zvt(n),n.e):null}function zu(t,e){var n;return n=Xo(t,e,0),n==-1?!1:(Ep(t,n),!0)}function Tae(t,e,n){var r;return Mb(t),r=new Je,r.a=e,t.a.Nb(new sXt(r,n)),r.a}function P0n(t){var e;return Mb(t),e=Vt(ma,No,28,0,15,1),N4(t.a,new y6(e)),e}function t4t(t){var e;if(!rat(t))throw at(new cc);return t.e=1,e=t.d,t.d=null,e}function Cp(t){var e;return ec(t)&&(e=0-t,!isNaN(e))?e:Fb(h7(t))}function Xo(t,e,n){for(;n=0?AH(t,n,!0,!0):tv(t,e,!0)}function n4t(t){var e;return e=nw(jn(t,32)),e==null&&(Au(t),e=nw(jn(t,32))),e}function r4t(t){var e;return t.Oh()||(e=fr(t.Dh())-t.ji(),t.$h().Mk(e)),t.zh()}function Dae(t,e){eCt=new Le,s3e=e,kA=t,u(kA.b,68),V3t(kA,eCt,null),Gge(kA)}function WS(){WS=V,rft=new vrt("XY",0),nft=new vrt("X",1),ift=new vrt("Y",2)}function qu(){qu=V,O1=new mrt("TOP",0),n2=new mrt(J7,1),Kf=new mrt(O8t,2)}function Cg(){Cg=V,ZN=new Crt(r0,0),H5=new Crt("TOP",1),qk=new Crt(O8t,2)}function KI(){KI=V,T1t=new Qwt("INPUT_ORDER",0),C1t=new Qwt("PORT_DEGREE",1)}function WE(){WE=V,a9t=Eu(Il,Il,524287),Wve=Eu(0,0,aN),o9t=Mst(1),Mst(2),c9t=Mst(0)}function Gst(t){var e;return t.d!=t.r&&(e=of(t),t.e=!!e&&e.lk()==Wme,t.d=e),t.e}function Kst(t,e,n){var r;return r=t.g[e],kS(t,e,t.Zi(e,n)),t.Ri(e,n,r),t.Ni(),r}function Dq(t,e){var n;return n=t.dd(e),n>=0?(t.gd(n),!0):!1}function Wst(t,e){var n;for(Hr(t),Hr(e),n=!1;e.Ob();)n=n|t.Fc(e.Pb());return n}function od(t,e){var n;return n=u(tr(t.e,e),400),n?(hJt(t,n),n.e):null}function Mae(t){var e,n;return e=t/60|0,n=t%60,n==0?""+e:""+e+":"+(""+n)}function $y(t,e){var n=t.a[e],r=(yat(),Lht)[typeof n];return r?r(n):f5t(typeof n)}function fc(t,e){var n,r;return $b(t),r=new R3t(e,t.a),n=new BZt(r),new ln(t,n)}function Yst(t){var e;return e=t.b.c.length==0?null:Oe(t.b,0),e!=null&&sat(t,0),e}function j0n(t,e){var n,r,s;s=e.c.i,n=u(tr(t.f,s),60),r=n.d.c-n.e.c,P4t(e.a,r,0)}function i4t(t,e){var n;for(++t.d,++t.c[e],n=e+1;n=0;)++e[0]}function $0n(t,e){Su(t,e==null||bz((Wn(e),e))||isNaN((Wn(e),e))?0:(Wn(e),e))}function z0n(t,e){_u(t,e==null||bz((Wn(e),e))||isNaN((Wn(e),e))?0:(Wn(e),e))}function q0n(t,e){qm(t,e==null||bz((Wn(e),e))||isNaN((Wn(e),e))?0:(Wn(e),e))}function H0n(t,e){zm(t,e==null||bz((Wn(e),e))||isNaN((Wn(e),e))?0:(Wn(e),e))}function V0n(t,e,n){return R6(new ae(n.e.a+n.f.a/2,n.e.b+n.f.b/2),t)==(Wn(e),e)}function U0n(t,e){return Lt(e,102)&&u(e,19).Bb&po?new Krt(e,t):new o7(e,t)}function G0n(t,e){return Lt(e,102)&&u(e,19).Bb&po?new Krt(e,t):new o7(e,t)}function WI(t){return t.__elementTypeCategory$==null?10:t.__elementTypeCategory$}function Nae(t,e){return e==(bit(),bit(),oye)?t.toLocaleLowerCase():t.toLowerCase()}function Pae(t){if(!t.e)throw at(new cc);return t.c=t.a=t.e,t.e=t.e.e,--t.d,t.a.f}function s4t(t){if(!t.c)throw at(new cc);return t.e=t.a=t.c,t.c=t.c.c,++t.d,t.a.f}function Fae(t){var e;for(++t.a,e=t.c.a.length;t.at.a[r]&&(r=n);return r}function Bae(t){var e;return e=u(X(t,(oe(),vv)),313),e?e.a==t:!1}function Rae(t){var e;return e=u(X(t,(oe(),vv)),313),e?e.i==t:!1}function jae(){jae=V,e4e=$r((Ua(),lt(ut(SCt,1),te,367,0,[Wf,H0,Qc,cu,Zo])))}function $ae(){$ae=V,R4e=$r((Qy(),lt(ut(B4e,1),te,375,0,[XN,mG,vG,wG,bG])))}function zae(){zae=V,Y4e=$r((Ip(),lt(ut(LSt,1),te,348,0,[Dft,ASt,Mft,ST,CT])))}function qae(){qae=V,P6e=$r((w_(),lt(ut(MAt,1),te,323,0,[DAt,y1t,x1t,zA,qA])))}function Hae(){Hae=V,c5e=$r((Rh(),lt(ut(a_t,1),te,171,0,[rP,OA,s2,NA,S3])))}function Vae(){Vae=V,E8e=$r((zH(),lt(ut(k8e,1),te,368,0,[Q1t,W1t,J1t,Y1t,X1t])))}function Uae(){Uae=V,EEe=$r((A_(),lt(ut(kEe,1),te,373,0,[rx,Xk,aL,sL,xP])))}function Gae(){Gae=V,LEe=$r((DO(),lt(ut(BDt,1),te,324,0,[NDt,ydt,FDt,xdt,PDt])))}function Kae(){Kae=V,S7e=$r((Rs(),lt(ut(gL,1),te,88,0,[Ed,tc,Uo,kd,Gh])))}function Wae(){Wae=V,JEe=$r((D1(),lt(ut(G0,1),te,170,0,[_n,Qs,f0,Bw,Wp])))}function Yae(){Yae=V,P7e=$r((o5(),lt(ut(mL,1),te,256,0,[f2,PP,uIt,wL,lIt])))}function Xae(){Xae=V,R7e=$r((ve(),lt(ut(bo,1),qc,64,0,[bc,Hn,Jn,Er,Gn])))}function Mq(){Mq=V,P9t=new zwt("BY_SIZE",0),qht=new zwt("BY_SIZE_AND_SHAPE",1)}function Iq(){Iq=V,Zht=new Vwt("EADES",0),UU=new Vwt("FRUCHTERMAN_REINGOLD",1)}function YI(){YI=V,xG=new Wwt("READING_DIRECTION",0),DSt=new Wwt("ROTATION",1)}function YS(){YS=V,u4e=new BD,l4e=new $X,o4e=new P2,c4e=new Gc,h4e=new zX}function Qae(t){this.b=new fe,this.a=new fe,this.c=new fe,this.d=new fe,this.e=t}function Jae(t){this.g=t,this.f=new fe,this.a=b.Math.min(this.g.c.c,this.g.d.c)}function Zae(t,e,n){gz.call(this),c4t(this),this.a=t,this.c=n,this.b=e.d,this.f=e.e}function J0n(t,e,n){var r,s;for(s=new G(n);s.a=0&&e0?e-1:e,NWt(Crn(Eoe(Yvt(new S6,n),t.n),t.j),t.k)}function zo(t){var e,n;n=(e=new Vnt,e),Or((!t.q&&(t.q=new Jt(vf,t,11,10)),t.q),n)}function a4t(t){return(t.i&2?"interface ":t.i&1?"":"class ")+(wg(t),t.o)}function Oq(t){return $c(t,xi)>0?xi:$c(t,Ga)<0?Ga:qr(t)}function zy(t){return t<3?(oh(t,pbe),t+1):t=-.01&&t.a<=gd&&(t.a=0),t.b>=-.01&&t.b<=gd&&(t.b=0),t}function e5(t){w5();var e,n;for(n=E7t,e=0;en&&(n=t[e]);return n}function roe(t,e){var n;if(n=zO(t.Dh(),e),!n)throw at(new zn(Jb+e+qlt));return n}function qy(t,e){var n;for(n=t;Ji(n);)if(n=Ji(n),n==e)return!0;return!1}function ugn(t,e){var n,r,s;for(r=e.a.ld(),n=u(e.a.md(),16).gc(),s=0;st||t>e)throw at(new gwt("fromIndex: 0, toIndex: "+t+x8t+e))}function $m(t){if(t<0)throw at(new zn("Illegal Capacity: "+t));this.g=this.aj(t)}function o4t(t,e){return Z1(),$f(Kb),b.Math.abs(t-e)<=Kb||t==e||isNaN(t)&&isNaN(e)}function Jst(t,e){var n,r,s,o;for(r=t.d,s=0,o=r.length;s0&&(t.a/=e,t.b/=e),t}function sh(t){var e;return t.w?t.w:(e=e1n(t),e&&!e.Vh()&&(t.w=e),e)}function YE(t,e){var n,r;r=t.a,n=s2n(t,e,null),r!=e&&!t.e&&(n=H7(t,e,n)),n&&n.oj()}function coe(t,e,n){var r,s;r=e;do s=Rt(t.p[r.p])+n,t.p[r.p]=s,r=t.a[r.p];while(r!=e)}function uoe(t,e,n){var r=function(){return t.apply(r,arguments)};return e.apply(r,n),r}function bgn(t){var e;return t==null?null:(e=u(t,195),A3n(e,e.length))}function Dt(t,e){if(t.g==null||e>=t.i)throw at(new Grt(e,t.i));return t.Wi(e,t.g[e])}function wgn(t,e){mn();var n,r;for(r=new fe,n=0;n=14&&e<=16))),t}function jr(t,e){var n;return Wn(e),n=t[":"+e],wI(!!n,"Enum constant undefined: "+e),n}function Lr(t,e,n,r,s,o){var h;return h=Wit(t,e),Toe(n,h),h.i=s?8:0,h.f=r,h.e=s,h.g=o,h}function l4t(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=1,this.c=t,this.a=n}function h4t(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=2,this.c=t,this.a=n}function f4t(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=6,this.c=t,this.a=n}function d4t(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=7,this.c=t,this.a=n}function g4t(t,e,n,r,s){this.d=e,this.j=r,this.e=s,this.o=-1,this.p=4,this.c=t,this.a=n}function Coe(t,e){var n,r,s,o;for(r=e,s=0,o=r.length;s=0))throw at(new zn("tolerance ("+t+") must be >= 0"));return t}function _oe(t,e){var n;return Lt(e,44)?t.c.Mc(e):(n=Yat(t,e),yH(t,e),n)}function Oo(t,e,n){return uw(t,e),mu(t,n),Sp(t,0),Hy(t,1),Mp(t,!0),Dp(t,!0),t}function QI(t,e){var n;if(n=t.gc(),e<0||e>n)throw at(new Dy(e,n));return new Cvt(t,e)}function zq(t,e){t.b=b.Math.max(t.b,e.d),t.e+=e.r+(t.a.c.length==0?0:t.c),ge(t.a,e)}function Aoe(t){_y(t.c>=0),Mwn(t.d,t.c)<0&&(t.a=t.a-1&t.d.a.length-1,t.b=t.d.c),t.c=-1}function qq(t){var e,n;for(n=t.c.Cc().Kc();n.Ob();)e=u(n.Pb(),16),e.$b();t.c.$b(),t.d=0}function _gn(t){var e,n,r,s;for(n=t.a,r=0,s=n.length;r=0}function x4t(t,e){t.r>0&&t.c0&&t.g!=0&&x4t(t.i,e/t.r*t.i.d))}function k4t(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,1,n,t.c))}function eat(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,4,n,t.c))}function n7(t,e){var n;n=t.k,t.k=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,2,n,t.k))}function nat(t,e){var n;n=t.D,t.D=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,2,n,t.D))}function Vq(t,e){var n;n=t.f,t.f=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,8,n,t.f))}function Uq(t,e){var n;n=t.i,t.i=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,7,n,t.i))}function E4t(t,e){var n;n=t.a,t.a=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,8,n,t.a))}function T4t(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,0,n,t.b))}function C4t(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,0,n,t.b))}function S4t(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,1,n,t.c))}function _4t(t,e){var n;n=t.d,t.d=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,1,n,t.d))}function Ngn(t,e,n){var r;t.b=e,t.a=n,r=(t.a&512)==512?new YKt:new kj,t.c=Wkn(r,t.b,t.a)}function $oe(t,e){return Ng(t.e,e)?(vo(),Gst(e)?new Sz(e,t):new eI(e,t)):new gQt(e,t)}function Pgn(t){var e,n;return 0>t?new Lwt:(e=t+1,n=new Jie(e,t),new ivt(null,n))}function Fgn(t,e){mn();var n;return n=new M6(1),ba(t)?jo(n,t,e):yu(n.f,t,e),new Kn(n)}function Bgn(t,e){var n,r;return n=t.c,r=e.e[t.p],r>0?u(Oe(n.a,r-1),10):null}function Rgn(t,e){var n,r;return n=t.o+t.p,r=e.o+e.p,ne?(e<<=1,e>0?e:z_):e}function rat(t){switch(Rmt(t.e!=3),t.e){case 2:return!1;case 0:return!0}return Kdn(t)}function qoe(t,e){var n;return Lt(e,8)?(n=u(e,8),t.a==n.a&&t.b==n.b):!1}function $gn(t,e){var n;n=new Le,u(e.b,68),u(e.b,68),u(e.b,68),Cu(e.a,new Pvt(t,n,e))}function Hoe(t,e){var n,r;for(r=e.vc().Kc();r.Ob();)n=u(r.Pb(),44),SO(t,n.ld(),n.md())}function A4t(t,e){var n;n=t.d,t.d=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,11,n,t.d))}function Gq(t,e){var n;n=t.j,t.j=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,13,n,t.j))}function L4t(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,21,n,t.b))}function zgn(t,e){(bq(),wd?null:e.c).length==0&&sZt(e,new _e),jo(t.a,wd?null:e.c,e)}function qgn(t,e){e.Ug("Hierarchical port constraint processing",1),amn(t),SSn(t),e.Vg()}function Vm(){Vm=V,mv=new yrt("START",0),r2=new yrt("MIDDLE",1),wv=new yrt("END",2)}function Kq(){Kq=V,hK=new imt("P1_NODE_PLACEMENT",0),nx=new imt("P2_EDGE_ROUTING",1)}function Pb(){Pb=V,$k=new Oi(G8t),WU=new Oi(s2e),TA=new Oi(a2e),UN=new Oi(o2e)}function Um(t){var e;return wit(t.f.g,t.d),ur(t.b),t.c=t.a,e=u(t.a.Pb(),44),t.b=q4t(t),e}function D4t(t){var e;return t.b==null?(bp(),bp(),KP):(e=t.ul()?t.tl():t.sl(),e)}function Voe(t,e){var n;return n=e==null?-1:Xo(t.b,e,0),n<0?!1:(sat(t,n),!0)}function zf(t,e){var n;return Wn(e),n=e.g,t.b[n]?!1:(ls(t.b,n,e),++t.c,!0)}function Wq(t,e){var n,r;return n=1-e,r=t.a[n],t.a[n]=r.a[e],r.a[e]=t,t.b=!0,r.b=!1,r}function Hgn(t,e){var n,r;for(r=e.Kc();r.Ob();)n=u(r.Pb(),272),t.b=!0,qs(t.e,n),n.b=t}function Vgn(t,e){var n,r;return n=u(X(t,(De(),I3)),8),r=u(X(e,I3),8),Bi(n.b,r.b)}function iat(t,e,n){var r,s,o;return o=e>>5,s=e&31,r=sa(Ab(t.n[n][o],qr(Rf(s,1))),3),r}function Uoe(t,e,n){var r,s,o;for(o=t.a.length-1,s=t.b,r=0;r0?1:0:(!t.c&&(t.c=DI(Pc(t.f))),t.c).e}function tce(t,e){e?t.B==null&&(t.B=t.D,t.D=null):t.B!=null&&(t.D=t.B,t.B=null)}function Wgn(t,e){return u7(),t==bv&&e==y3||t==y3&&e==bv||t==F5&&e==v3||t==v3&&e==F5}function Ygn(t,e){return u7(),t==bv&&e==v3||t==bv&&e==F5||t==y3&&e==F5||t==y3&&e==v3}function ece(t,e){return Z1(),$f(gd),b.Math.abs(0-e)<=gd||e==0||isNaN(0)&&isNaN(e)?0:t/e}function nce(t,e){return Rt(Ht(Vl(dO(Wo(new ln(null,new gn(t.c.b,16)),new uUt(t)),e))))}function N4t(t,e){return Rt(Ht(Vl(dO(Wo(new ln(null,new gn(t.c.b,16)),new cUt(t)),e))))}function Xgn(){return Co(),lt(ut(jft,1),te,259,0,[CG,Uh,LA,SG,DT,q5,DA,AT,LT,_G])}function Qgn(){return cf(),lt(ut(FAt,1),te,243,0,[ZG,cP,uP,OAt,NAt,IAt,PAt,tK,Lv,N3])}function Jgn(t,e){var n;e.Ug("General Compactor",1),n=rwn(u(ne(t,(Ub(),edt)),393)),n.Cg(t)}function Zgn(t,e){var n,r;return n=u(ne(t,(Ub(),dK)),17),r=u(ne(e,dK),17),jc(n.a,r.a)}function P4t(t,e,n){var r,s;for(s=Dr(t,0);s.b!=s.d.c;)r=u(Ar(s),8),r.a+=e,r.b+=n;return t}function JS(t,e,n){var r;for(r=t.b[n&t.f];r;r=r.b)if(n==r.a&&Ud(e,r.g))return r;return null}function ZS(t,e,n){var r;for(r=t.c[n&t.f];r;r=r.d)if(n==r.f&&Ud(e,r.i))return r;return null}function tpn(t,e,n){var r,s,o;for(r=0,s=0;s>>31;r!=0&&(t[n]=r)}function uat(t,e,n,r,s,o){var h;this.c=t,h=new fe,gxt(t,h,e,t.b,n,r,s,o),this.a=new La(h,0)}function rce(){this.c=new m$(0),this.b=new m$(k7t),this.d=new m$(U2e),this.a=new m$(Mut)}function Nh(t,e,n,r,s,o,h){Rr.call(this,t,e),this.d=n,this.e=r,this.c=s,this.b=o,this.a=id(h)}function vs(t,e,n,r,s,o,h,d,m,k,T,A,P){return u1e(t,e,n,r,s,o,h,d,m,k,T,A,P),qat(t,!1),t}function epn(t){return t.b.c.i.k==(Un(),Ms)?u(X(t.b.c.i,(oe(),Li)),12):t.b.c}function ice(t){return t.b.d.i.k==(Un(),Ms)?u(X(t.b.d.i,(oe(),Li)),12):t.b.d}function npn(t){var e;return e=lq(t),vm(e.a,0)?(k$(),k$(),cye):(k$(),new jJt(e.b))}function lat(t){var e;return e=d3t(t),vm(e.a,0)?(yy(),yy(),Nht):(yy(),new oit(e.b))}function hat(t){var e;return e=d3t(t),vm(e.a,0)?(yy(),yy(),Nht):(yy(),new oit(e.c))}function sce(t){switch(t.g){case 2:return ve(),Gn;case 4:return ve(),Jn;default:return t}}function ace(t){switch(t.g){case 1:return ve(),Er;case 3:return ve(),Hn;default:return t}}function oce(t){switch(t.g){case 0:return new Dtt;case 1:return new Mtt;default:return null}}function ok(){ok=V,bft=new rs("edgelabelcenterednessanalysis.includelabel",(Pn(),t2))}function F4t(){F4t=V,ske=Yd(AQt(ri(ri(new Fs,(Ua(),Qc),(Za(),aG)),cu,eG),Zo),sG)}function cce(){cce=V,uke=Yd(AQt(ri(ri(new Fs,(Ua(),Qc),(Za(),aG)),cu,eG),Zo),sG)}function fat(){fat=V,_L=new VKt,r0t=lt(ut(Wu,1),I5,179,0,[]),DTe=lt(ut(vf,1),zTt,62,0,[])}function r7(){r7=V,KN=new Uwt("TO_INTERNAL_LTR",0),dft=new Uwt("TO_INPUT_DIRECTION",1)}function rl(){rl=V,PCt=new fb,OCt=new cy,NCt=new HX,ICt=new F2,FCt=new VX,BCt=new UX}function rpn(t,e){e.Ug(k2e,1),j5t(zrn(new RC((JC(),new tst(t,!1,!1,new G9))))),e.Vg()}function ipn(t,e,n){n.Ug("DFS Treeifying phase",1),xwn(t,e),vkn(t,e),t.a=null,t.b=null,n.Vg()}function JI(t,e){return Pn(),ba(t)?F3t(t,Gr(e)):Cy(t)?Fit(t,Ht(e)):Ty(t)?Wun(t,Me(e)):t.Fd(e)}function t_(t,e){var n,r;for(Wn(e),r=e.vc().Kc();r.Ob();)n=u(r.Pb(),44),t.zc(n.ld(),n.md())}function spn(t,e,n){var r;for(r=n.Kc();r.Ob();)if(!dq(t,e,r.Pb()))return!1;return!0}function apn(t,e,n,r,s){var o;return n&&(o=ns(e.Dh(),t.c),s=n.Rh(e,-1-(o==-1?r:o),null,s)),s}function opn(t,e,n,r,s){var o;return n&&(o=ns(e.Dh(),t.c),s=n.Th(e,-1-(o==-1?r:o),null,s)),s}function uce(t){var e;if(t.b==-2){if(t.e==0)e=-1;else for(e=0;t.a[e]==0;e++);t.b=e}return t.b}function cpn(t){if(Wn(t),t.length==0)throw at(new jd("Zero length BigInteger"));gEn(this,t)}function B4t(t){this.i=t.gc(),this.i>0&&(this.g=this.aj(this.i+(this.i/8|0)+1),t.Qc(this.g))}function lce(t,e,n){this.g=t,this.d=e,this.e=n,this.a=new fe,y5n(this),mn(),Ds(this.a,null)}function R4t(t,e){e.q=t,t.d=b.Math.max(t.d,e.r),t.b+=e.d+(t.a.c.length==0?0:t.c),ge(t.a,e)}function i7(t,e){var n,r,s,o;return s=t.c,n=t.c+t.b,o=t.d,r=t.d+t.a,e.a>s&&e.ao&&e.bs?n=s:qn(e,n+1),t.a=Lh(t.a,0,e)+(""+r)+Iyt(t.a,n)}function vce(t,e){t.a=Qa(t.a,1),t.c=b.Math.min(t.c,e),t.b=b.Math.max(t.b,e),t.d=Qa(t.d,e)}function ppn(t,e){return e1||t.Ob())return++t.a,t.g=0,e=t.i,t.Ob(),e;throw at(new cc)}function Ece(t){switch(t.a.g){case 1:return new AXt;case 3:return new Ahe;default:return new int}}function $4t(t,e){switch(e){case 1:return!!t.n&&t.n.i!=0;case 2:return t.k!=null}return f3t(t,e)}function Pc(t){return oN>22),s=t.h+e.h+(r>>22),Eu(n&Il,r&Il,s&Fg)}function Mce(t,e){var n,r,s;return n=t.l-e.l,r=t.m-e.m+(n>>22),s=t.h-e.h+(r>>22),Eu(n&Il,r&Il,s&Fg)}function Fpn(t){var e,n;for(LCn(t),n=new G(t.d);n.ar)throw at(new Dy(e,r));return t.Si()&&(n=Yne(t,n)),t.Ei(e,n)}function l7(t,e,n,r,s){var o,h;for(h=n;h<=s;h++)for(o=e;o<=r;o++)u5(t,o,h)||cV(t,o,h,!0,!1)}function Xpn(t){w5();var e,n,r;for(n=Vt(la,ue,8,2,0,1),r=0,e=0;e<2;e++)r+=.5,n[e]=Hmn(r,t);return n}function h7(t){var e,n,r;return e=~t.l+1&Il,n=~t.m+(e==0?1:0)&Il,r=~t.h+(e==0&&n==0?1:0)&Fg,Eu(e,n,r)}function W4t(t){var e;if(t<0)return Ga;if(t==0)return 0;for(e=z_;!(e&t);e>>=1);return e}function vat(t,e,n){return t>=128?!1:t<64?bS(sa(Rf(1,t),n),0):bS(sa(Rf(1,t-64),e),0)}function oO(t,e,n){return n==null?(!t.q&&(t.q=new _r),rk(t.q,e)):(!t.q&&(t.q=new _r),hi(t.q,e,n)),t}function Zt(t,e,n){return n==null?(!t.q&&(t.q=new _r),rk(t.q,e)):(!t.q&&(t.q=new _r),hi(t.q,e,n)),t}function qce(t){var e,n;return n=new mq,Qo(n,t),Zt(n,(Pb(),$k),t),e=new _r,C7n(t,n,e),Z9n(t,n,e),n}function Hce(t){var e,n;return e=t.t-t.k[t.o.p]*t.d+t.j[t.o.p]>t.f,n=t.u+t.e[t.o.p]*t.d>t.f*t.s*t.d,e||n}function Vce(t,e){var n,r,s,o;for(n=!1,r=t.a[e].length,o=0;o=0,"Negative initial capacity"),wI(e>=0,"Non-positive load factor"),dl(this)}function Jpn(t,e,n,r,s){var o,h;if(h=t.length,o=n.length,e<0||r<0||s<0||e+s>h||r+s>o)throw at(new $2t)}function J4t(t,e){mn();var n,r,s,o,h;for(h=!1,r=e,s=0,o=r.length;s1||e>=0&&t.b<3)}function kat(t){var e,n,r;e=~t.l+1&Il,n=~t.m+(e==0?1:0)&Il,r=~t.h+(e==0&&n==0?1:0)&Fg,t.l=e,t.m=n,t.h=r}function e5t(t){mn();var e,n,r;for(r=1,n=t.Kc();n.Ob();)e=n.Pb(),r=31*r+(e!=null?$i(e):0),r=r|0;return r}function rbn(t,e,n,r,s){var o;return o=H6t(t,e),n&&kat(o),s&&(t=Xmn(t,e),r?Zb=h7(t):Zb=Eu(t.l,t.m,t.h)),o}function tue(t,e,n){t.g=$ot(t,e,(ve(),Jn),t.b),t.d=$ot(t,n,Jn,t.b),!(t.g.c==0||t.d.c==0)&&Mfe(t)}function eue(t,e,n){t.g=$ot(t,e,(ve(),Gn),t.j),t.d=$ot(t,n,Gn,t.j),!(t.g.c==0||t.d.c==0)&&Mfe(t)}function n5t(t,e){switch(e){case 7:return!!t.e&&t.e.i!=0;case 8:return!!t.d&&t.d.i!=0}return $5t(t,e)}function ibn(t,e){switch(e.g){case 0:Lt(t.b,641)||(t.b=new mce);break;case 1:Lt(t.b,642)||(t.b=new wte)}}function nue(t){switch(t.g){case 0:return new Ott;default:throw at(new zn(cU+(t.f!=null?t.f:""+t.g)))}}function rue(t){switch(t.g){case 0:return new Yu;default:throw at(new zn(cU+(t.f!=null?t.f:""+t.g)))}}function sbn(t,e,n){return!wE(_i(new ln(null,new gn(t.c,16)),new Sl(new HXt(e,n)))).Bd((U2(),Rk))}function iue(t,e){return R6(S7(u(X(e,(Cc(),Mv)),88)),new ae(t.c.e.a-t.b.e.a,t.c.e.b-t.b.e.b))<=0}function abn(t,e){for(;t.g==null&&!t.c?n3t(t):t.g==null||t.i!=0&&u(t.g[t.i-1],51).Ob();)lin(e,XH(t))}function cw(t){var e,n;for(n=new G(t.a.b);n.ar?1:0}function ubn(t){return ge(t.c,(ck(),WEe)),o4t(t.a,Rt(Ht(Se((Wat(),YG)))))?new Htt:new gGt(t)}function lbn(t){for(;!t.d||!t.d.Ob();)if(t.b&&!WC(t.b))t.d=u(K6(t.b),51);else return null;return t.d}function i5t(t){switch(t.g){case 1:return U2e;default:case 2:return 0;case 3:return Mut;case 4:return k7t}}function hbn(){yi();var t;return u0t||(t=Msn(Gb("M",!0)),t=Mz(Gb("M",!1),t),u0t=t,u0t)}function sH(){sH=V,Ydt=new Y$("ELK",0),EIt=new Y$("JSON",1),kIt=new Y$("DOT",2),TIt=new Y$("SVG",3)}function i_(){i_=V,A1t=new Lrt("STACKED",0),_1t=new Lrt("REVERSE_STACKED",1),lP=new Lrt("SEQUENCED",2)}function s_(){s_=V,hLt=new Prt(r0,0),N1t=new Prt("MIDDLE_TO_MIDDLE",1),dP=new Prt("AVOID_OVERLAP",2)}function g7(){g7=V,vSt=new DQ,ySt=new UD,D4e=new VB,L4e=new MQ,A4e=new Zx,mSt=(Wn(A4e),new kt)}function aH(){aH=V,oIt=new xm(15),D7e=new _a((ai(),Yp),oIt),pL=Jk,rIt=u7e,iIt=jw,aIt=lx,sIt=R3}function r5(t,e){var n,r,s,o,h;for(r=e,s=0,o=r.length;s=t.b.c.length||(a5t(t,2*e+1),n=2*e+2,n0&&(e.Cd(n),n.i&&d2n(n))}function o5t(t,e,n){var r;for(r=n-1;r>=0&&t[r]===e[r];r--);return r<0?0:grt(sa(t[r],So),sa(e[r],So))?-1:1}function oue(t,e,n){var r,s;this.g=t,this.c=e,this.a=this,this.d=this,s=zoe(n),r=Vt(qve,iN,227,s,0,1),this.b=r}function _at(t,e,n,r,s){var o,h;for(h=n;h<=s;h++)for(o=e;o<=r;o++)if(u5(t,o,h))return!0;return!1}function wbn(t,e){var n,r;for(r=t.Zb().Cc().Kc();r.Ob();)if(n=u(r.Pb(),16),n.Hc(e))return!0;return!1}function cue(t,e,n){var r,s,o,h;for(Wn(n),h=!1,o=t.fd(e),s=n.Kc();s.Ob();)r=s.Pb(),o.Rb(r),h=!0;return h}function Aat(t,e){var n,r;return r=u(jn(t.a,4),129),n=Vt(e0t,sht,424,e,0,1),r!=null&&Xc(r,0,n,0,r.length),n}function uue(t,e){var n;return n=new nct((t.f&256)!=0,t.i,t.a,t.d,(t.f&16)!=0,t.j,t.g,e),t.e!=null||(n.c=t),n}function mbn(t,e){var n;return t===e?!0:Lt(e,85)?(n=u(e,85),l6t(K2(t),n.vc())):!1}function lue(t,e,n){var r,s;for(s=n.Kc();s.Ob();)if(r=u(s.Pb(),44),t.Be(e,r.md()))return!0;return!1}function hue(t,e,n){return t.d[e.p][n.p]||(xmn(t,e,n),t.d[e.p][n.p]=!0,t.d[n.p][e.p]=!0),t.a[e.p][n.p]}function vbn(t,e){var n;return!t||t==e||!qi(e,(oe(),yv))?!1:(n=u(X(e,(oe(),yv)),10),n!=t)}function Lat(t){switch(t.i){case 2:return!0;case 1:return!1;case-1:++t.c;default:return t.$l()}}function fue(t){switch(t.i){case-2:return!0;case-1:return!1;case 1:--t.c;default:return t._l()}}function due(t){tre.call(this,"The given string does not match the expected format for individual spacings.",t)}function ybn(t,e){var n;e.Ug("Min Size Preprocessing",1),n=v6t(t),Mi(t,(N0(),nL),n.a),Mi(t,bK,n.b),e.Vg()}function xbn(t){var e,n,r;for(e=0,r=Vt(la,ue,8,t.b,0,1),n=Dr(t,0);n.b!=n.d.c;)r[e++]=u(Ar(n),8);return r}function Dat(t,e,n){var r,s,o;for(r=new Ki,o=Dr(n,0);o.b!=o.d.c;)s=u(Ar(o),8),Zr(r,new io(s));cue(t,e,r)}function kbn(t,e){var n;return n=Qa(t,e),grt(vst(t,e),0)|J$(vst(t,n),0)?n:Qa(rN,vst(Ab(n,63),1))}function Ebn(t,e){var n,r;return n=u(t.d.Bc(e),16),n?(r=t.e.hc(),r.Gc(n),t.e.d-=n.gc(),n.$b(),r):null}function gue(t){var e;if(e=t.a.c.length,e>0)return IE(e-1,t.a.c.length),Ep(t.a,e-1);throw at(new gKt)}function pue(t,e,n){if(t>e)throw at(new zn(CV+t+Mbe+e));if(t<0||e>n)throw at(new gwt(CV+t+T8t+e+x8t+n))}function p7(t,e){t.D==null&&t.B!=null&&(t.D=t.B,t.B=null),nat(t,e==null?null:(Wn(e),e)),t.C&&t.hl(null)}function Tbn(t,e){var n;n=Se((Wat(),YG))!=null&&e.Sg()!=null?Rt(Ht(e.Sg()))/Rt(Ht(Se(YG))):1,hi(t.b,e,n)}function c5t(t,e){var n,r;if(r=t.c[e],r!=0)for(t.c[e]=0,t.d-=r,n=e+1;neU?t-n>eU:n-t>eU}function Sue(t,e){var n;for(n=0;ns&&(nfe(e.q,s),r=n!=e.q.d)),r}function _ue(t,e){var n,r,s,o,h,d,m,k;return m=e.i,k=e.j,r=t.f,s=r.i,o=r.j,h=m-s,d=k-o,n=b.Math.sqrt(h*h+d*d),n}function g5t(t,e){var n,r;return r=xH(t),r||(n=(Tct(),pde(e)),r=new rKt(n),Or(r.El(),t)),r}function hO(t,e){var n,r;return n=u(t.c.Bc(e),16),n?(r=t.hc(),r.Gc(n),t.d-=n.gc(),n.$b(),t.mc(r)):t.jc()}function Pbn(t,e){var n,r;for(r=Dl(t.d,1)!=0,n=!0;n;)n=!1,n=e.c.mg(e.e,r),n=n|qO(t,e,r,!1),r=!r;I4t(t)}function Aue(t,e,n,r){var s,o;t.a=e,o=r?0:1,t.f=(s=new zfe(t.c,t.a,n,o),new y0e(n,t.a,s,t.e,t.b,t.c==(Hm(),UA)))}function cH(t){var e;return ur(t.a!=t.b),e=t.d.a[t.a],nZt(t.b==t.d.c&&e!=null),t.c=t.a,t.a=t.a+1&t.d.a.length-1,e}function Lue(t){var e;if(t.c!=0)return t.c;for(e=0;e=t.c.b:t.a<=t.c.b))throw at(new cc);return e=t.a,t.a+=t.c.c,++t.b,he(e)}function Pat(t){var e;return e=new Lmt(t.a),Qo(e,t),Zt(e,(oe(),Li),t),e.o.a=t.g,e.o.b=t.f,e.n.a=t.i,e.n.b=t.j,e}function Fat(t){return(ve(),Gu).Hc(t.j)?Rt(Ht(X(t,(oe(),MT)))):dc(lt(ut(la,1),ue,8,0,[t.i.n,t.n,t.a])).b}function Bbn(t){var e;return e=rz(ike),u(X(t,(oe(),lu)),21).Hc((Co(),DT))&&ri(e,(Ua(),Qc),(Za(),uG)),e}function Rbn(t){var e,n,r,s;for(s=new Os,r=new G(t);r.a=0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(s*=n,r-=1);return e<0?1/s:s}function Hbn(t,e){var n,r,s;for(s=1,n=t,r=e>=0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(s*=n,r-=1);return e<0?1/s:s}function jb(t,e){var n,r,s,o;return o=(s=t?xH(t):null,h1e((r=e,s&&s.Gl(),r))),o==e&&(n=xH(t),n&&n.Gl()),o}function Due(t,e,n){var r,s;return s=t.f,t.f=e,t.Db&4&&!(t.Db&1)&&(r=new ha(t,1,0,s,e),n?n.nj(r):n=r),n}function Mue(t,e,n){var r,s;return s=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&(r=new ha(t,1,3,s,e),n?n.nj(r):n=r),n}function b5t(t,e,n){var r,s;return s=t.a,t.a=e,t.Db&4&&!(t.Db&1)&&(r=new ha(t,1,1,s,e),n?n.nj(r):n=r),n}function Iue(t){var e,n;if(t!=null)for(n=0;n=r||e-129&&t<128?(bte(),e=t+128,n=d9t[e],!n&&(n=d9t[e]=new wr(t)),n):new wr(t)}function w7(t){var e,n;return t>-129&&t<128?(Ote(),e=t+128,n=w9t[e],!n&&(n=w9t[e]=new $n(t)),n):new $n(t)}function Pue(t,e){var n;t.a.c.length>0&&(n=u(Oe(t.a,t.a.c.length-1),579),s5t(n,e))||ge(t.a,new Zie(e))}function Ybn(t){Bf();var e,n;e=t.d.c-t.e.c,n=u(t.g,154),Cu(n.b,new XVt(e)),Cu(n.c,new QVt(e)),Fa(n.i,new JVt(e))}function Fue(t){var e;return e=new yb,e.a+="VerticalSegment ",tu(e,t.e),e.a+=" ",ni(e,Fmt(new ert,new G(t.k))),e.a}function Bat(t,e){var n,r,s;for(n=0,s=gc(t,e).Kc();s.Ob();)r=u(s.Pb(),12),n+=X(r,(oe(),ml))!=null?1:0;return n}function a5(t,e,n){var r,s,o;for(r=0,o=Dr(t,0);o.b!=o.d.c&&(s=Rt(Ht(Ar(o))),!(s>n));)s>=e&&++r;return r}function Bue(t,e){Hr(t);try{return t._b(e)}catch(n){if(n=es(n),Lt(n,212)||Lt(n,169))return!1;throw at(n)}}function m5t(t,e){Hr(t);try{return t.Hc(e)}catch(n){if(n=es(n),Lt(n,212)||Lt(n,169))return!1;throw at(n)}}function Xbn(t,e){Hr(t);try{return t.Mc(e)}catch(n){if(n=es(n),Lt(n,212)||Lt(n,169))return!1;throw at(n)}}function Gy(t,e){Hr(t);try{return t.xc(e)}catch(n){if(n=es(n),Lt(n,212)||Lt(n,169))return null;throw at(n)}}function Qbn(t,e){Hr(t);try{return t.Bc(e)}catch(n){if(n=es(n),Lt(n,212)||Lt(n,169))return null;throw at(n)}}function c_(t,e){switch(e.g){case 2:case 1:return gc(t,e);case 3:case 4:return Bh(gc(t,e))}return mn(),mn(),co}function u_(t){var e;return t.Db&64?qf(t):(e=new ef(qf(t)),e.a+=" (name: ",Mo(e,t.zb),e.a+=")",e.a)}function Jbn(t){var e;return e=u(od(t.c.c,""),233),e||(e=new Z6(pE(gE(new fy,""),"Other")),Op(t.c.c,"",e)),e}function v5t(t,e,n){var r,s;return s=t.sb,t.sb=e,t.Db&4&&!(t.Db&1)&&(r=new ha(t,1,4,s,e),n?n.nj(r):n=r),n}function y5t(t,e,n){var r,s;return s=t.r,t.r=e,t.Db&4&&!(t.Db&1)&&(r=new ha(t,1,8,s,t.r),n?n.nj(r):n=r),n}function Zbn(t,e,n){var r,s;return r=new Tg(t.e,4,13,(s=e.c,s||(wn(),Sd)),null,Np(t,e),!1),n?n.nj(r):n=r,n}function t2n(t,e,n){var r,s;return r=new Tg(t.e,3,13,null,(s=e.c,s||(wn(),Sd)),Np(t,e),!1),n?n.nj(r):n=r,n}function Lp(t,e){var n,r;return n=u(e,691),r=n.el(),!r&&n.fl(r=Lt(e,90)?new pQt(t,u(e,29)):new Rre(t,u(e,156))),r}function fO(t,e,n){var r;t._i(t.i+1),r=t.Zi(e,n),e!=t.i&&Xc(t.g,e,t.g,e+1,t.i-e),ls(t.g,e,r),++t.i,t.Mi(e,n),t.Ni()}function e2n(t,e){var n;return e.a&&(n=e.a.a.length,t.a?ni(t.a,t.b):t.a=new eh(t.d),Ure(t.a,e.a,e.d.length,n)),t}function n2n(t,e){var n;t.c=e,t.a=own(e),t.a<54&&(t.f=(n=e.d>1?Hre(e.a[0],e.a[1]):Hre(e.a[0],0),tw(e.e>0?n:Cp(n))))}function dO(t,e){var n;return n=new Je,t.a.Bd(n)?(EE(),new Ynt(Wn(Tae(t,n.a,e)))):(Mb(t),EE(),EE(),A9t)}function Rue(t,e){var n;t.c.length!=0&&(n=u(ld(t,Vt(V0,jp,10,t.c.length,0,1)),199),xmt(n,new P8),I1e(n,e))}function jue(t,e){var n;t.c.length!=0&&(n=u(ld(t,Vt(V0,jp,10,t.c.length,0,1)),199),xmt(n,new v0),I1e(n,e))}function Ti(t,e){return ba(t)?hn(t,e):Cy(t)?OZt(t,e):Ty(t)?(Wn(t),$t(t)===$t(e)):gyt(t)?t.Fb(e):oyt(t)?MQt(t,e):o3t(t,e)}function Ph(t,e,n){if(e<0)C6t(t,n);else{if(!n.rk())throw at(new zn(Jb+n.xe()+aA));u(n,69).wk().Ek(t,t.hi(),e)}}function $ue(t,e,n){if(t<0||e>n)throw at(new Bo(CV+t+T8t+e+", size: "+n));if(t>e)throw at(new zn(CV+t+Mbe+e))}function zue(t){var e;return t.Db&64?qf(t):(e=new ef(qf(t)),e.a+=" (source: ",Mo(e,t.d),e.a+=")",e.a)}function que(t){return t>=65&&t<=70?t-65+10:t>=97&&t<=102?t-97+10:t>=48&&t<=57?t-48:0}function r2n(t){yV();var e,n,r,s;for(n=not(),r=0,s=n.length;r=0?zb(t):FS(zb(Cp(t))))}function Uue(t,e,n,r,s,o){this.e=new fe,this.f=(To(),HA),ge(this.e,t),this.d=e,this.a=n,this.b=r,this.f=s,this.c=o}function a2n(t,e,n){t.n=G2(x2,[ue,cut],[376,28],14,[n,Ys(b.Math.ceil(e/32))],2),t.o=e,t.p=n,t.j=e-1>>1,t.k=n-1>>1}function Gue(t){return t-=t>>1&1431655765,t=(t>>2&858993459)+(t&858993459),t=(t>>4)+t&252645135,t+=t>>8,t+=t>>16,t&63}function Kue(t,e){var n,r;for(r=new Zn(t);r.e!=r.i.gc();)if(n=u(ar(r),142),$t(e)===$t(n))return!0;return!1}function o2n(t,e,n){var r,s,o;return o=(s=N7(t.b,e),s),o&&(r=u(pV(VI(t,o),""),29),r)?K6t(t,r,e,n):null}function Rat(t,e,n){var r,s,o;return o=(s=N7(t.b,e),s),o&&(r=u(pV(VI(t,o),""),29),r)?W6t(t,r,e,n):null}function c2n(t,e){var n;if(n=n5(t.i,e),n==null)throw at(new Rd("Node did not exist in input."));return j4t(e,n),null}function u2n(t,e){var n;if(n=zO(t,e),Lt(n,331))return u(n,35);throw at(new zn(Jb+e+"' is not a valid attribute"))}function h_(t,e,n){var r;if(r=t.gc(),e>r)throw at(new Dy(e,r));if(t.Si()&&t.Hc(n))throw at(new zn(AN));t.Gi(e,n)}function l2n(t,e){e.Ug("Sort end labels",1),ms(_i(fc(new ln(null,new gn(t.b,16)),new PB),new Yx),new aQ),e.Vg()}function Rs(){Rs=V,Ed=new JM(G_,0),tc=new JM(Ak,1),Uo=new JM(_k,2),kd=new JM(xut,3),Gh=new JM("UP",4)}function pO(){pO=V,vK=new qrt("P1_STRUCTURE",0),yK=new qrt("P2_PROCESSING_ORDER",1),xK=new qrt("P3_EXECUTION",2)}function Wue(){Wue=V,v8e=Yd(Yd(nS(Yd(Yd(nS(ri(new Fs,(bk(),WA),(I_(),O1t)),YA),oLt),uLt),XA),rLt),lLt)}function h2n(t){switch(u(X(t,(oe(),Aw)),311).g){case 1:Zt(t,Aw,(Cg(),qk));break;case 2:Zt(t,Aw,(Cg(),H5))}}function f2n(t){switch(t){case 0:return new BKt;case 1:return new PKt;case 2:return new FKt;default:throw at(new DM)}}function Yue(t){switch(t.g){case 2:return tc;case 1:return Uo;case 4:return kd;case 3:return Gh;default:return Ed}}function T5t(t,e){switch(t.b.g){case 0:case 1:return e;case 2:case 3:return new Ah(e.d,0,e.a,e.b);default:return null}}function C5t(t){switch(t.g){case 1:return Gn;case 2:return Hn;case 3:return Jn;case 4:return Er;default:return bc}}function bO(t){switch(t.g){case 1:return Er;case 2:return Gn;case 3:return Hn;case 4:return Jn;default:return bc}}function hH(t){switch(t.g){case 1:return Jn;case 2:return Er;case 3:return Gn;case 4:return Hn;default:return bc}}function S5t(t,e,n,r){switch(e){case 1:return!t.n&&(t.n=new Jt(Po,t,1,7)),t.n;case 2:return t.k}return mxt(t,e,n,r)}function f_(t,e,n){var r,s;return t.Pj()?(s=t.Qj(),r=Uot(t,e,n),t.Jj(t.Ij(7,he(n),r,e,s)),r):Uot(t,e,n)}function jat(t,e){var n,r,s;t.d==null?(++t.e,--t.f):(s=e.ld(),n=e.Bi(),r=(n&xi)%t.d.length,Qdn(t,r,vde(t,r,n,s)))}function m7(t,e){var n;n=(t.Bb&Uf)!=0,e?t.Bb|=Uf:t.Bb&=-1025,t.Db&4&&!(t.Db&1)&&Ei(t,new jf(t,1,10,n,e))}function v7(t,e){var n;n=(t.Bb&u3)!=0,e?t.Bb|=u3:t.Bb&=-4097,t.Db&4&&!(t.Db&1)&&Ei(t,new jf(t,1,12,n,e))}function y7(t,e){var n;n=(t.Bb&ol)!=0,e?t.Bb|=ol:t.Bb&=-8193,t.Db&4&&!(t.Db&1)&&Ei(t,new jf(t,1,15,n,e))}function x7(t,e){var n;n=(t.Bb&b3)!=0,e?t.Bb|=b3:t.Bb&=-2049,t.Db&4&&!(t.Db&1)&&Ei(t,new jf(t,1,11,n,e))}function d2n(t){var e;t.g&&(e=t.c.kg()?t.f:t.a,okt(e.a,t.o,!0),okt(e.a,t.o,!1),Zt(t.o,(De(),bs),(ka(),zw)))}function g2n(t){var e;if(!t.a)throw at(new Ro("Cannot offset an unassigned cut."));e=t.c-t.b,t.b+=e,yne(t,e),vne(t,e)}function p2n(t,e){var n;if(n=tr(t.k,e),n==null)throw at(new Rd("Port did not exist in input."));return j4t(e,n),null}function b2n(t){var e,n;for(n=bde(sh(t)).Kc();n.Ob();)if(e=Gr(n.Pb()),O_(t,e))return wdn((QYt(),mTe),e);return null}function Xue(t){var e,n;for(n=t.p.a.ec().Kc();n.Ob();)if(e=u(n.Pb(),218),e.f&&t.b[e.c]<-1e-10)return e;return null}function w2n(t){var e,n;for(n=Db(new yb,91),e=!0;t.Ob();)e||(n.a+=ao),e=!1,tu(n,t.Pb());return(n.a+="]",n).a}function m2n(t){var e,n,r;for(e=new fe,r=new G(t.b);r.ae?1:t==e?t==0?Bi(1/t,1/e):0:isNaN(t)?isNaN(e)?0:1:-1}function y2n(t){var e;return e=t.a[t.c-1&t.a.length-1],e==null?null:(t.c=t.c-1&t.a.length-1,ls(t.a,t.c,null),e)}function x2n(t){var e,n,r;for(r=0,n=t.length,e=0;e=1?tc:kd):n}function C2n(t){switch(u(X(t,(De(),zg)),223).g){case 1:return new TJ;case 3:return new LJ;default:return new EJ}}function $b(t){if(t.c)$b(t.c);else if(t.d)throw at(new Ro("Stream already terminated, can't be modified or used"))}function Km(t,e,n){var r;return r=t.a.get(e),t.a.set(e,n===void 0?null:n),r===void 0?(++t.c,++t.b.g):++t.d,r}function S2n(t,e,n){var r,s;for(s=t.a.ec().Kc();s.Ob();)if(r=u(s.Pb(),10),rO(n,u(Oe(e,r.p),16)))return r;return null}function A5t(t,e,n){var r;return r=0,e&&(q4(t.a)?r+=e.f.a/2:r+=e.f.b/2),n&&(q4(t.a)?r+=n.f.a/2:r+=n.f.b/2),r}function _2n(t,e,n){var r;r=n,!r&&(r=Yvt(new S6,0)),r.Ug(u2e,2),ehe(t.b,e,r.eh(1)),qTn(t,e,r.eh(1)),UCn(e,r.eh(1)),r.Vg()}function L5t(t,e,n){var r,s;return r=(kb(),s=new fC,s),Rq(r,e),Bq(r,n),t&&Or((!t.a&&(t.a=new Ps(vh,t,5)),t.a),r),r}function zat(t){var e;return t.Db&64?qf(t):(e=new ef(qf(t)),e.a+=" (identifier: ",Mo(e,t.k),e.a+=")",e.a)}function qat(t,e){var n;n=(t.Bb&Fc)!=0,e?t.Bb|=Fc:t.Bb&=-32769,t.Db&4&&!(t.Db&1)&&Ei(t,new jf(t,1,18,n,e))}function D5t(t,e){var n;n=(t.Bb&Fc)!=0,e?t.Bb|=Fc:t.Bb&=-32769,t.Db&4&&!(t.Db&1)&&Ei(t,new jf(t,1,18,n,e))}function k7(t,e){var n;n=(t.Bb&Jd)!=0,e?t.Bb|=Jd:t.Bb&=-16385,t.Db&4&&!(t.Db&1)&&Ei(t,new jf(t,1,16,n,e))}function M5t(t,e){var n;n=(t.Bb&po)!=0,e?t.Bb|=po:t.Bb&=-65537,t.Db&4&&!(t.Db&1)&&Ei(t,new jf(t,1,20,n,e))}function I5t(t){var e;return e=Vt(Yh,Zd,28,2,15,1),t-=po,e[0]=(t>>10)+cN&js,e[1]=(t&1023)+56320&js,af(e,0,e.length)}function A2n(t){var e;return e=Jy(t),e>34028234663852886e22?Zi:e<-34028234663852886e22?Vs:e}function Qa(t,e){var n;return ec(t)&&ec(e)&&(n=t+e,oN"+Z2(e.c):"e_"+$i(e),t.b&&t.c?Z2(t.b)+"->"+Z2(t.c):"e_"+$i(t))}function M2n(t,e){return hn(e.b&&e.c?Z2(e.b)+"->"+Z2(e.c):"e_"+$i(e),t.b&&t.c?Z2(t.b)+"->"+Z2(t.c):"e_"+$i(t))}function Wm(t,e){return Z1(),$f(Kb),b.Math.abs(t-e)<=Kb||t==e||isNaN(t)&&isNaN(e)?0:te?1:ym(isNaN(t),isNaN(e))}function Lg(){Lg=V,Vdt=new U$(G_,0),IP=new U$("POLYLINE",1),WT=new U$("ORTHOGONAL",2),e8=new U$("SPLINES",3)}function dH(){dH=V,oDt=new $rt("ASPECT_RATIO_DRIVEN",0),hdt=new $rt("MAX_SCALE_DRIVEN",1),aDt=new $rt("AREA_DRIVEN",2)}function I2n(t,e,n){var r;try{ebn(t,e,n)}catch(s){throw s=es(s),Lt(s,606)?(r=s,at(new I3t(r))):at(s)}return e}function O2n(t){var e,n,r;for(n=0,r=t.length;ne&&r.Ne(t[o-1],t[o])>0;--o)h=t[o],ls(t,o,t[o-1]),ls(t,o-1,h)}function Qe(t,e){var n,r,s,o,h;if(n=e.f,Op(t.c.d,n,e),e.g!=null)for(s=e.g,o=0,h=s.length;oe){Wre(n);break}}kI(n,e)}function B2n(t,e){var n,r,s;r=J4(e),s=Rt(Ht(Wy(r,(De(),Yf)))),n=b.Math.max(0,s/2-.5),x_(e,n,1),ge(t,new dXt(e,n))}function R2n(t,e,n){var r;n.Ug("Straight Line Edge Routing",1),n.dh(e,I7t),r=u(ne(e,(Y4(),ex)),27),Bge(t,r),n.dh(e,iU)}function O5t(t,e){t.n.c.length==0&&ge(t.n,new aq(t.s,t.t,t.i)),ge(t.b,e),dxt(u(Oe(t.n,t.n.c.length-1),209),e),vge(t,e)}function d_(t){var e;this.a=(e=u(t.e&&t.e(),9),new _h(e,u(Ff(e,e.length),9),0)),this.b=Vt(aa,Ln,1,this.a.a.length,5,1)}function rc(t){var e;return Array.isArray(t)&&t.Tm===yt?V2(Wl(t))+"@"+(e=$i(t)>>>0,e.toString(16)):t.toString()}function j2n(t,e){return t.h==aN&&t.m==0&&t.l==0?(e&&(Zb=Eu(0,0,0)),OQt((WE(),o9t))):(e&&(Zb=Eu(t.l,t.m,t.h)),Eu(0,0,0))}function $2n(t,e){switch(e.g){case 2:return t.b;case 1:return t.c;case 4:return t.d;case 3:return t.a;default:return!1}}function tle(t,e){switch(e.g){case 2:return t.b;case 1:return t.c;case 4:return t.d;case 3:return t.a;default:return!1}}function N5t(t,e,n,r){switch(e){case 3:return t.f;case 4:return t.g;case 5:return t.i;case 6:return t.j}return S5t(t,e,n,r)}function gH(t,e){if(e==t.d)return t.e;if(e==t.e)return t.d;throw at(new zn("Node "+e+" not part of edge "+t))}function z2n(t,e){var n;if(n=zO(t.Dh(),e),Lt(n,102))return u(n,19);throw at(new zn(Jb+e+"' is not a valid reference"))}function Fh(t,e,n,r){if(e<0)J6t(t,n,r);else{if(!n.rk())throw at(new zn(Jb+n.xe()+aA));u(n,69).wk().Ck(t,t.hi(),e,r)}}function Ll(t){var e;if(t.b){if(Ll(t.b),t.b.d!=t.c)throw at(new Th)}else t.d.dc()&&(e=u(t.f.c.xc(t.e),16),e&&(t.d=e))}function q2n(t){Ay();var e,n,r,s;for(e=t.o.b,r=u(u(Ai(t.r,(ve(),Er)),21),87).Kc();r.Ob();)n=u(r.Pb(),117),s=n.e,s.b+=e}function H2n(t){var e,n,r;for(this.a=new zd,r=new G(t);r.a=s)return e.c+n;return e.c+e.b.gc()}function U2n(t,e){_E();var n,r,s,o;for(r=fae(t),s=e,GE(r,0,r.length,s),n=0;n0&&(r+=s,++n);return n>1&&(r+=t.d*(n-1)),r}function K2n(t){var e,n,r,s,o;return o=Jxt(t),n=NM(t.c),r=!n,r&&(s=new cp,_1(o,"knownLayouters",s),e=new VGt(s),Fa(t.c,e)),o}function B5t(t){var e,n,r;for(r=new dp,r.a+="[",e=0,n=t.gc();e0&&(qn(e-1,t.length),t.charCodeAt(e-1)==58)&&!Uat(t,CL,SL))}function R5t(t,e){var n;return $t(t)===$t(e)?!0:Lt(e,92)?(n=u(e,92),t.e==n.e&&t.d==n.d&&ydn(t,n.a)):!1}function hk(t){switch(ve(),t.g){case 4:return Hn;case 1:return Jn;case 3:return Er;case 2:return Gn;default:return bc}}function Q2n(t){var e,n;if(t.b)return t.b;for(n=wd?null:t.d;n;){if(e=wd?null:n.b,e)return e;n=wd?null:n.d}return xE(),M9t}function j5t(t){var e,n,r;for(r=Rt(Ht(t.a.of((ai(),LK)))),n=new G(t.a.Sf());n.a>5,e=t&31,r=Vt(Fr,ii,28,n+1,15,1),r[n]=1<3;)s*=10,--o;t=(t+(s>>1))/s|0}return r.i=t,!0}function ns(t,e){var n,r,s;if(n=(t.i==null&&Qd(t),t.i),r=e.Lj(),r!=-1){for(s=n.length;r=0;--r)for(e=n[r],s=0;s>1,this.k=e-1>>1}function fwn(t){Tq(),u(t.of((ai(),l2)),181).Hc((Ml(),FK))&&(u(t.of(j3),181).Fc((wl(),n8)),u(t.of(l2),181).Mc(FK))}function ole(t){var e,n;e=t.d==(wk(),kT),n=qxt(t),e&&!n||!e&&n?Zt(t.a,(De(),u0),(I0(),TP)):Zt(t.a,(De(),u0),(I0(),EP))}function Wat(){Wat=V,C$(),YG=(De(),Av),M6e=id(lt(ut(Sdt,1),v7t,149,0,[aP,Yf,Y5,_v,O3,l1t,FT,BT,h1t,jA,W5,Pw,X5]))}function dwn(t,e){var n;return n=u(nc(t,gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)]))),15),n.Qc(Ate(n.gc()))}function cle(t,e){var n,r;if(r=new ra(t.a.ad(e,!0)),r.a.gc()<=1)throw at(new E6);return n=r.a.ec().Kc(),n.Pb(),u(n.Pb(),39)}function gwn(t,e,n){var r,s;return r=Rt(t.p[e.i.p])+Rt(t.d[e.i.p])+e.n.b+e.a.b,s=Rt(t.p[n.i.p])+Rt(t.d[n.i.p])+n.n.b+n.a.b,s-r}function G5t(t,e){var n;return t.i>0&&(e.lengtht.i&&ls(e,t.i,null),e}function bH(t){var e;return t.Db&64?u_(t):(e=new ef(u_(t)),e.a+=" (instanceClassName: ",Mo(e,t.D),e.a+=")",e.a)}function wH(t){var e,n,r,s;for(s=0,n=0,r=t.length;n0?(t._j(),r=e==null?0:$i(e),s=(r&xi)%t.d.length,n=vde(t,s,r,e),n!=-1):!1}function ule(t,e){var n,r;t.a=Qa(t.a,1),t.c=b.Math.min(t.c,e),t.b=b.Math.max(t.b,e),t.d+=e,n=e-t.f,r=t.e+n,t.f=r-t.e-n,t.e=r}function K5t(t,e){switch(e){case 3:zm(t,0);return;case 4:qm(t,0);return;case 5:Su(t,0);return;case 6:_u(t,0);return}w5t(t,e)}function Ym(t,e){switch(e.g){case 1:return H6(t.j,(rl(),OCt));case 2:return H6(t.j,(rl(),PCt));default:return mn(),mn(),co}}function W5t(t){Dm();var e;switch(e=t.Pc(),e.length){case 0:return Eht;case 1:return new Ait(Hr(e[0]));default:return new ust(O2n(e))}}function lle(t,e){t.Xj();try{t.d.bd(t.e++,e),t.f=t.d.j,t.g=-1}catch(n){throw n=es(n),Lt(n,77)?at(new Th):at(n)}}function Xat(){Xat=V,s0t=new mC,HIt=new b1,VIt=new uM,UIt=new lM,GIt=new u6,KIt=new eet,WIt=new net,YIt=new ret,XIt=new iet}function mH(t,e){wmt();var n,r;return n=hI((h$(),h$(),mA)),r=null,e==n&&(r=u(nu(s9t,t),624)),r||(r=new Lee(t),e==n&&jo(s9t,t,r)),r}function hle(t){Yy();var e;return(t.q?t.q:(mn(),mn(),q0))._b((De(),Cv))?e=u(X(t,Cv),203):e=u(X(Pa(t),RA),203),e}function Wy(t,e){var n,r;return r=null,qi(t,(De(),KG))&&(n=u(X(t,KG),96),n.pf(e)&&(r=n.of(e))),r==null&&(r=X(Pa(t),e)),r}function fle(t,e){var n,r,s;return Lt(e,44)?(n=u(e,44),r=n.ld(),s=Gy(t.Rc(),r),Ud(s,n.md())&&(s!=null||t.Rc()._b(r))):!1}function L1(t,e){var n,r,s;return t.f>0&&(t._j(),r=e==null?0:$i(e),s=(r&xi)%t.d.length,n=I6t(t,s,r,e),n)?n.md():null}function vu(t,e,n){var r,s,o;return t.Pj()?(r=t.i,o=t.Qj(),fO(t,r,e),s=t.Ij(3,null,e,r,o),n?n.nj(s):n=s):fO(t,t.i,e),n}function bwn(t,e,n){var r,s;return r=new Tg(t.e,4,10,(s=e.c,Lt(s,90)?u(s,29):(wn(),xf)),null,Np(t,e),!1),n?n.nj(r):n=r,n}function wwn(t,e,n){var r,s;return r=new Tg(t.e,3,10,null,(s=e.c,Lt(s,90)?u(s,29):(wn(),xf)),Np(t,e),!1),n?n.nj(r):n=r,n}function dle(t){Ay();var e;return e=new io(u(t.e.of((ai(),lx)),8)),t.B.Hc((Ml(),XT))&&(e.a<=0&&(e.a=20),e.b<=0&&(e.b=20)),e}function zb(t){Xd();var e,n;return n=qr(t),e=qr(Ab(t,32)),e!=0?new xre(n,e):n>10||n<0?new kg(1,n):tye[n]}function mO(t,e){var n;return ec(t)&&ec(e)&&(n=t%e,oN=0?o=o.a[1]:(s=o,o=o.a[0])}return s}function yO(t,e,n){var r,s,o;for(s=null,o=t.b;o;){if(r=t.a.Ne(e,o.d),n&&r==0)return o;r<=0?o=o.a[0]:(s=o,o=o.a[1])}return s}function Ewn(t,e,n,r){var s,o,h;return s=!1,S9n(t.f,n,r)&&(Uwn(t.f,t.a[e][n],t.a[e][r]),o=t.a[e],h=o[r],o[r]=o[n],o[n]=h,s=!0),s}function wle(t,e,n){var r,s,o,h;for(s=u(tr(t.b,n),183),r=0,h=new G(e.j);h.a>5,e&=31,s=t.d+n+(e==0?0:1),r=Vt(Fr,ii,28,s,15,1),x3n(r,t.a,n,e),o=new Y2(t.e,s,r),qS(o),o}function Twn(t,e){var n,r,s;for(r=new rr(sr(_s(t).a.Kc(),new z));Mr(r);)if(n=u(dr(r),18),s=n.d.i,s.c==e)return!1;return!0}function Q5t(t,e,n){var r,s,o,h,d;return h=t.k,d=e.k,r=n[h.g][d.g],s=Ht(Wy(t,r)),o=Ht(Wy(e,r)),b.Math.max((Wn(s),s),(Wn(o),o))}function Cwn(){return Error.stackTraceLimit>0?(b.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function Swn(t,e){return Z1(),Z1(),$f(Kb),(b.Math.abs(t-e)<=Kb||t==e||isNaN(t)&&isNaN(e)?0:te?1:ym(isNaN(t),isNaN(e)))>0}function J5t(t,e){return Z1(),Z1(),$f(Kb),(b.Math.abs(t-e)<=Kb||t==e||isNaN(t)&&isNaN(e)?0:te?1:ym(isNaN(t),isNaN(e)))<0}function vle(t,e){return Z1(),Z1(),$f(Kb),(b.Math.abs(t-e)<=Kb||t==e||isNaN(t)&&isNaN(e)?0:te?1:ym(isNaN(t),isNaN(e)))<=0}function Jat(t,e){for(var n=0;!e[n]||e[n]=="";)n++;for(var r=e[n++];n0&&this.b>0&&(this.g=Dz(this.c,this.b,this.a))}function _wn(t,e){var n=t.a,r;e=String(e),n.hasOwnProperty(e)&&(r=n[e]);var s=(yat(),Lht)[typeof r],o=s?s(r):f5t(typeof r);return o}function T7(t){var e,n,r;if(r=null,e=a0 in t.a,n=!e,n)throw at(new Rd("Every element must have an id."));return r=mk(vg(t,a0)),r}function Xm(t){var e,n;for(n=Ufe(t),e=null;t.c==2;)wi(t),e||(e=(yi(),yi(),new yS(2)),gw(e,n),n=e),n.Jm(Ufe(t));return n}function yH(t,e){var n,r,s;return t._j(),r=e==null?0:$i(e),s=(r&xi)%t.d.length,n=I6t(t,s,r,e),n?(_oe(t,n),n.md()):null}function Sle(t,e){return t.e>e.e?1:t.ee.d?t.e:t.d=48&&t<48+b.Math.min(10,10)?t-48:t>=97&&t<97?t-97+10:t>=65&&t<65?t-65+10:-1}function Awn(t,e){if(e.c==t)return e.d;if(e.d==t)return e.c;throw at(new zn("Input edge is not connected to the input port."))}function Lwn(t){if(kH(uT,t))return Pn(),bT;if(kH(jlt,t))return Pn(),t2;throw at(new zn("Expecting true or false"))}function ext(t){switch(typeof t){case Nct:return _p(t);case u8t:return F6(t);case kk:return oZt(t);default:return t==null?0:Em(t)}}function Yd(t,e){if(t.a<0)throw at(new Ro("Did not call before(...) or after(...) before calling add(...)."));return Ymt(t,t.a,e),t}function nxt(t){return oq(),Lt(t,162)?u(tr(VP,sye),294).Rg(t):Tu(VP,Wl(t))?u(tr(VP,Wl(t)),294).Rg(t):null}function Au(t){var e,n;return t.Db&32||(n=(e=u(jn(t,16),29),fr(e||t.ii())-fr(t.ii())),n!=0&&fk(t,32,Vt(aa,Ln,1,n,5,1))),t}function fk(t,e,n){var r;t.Db&e?n==null?fxn(t,e):(r=vot(t,e),r==-1?t.Eb=n:ls(nw(t.Eb),r,n)):n!=null&&Pkn(t,e,n)}function Dwn(t,e,n,r){var s,o;e.c.length!=0&&(s=C6n(n,r),o=S5n(e),ms(Pq(new ln(null,new gn(o,1)),new r6),new ine(t,n,s,r)))}function Mwn(t,e){var n,r,s,o;return r=t.a.length-1,n=e-t.b&r,o=t.c-e&r,s=t.c-t.b&r,nZt(n=o?(Lbn(t,e),-1):(Abn(t,e),1)}function xH(t){var e,n,r;if(r=t.Jh(),!r)for(e=0,n=t.Ph();n;n=n.Ph()){if(++e>uut)return n.Qh();if(r=n.Jh(),r||n==t)break}return r}function Ale(t,e){var n;return $t(e)===$t(t)?!0:!Lt(e,21)||(n=u(e,21),n.gc()!=t.gc())?!1:t.Ic(n)}function Iwn(t,e){return t.ee.e?1:t.fe.f?1:$i(t)-$i(e)}function kH(t,e){return Wn(t),e==null?!1:hn(t,e)?!0:t.length==e.length&&hn(t.toLowerCase(),e.toLowerCase())}function Mg(t){var e,n;return $c(t,-129)>0&&$c(t,128)<0?(Ite(),e=qr(t)+128,n=g9t[e],!n&&(n=g9t[e]=new Cr(t)),n):new Cr(t)}function lw(){lw=V,x3=new B$(r0,0),ACt=new B$("INSIDE_PORT_SIDE_GROUPS",1),uft=new B$("GROUP_MODEL_ORDER",2),lft=new B$(J8t,3)}function Own(t){var e;return t.b||Srn(t,(e=Can(t.e,t.a),!e||!hn(jlt,L1((!e.b&&(e.b=new Ul((wn(),wo),Mc,e)),e.b),"qualified")))),t.c}function Nwn(t,e){var n,r;for(n=(qn(e,t.length),t.charCodeAt(e)),r=e+1;r2e3&&(Vve=t,IU=b.setTimeout(Mrn,10))),MU++==0?(K0n((uwt(),i9t)),!0):!1}function Wwn(t,e,n){var r;(fye?(Q2n(t),!0):dye||pye?(xE(),!0):gye&&(xE(),!1))&&(r=new UZt(e),r.b=n,n4n(t,r))}function tot(t,e){var n;n=!t.A.Hc((Yl(),qw))||t.q==(ka(),hu),t.u.Hc((wl(),Hg))?n?BCn(t,e):Tpe(t,e):t.u.Hc(g2)&&(n?rCn(t,e):jpe(t,e))}function Nle(t){var e;$t(ne(t,(ai(),cx)))===$t((Ag(),IK))&&(Ji(t)?(e=u(ne(Ji(t),cx),346),Mi(t,cx,e)):Mi(t,cx,bL))}function Ywn(t){var e,n;return qi(t.d.i,(De(),OT))?(e=u(X(t.c.i,OT),17),n=u(X(t.d.i,OT),17),jc(e.a,n.a)>0):!1}function Ple(t,e,n){return new Ah(b.Math.min(t.a,e.a)-n/2,b.Math.min(t.b,e.b)-n/2,b.Math.abs(t.a-e.a)+n,b.Math.abs(t.b-e.b)+n)}function Fle(t){var e;this.d=new fe,this.j=new Sa,this.g=new Sa,e=t.g.b,this.f=u(X(Pa(e),(De(),ph)),88),this.e=Rt(Ht(SH(e,O3)))}function Ble(t){this.d=new fe,this.e=new kp,this.c=Vt(Fr,ii,28,(ve(),lt(ut(bo,1),qc,64,0,[bc,Hn,Jn,Er,Gn])).length,15,1),this.b=t}function sxt(t,e,n){var r;switch(r=n[t.g][e],t.g){case 1:case 3:return new ae(0,r);case 2:case 4:return new ae(r,0);default:return null}}function Rle(t,e,n){var r,s;s=u(_I(e.f),205);try{s.rf(t,n),Hee(e.f,s)}catch(o){throw o=es(o),Lt(o,103)?(r=o,at(r)):at(o)}}function jle(t,e,n){var r,s,o,h,d,m;return r=null,d=Ykt(e7(),e),o=null,d&&(s=null,m=Kkt(d,n),h=null,m!=null&&(h=t.qf(d,m)),s=h,o=s),r=o,r}function eot(t,e,n,r){var s;if(s=t.length,e>=s)return s;for(e=e>0?e:0;er&&ls(e,r,null),e}function $le(t,e){var n,r;for(r=t.a.length,e.lengthr&&ls(e,r,null),e}function C7(t,e){var n,r;if(++t.j,e!=null&&(n=(r=t.a.Cb,Lt(r,99)?u(r,99).th():null),txn(e,n))){fk(t.a,4,n);return}fk(t.a,4,u(e,129))}function Xwn(t){var e;if(t==null)return null;if(e=e6n(su(t,!0)),e==null)throw at(new trt("Invalid hexBinary value: '"+t+"'"));return e}function EH(t,e,n){var r;e.a.length>0&&(ge(t.b,new ote(e.a,n)),r=e.a.length,0r&&(e.a+=uJt(Vt(Yh,Zd,28,-r,15,1))))}function zle(t,e,n){var r,s,o;if(!n[e.d])for(n[e.d]=!0,s=new G(s5(e));s.a=t.b>>1)for(r=t.c,n=t.b;n>e;--n)r=r.b;else for(r=t.a.a,n=0;n=0?t.Wh(s):Vot(t,r)):n<0?Vot(t,r):u(r,69).wk().Bk(t,t.hi(),n)}function Ule(t){var e,n,r;for(r=(!t.o&&(t.o=new nl((zc(),X0),Qp,t,0)),t.o),n=r.c.Kc();n.e!=n.i.gc();)e=u(n.Yj(),44),e.md();return RI(r)}function Se(t){var e;if(Lt(t.a,4)){if(e=nxt(t.a),e==null)throw at(new Ro(gwe+t.b+"'. "+dwe+(wg(UP),UP.k)+lTt));return e}else return t.a}function imn(t,e){var n,r;if(t.j.length!=e.j.length)return!1;for(n=0,r=t.j.length;n=64&&e<128&&(s=T1(s,Rf(1,e-64)));return s}function SH(t,e){var n,r;return r=null,qi(t,(ai(),Zk))&&(n=u(X(t,Zk),96),n.pf(e)&&(r=n.of(e))),r==null&&Pa(t)&&(r=X(Pa(t),e)),r}function smn(t,e){var n;return n=u(X(t,(De(),Vo)),75),eit(e,d4e)?n?nh(n):(n=new Qu,Zt(t,Vo,n)):n&&Zt(t,Vo,null),n}function b_(){b_=V,cCt=(ai(),$Mt),Xht=yMt,f3e=sx,oCt=Yp,b3e=(RH(),$9t),p3e=R9t,w3e=q9t,g3e=B9t,d3e=(Mat(),iCt),Yht=u3e,aCt=l3e,HU=h3e}function _H(t){switch(Iwt(),this.c=new fe,this.d=t,t.g){case 0:case 2:this.a=$yt(_Ct),this.b=Zi;break;case 3:case 1:this.a=_Ct,this.b=Vs}}function amn(t){var e;q6(u(X(t,(De(),bs)),101))&&(e=t.b,N1e((vn(0,e.c.length),u(e.c[0],30))),N1e(u(Oe(e,e.c.length-1),30)))}function omn(t,e){e.Ug("Self-Loop post-processing",1),ms(_i(_i(fc(new ln(null,new gn(t.b,16)),new RQ),new jQ),new $Q),new KB),e.Vg()}function Gle(t,e,n){var r,s;if(t.c)Su(t.c,t.c.i+e),_u(t.c,t.c.j+n);else for(s=new G(t.b);s.a=0&&(n.d=t.t);break;case 3:t.t>=0&&(n.a=t.t)}t.C&&(n.b=t.C.b,n.c=t.C.c)}function w_(){w_=V,DAt=new GM(y7t,0),y1t=new GM(qut,1),x1t=new GM("LINEAR_SEGMENTS",2),zA=new GM("BRANDES_KOEPF",3),qA=new GM(q2e,4)}function m_(){m_=V,HN=new P$(_V,0),zU=new P$(kut,1),qU=new P$(Eut,2),VN=new P$(Tut,3),HN.a=!1,zU.a=!0,qU.a=!1,VN.a=!0}function dk(){dk=V,$N=new N$(_V,0),jN=new N$(kut,1),zN=new N$(Eut,2),qN=new N$(Tut,3),$N.a=!1,jN.a=!0,zN.a=!1,qN.a=!0}function gk(t,e,n,r){var s;return n>=0?t.Sh(e,n,r):(t.Ph()&&(r=(s=t.Fh(),s>=0?t.Ah(r):t.Ph().Th(t,-1-s,null,r))),t.Ch(e,n,r))}function axt(t,e){switch(e){case 7:!t.e&&(t.e=new kn(Ts,t,7,4)),Ir(t.e);return;case 8:!t.d&&(t.d=new kn(Ts,t,8,5)),Ir(t.d);return}K5t(t,e)}function Mi(t,e,n){return n==null?(!t.o&&(t.o=new nl((zc(),X0),Qp,t,0)),yH(t.o,e)):(!t.o&&(t.o=new nl((zc(),X0),Qp,t,0)),SO(t.o,e,n)),t}function Xle(t,e){mn();var n,r,s,o;for(n=t,o=e,Lt(t,21)&&!Lt(e,21)&&(n=e,o=t),s=n.Kc();s.Ob();)if(r=s.Pb(),o.Hc(r))return!1;return!0}function fmn(t,e,n,r){if(e.an.b)return!0}return!1}function aot(t,e){return ba(t)?!!Bve[e]:t.Sm?!!t.Sm[e]:Cy(t)?!!Fve[e]:Ty(t)?!!Pve[e]:!1}function dmn(t){var e;e=t.a;do e=u(dr(new rr(sr(ua(e).a.Kc(),new z))),18).c.i,e.k==(Un(),fa)&&t.b.Fc(e);while(e.k==(Un(),fa));t.b=Bh(t.b)}function Qle(t,e){var n,r,s;for(s=t,r=new rr(sr(ua(e).a.Kc(),new z));Mr(r);)n=u(dr(r),18),n.c.i.c&&(s=b.Math.max(s,n.c.i.c.p));return s}function gmn(t,e){var n,r,s;for(s=0,r=u(u(Ai(t.r,e),21),87).Kc();r.Ob();)n=u(r.Pb(),117),s+=n.d.d+n.b.Mf().b+n.d.a,r.Ob()&&(s+=t.w);return s}function pmn(t,e){var n,r,s;for(s=0,r=u(u(Ai(t.r,e),21),87).Kc();r.Ob();)n=u(r.Pb(),117),s+=n.d.b+n.b.Mf().a+n.d.c,r.Ob()&&(s+=t.w);return s}function Jle(t){var e,n,r,s;if(r=0,s=n3(t),s.c.length==0)return 1;for(n=new G(s);n.a=0?t.Lh(h,n,!0):tv(t,o,n)):u(o,69).wk().yk(t,t.hi(),s,n,r)}function vmn(t,e,n,r){var s,o;o=e.pf((ai(),ux))?u(e.of(ux),21):t.j,s=r2n(o),s!=(yV(),Uht)&&(n&&!Z5t(s)||h6t(n6n(t,s,r),e))}function ymn(t){switch(t.g){case 1:return Gm(),RN;case 3:return Gm(),BN;case 2:return Gm(),Kht;case 4:return Gm(),Ght;default:return null}}function xmn(t,e,n){if(t.e)switch(t.b){case 1:hhn(t.c,e,n);break;case 0:fhn(t.c,e,n)}else vie(t.c,e,n);t.a[e.p][n.p]=t.c.i,t.a[n.p][e.p]=t.c.e}function Zle(t){var e,n;if(t==null)return null;for(n=Vt(V0,ue,199,t.length,0,2),e=0;e=0)return s;if(t.ol()){for(r=0;r=s)throw at(new Dy(e,s));if(t.Si()&&(r=t.dd(n),r>=0&&r!=e))throw at(new zn(AN));return t.Xi(e,n)}function oxt(t,e){if(this.a=u(Hr(t),253),this.b=u(Hr(e),253),t.Ed(e)>0||t==(Knt(),xht)||e==(Wnt(),kht))throw at(new zn("Invalid range: "+kie(t,e)))}function the(t){var e,n;for(this.b=new fe,this.c=t,this.a=!1,n=new G(t.a);n.a0),(e&-e)==e)return Ys(e*Dl(t,31)*4656612873077393e-25);do n=Dl(t,31),r=n%e;while(n-r+(e-1)<0);return Ys(r)}function _mn(t,e,n){switch(n.g){case 1:t.a=e.a/2,t.b=0;break;case 2:t.a=e.a,t.b=e.b/2;break;case 3:t.a=e.a/2,t.b=e.b;break;case 4:t.a=0,t.b=e.b/2}}function xO(t,e,n,r){var s,o;for(s=e;s1&&(o=Emn(t,e)),o}function rhe(t){var e;return e=Rt(Ht(ne(t,(ai(),MP))))*b.Math.sqrt((!t.a&&(t.a=new Jt(bi,t,10,11)),t.a).i),new ae(e,e/Rt(Ht(ne(t,DK))))}function cot(t){var e;return t.f&&t.f.Vh()&&(e=u(t.f,54),t.f=u(jb(t,e),84),t.f!=e&&t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,9,8,e,t.f))),t.f}function uot(t){var e;return t.i&&t.i.Vh()&&(e=u(t.i,54),t.i=u(jb(t,e),84),t.i!=e&&t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,9,7,e,t.i))),t.i}function yo(t){var e;return t.b&&t.b.Db&64&&(e=t.b,t.b=u(jb(t,e),19),t.b!=e&&t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,9,21,e,t.b))),t.b}function IH(t,e){var n,r,s;t.d==null?(++t.e,++t.f):(r=e.Bi(),X6n(t,t.f+1),s=(r&xi)%t.d.length,n=t.d[s],!n&&(n=t.d[s]=t.dk()),n.Fc(e),++t.f)}function lxt(t,e,n){var r;return e.tk()?!1:e.Ik()!=-2?(r=e.ik(),r==null?n==null:Ti(r,n)):e.qk()==t.e.Dh()&&n==null}function OH(){var t;oh(16,pbe),t=zoe(16),this.b=Vt(Tht,iN,302,t,0,1),this.c=Vt(Tht,iN,302,t,0,1),this.a=null,this.e=null,this.i=0,this.f=t-1,this.g=0}function Ig(t){bvt.call(this),this.k=(Un(),xs),this.j=(oh(6,c3),new wu(6)),this.b=(oh(2,c3),new wu(2)),this.d=new qnt,this.f=new Q2t,this.a=t}function Lmn(t){var e,n;t.c.length<=1||(e=c0e(t,(ve(),Er)),Wfe(t,u(e.a,17).a,u(e.b,17).a),n=c0e(t,Gn),Wfe(t,u(n.a,17).a,u(n.b,17).a))}function Dmn(t,e,n){var r,s;for(s=t.a.b,r=s.c.length;r102?-1:t<=57?t-48:t<65?-1:t<=70?t-65+10:t<97?-1:t-97+10}function got(t,e){if(t==null)throw at(new A6("null key in entry: null="+e));if(e==null)throw at(new A6("null value in entry: "+t+"=null"))}function Omn(t,e){for(var n,r;t.Ob();)if(!e.Ob()||(n=t.Pb(),r=e.Pb(),!($t(n)===$t(r)||n!=null&&Ti(n,r))))return!1;return!e.Ob()}function ahe(t,e){var n;return n=lt(ut(ma,1),No,28,15,[Oat(t.a[0],e),Oat(t.a[1],e),Oat(t.a[2],e)]),t.d&&(n[0]=b.Math.max(n[0],n[2]),n[2]=n[0]),n}function ohe(t,e){var n;return n=lt(ut(ma,1),No,28,15,[oH(t.a[0],e),oH(t.a[1],e),oH(t.a[2],e)]),t.d&&(n[0]=b.Math.max(n[0],n[2]),n[2]=n[0]),n}function fxt(t,e,n){q6(u(X(e,(De(),bs)),101))||(S3t(t,e,Pp(e,n)),S3t(t,e,Pp(e,(ve(),Er))),S3t(t,e,Pp(e,Hn)),mn(),Ds(e.j,new dUt(t)))}function che(t){var e,n;for(t.c||JTn(t),n=new Qu,e=new G(t.a),et(e);e.a0&&(qn(0,e.length),e.charCodeAt(0)==43)?(qn(1,e.length+1),e.substr(1)):e))}function Kmn(t){var e;return t==null?null:new Sb((e=su(t,!0),e.length>0&&(qn(0,e.length),e.charCodeAt(0)==43)?(qn(1,e.length+1),e.substr(1)):e))}function gxt(t,e,n,r,s,o,h,d){var m,k;r&&(m=r.a[0],m&&gxt(t,e,n,m,s,o,h,d),Eot(t,n,r.d,s,o,h,d)&&e.Fc(r),k=r.a[1],k&&gxt(t,e,n,k,s,o,h,d))}function u5(t,e,n){try{return vm(iat(t,e,n),1)}catch(r){throw r=es(r),Lt(r,333)?at(new Bo(Cut+t.o+"*"+t.p+Sut+e+ao+n+_ut)):at(r)}}function dhe(t,e,n){try{return vm(iat(t,e,n),0)}catch(r){throw r=es(r),Lt(r,333)?at(new Bo(Cut+t.o+"*"+t.p+Sut+e+ao+n+_ut)):at(r)}}function ghe(t,e,n){try{return vm(iat(t,e,n),2)}catch(r){throw r=es(r),Lt(r,333)?at(new Bo(Cut+t.o+"*"+t.p+Sut+e+ao+n+_ut)):at(r)}}function phe(t,e){if(t.g==-1)throw at(new Xu);t.Xj();try{t.d.hd(t.g,e),t.f=t.d.j}catch(n){throw n=es(n),Lt(n,77)?at(new Th):at(n)}}function Wmn(t){var e,n,r,s,o;for(r=new G(t.b);r.ao&&ls(e,o,null),e}function Ymn(t,e){var n,r;if(r=t.gc(),e==null){for(n=0;n0&&(m+=s),k[T]=h,h+=d*(m+r)}function whe(t){var e,n,r;for(r=t.f,t.n=Vt(ma,No,28,r,15,1),t.d=Vt(ma,No,28,r,15,1),e=0;e0?t.c:0),++s;t.b=r,t.d=o}function khe(t,e){var n;return n=lt(ut(ma,1),No,28,15,[uxt(t,(A1(),Ac),e),uxt(t,xu,e),uxt(t,Lc,e)]),t.f&&(n[0]=b.Math.max(n[0],n[2]),n[2]=n[0]),n}function rvn(t,e,n){var r;try{cV(t,e+t.j,n+t.k,!1,!0)}catch(s){throw s=es(s),Lt(s,77)?(r=s,at(new Bo(r.g+LV+e+ao+n+")."))):at(s)}}function ivn(t,e,n){var r;try{cV(t,e+t.j,n+t.k,!0,!1)}catch(s){throw s=es(s),Lt(s,77)?(r=s,at(new Bo(r.g+LV+e+ao+n+")."))):at(s)}}function Ehe(t){var e;qi(t,(De(),Tv))&&(e=u(X(t,Tv),21),e.Hc((e3(),Qf))?(e.Mc(Qf),e.Fc(Jf)):e.Hc(Jf)&&(e.Mc(Jf),e.Fc(Qf)))}function The(t){var e;qi(t,(De(),Tv))&&(e=u(X(t,Tv),21),e.Hc((e3(),t1))?(e.Mc(t1),e.Fc(bf)):e.Hc(bf)&&(e.Mc(bf),e.Fc(t1)))}function yot(t,e,n,r){var s,o,h,d;return t.a==null&&a4n(t,e),h=e.b.j.c.length,o=n.d.p,d=r.d.p,s=d-1,s<0&&(s=h-1),o<=s?t.a[s]-t.a[o]:t.a[h-1]-t.a[o]+t.a[s]}function svn(t){var e,n;if(!t.b)for(t.b=hq(u(t.f,27).kh().i),n=new Zn(u(t.f,27).kh());n.e!=n.i.gc();)e=u(ar(n),135),ge(t.b,new Qnt(e));return t.b}function avn(t){var e,n;if(!t.e)for(t.e=hq(Jit(u(t.f,27)).i),n=new Zn(Jit(u(t.f,27)));n.e!=n.i.gc();)e=u(ar(n),123),ge(t.e,new wGt(e));return t.e}function Che(t){var e,n;if(!t.a)for(t.a=hq(Jz(u(t.f,27)).i),n=new Zn(Jz(u(t.f,27)));n.e!=n.i.gc();)e=u(ar(n),27),ge(t.a,new sit(t,e));return t.a}function Jm(t){var e;if(!t.C&&(t.D!=null||t.B!=null))if(e=K9n(t),e)t.hl(e);else try{t.hl(null)}catch(n){if(n=es(n),!Lt(n,63))throw at(n)}return t.C}function ovn(t){switch(t.q.g){case 5:Yhe(t,(ve(),Hn)),Yhe(t,Er);break;case 4:Jge(t,(ve(),Hn)),Jge(t,Er);break;default:t1e(t,(ve(),Hn)),t1e(t,Er)}}function cvn(t){switch(t.q.g){case 5:Xhe(t,(ve(),Jn)),Xhe(t,Gn);break;case 4:Zge(t,(ve(),Jn)),Zge(t,Gn);break;default:e1e(t,(ve(),Jn)),e1e(t,Gn)}}function l5(t,e){var n,r,s;for(s=new Sa,r=t.Kc();r.Ob();)n=u(r.Pb(),36),B7(n,s.a,0),s.a+=n.f.a+e,s.b=b.Math.max(s.b,n.f.b);return s.b>0&&(s.b+=e),s}function FH(t,e){var n,r,s;for(s=new Sa,r=t.Kc();r.Ob();)n=u(r.Pb(),36),B7(n,0,s.b),s.b+=n.f.b+e,s.a=b.Math.max(s.a,n.f.a);return s.a>0&&(s.a+=e),s}function She(t){var e,n,r;for(r=xi,n=new G(t.a);n.a>16==6?t.Cb.Th(t,5,F1,e):(r=yo(u(En((n=u(jn(t,16),29),n||t.ii()),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function uvn(t){$E();var e=t.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 lvn(t){var e;return e=(Doe(),Yve),e[t>>>28]|e[t>>24&15]<<4|e[t>>20&15]<<8|e[t>>16&15]<<12|e[t>>12&15]<<16|e[t>>8&15]<<20|e[t>>4&15]<<24|e[t&15]<<28}function Lhe(t){var e,n,r;t.b==t.c&&(r=t.a.length,n=W4t(b.Math.max(8,r))<<1,t.b!=0?(e=Ff(t.a,n),Uoe(t,e,r),t.a=e,t.b=0):wy(t.a,n),t.c=r)}function hvn(t,e){var n;return n=t.b,n.pf((ai(),Pl))?n.ag()==(ve(),Gn)?-n.Mf().a-Rt(Ht(n.of(Pl))):e+Rt(Ht(n.of(Pl))):n.ag()==(ve(),Gn)?-n.Mf().a:e}function EO(t){var e;return t.b.c.length!=0&&u(Oe(t.b,0),72).a?u(Oe(t.b,0),72).a:(e=Zit(t),e??""+(t.c?Xo(t.c.a,t,0):-1))}function BH(t){var e;return t.f.c.length!=0&&u(Oe(t.f,0),72).a?u(Oe(t.f,0),72).a:(e=Zit(t),e??""+(t.i?Xo(t.i.j,t,0):-1))}function fvn(t,e){var n,r;if(e<0||e>=t.gc())return null;for(n=e;n0?t.c:0),s=b.Math.max(s,e.d),++r;t.e=o,t.b=s}function gvn(t){var e,n;if(!t.b)for(t.b=hq(u(t.f,123).kh().i),n=new Zn(u(t.f,123).kh());n.e!=n.i.gc();)e=u(ar(n),135),ge(t.b,new Qnt(e));return t.b}function pvn(t,e){var n,r,s;if(e.dc())return _E(),_E(),GP;for(n=new fZt(t,e.gc()),s=new Zn(t);s.e!=s.i.gc();)r=ar(s),e.Hc(r)&&Or(n,r);return n}function mxt(t,e,n,r){return e==0?r?(!t.o&&(t.o=new nl((zc(),X0),Qp,t,0)),t.o):(!t.o&&(t.o=new nl((zc(),X0),Qp,t,0)),RI(t.o)):AH(t,e,n,r)}function kot(t){var e,n;if(t.rb)for(e=0,n=t.rb.i;e>22),s+=r>>22,s<0)?!1:(t.l=n&Il,t.m=r&Il,t.h=s&Fg,!0)}function Eot(t,e,n,r,s,o,h){var d,m;return!(e.Te()&&(m=t.a.Ne(n,r),m<0||!s&&m==0)||e.Ue()&&(d=t.a.Ne(n,o),d>0||!h&&d==0))}function vvn(t,e){g7();var n;if(n=t.j.g-e.j.g,n!=0)return 0;switch(t.j.g){case 2:return Hat(e,ySt)-Hat(t,ySt);case 4:return Hat(t,vSt)-Hat(e,vSt)}return 0}function yvn(t){switch(t.g){case 0:return Oft;case 1:return Nft;case 2:return Pft;case 3:return Fft;case 4:return kG;case 5:return Bft;default:return null}}function qo(t,e,n){var r,s;return r=(s=new Unt,uw(s,e),mu(s,n),Or((!t.c&&(t.c=new Jt(Ov,t,12,10)),t.c),s),s),Sp(r,0),Hy(r,1),Mp(r,!0),Dp(r,!0),r}function pk(t,e){var n,r;if(e>=t.i)throw at(new Grt(e,t.i));return++t.j,n=t.g[e],r=t.i-e-1,r>0&&Xc(t.g,e+1,t.g,e,r),ls(t.g,--t.i,null),t.Qi(e,n),t.Ni(),n}function Dhe(t,e){var n,r;return t.Db>>16==17?t.Cb.Th(t,21,mf,e):(r=yo(u(En((n=u(jn(t,16),29),n||t.ii()),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function xvn(t){var e,n,r,s;for(mn(),Ds(t.c,t.a),s=new G(t.c);s.an.a.c.length))throw at(new zn("index must be >= 0 and <= layer node count"));t.c&&zu(t.c.a,t),t.c=n,n&&Sm(n.a,e,t)}function Phe(t,e){var n,r,s;for(r=new rr(sr(Dg(t).a.Kc(),new z));Mr(r);)return n=u(dr(r),18),s=u(e.Kb(n),10),new FC(Hr(s.n.b+s.o.b/2));return UC(),UC(),yht}function Fhe(t,e){this.c=new _r,this.a=t,this.b=e,this.d=u(X(t,(oe(),G5)),312),$t(X(t,(De(),iAt)))===$t((qI(),EG))?this.e=new MKt:this.e=new DKt}function y_(t,e){var n,r;return r=null,t.pf((ai(),Zk))&&(n=u(t.of(Zk),96),n.pf(e)&&(r=n.of(e))),r==null&&t.Tf()&&(r=t.Tf().of(e)),r==null&&(r=Se(e)),r}function Tot(t,e){var n,r;n=t.fd(e);try{return r=n.Pb(),n.Qb(),r}catch(s){throw s=es(s),Lt(s,112)?at(new Bo("Can't remove element "+e)):at(s)}}function Lvn(t,e){var n,r,s;if(r=new x$,s=new Q4t(r.q.getFullYear()-Wb,r.q.getMonth(),r.q.getDate()),n=$7n(t,e,s),n==0||n0?e:0),++n;return new ae(r,s)}function Ext(t,e){var n,r;return t.Db>>16==6?t.Cb.Th(t,6,Ts,e):(r=yo(u(En((n=u(jn(t,16),29),n||(zc(),$K)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function Txt(t,e){var n,r;return t.Db>>16==7?t.Cb.Th(t,1,zP,e):(r=yo(u(En((n=u(jn(t,16),29),n||(zc(),SIt)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function Cxt(t,e){var n,r;return t.Db>>16==9?t.Cb.Th(t,9,bi,e):(r=yo(u(En((n=u(jn(t,16),29),n||(zc(),AIt)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function jhe(t,e){var n,r;return t.Db>>16==5?t.Cb.Th(t,9,YK,e):(r=yo(u(En((n=u(jn(t,16),29),n||(wn(),Zp)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function $he(t,e){var n,r;return t.Db>>16==7?t.Cb.Th(t,6,F1,e):(r=yo(u(En((n=u(jn(t,16),29),n||(wn(),eb)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function Sxt(t,e){var n,r;return t.Db>>16==3?t.Cb.Th(t,0,HP,e):(r=yo(u(En((n=u(jn(t,16),29),n||(wn(),Jp)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function zhe(){this.a=new WR,this.g=new OH,this.j=new OH,this.b=new _r,this.d=new OH,this.i=new OH,this.k=new _r,this.c=new _r,this.e=new _r,this.f=new _r}function Ivn(t,e,n){var r,s,o;for(n<0&&(n=0),o=t.i,s=n;suut)return _7(t,r);if(r==t)return!0}}return!1}function Nvn(t){switch(hz(),t.q.g){case 5:T1e(t,(ve(),Hn)),T1e(t,Er);break;case 4:Cde(t,(ve(),Hn)),Cde(t,Er);break;default:Ape(t,(ve(),Hn)),Ape(t,Er)}}function Pvn(t){switch(hz(),t.q.g){case 5:H1e(t,(ve(),Jn)),H1e(t,Gn);break;case 4:Kle(t,(ve(),Jn)),Kle(t,Gn);break;default:Lpe(t,(ve(),Jn)),Lpe(t,Gn)}}function Fvn(t){var e,n;e=u(X(t,(Vf(),N3e)),17),e?(n=e.a,n==0?Zt(t,(Pb(),WU),new Kat):Zt(t,(Pb(),WU),new pq(n))):Zt(t,(Pb(),WU),new pq(1))}function Bvn(t,e){var n;switch(n=t.i,e.g){case 1:return-(t.n.b+t.o.b);case 2:return t.n.a-n.o.a;case 3:return t.n.b-n.o.b;case 4:return-(t.n.a+t.o.a)}return 0}function Rvn(t,e){switch(t.g){case 0:return e==(Rh(),s2)?gG:pG;case 1:return e==(Rh(),s2)?gG:YN;case 2:return e==(Rh(),s2)?YN:pG;default:return YN}}function CO(t,e){var n,r,s;for(zu(t.a,e),t.e-=e.r+(t.a.c.length==0?0:t.c),s=O7t,r=new G(t.a);r.a>16==3?t.Cb.Th(t,12,bi,e):(r=yo(u(En((n=u(jn(t,16),29),n||(zc(),CIt)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function Axt(t,e){var n,r;return t.Db>>16==11?t.Cb.Th(t,10,bi,e):(r=yo(u(En((n=u(jn(t,16),29),n||(zc(),_It)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function qhe(t,e){var n,r;return t.Db>>16==10?t.Cb.Th(t,11,mf,e):(r=yo(u(En((n=u(jn(t,16),29),n||(wn(),tb)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function Hhe(t,e){var n,r;return t.Db>>16==10?t.Cb.Th(t,12,vf,e):(r=yo(u(En((n=u(jn(t,16),29),n||(wn(),K3)),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function of(t){var e;return!(t.Bb&1)&&t.r&&t.r.Vh()&&(e=u(t.r,54),t.r=u(jb(t,e),142),t.r!=e&&t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,9,8,e,t.r))),t.r}function Cot(t,e,n){var r;return r=lt(ut(ma,1),No,28,15,[t6t(t,(A1(),Ac),e,n),t6t(t,xu,e,n),t6t(t,Lc,e,n)]),t.f&&(r[0]=b.Math.max(r[0],r[2]),r[2]=r[0]),r}function jvn(t,e){var n,r,s;if(s=umn(t,e),s.c.length!=0)for(Ds(s,new Z9),n=s.c.length,r=0;r>19,k=e.h>>19,m!=k?k-m:(s=t.h,d=e.h,s!=d?s-d:(r=t.m,h=e.m,r!=h?r-h:(n=t.l,o=e.l,n-o)))}function RH(){RH=V,H9t=(aV(),Hht),q9t=new un(_8t,H9t),z9t=(Mq(),qht),$9t=new un(A8t,z9t),j9t=(TH(),zht),R9t=new un(L8t,j9t),B9t=new un(D8t,(Pn(),!0))}function x_(t,e,n){var r,s;r=e*n,Lt(t.g,154)?(s=ek(t),s.f.d?s.f.a||(t.d.a+=r+gd):(t.d.d-=r+gd,t.d.a+=r+gd)):Lt(t.g,10)&&(t.d.d-=r,t.d.a+=2*r)}function Vhe(t,e,n){var r,s,o,h,d;for(s=t[n.g],d=new G(e.d);d.a0?t.b:0),++n;e.b=r,e.e=s}function Uhe(t){var e,n,r;if(r=t.b,FYt(t.i,r.length)){for(n=r.length*2,t.b=Vt(Tht,iN,302,n,0,1),t.c=Vt(Tht,iN,302,n,0,1),t.f=n-1,t.i=0,e=t.a;e;e=e.c)NO(t,e,e);++t.g}}function Gvn(t,e,n,r){var s,o,h,d;for(s=0;sh&&(d=h/r),s>o&&(m=o/s),qd(t,b.Math.min(d,m)),t}function Wvn(){fV();var t,e;try{if(e=u(jxt((Eb(),yf),hT),2113),e)return e}catch(n){if(n=es(n),Lt(n,103))t=n,Ayt((Ur(),t));else throw at(n)}return new W8}function Yvn(){fV();var t,e;try{if(e=u(jxt((Eb(),yf),hf),2040),e)return e}catch(n){if(n=es(n),Lt(n,103))t=n,Ayt((Ur(),t));else throw at(n)}return new l6}function Xvn(){eae();var t,e;try{if(e=u(jxt((Eb(),yf),Cw),2122),e)return e}catch(n){if(n=es(n),Lt(n,103))t=n,Ayt((Ur(),t));else throw at(n)}return new Z8}function Qvn(t,e,n){var r,s;return s=t.e,t.e=e,t.Db&4&&!(t.Db&1)&&(r=new ha(t,1,4,s,e),n?n.nj(r):n=r),s!=e&&(e?n=H7(t,QH(t,e),n):n=H7(t,t.a,n)),n}function Ghe(){x$.call(this),this.e=-1,this.a=!1,this.p=Ga,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=Ga}function Jvn(t,e){var n,r,s;if(r=t.b.d.d,t.a||(r+=t.b.d.a),s=e.b.d.d,e.a||(s+=e.b.d.a),n=Bi(r,s),n==0){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}function Zvn(t,e){var n,r,s;if(r=t.b.b.d,t.a||(r+=t.b.b.a),s=e.b.b.d,e.a||(s+=e.b.b.a),n=Bi(r,s),n==0){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}function tyn(t,e){var n,r,s;if(r=t.b.g.d,t.a||(r+=t.b.g.a),s=e.b.g.d,e.a||(s+=e.b.g.a),n=Bi(r,s),n==0){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}function Dxt(){Dxt=V,J3e=el(ri(ri(ri(new Fs,(Ua(),cu),(Za(),sSt)),cu,aSt),Zo,oSt),Zo,WCt),t4e=ri(ri(new Fs,cu,zCt),cu,YCt),Z3e=el(new Fs,Zo,QCt)}function eyn(t){var e,n,r,s,o;for(e=u(X(t,(oe(),MA)),85),o=t.n,r=e.Cc().Kc();r.Ob();)n=u(r.Pb(),314),s=n.i,s.c+=o.a,s.d+=o.b,n.c?f0e(n):d0e(n);Zt(t,MA,null)}function nyn(t,e,n){var r,s;switch(s=t.b,r=s.d,e.g){case 1:return-r.d-n;case 2:return s.o.a+r.c+n;case 3:return s.o.b+r.a+n;case 4:return-r.b-n;default:return-1}}function ryn(t,e,n){var r,s;for(n.Ug("Interactive node placement",1),t.a=u(X(e,(oe(),G5)),312),s=new G(e.b);s.a0&&(h=(o&xi)%t.d.length,s=I6t(t,h,o,e),s)?(d=s.nd(n),d):(r=t.ck(o,e,n),t.c.Fc(r),null)}function Oxt(t,e){var n,r,s,o;switch(Lp(t,e).Kl()){case 3:case 2:{for(n=v5(e),s=0,o=n.i;s=0;r--)if(hn(t[r].d,e)||hn(t[r].d,n)){t.length>=r+1&&t.splice(0,r+1);break}return t}function _O(t,e){var n;return ec(t)&&ec(e)&&(n=t/e,oN0&&(t.b+=2,t.a+=r):(t.b+=1,t.a+=b.Math.min(r,s))}function Zhe(t){var e;e=u(X(u(jh(t.b,0),39),(Cc(),SLt)),107),Zt(t,(ji(),zT),new ae(0,0)),U0e(new FI,t,e.b+e.c-Rt(Ht(X(t,R1t))),e.d+e.a-Rt(Ht(X(t,j1t))))}function tfe(t,e){var n,r;if(r=!1,ba(e)&&(r=!0,Y6(t,new Oy(Gr(e)))),r||Lt(e,242)&&(r=!0,Y6(t,(n=_vt(u(e,242)),new cE(n)))),!r)throw at(new Znt(LTt))}function yyn(t,e,n,r){var s,o,h;return s=new Tg(t.e,1,10,(h=e.c,Lt(h,90)?u(h,29):(wn(),xf)),(o=n.c,Lt(o,90)?u(o,29):(wn(),xf)),Np(t,e),!1),r?r.nj(s):r=s,r}function Fxt(t){var e,n;switch(u(X(Pa(t),(De(),Q_t)),429).g){case 0:return e=t.n,n=t.o,new ae(e.a+n.a/2,e.b+n.b/2);case 1:return new io(t.n);default:return null}}function AO(){AO=V,TG=new uS(r0,0),FSt=new uS("LEFTUP",1),RSt=new uS("RIGHTUP",2),PSt=new uS("LEFTDOWN",3),BSt=new uS("RIGHTDOWN",4),Rft=new uS("BALANCED",5)}function xyn(t,e,n){var r,s,o;if(r=Bi(t.a[e.p],t.a[n.p]),r==0){if(s=u(X(e,(oe(),Uk)),15),o=u(X(n,Uk),15),s.Hc(n))return-1;if(o.Hc(e))return 1}return r}function kyn(t){switch(t.g){case 1:return new mtt;case 2:return new vtt;case 3:return new wtt;case 0:return null;default:throw at(new zn(Clt+(t.f!=null?t.f:""+t.g)))}}function Bxt(t,e,n){switch(e){case 1:!t.n&&(t.n=new Jt(Po,t,1,7)),Ir(t.n),!t.n&&(t.n=new Jt(Po,t,1,7)),gs(t.n,u(n,16));return;case 2:n7(t,Gr(n));return}r5t(t,e,n)}function Rxt(t,e,n){switch(e){case 3:zm(t,Rt(Ht(n)));return;case 4:qm(t,Rt(Ht(n)));return;case 5:Su(t,Rt(Ht(n)));return;case 6:_u(t,Rt(Ht(n)));return}Bxt(t,e,n)}function jH(t,e,n){var r,s,o;o=(r=new Unt,r),s=hd(o,e,null),s&&s.oj(),mu(o,n),Or((!t.c&&(t.c=new Jt(Ov,t,12,10)),t.c),o),Sp(o,0),Hy(o,1),Mp(o,!0),Dp(o,!0)}function jxt(t,e){var n,r,s;return n=iS(t.i,e),Lt(n,241)?(s=u(n,241),s.zi()==null,s.wi()):Lt(n,507)?(r=u(n,2037),s=r.b,s):null}function Eyn(t,e,n,r){var s,o;return Hr(e),Hr(n),o=u(_S(t.d,e),17),_ae(!!o,"Row %s not in %s",e,t.e),s=u(_S(t.b,n),17),_ae(!!s,"Column %s not in %s",n,t.c),Rce(t,o.a,s.a,r)}function efe(t,e,n,r,s,o,h){var d,m,k,T,A;if(T=s[o],k=o==h-1,d=k?r:0,A=yhe(d,T),r!=10&<(ut(t,h-o),e[o],n[o],d,A),!k)for(++o,m=0;m1||d==-1?(o=u(m,15),s.Wb(awn(t,o))):s.Wb(lct(t,u(m,58)))))}function Dyn(t,e,n,r){hYt();var s=vht;function o(){for(var h=0;h0)return!1;return!0}function Oyn(t){var e,n,r,s,o;for(r=new sw(new mr(t.b).a);r.b;)n=Um(r),e=u(n.ld(),10),o=u(u(n.md(),42).a,10),s=u(u(n.md(),42).b,8),ki(k1(e.n),ki(Oa(o.n),s))}function Nyn(t){switch(u(X(t.b,(De(),V_t)),387).g){case 1:ms(Wo(fc(new ln(null,new gn(t.d,16)),new WD),new y4),new vJ);break;case 2:L8n(t);break;case 0:o5n(t)}}function Pyn(t,e,n){var r,s,o;for(r=n,!r&&(r=new S6),r.Ug("Layout",t.a.c.length),o=new G(t.a);o.axlt)return n;s>-1e-6&&++n}return n}function zxt(t,e){var n;e!=t.b?(n=null,t.b&&(n=nq(t.b,t,-4,n)),e&&(n=gk(e,t,-4,n)),n=Mue(t,e,n),n&&n.oj()):t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,3,e,e))}function ife(t,e){var n;e!=t.f?(n=null,t.f&&(n=nq(t.f,t,-1,n)),e&&(n=gk(e,t,-1,n)),n=Due(t,e,n),n&&n.oj()):t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,0,e,e))}function jyn(t,e,n,r){var s,o,h,d;return Hl(t.e)&&(s=e.Lk(),d=e.md(),o=n.md(),h=Ib(t,1,s,d,o,s.Jk()?$7(t,s,o,Lt(s,102)&&(u(s,19).Bb&po)!=0):-1,!0),r?r.nj(h):r=h),r}function sfe(t){var e,n,r;if(t==null)return null;if(n=u(t,15),n.dc())return"";for(r=new dp,e=n.Kc();e.Ob();)Mo(r,(Ni(),Gr(e.Pb()))),r.a+=" ";return Wrt(r,r.a.length-1)}function afe(t){var e,n,r;if(t==null)return null;if(n=u(t,15),n.dc())return"";for(r=new dp,e=n.Kc();e.Ob();)Mo(r,(Ni(),Gr(e.Pb()))),r.a+=" ";return Wrt(r,r.a.length-1)}function $yn(t,e,n){var r,s;return r=t.c[e.c.p][e.p],s=t.c[n.c.p][n.p],r.a!=null&&s.a!=null?Fit(r.a,s.a):r.a!=null?-1:s.a!=null?1:0}function zyn(t,e,n){return n.Ug("Tree layout",1),EI(t.b),E1(t.b,(bk(),sK),sK),E1(t.b,WA,WA),E1(t.b,YA,YA),E1(t.b,XA,XA),t.a=XO(t.b,e),Pyn(t,e,n.eh(1)),n.Vg(),e}function qyn(t,e){var n,r,s,o,h,d;if(e)for(o=e.a.length,n=new W2(o),d=(n.b-n.a)*n.c<0?(Tb(),y2):new _b(n);d.Ob();)h=u(d.Pb(),17),s=qE(e,h.a),r=new _Gt(t),Xln(r.a,s)}function Hyn(t,e){var n,r,s,o,h,d;if(e)for(o=e.a.length,n=new W2(o),d=(n.b-n.a)*n.c<0?(Tb(),y2):new _b(n);d.Ob();)h=u(d.Pb(),17),s=qE(e,h.a),r=new mGt(t),Yln(r.a,s)}function Vyn(t){var e;if(t!=null&&t.length>0&&Va(t,t.length-1)==33)try{return e=pde(Lh(t,0,t.length-1)),e.e==null}catch(n){if(n=es(n),!Lt(n,33))throw at(n)}return!1}function Uyn(t,e,n){var r,s,o;switch(r=Pa(e),s=fH(r),o=new Yc,hc(o,e),n.g){case 1:Xs(o,bO(hk(s)));break;case 2:Xs(o,hk(s))}return Zt(o,(De(),D3),Ht(X(t,D3))),o}function qxt(t){var e,n;return e=u(dr(new rr(sr(ua(t.a).a.Kc(),new z))),18),n=u(dr(new rr(sr(_s(t.a).a.Kc(),new z))),18),Ie(Me(X(e,(oe(),vd))))||Ie(Me(X(n,vd)))}function Qy(){Qy=V,XN=new HM("ONE_SIDE",0),mG=new HM("TWO_SIDES_CORNER",1),vG=new HM("TWO_SIDES_OPPOSING",2),wG=new HM("THREE_SIDES",3),bG=new HM("FOUR_SIDES",4)}function ofe(t,e){var n,r,s,o;for(o=new fe,s=0,r=e.Kc();r.Ob();){for(n=he(u(r.Pb(),17).a+s);n.a=t.f)break;In(o.c,n)}return o}function Gyn(t,e){var n,r,s,o,h;for(o=new G(e.a);o.a0&&Mhe(this,this.c-1,(ve(),Jn)),this.c0&&t[0].length>0&&(this.c=Ie(Me(X(Pa(t[0][0]),(oe(),ZSt))))),this.a=Vt(nke,ue,2117,t.length,0,2),this.b=Vt(rke,ue,2118,t.length,0,2),this.d=new Cue}function Qyn(t){return t.c.length==0?!1:(vn(0,t.c.length),u(t.c[0],18)).c.i.k==(Un(),fa)?!0:t5(Wo(new ln(null,new gn(t,16)),new WJ),new YJ)}function lfe(t,e){var n,r,s,o,h,d,m;for(d=n3(e),o=e.f,m=e.g,h=b.Math.sqrt(o*o+m*m),s=0,r=new G(d);r.a=0?(n=_O(t,EV),r=mO(t,EV)):(e=Ab(t,1),n=_O(e,5e8),r=mO(e,5e8),r=Qa(Rf(r,1),sa(t,1))),T1(Rf(r,32),sa(n,So))}function dfe(t,e,n){var r,s;switch(r=(ur(e.b!=0),u(Oh(e,e.a.a),8)),n.g){case 0:r.b=0;break;case 2:r.b=t.f;break;case 3:r.a=0;break;default:r.a=t.g}return s=Dr(e,0),kI(s,r),e}function gfe(t,e,n,r){var s,o,h,d,m;switch(m=t.b,o=e.d,h=o.j,d=sxt(h,m.d[h.g],n),s=ki(Oa(o.n),o.a),o.j.g){case 1:case 3:d.a+=s.a;break;case 2:case 4:d.b+=s.b}hs(r,d,r.c.b,r.c)}function u3n(t,e,n){var r,s,o,h;for(h=Xo(t.e,e,0),o=new W2t,o.b=n,r=new La(t.e,h);r.b1;e>>=1)e&1&&(r=Z4(r,n)),n.d==1?n=Z4(n,n):n=new Dle(Q0e(n.a,n.d,Vt(Fr,ii,28,n.d<<1,15,1)));return r=Z4(r,n),r}function Qxt(){Qxt=V;var t,e,n,r;for(L9t=Vt(ma,No,28,25,15,1),D9t=Vt(ma,No,28,33,15,1),r=152587890625e-16,e=32;e>=0;e--)D9t[e]=r,r*=.5;for(n=1,t=24;t>=0;t--)L9t[t]=n,n*=.5}function p3n(t){var e,n;if(Ie(Me(ne(t,(De(),L3))))){for(n=new rr(sr(Og(t).a.Kc(),new z));Mr(n);)if(e=u(dr(n),74),Zm(e)&&Ie(Me(ne(e,Mw))))return!0}return!1}function pfe(t,e){var n,r,s;qs(t.f,e)&&(e.b=t,r=e.c,Xo(t.j,r,0)!=-1||ge(t.j,r),s=e.d,Xo(t.j,s,0)!=-1||ge(t.j,s),n=e.a.b,n.c.length!=0&&(!t.i&&(t.i=new Fle(t)),ypn(t.i,n)))}function b3n(t){var e,n,r,s,o;return n=t.c.d,r=n.j,s=t.d.d,o=s.j,r==o?n.p=0&&hn(t.substr(e,3),"GMT")||e>=0&&hn(t.substr(e,3),"UTC"))&&(n[0]=e+3),Lkt(t,n,r)}function m3n(t,e){var n,r,s,o,h;for(o=t.g.a,h=t.g.b,r=new G(t.d);r.an;o--)t[o]|=e[o-n-1]>>>h,t[o-1]=e[o-n-1]<0&&Xc(t.g,e,t.g,e+r,d),h=n.Kc(),t.i+=r,s=0;s>4&15,o=t[r]&15,h[s++]=LIt[n],h[s++]=LIt[o];return af(h,0,h.length)}function Hu(t){var e,n;return t>=po?(e=cN+(t-po>>10&1023)&js,n=56320+(t-po&1023)&js,String.fromCharCode(e)+(""+String.fromCharCode(n))):String.fromCharCode(t&js)}function L3n(t,e){Ay();var n,r,s,o;return s=u(u(Ai(t.r,e),21),87),s.gc()>=2?(r=u(s.Kc().Pb(),117),n=t.u.Hc((wl(),yL)),o=t.u.Hc(n8),!r.a&&!n&&(s.gc()==2||o)):!1}function mfe(t,e,n,r,s){var o,h,d;for(o=i0e(t,e,n,r,s),d=!1;!o;)YH(t,s,!0),d=!0,o=i0e(t,e,n,r,s);d&&YH(t,s,!1),h=mat(s),h.c.length!=0&&(t.d&&t.d.Gg(h),mfe(t,s,n,r,h))}function HH(){HH=V,Gdt=new dS(r0,0),ZMt=new dS("DIRECTED",1),eIt=new dS("UNDIRECTED",2),QMt=new dS("ASSOCIATION",3),tIt=new dS("GENERALIZATION",4),JMt=new dS("DEPENDENCY",5)}function D3n(t,e){var n;if(!ed(t))throw at(new Ro(Pwe));switch(n=ed(t),e.g){case 1:return-(t.j+t.f);case 2:return t.i-n.g;case 3:return t.j-n.f;case 4:return-(t.i+t.g)}return 0}function M3n(t,e,n){var r,s,o;return r=e.Lk(),o=e.md(),s=r.Jk()?Ib(t,4,r,o,null,$7(t,r,o,Lt(r,102)&&(u(r,19).Bb&po)!=0),!0):Ib(t,r.tk()?2:1,r,o,r.ik(),-1,!0),n?n.nj(s):n=s,n}function D7(t,e){var n,r;for(Wn(e),r=t.b.c.length,ge(t.b,e);r>0;){if(n=r,r=(r-1)/2|0,t.a.Ne(Oe(t.b,r),e)<=0)return Mh(t.b,n,e),!0;Mh(t.b,n,Oe(t.b,r))}return Mh(t.b,r,e),!0}function t6t(t,e,n,r){var s,o;if(s=0,n)s=oH(t.a[n.g][e.g],r);else for(o=0;o=d)}function vfe(t){switch(t.g){case 0:return new Stt;case 1:return new _tt;default:throw at(new zn("No implementation is available for the width approximator "+(t.f!=null?t.f:""+t.g)))}}function e6t(t,e,n,r){var s;if(s=!1,ba(r)&&(s=!0,ME(e,n,Gr(r))),s||Ty(r)&&(s=!0,e6t(t,e,n,r)),s||Lt(r,242)&&(s=!0,Q2(e,n,u(r,242))),!s)throw at(new Znt(LTt))}function O3n(t,e){var n,r,s;if(n=e.qi(t.a),n&&(s=L1((!n.b&&(n.b=new Ul((wn(),wo),Mc,n)),n.b),lf),s!=null)){for(r=1;r<(il(),ZIt).length;++r)if(hn(ZIt[r],s))return r}return 0}function N3n(t,e){var n,r,s;if(n=e.qi(t.a),n&&(s=L1((!n.b&&(n.b=new Ul((wn(),wo),Mc,n)),n.b),lf),s!=null)){for(r=1;r<(il(),tOt).length;++r)if(hn(tOt[r],s))return r}return 0}function yfe(t,e){var n,r,s,o;if(Wn(e),o=t.a.gc(),o0?1:0;o.a[s]!=n;)o=o.a[s],s=t.a.Ne(n.d,o.d)>0?1:0;o.a[s]=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 B3n(t){var e,n,r,s;for(e=new fe,n=Vt(Fl,$0,28,t.a.c.length,16,1),Eyt(n,n.length),s=new G(t.a);s.a0&&K0e((vn(0,n.c.length),u(n.c[0],30)),t),n.c.length>1&&K0e(u(Oe(n,n.c.length-1),30),t),e.Vg()}function j3n(t){wl();var e,n;return e=Hi(Hg,lt(ut(OK,1),te,279,0,[g2])),!(tO(iq(e,t))>1||(n=Hi(yL,lt(ut(OK,1),te,279,0,[vL,n8])),tO(iq(n,t))>1))}function r6t(t,e){var n;n=nu((Eb(),yf),t),Lt(n,507)?jo(yf,t,new fQt(this,e)):jo(yf,t,this),Fot(this,e),e==(bE(),zIt)?(this.wb=u(this,2038),u(e,2040)):this.wb=(Lb(),Fn)}function $3n(t){var e,n,r;if(t==null)return null;for(e=null,n=0;n=Rp?"error":r>=900?"warn":r>=800?"info":"log"),Oee(n,t.a),t.b&&ikt(e,n,t.b,"Exception: ",!0))}function X(t,e){var n,r;return r=(!t.q&&(t.q=new _r),tr(t.q,e)),r??(n=e.Sg(),Lt(n,4)&&(n==null?(!t.q&&(t.q=new _r),rk(t.q,e)):(!t.q&&(t.q=new _r),hi(t.q,e,n))),n)}function Ua(){Ua=V,Wf=new qM("P1_CYCLE_BREAKING",0),H0=new qM("P2_LAYERING",1),Qc=new qM("P3_NODE_ORDERING",2),cu=new qM("P4_NODE_PLACEMENT",3),Zo=new qM("P5_EDGE_ROUTING",4)}function z3n(t,e){YS();var n;if(t.c==e.c){if(t.b==e.b||Wgn(t.b,e.b)){if(n=vin(t.b)?1:-1,t.a&&!e.a)return n;if(!t.a&&e.a)return-n}return jc(t.b.g,e.b.g)}else return Bi(t.c,e.c)}function Cfe(t,e){var n,r,s;if(s6t(t,e))return!0;for(r=new G(e);r.a=s||e<0)throw at(new Bo(Zlt+e+Ew+s));if(n>=s||n<0)throw at(new Bo(tht+n+Ew+s));return e!=n?r=(o=t.Cj(n),t.qj(e,o),o):r=t.xj(n),r}function Afe(t){var e,n,r;if(r=t,t)for(e=0,n=t.Eh();n;n=n.Eh()){if(++e>uut)return Afe(n);if(r=n,n==t)throw at(new Ro("There is a cycle in the containment hierarchy of "+t))}return r}function Hb(t){var e,n,r;for(r=new aw(ao,"[","]"),n=t.Kc();n.Ob();)e=n.Pb(),Eg(r,$t(e)===$t(t)?"(this Collection)":e==null?Vu:rc(e));return r.a?r.e.length==0?r.a.a:r.a.a+(""+r.e):r.c}function s6t(t,e){var n,r;if(r=!1,e.gc()<2)return!1;for(n=0;n1&&(t.j.b+=t.e)):(t.j.a+=n.a,t.j.b=b.Math.max(t.j.b,n.b),t.d.c.length>1&&(t.j.a+=t.e))}function Vb(){Vb=V,$4e=lt(ut(bo,1),qc,64,0,[(ve(),Hn),Jn,Er]),j4e=lt(ut(bo,1),qc,64,0,[Jn,Er,Gn]),z4e=lt(ut(bo,1),qc,64,0,[Er,Gn,Hn]),q4e=lt(ut(bo,1),qc,64,0,[Gn,Hn,Jn])}function H3n(t,e,n,r){var s,o,h,d,m,k,T;if(h=t.c.d,d=t.d.d,h.j!=d.j)for(T=t.b,s=h.j,m=null;s!=d.j;)m=e==0?hH(s):C5t(s),o=sxt(s,T.d[s.g],n),k=sxt(m,T.d[m.g],n),Zr(r,ki(o,k)),s=m}function V3n(t,e,n,r){var s,o,h,d,m;return h=Ihe(t.a,e,n),d=u(h.a,17).a,o=u(h.b,17).a,r&&(m=u(X(e,(oe(),ml)),10),s=u(X(n,ml),10),m&&s&&(vie(t.b,m,s),d+=t.b.i,o+=t.b.e)),d>o}function Dfe(t){var e,n,r,s,o,h,d,m,k;for(this.a=Zle(t),this.b=new fe,n=t,r=0,s=n.length;rhit(t.d).c?(t.i+=t.g.c,Qat(t.d)):hit(t.d).c>hit(t.g).c?(t.e+=t.d.c,Qat(t.g)):(t.i+=zte(t.g),t.e+=zte(t.d),Qat(t.g),Qat(t.d))}function W3n(t,e,n){var r,s,o,h;for(o=e.q,h=e.r,new J2((C1(),o2),e,o,1),new J2(o2,o,h,1),s=new G(n);s.ad&&(m=d/r),s>o&&(k=o/s),h=b.Math.min(m,k),t.a+=h*(e.a-t.a),t.b+=h*(e.b-t.b)}function J3n(t,e,n,r,s){var o,h;for(h=!1,o=u(Oe(n.b,0),27);_7n(t,e,o,r,s)&&(h=!0,Ayn(n,o),n.b.c.length!=0);)o=u(Oe(n.b,0),27);return n.b.c.length==0&&CO(n.j,n),h&&PH(e.q),h}function Z3n(t,e){w5();var n,r,s,o;if(e.b<2)return!1;for(o=Dr(e,0),n=u(Ar(o),8),r=n;o.b!=o.d.c;){if(s=u(Ar(o),8),Jot(t,r,s))return!0;r=s}return!!Jot(t,r,n)}function o6t(t,e,n,r){var s,o;return n==0?(!t.o&&(t.o=new nl((zc(),X0),Qp,t,0)),pz(t.o,e,r)):(o=u(En((s=u(jn(t,16),29),s||t.ii()),n),69),o.wk().Ak(t,Au(t),n-fr(t.ii()),e,r))}function Fot(t,e){var n;e!=t.sb?(n=null,t.sb&&(n=u(t.sb,54).Th(t,1,EL,n)),e&&(n=u(e,54).Rh(t,1,EL,n)),n=v5t(t,e,n),n&&n.oj()):t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,4,e,e))}function t4n(t,e){var n,r,s,o;if(e)s=_g(e,"x"),n=new TGt(t),XE(n.a,(Wn(s),s)),o=_g(e,"y"),r=new CGt(t),JE(r.a,(Wn(o),o));else throw at(new Rd("All edge sections need an end point."))}function e4n(t,e){var n,r,s,o;if(e)s=_g(e,"x"),n=new xGt(t),QE(n.a,(Wn(s),s)),o=_g(e,"y"),r=new kGt(t),ZE(r.a,(Wn(o),o));else throw at(new Rd("All edge sections need a start point."))}function n4n(t,e){var n,r,s,o,h,d,m;for(r=aue(t),o=0,d=r.length;o>22-e,s=t.h<>22-e):e<44?(n=0,r=t.l<>44-e):(n=0,r=0,s=t.l<t)throw at(new zn("k must be smaller than n"));return e==0||e==t?1:t==0?0:Nxt(t)/(Nxt(e)*Nxt(t-e))}function c6t(t,e){var n,r,s,o;for(n=new Tmt(t);n.g==null&&!n.c?n3t(n):n.g==null||n.i!=0&&u(n.g[n.i-1],51).Ob();)if(o=u(XH(n),58),Lt(o,167))for(r=u(o,167),s=0;s>4],e[n*2+1]=tW[o&15];return af(e,0,e.length)}function m4n(t){Gz();var e,n,r;switch(r=t.c.length,r){case 0:return Rve;case 1:return e=u(m1e(new G(t)),44),hun(e.ld(),e.md());default:return n=u(ld(t,Vt(Sw,xV,44,t.c.length,0,1)),173),new owt(n)}}function v4n(t){var e,n,r,s,o,h;for(e=new K4,n=new K4,Ob(e,t),Ob(n,t);n.b!=n.c;)for(s=u(K6(n),36),h=new G(s.a);h.a0&&VO(t,n,e),s):oxn(t,e,n)}function Ub(){Ub=V,H8e=(ai(),Jk),V8e=$w,j8e=jw,$8e=lx,z8e=l2,R8e=ux,GLt=LP,q8e=j3,tdt=(xkt(),_8e),edt=A8e,WLt=I8e,ndt=P8e,YLt=O8e,XLt=N8e,KLt=L8e,dK=D8e,gK=M8e,wP=F8e,QLt=B8e,ULt=S8e}function Rfe(t,e){var n,r,s,o,h;if(t.e<=e||Hfn(t,t.g,e))return t.g;for(o=t.r,r=t.g,h=t.r,s=(o-r)/2+r;r+11&&(t.e.b+=t.a)):(t.e.a+=n.a,t.e.b=b.Math.max(t.e.b,n.b),t.d.c.length>1&&(t.e.a+=t.a))}function T4n(t){var e,n,r,s;switch(s=t.i,e=s.b,r=s.j,n=s.g,s.a.g){case 0:n.a=(t.g.b.o.a-r.a)/2;break;case 1:n.a=e.d.n.a+e.d.a.a;break;case 2:n.a=e.d.n.a+e.d.a.a-r.a;break;case 3:n.b=e.d.n.b+e.d.a.b}}function C4n(t,e,n){var r,s,o;for(s=new rr(sr(Dg(n).a.Kc(),new z));Mr(s);)r=u(dr(s),18),!go(r)&&!(!go(r)&&r.c.i.c==r.d.i.c)&&(o=Lde(t,r,n,new IKt),o.c.length>1&&In(e.c,o))}function $fe(t,e,n,r,s){if(rr&&(t.a=r),t.bs&&(t.b=s),t}function S4n(t){if(Lt(t,143))return rkn(u(t,143));if(Lt(t,233))return K2n(u(t,233));if(Lt(t,23))return i4n(u(t,23));throw at(new zn(DTt+Hb(new hl(lt(ut(aa,1),Ln,1,5,[t])))))}function _4n(t,e,n,r,s){var o,h,d;for(o=!0,h=0;h>>s|n[h+r+1]<>>s,++h}return o}function f6t(t,e,n,r){var s,o,h;if(e.k==(Un(),fa)){for(o=new rr(sr(ua(e).a.Kc(),new z));Mr(o);)if(s=u(dr(o),18),h=s.c.i.k,h==fa&&t.c.a[s.c.i.c.p]==r&&t.c.a[e.c.p]==n)return!0}return!1}function A4n(t,e){var n,r,s,o;return e&=63,n=t.h&Fg,e<22?(o=n>>>e,s=t.m>>e|n<<22-e,r=t.l>>e|t.m<<22-e):e<44?(o=0,s=n>>>e-22,r=t.m>>e-22|t.h<<44-e):(o=0,s=0,r=n>>>e-44),Eu(r&Il,s&Il,o&Fg)}function zfe(t,e,n,r){var s;this.b=r,this.e=t==(Hm(),UA),s=e[n],this.d=G2(Fl,[ue,$0],[183,28],16,[s.length,s.length],2),this.a=G2(Fr,[ue,ii],[53,28],15,[s.length,s.length],2),this.c=new Kxt(e,n)}function L4n(t){var e,n,r;for(t.k=new s3t((ve(),lt(ut(bo,1),qc,64,0,[bc,Hn,Jn,Er,Gn])).length,t.j.c.length),r=new G(t.j);r.a=n)return I7(t,e,r.p),!0;return!1}function d5(t,e,n,r){var s,o,h,d,m,k;for(h=n.length,o=0,s=-1,k=Nae((qn(e,t.length+1),t.substr(e)),(bit(),_9t)),d=0;do&&nln(k,Nae(n[d],_9t))&&(s=d,o=m);return s>=0&&(r[0]=e+o),s}function Hfe(t){var e;return t.Db&64?Bot(t):(e=new eh(vTt),!t.a||ni(ni((e.a+=' "',e),t.a),'"'),ni(pm(ni(pm(ni(pm(ni(pm((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function Vfe(t,e,n){var r,s,o,h,d;for(d=Lu(t.e.Dh(),e),s=u(t.g,124),r=0,h=0;hn?x6t(t,n,"start index"):e<0||e>n?x6t(e,n,"end index"):M_("end index (%s) must not be less than start index (%s)",lt(ut(aa,1),Ln,1,5,[he(e),he(t)]))}function Gfe(t,e){var n,r,s,o;for(r=0,s=t.length;r0&&Kfe(t,o,n));e.p=0}function He(t){var e;this.c=new Ki,this.f=t.e,this.e=t.d,this.i=t.g,this.d=t.c,this.b=t.b,this.k=t.j,this.a=t.a,t.i?this.j=t.i:this.j=(e=u(y1(G0),9),new _h(e,u(Ff(e,e.length),9),0)),this.g=t.f}function P4n(t){var e,n,r,s;for(e=Db(ni(new eh("Predicates."),"and"),40),n=!0,s=new gr(t);s.b0?d[h-1]:Vt(V0,jp,10,0,0,1),s=d[h],k=h=0?t.ki(s):C6t(t,r);else throw at(new zn(Jb+r.xe()+aA));else throw at(new zn(Gwe+e+Kwe));else Ph(t,n,r)}function d6t(t){var e,n;if(n=null,e=!1,Lt(t,211)&&(e=!0,n=u(t,211).a),e||Lt(t,263)&&(e=!0,n=""+u(t,263).a),e||Lt(t,492)&&(e=!0,n=""+u(t,492).a),!e)throw at(new Znt(LTt));return n}function g6t(t,e,n){var r,s,o,h,d,m;for(m=Lu(t.e.Dh(),e),r=0,d=t.i,s=u(t.g,124),h=0;h=t.d.b.c.length&&(e=new eu(t.d),e.p=r.p-1,ge(t.d.b,e),n=new eu(t.d),n.p=r.p,ge(t.d.b,n)),Aa(r,u(Oe(t.d.b,r.p),30))}function w6t(t,e,n){var r,s,o;if(!t.b[e.g]){for(t.b[e.g]=!0,r=n,!r&&(r=new FI),Zr(r.b,e),o=t.a[e.g].Kc();o.Ob();)s=u(o.Pb(),65),s.b!=e&&w6t(t,s.b,r),s.c!=e&&w6t(t,s.c,r),Zr(r.a,s);return r}return null}function j4n(t){switch(t.g){case 0:case 1:case 2:return ve(),Hn;case 3:case 4:case 5:return ve(),Er;case 6:case 7:case 8:return ve(),Gn;case 9:case 10:case 11:return ve(),Jn;default:return ve(),bc}}function $4n(t,e){var n;return t.c.length==0?!1:(n=hle((vn(0,t.c.length),u(t.c[0],18)).c.i),rh(),n==(Yy(),J5)||n==Q5?!0:t5(Wo(new ln(null,new gn(t,16)),new XJ),new MUt(e)))}function zot(t,e){if(Lt(e,207))return Nin(t,u(e,27));if(Lt(e,193))return Pin(t,u(e,123));if(Lt(e,451))return Oin(t,u(e,166));throw at(new zn(DTt+Hb(new hl(lt(ut(aa,1),Ln,1,5,[e])))))}function Zfe(t,e,n){var r,s;if(this.f=t,r=u(tr(t.b,e),260),s=r?r.a:0,P3t(n,s),n>=(s/2|0))for(this.e=r?r.c:null,this.d=s;n++0;)s4t(this);this.b=e,this.a=null}function z4n(t,e){var n,r;e.a?xkn(t,e):(n=u(lrt(t.b,e.b),60),n&&n==t.a[e.b.f]&&n.a&&n.a!=e.b.a&&n.c.Fc(e.b),r=u(urt(t.b,e.b),60),r&&t.a[r.f]==e.b&&r.a&&r.a!=e.b.a&&e.b.c.Fc(r),rit(t.b,e.b))}function t1e(t,e){var n,r;if(n=u(Io(t.b,e),127),u(u(Ai(t.r,e),21),87).dc()){n.n.b=0,n.n.c=0;return}n.n.b=t.C.b,n.n.c=t.C.c,t.A.Hc((Yl(),qw))&&_0e(t,e),r=pmn(t,e),tct(t,e)==(o5(),f2)&&(r+=2*t.w),n.a.a=r}function e1e(t,e){var n,r;if(n=u(Io(t.b,e),127),u(u(Ai(t.r,e),21),87).dc()){n.n.d=0,n.n.a=0;return}n.n.d=t.C.d,n.n.a=t.C.a,t.A.Hc((Yl(),qw))&&A0e(t,e),r=gmn(t,e),tct(t,e)==(o5(),f2)&&(r+=2*t.w),n.a.b=r}function q4n(t,e){var n,r,s,o;for(o=new fe,r=new G(e);r.ar&&(qn(e-1,t.length),t.charCodeAt(e-1)<=32);)--e;return r>0||en.a&&(r.Hc((fw(),cL))?s=(e.a-n.a)/2:r.Hc(uL)&&(s=e.a-n.a)),e.b>n.b&&(r.Hc((fw(),hL))?o=(e.b-n.b)/2:r.Hc(lL)&&(o=e.b-n.b)),n6t(t,s,o)}function u1e(t,e,n,r,s,o,h,d,m,k,T,A,P){Lt(t.Cb,90)&&t3(_l(u(t.Cb,90)),4),mu(t,n),t.f=h,v7(t,d),x7(t,m),m7(t,k),y7(t,T),Mp(t,A),k7(t,P),Dp(t,!0),Sp(t,s),t.Zk(o),uw(t,e),r!=null&&(t.i=null,Gq(t,r))}function x6t(t,e,n){if(t<0)return M_(abe,lt(ut(aa,1),Ln,1,5,[n,he(t)]));if(e<0)throw at(new zn(obe+e));return M_("%s (%s) must not be greater than size (%s)",lt(ut(aa,1),Ln,1,5,[n,he(t),he(e)]))}function k6t(t,e,n,r,s,o){var h,d,m,k;if(h=r-n,h<7){F2n(e,n,r,o);return}if(m=n+s,d=r+s,k=m+(d-m>>1),k6t(e,t,m,k,-s,o),k6t(e,t,k,d,-s,o),o.Ne(t[k-1],t[k])<=0){for(;n=0?t.bi(o,n):J6t(t,s,n);else throw at(new zn(Jb+s.xe()+aA));else throw at(new zn(Gwe+e+Kwe));else Fh(t,r,s,n)}function l1e(t){var e,n;if(t.f){for(;t.n>0;){if(e=u(t.k.Xb(t.n-1),76),n=e.Lk(),Lt(n,102)&&u(n,19).Bb&Fc&&(!t.e||n.pk()!=QT||n.Lj()!=0)&&e.md()!=null)return!0;--t.n}return!1}else return t.n>0}function h1e(t){var e,n,r,s;if(n=u(t,54)._h(),n)try{if(r=null,e=N7((Eb(),yf),X0e(W2n(n))),e&&(s=e.ai(),s&&(r=s.Fl(Ynn(n.e)))),r&&r!=t)return h1e(r)}catch(o){if(o=es(o),!Lt(o,63))throw at(o)}return t}function i5n(t,e,n){var r,s,o;n.Ug("Remove overlaps",1),n.dh(e,I7t),r=u(ne(e,(Y4(),ex)),27),t.f=r,t.a=oot(u(ne(e,(Ub(),wP)),299)),s=Ht(ne(e,(ai(),$w))),St(t,(Wn(s),s)),o=n3(r),mpe(t,e,o,n),n.dh(e,iU)}function s5n(t){var e,n,r;if(Ie(Me(ne(t,(ai(),_P))))){for(r=new fe,n=new rr(sr(Og(t).a.Kc(),new z));Mr(n);)e=u(dr(n),74),Zm(e)&&Ie(Me(ne(e,Ndt)))&&In(r.c,e);return r}else return mn(),mn(),co}function f1e(t){if(!t)return hWt(),Kve;var e=t.valueOf?t.valueOf():t;if(e!==t){var n=Lht[typeof e];return n?n(e):f5t(typeof e)}else return t instanceof Array||t instanceof b.Array?new Xj(t):new uE(t)}function d1e(t,e,n){var r,s,o;switch(o=t.o,r=u(Io(t.p,n),252),s=r.i,s.b=FO(r),s.a=PO(r),s.b=b.Math.max(s.b,o.a),s.b>o.a&&!e&&(s.b=o.a),s.c=-(s.b-o.a)/2,n.g){case 1:s.d=-s.a;break;case 3:s.d=o.b}dct(r),gct(r)}function g1e(t,e,n){var r,s,o;switch(o=t.o,r=u(Io(t.p,n),252),s=r.i,s.b=FO(r),s.a=PO(r),s.a=b.Math.max(s.a,o.b),s.a>o.b&&!e&&(s.a=o.b),s.d=-(s.a-o.b)/2,n.g){case 4:s.c=-s.b;break;case 2:s.c=o.a}dct(r),gct(r)}function a5n(t,e){var n,r,s,o,h;if(!e.dc()){if(s=u(e.Xb(0),131),e.gc()==1){Ude(t,s,s,1,0,e);return}for(n=1;n0)try{s=lh(e,Ga,xi)}catch(o){throw o=es(o),Lt(o,130)?(r=o,at(new _q(r))):at(o)}return n=(!t.a&&(t.a=new Bnt(t)),t.a),s=0?u(Dt(n,s),58):null}function l5n(t,e){if(t<0)return M_(abe,lt(ut(aa,1),Ln,1,5,["index",he(t)]));if(e<0)throw at(new zn(obe+e));return M_("%s (%s) must be less than size (%s)",lt(ut(aa,1),Ln,1,5,["index",he(t),he(e)]))}function h5n(t){var e,n,r,s,o;if(t==null)return Vu;for(o=new aw(ao,"[","]"),n=t,r=0,s=n.length;r=0?t.Lh(n,!0,!0):tv(t,s,!0),160)),u(r,220).Zl(e);else throw at(new zn(Jb+e.xe()+aA))}function S6t(t){var e,n;return t>-0x800000000000&&t<0x800000000000?t==0?0:(e=t<0,e&&(t=-t),n=Ys(b.Math.floor(b.Math.log(t)/.6931471805599453)),(!e||t!=b.Math.pow(2,n))&&++n,n):Dce(Pc(t))}function S5n(t){var e,n,r,s,o,h,d;for(o=new zd,n=new G(t);n.a2&&d.e.b+d.j.b<=2&&(s=d,r=h),o.a.zc(s,o),s.q=r);return o}function _5n(t,e,n){n.Ug("Eades radial",1),n.dh(e,iU),t.d=u(ne(e,(Y4(),ex)),27),t.c=Rt(Ht(ne(e,(Ub(),gK)))),t.e=oot(u(ne(e,wP),299)),t.a=nwn(u(ne(e,QLt),434)),t.b=kyn(u(ne(e,KLt),354)),iyn(t),n.dh(e,iU)}function A5n(t,e){if(e.Ug("Target Width Setter",1),ad(t,(fd(),ddt)))Mi(t,(N0(),B3),Ht(ne(t,ddt)));else throw at(new fp("A target width has to be set if the TargetWidthWidthApproximator should be used."));e.Vg()}function v1e(t,e){var n,r,s;return r=new Ig(t),Qo(r,e),Zt(r,(oe(),MG),e),Zt(r,(De(),bs),(ka(),hu)),Zt(r,u0,(I0(),SK)),y(r,(Un(),Ms)),n=new Yc,hc(n,r),Xs(n,(ve(),Gn)),s=new Yc,hc(s,r),Xs(s,Jn),r}function y1e(t){switch(t.g){case 0:return new Xnt((Hm(),hP));case 1:return new Zet;case 2:return new tnt;default:throw at(new zn("No implementation is available for the crossing minimizer "+(t.f!=null?t.f:""+t.g)))}}function x1e(t,e){var n,r,s,o,h;for(t.c[e.p]=!0,ge(t.a,e),h=new G(e.j);h.a=o)h.$b();else for(s=h.Kc(),r=0;r0?fwt():h<0&&C1e(t,e,-h),!0):!1}function PO(t){var e,n,r,s,o,h,d;if(d=0,t.b==0){for(h=ahe(t,!0),e=0,r=h,s=0,o=r.length;s0&&(d+=n,++e);e>1&&(d+=t.c*(e-1))}else d=EWt(lat(Ny(_i(xyt(t.a),new Ea),new gu)));return d>0?d+t.n.d+t.n.a:0}function FO(t){var e,n,r,s,o,h,d;if(d=0,t.b==0)d=EWt(lat(Ny(_i(xyt(t.a),new Ic),new wc)));else{for(h=ohe(t,!0),e=0,r=h,s=0,o=r.length;s0&&(d+=n,++e);e>1&&(d+=t.c*(e-1))}return d>0?d+t.n.b+t.n.c:0}function P5n(t){var e,n;if(t.c.length!=2)throw at(new Ro("Order only allowed for two paths."));e=(vn(0,t.c.length),u(t.c[0],18)),n=(vn(1,t.c.length),u(t.c[1],18)),e.d.i!=n.c.i&&(t.c.length=0,In(t.c,n),In(t.c,e))}function S1e(t,e,n){var r;for(H4(n,e.g,e.f),Ch(n,e.i,e.j),r=0;r<(!e.a&&(e.a=new Jt(bi,e,10,11)),e.a).i;r++)S1e(t,u(Dt((!e.a&&(e.a=new Jt(bi,e,10,11)),e.a),r),27),u(Dt((!n.a&&(n.a=new Jt(bi,n,10,11)),n.a),r),27))}function F5n(t,e){var n,r,s,o;for(o=u(Io(t.b,e),127),n=o.a,s=u(u(Ai(t.r,e),21),87).Kc();s.Ob();)r=u(s.Pb(),117),r.c&&(n.a=b.Math.max(n.a,Jvt(r.c)));if(n.a>0)switch(e.g){case 2:o.n.c=t.s;break;case 4:o.n.b=t.s}}function B5n(t,e){var n,r,s;return n=u(X(e,(Vf(),jk)),17).a-u(X(t,jk),17).a,n==0?(r=ia(Oa(u(X(t,(Pb(),UN)),8)),u(X(t,TA),8)),s=ia(Oa(u(X(e,UN),8)),u(X(e,TA),8)),Bi(r.a*r.b,s.a*s.b)):n}function R5n(t,e){var n,r,s;return n=u(X(e,(Cc(),uK)),17).a-u(X(t,uK),17).a,n==0?(r=ia(Oa(u(X(t,(ji(),gP)),8)),u(X(t,zT),8)),s=ia(Oa(u(X(e,gP),8)),u(X(e,zT),8)),Bi(r.a*r.b,s.a*s.b)):n}function _1e(t){var e,n;return n=new yb,n.a+="e_",e=Mpn(t),e!=null&&(n.a+=""+e),t.c&&t.d&&(ni((n.a+=" ",n),BH(t.c)),ni(tu((n.a+="[",n),t.c.i),"]"),ni((n.a+=But,n),BH(t.d)),ni(tu((n.a+="[",n),t.d.i),"]")),n.a}function A1e(t){switch(t.g){case 0:return new cnt;case 1:return new rE;case 2:return new ont;case 3:return new ant;default:throw at(new zn("No implementation is available for the layout phase "+(t.f!=null?t.f:""+t.g)))}}function L6t(t,e,n,r,s){var o;switch(o=0,s.g){case 1:o=b.Math.max(0,e.b+t.b-(n.b+r));break;case 3:o=b.Math.max(0,-t.b-r);break;case 2:o=b.Math.max(0,-t.a-r);break;case 4:o=b.Math.max(0,e.a+t.a-(n.a+r))}return o}function j5n(t,e,n){var r,s,o,h,d;if(n)for(s=n.a.length,r=new W2(s),d=(r.b-r.a)*r.c<0?(Tb(),y2):new _b(r);d.Ob();)h=u(d.Pb(),17),o=qE(n,h.a),ETt in o.a||Qlt in o.a?Z8n(t,o,e):mSn(t,o,e),wsn(u(tr(t.b,T7(o)),74))}function D6t(t){var e,n;switch(t.b){case-1:return!0;case 0:return n=t.t,n>1||n==-1?(t.b=-1,!0):(e=of(t),e&&(vo(),e.lk()==Wme)?(t.b=-1,!0):(t.b=1,!1));default:case 1:return!1}}function M6t(t,e){var n,r,s,o;if(wi(t),t.c!=0||t.a!=123)throw at(new Yr(Qr((Ur(),bme))));if(o=e==112,r=t.d,n=TE(t.i,125,r),n<0)throw at(new Yr(Qr((Ur(),wme))));return s=Lh(t.i,r,n),t.d=n+1,Qse(s,o,(t.e&512)==512)}function L1e(t){var e,n,r,s,o,h,d;if(r=t.a.c.length,r>0)for(h=t.c.d,d=t.d.d,s=qd(ia(new ae(d.a,d.b),h),1/(r+1)),o=new ae(h.a,h.b),n=new G(t.a);n.a=0&&r=0?t.Lh(n,!0,!0):tv(t,s,!0),160)),u(r,220).Wl(e);throw at(new zn(Jb+e.xe()+qlt))}function H5n(){Nwt();var t;return ITe?u(N7((Eb(),yf),hf),2038):(ui(Sw,new gM),R9n(),t=u(Lt(nu((Eb(),yf),hf),560)?nu(yf,hf):new Uee,560),ITe=!0,jSn(t),GSn(t),hi((Owt(),$It),t,new K1),jo(yf,hf,t),t)}function V5n(t,e){var n,r,s,o;t.j=-1,Hl(t.e)?(n=t.i,o=t.i!=0,PI(t,e),r=new Tg(t.e,3,t.c,null,e,n,o),s=e.zl(t.e,t.c,null),s=cfe(t,e,s),s?(s.nj(r),s.oj()):Ei(t.e,r)):(PI(t,e),s=e.zl(t.e,t.c,null),s&&s.oj())}function KH(t,e){var n,r,s;if(s=0,r=e[0],r>=t.length)return-1;for(n=(qn(r,t.length),t.charCodeAt(r));n>=48&&n<=57&&(s=s*10+(n-48),++r,!(r>=t.length));)n=(qn(r,t.length),t.charCodeAt(r));return r>e[0]?e[0]=r:s=-1,s}function U5n(t){var e,n,r,s,o;return s=u(t.a,17).a,o=u(t.b,17).a,n=s,r=o,e=b.Math.max(b.Math.abs(s),b.Math.abs(o)),s<=0&&s==o?(n=0,r=o-1):s==-e&&o!=e?(n=o,r=s,o>=0&&++n):(n=-o,r=s),new Ws(he(n),he(r))}function G5n(t,e,n,r){var s,o,h,d,m,k;for(s=0;s=0&&k>=0&&m=t.i)throw at(new Bo(Zlt+e+Ew+t.i));if(n>=t.i)throw at(new Bo(tht+n+Ew+t.i));return r=t.g[n],e!=n&&(e>16),e=r>>16&16,n=16-e,t=t>>e,r=t-256,e=r>>16&8,n+=e,t<<=e,r=t-u3,e=r>>16&4,n+=e,t<<=e,r=t-Jd,e=r>>16&2,n+=e,t<<=e,r=t>>14,e=r&~(r>>1),n+2-e)}function W5n(t){J6();var e,n,r,s;for(VU=new fe,Jht=new _r,Qht=new fe,e=(!t.a&&(t.a=new Jt(bi,t,10,11)),t.a),RCn(e),s=new Zn(e);s.e!=s.i.gc();)r=u(ar(s),27),Xo(VU,r,0)==-1&&(n=new fe,ge(Qht,n),Ile(r,n));return Qht}function Y5n(t,e,n){var r,s,o,h;t.a=n.b.d,Lt(e,326)?(s=b5(u(e,74),!1,!1),o=MO(s),r=new jC(t),Fa(o,r),KO(o,s),e.of((ai(),Iv))!=null&&Fa(u(e.of(Iv),75),r)):(h=u(e,422),h.rh(h.nh()+t.a.a),h.sh(h.oh()+t.a.b))}function X5n(t,e){var n,r,s;for(s=new fe,r=Dr(e.a,0);r.b!=r.d.c;)n=u(Ar(r),65),n.c.g==t.g&&$t(X(n.b,(Cc(),h0)))!==$t(X(n.c,h0))&&!t5(new ln(null,new gn(s,16)),new HUt(n))&&In(s.c,n);return Ds(s,new DZ),s}function M1e(t,e,n){var r,s,o,h;return Lt(e,153)&&Lt(n,153)?(o=u(e,153),h=u(n,153),t.a[o.a][h.a]+t.a[h.a][o.a]):Lt(e,250)&&Lt(n,250)&&(r=u(e,250),s=u(n,250),r.a==s.a)?u(X(s.a,(Vf(),jk)),17).a:0}function I1e(t,e){var n,r,s,o,h,d,m,k;for(k=Rt(Ht(X(e,(De(),jA)))),m=t[0].n.a+t[0].o.a+t[0].d.c+k,d=1;d=0?n:(d=RS(ia(new ae(h.c+h.b/2,h.d+h.a/2),new ae(o.c+o.b/2,o.d+o.a/2))),-(ige(o,h)-1)*d)}function J5n(t,e,n){var r;ms(new ln(null,(!n.a&&(n.a=new Jt(Wi,n,6,6)),new gn(n.a,16))),new GXt(t,e)),ms(new ln(null,(!n.n&&(n.n=new Jt(Po,n,1,7)),new gn(n.n,16))),new KXt(t,e)),r=u(ne(n,(ai(),Iv)),75),r&&P4t(r,t,e)}function tv(t,e,n){var r,s,o;if(o=y5((il(),ja),t.Dh(),e),o)return vo(),u(o,69).xk()||(o=tk($o(ja,o))),s=(r=t.Ih(o),u(r>=0?t.Lh(r,!0,!0):tv(t,o,!0),160)),u(s,220).Sl(e,n);throw at(new zn(Jb+e.xe()+qlt))}function I6t(t,e,n,r){var s,o,h,d,m;if(s=t.d[e],s){if(o=s.g,m=s.i,r!=null){for(d=0;d=n&&(r=e,k=(m.c+m.a)/2,h=k-n,m.c<=k-n&&(s=new yit(m.c,h),Sm(t,r++,s)),d=k+n,d<=m.a&&(o=new yit(d,m.a),Fy(r,t.c.length),sS(t.c,r,o)))}function P1e(t,e,n){var r,s,o,h,d,m;if(!e.dc()){for(s=new Ki,m=e.Kc();m.Ob();)for(d=u(m.Pb(),39),hi(t.a,he(d.g),he(n)),h=(r=Dr(new gg(d).a.d,0),new M4(r));IM(h.a);)o=u(Ar(h.a),65).c,hs(s,o,s.c.b,s.c);P1e(t,s,n+1)}}function O6t(t){var e;if(!t.c&&t.g==null)t.d=t.bj(t.f),Or(t,t.d),e=t.d;else{if(t.g==null)return!0;if(t.i==0)return!1;e=u(t.g[t.i-1],51)}return e==t.b&&null.Vm>=null.Um()?(XH(t),O6t(t)):e.Ob()}function F1e(t){if(this.a=t,t.c.i.k==(Un(),Ms))this.c=t.c,this.d=u(X(t.c.i,(oe(),Dc)),64);else if(t.d.i.k==Ms)this.c=t.d,this.d=u(X(t.d.i,(oe(),Dc)),64);else throw at(new zn("Edge "+t+" is not an external edge."))}function B1e(t,e){var n,r,s;s=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,3,s,t.b)),e?e!=t&&(mu(t,e.zb),Zst(t,e.d),n=(r=e.c,r??e.zb),eat(t,n==null||hn(n,e.zb)?null:n)):(mu(t,null),Zst(t,0),eat(t,null))}function R1e(t,e){var n;this.e=(Dm(),Hr(t),Dm(),W5t(t)),this.c=(Hr(e),W5t(e)),Bmt(this.e.Rd().dc()==this.c.Rd().dc()),this.d=Jue(this.e),this.b=Jue(this.c),n=G2(aa,[ue,Ln],[5,1],5,[this.e.Rd().gc(),this.c.Rd().gc()],2),this.a=n,_gn(this)}function j1e(t){!_ht&&(_ht=XCn());var e=t.replace(/[\x00-\x1f\xad\u0600-\u0603\u06dd\u070f\u17b4\u17b5\u200b-\u200f\u2028-\u202e\u2060-\u2064\u206a-\u206f\ufeff\ufff9-\ufffb"\\]/g,function(n){return tfn(n)});return'"'+e+'"'}function N6t(t,e,n,r,s,o){var h,d,m,k,T;if(s!=0)for($t(t)===$t(n)&&(t=t.slice(e,e+s),e=0),m=n,d=e,k=e+s;d=h)throw at(new Dy(e,h));return s=n[e],h==1?r=null:(r=Vt(e0t,sht,424,h-1,0,1),Xc(n,0,r,0,e),o=h-e-1,o>0&&Xc(n,e+1,r,e,o)),C7(t,r),o1e(t,e,s),s}function z1e(t){var e,n;if(t.f){for(;t.n0?o=hk(n):o=bO(hk(n))),Mi(e,NT,o)}function sxn(t,e){var n;e.Ug("Partition preprocessing",1),n=u(nc(_i(fc(_i(new ln(null,new gn(t.a,16)),new AQ),new LQ),new HB),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)]))),15),ms(n.Oc(),new Jx),e.Vg()}function axn(t,e){var n,r,s,o,h;for(h=t.j,e.a!=e.b&&Ds(h,new aC),s=h.c.length/2|0,r=0;r0&&VO(t,n,e),o):r.a!=null?(VO(t,e,n),-1):s.a!=null?(VO(t,n,e),1):0}function cxn(t,e){var n,r,s,o,h;for(s=e.b.b,t.a=Vt(Vh,l3,15,s,0,1),t.b=Vt(Fl,$0,28,s,16,1),h=Dr(e.b,0);h.b!=h.d.c;)o=u(Ar(h),39),t.a[o.g]=new Ki;for(r=Dr(e.a,0);r.b!=r.d.c;)n=u(Ar(r),65),t.a[n.b.g].Fc(n),t.a[n.c.g].Fc(n)}function U1e(t,e){var n,r,s,o;t.Pj()?(n=t.Ej(),o=t.Qj(),++t.j,t.qj(n,t.Zi(n,e)),r=t.Ij(3,null,e,n,o),t.Mj()?(s=t.Nj(e,null),s?(s.nj(r),s.oj()):t.Jj(r)):t.Jj(r)):(Nee(t,e),t.Mj()&&(s=t.Nj(e,null),s&&s.oj()))}function P6t(t,e,n){var r,s,o;t.Pj()?(o=t.Qj(),fO(t,e,n),r=t.Ij(3,null,n,e,o),t.Mj()?(s=t.Nj(n,null),t.Tj()&&(s=t.Uj(n,s)),s?(s.nj(r),s.oj()):t.Jj(r)):t.Jj(r)):(fO(t,e,n),t.Mj()&&(s=t.Nj(n,null),s&&s.oj()))}function WH(t,e){var n,r,s,o,h;for(h=Lu(t.e.Dh(),e),s=new pb,n=u(t.g,124),o=t.i;--o>=0;)r=n[o],h.am(r.Lk())&&Or(s,r);!$pe(t,s)&&Hl(t.e)&&hE(t,e.Jk()?Ib(t,6,e,(mn(),co),null,-1,!1):Ib(t,e.tk()?2:1,e,null,null,-1,!1))}function uxn(t,e){var n,r,s,o,h;return t.a==(M7(),AA)?!0:(o=e.a.c,n=e.a.c+e.a.b,!(e.j&&(r=e.A,h=r.c.c.a-r.o.a/2,s=o-(r.n.a+r.o.a),s>h)||e.q&&(r=e.C,h=r.c.c.a-r.o.a/2,s=r.n.a-n,s>h)))}function G1e(t){gst();var e,n,r,s,o,h,d;for(n=new kp,s=new G(t.e.b);s.a1?t.e*=Rt(t.a):t.f/=Rt(t.a),Mbn(t),Bwn(t),N8n(t),Zt(t.b,(b_(),HU),t.g)}function X1e(t,e,n){var r,s,o,h,d,m;for(r=0,m=n,e||(r=n*(t.c.length-1),m*=-1),o=new G(t);o.a=0?t.Ah(null):t.Ph().Th(t,-1-e,null,null)),t.Bh(u(s,54),n),r&&r.oj(),t.vh()&&t.wh()&&n>-1&&Ei(t,new ha(t,9,n,o,s)),s):o}function R6t(t,e){var n,r,s,o,h;for(o=t.b.Ce(e),r=(n=t.a.get(o),n??Vt(aa,Ln,1,0,5,1)),h=0;h>5,s>=t.d)return t.e<0;if(n=t.a[s],e=1<<(e&31),t.e<0){if(r=uce(t),s>16)),15).dd(o),d0&&(!(bg(t.a.c)&&e.n.d)&&!(q4(t.a.c)&&e.n.b)&&(e.g.d+=b.Math.max(0,r/2-.5)),!(bg(t.a.c)&&e.n.a)&&!(q4(t.a.c)&&e.n.c)&&(e.g.a-=r-1))}function sde(t){var e,n,r,s,o;if(s=new fe,o=tge(t,s),e=u(X(t,(oe(),ml)),10),e)for(r=new G(e.j);r.a>e,o=t.m>>e|n<<22-e,s=t.l>>e|t.m<<22-e):e<44?(h=r?Fg:0,o=n>>e-22,s=t.m>>e-22|n<<44-e):(h=r?Fg:0,o=r?Il:0,s=n>>e-44),Eu(s&Il,o&Il,h&Fg)}function Wot(t){var e,n,r,s,o,h;for(this.c=new fe,this.d=t,r=Zi,s=Zi,e=Vs,n=Vs,h=Dr(t,0);h.b!=h.d.c;)o=u(Ar(h),8),r=b.Math.min(r,o.a),s=b.Math.min(s,o.b),e=b.Math.max(e,o.a),n=b.Math.max(n,o.b);this.a=new Ah(r,s,e-r,n-s)}function ode(t,e){var n,r,s,o,h,d;for(o=new G(t.b);o.a0&&Lt(e,44)&&(t.a._j(),k=u(e,44),m=k.ld(),o=m==null?0:$i(m),h=lvt(t.a,o),n=t.a.d[h],n)){for(r=u(n.g,379),T=n.i,d=0;d=2)for(n=s.Kc(),e=Ht(n.Pb());n.Ob();)o=e,e=Ht(n.Pb()),r=b.Math.min(r,(Wn(e),e-(Wn(o),o)));return r}function Mxn(t,e){var n,r,s;for(s=new fe,r=Dr(e.a,0);r.b!=r.d.c;)n=u(Ar(r),65),n.b.g==t.g&&!hn(n.b.c,nU)&&$t(X(n.b,(Cc(),h0)))!==$t(X(n.c,h0))&&!t5(new ln(null,new gn(s,16)),new VUt(n))&&In(s.c,n);return Ds(s,new NZ),s}function Ixn(t,e){var n,r,s;if($t(e)===$t(Hr(t)))return!0;if(!Lt(e,15)||(r=u(e,15),s=t.gc(),s!=r.gc()))return!1;if(Lt(r,59)){for(n=0;n0&&(s=n),h=new G(t.f.e);h.a0?(e-=1,n-=1):r>=0&&s<0?(e+=1,n+=1):r>0&&s>=0?(e-=1,n+=1):(e+=1,n-=1),new Ws(he(e),he(n))}function Gxn(t,e){return t.ce.c?1:t.be.b?1:t.a!=e.a?$i(t.a)-$i(e.a):t.d==(US(),KA)&&e.d==GA?-1:t.d==GA&&e.d==KA?1:0}function gde(t,e){var n,r,s,o,h;return o=e.a,o.c.i==e.b?h=o.d:h=o.c,o.c.i==e.b?r=o.c:r=o.d,s=gwn(t.a,h,r),s>0&&s0):s<0&&-s0):!1}function Kxn(t,e,n,r){var s,o,h,d,m,k,T,A;for(s=(e-t.d)/t.c.c.length,o=0,t.a+=n,t.d=e,A=new G(t.c);A.a>24;return h}function Yxn(t){if(t.ze()){var e=t.c;e.Ae()?t.o="["+e.n:e.ze()?t.o="["+e.xe():t.o="[L"+e.xe()+";",t.b=e.we()+"[]",t.k=e.ye()+"[]";return}var n=t.j,r=t.d;r=r.split("/"),t.o=Jat(".",[n,Jat("$",r)]),t.b=Jat(".",[n,Jat(".",r)]),t.k=r[r.length-1]}function Xxn(t,e){var n,r,s,o,h;for(h=null,o=new G(t.e.a);o.a=0;e-=2)for(n=0;n<=e;n+=2)(t.b[n]>t.b[n+2]||t.b[n]===t.b[n+2]&&t.b[n+1]>t.b[n+3])&&(r=t.b[n+2],t.b[n+2]=t.b[n],t.b[n]=r,r=t.b[n+3],t.b[n+3]=t.b[n+1],t.b[n+1]=r);t.c=!0}}function Zxn(t,e){var n,r,s,o,h,d,m,k,T;for(k=-1,T=0,h=t,d=0,m=h.length;d0&&++T;++k}return T}function qf(t){var e,n;return n=new eh(V2(t.Rm)),n.a+="@",ni(n,(e=$i(t)>>>0,e.toString(16))),t.Vh()?(n.a+=" (eProxyURI: ",tu(n,t._h()),t.Kh()&&(n.a+=" eClass: ",tu(n,t.Kh())),n.a+=")"):t.Kh()&&(n.a+=" (eClass: ",tu(n,t.Kh()),n.a+=")"),n.a}function __(t){var e,n,r,s;if(t.e)throw at(new Ro((wg($ht),wut+$ht.k+mut)));for(t.d==(Rs(),Ed)&&bV(t,Uo),n=new G(t.a.a);n.a>24}return n}function n6n(t,e,n){var r,s,o;if(s=u(Io(t.i,e),314),!s)if(s=new Zae(t.d,e,n),W6(t.i,e,s),Z5t(e))asn(t.a,e.c,e.b,s);else switch(o=j4n(e),r=u(Io(t.p,o),252),o.g){case 1:case 3:s.j=!0,Jnt(r,e.b,s);break;case 4:case 2:s.k=!0,Jnt(r,e.c,s)}return s}function r6n(t,e){var n,r,s,o,h,d,m,k,T;for(m=C0(t.c-t.b&t.a.length-1),k=null,T=null,o=new $S(t);o.a!=o.b;)s=u(cH(o),10),n=(d=u(X(s,(oe(),N1)),12),d?d.i:null),r=(h=u(X(s,gf),12),h?h.i:null),(k!=n||T!=r)&&(Q1e(m,e),k=n,T=r),In(m.c,s);Q1e(m,e)}function i6n(t,e,n,r){var s,o,h,d,m,k;if(d=new pb,m=Lu(t.e.Dh(),e),s=u(t.g,124),vo(),u(e,69).xk())for(h=0;h=0)return s;for(o=1,d=new G(e.j);d.a=0)return s;for(o=1,d=new G(e.j);d.a0&&e.Ne((vn(s-1,t.c.length),u(t.c[s-1],10)),o)>0;)Mh(t,s,(vn(s-1,t.c.length),u(t.c[s-1],10))),--s;vn(s,t.c.length),t.c[s]=o}n.a=new _r,n.b=new _r}function s6n(t,e,n){var r,s,o,h,d,m,k,T;for(T=(r=u(e.e&&e.e(),9),new _h(r,u(Ff(r,r.length),9),0)),m=s3(n,"[\\[\\]\\s,]+"),o=m,h=0,d=o.length;h=0?(e||(e=new YC,r>0&&Mo(e,(Da(0,r,t.length),t.substr(0,r)))),e.a+="\\",PE(e,n&js)):e&&PE(e,n&js);return e?e.a:t}function o6n(t){var e,n,r;for(n=new G(t.a.a.b);n.a0&&(!(bg(t.a.c)&&e.n.d)&&!(q4(t.a.c)&&e.n.b)&&(e.g.d-=b.Math.max(0,r/2-.5)),!(bg(t.a.c)&&e.n.a)&&!(q4(t.a.c)&&e.n.c)&&(e.g.a+=b.Math.max(0,r-1)))}function Ede(t,e,n){var r,s;if((t.c-t.b&t.a.length-1)==2)e==(ve(),Hn)||e==Jn?(Nq(u(r_(t),15),(uh(),K0)),Nq(u(r_(t),15),h2)):(Nq(u(r_(t),15),(uh(),h2)),Nq(u(r_(t),15),K0));else for(s=new $S(t);s.a!=s.b;)r=u(cH(s),15),Nq(r,n)}function c6n(t,e){var n,r,s,o,h,d,m;for(s=DE(new O2t(t)),d=new La(s,s.c.length),o=DE(new O2t(e)),m=new La(o,o.c.length),h=null;d.b>0&&m.b>0&&(n=(ur(d.b>0),u(d.a.Xb(d.c=--d.b),27)),r=(ur(m.b>0),u(m.a.Xb(m.c=--m.b),27)),n==r);)h=n;return h}function Tde(t,e,n){var r,s,o,h;Tre(t,e)>Tre(t,n)?(r=gc(n,(ve(),Jn)),t.d=r.dc()?0:Sit(u(r.Xb(0),12)),h=gc(e,Gn),t.b=h.dc()?0:Sit(u(h.Xb(0),12))):(s=gc(n,(ve(),Gn)),t.d=s.dc()?0:Sit(u(s.Xb(0),12)),o=gc(e,Jn),t.b=o.dc()?0:Sit(u(o.Xb(0),12)))}function Cde(t,e){var n,r,s,o;for(n=t.o.a,o=u(u(Ai(t.r,e),21),87).Kc();o.Ob();)s=u(o.Pb(),117),s.e.a=n*Rt(Ht(s.b.of($U))),s.e.b=(r=s.b,r.pf((ai(),Pl))?r.ag()==(ve(),Hn)?-r.Mf().b-Rt(Ht(r.of(Pl))):Rt(Ht(r.of(Pl))):r.ag()==(ve(),Hn)?-r.Mf().b:0)}function u6n(t,e){var n,r,s,o;for(e.Ug("Self-Loop pre-processing",1),r=new G(t.a);r.at.c));h++)s.a>=t.s&&(o<0&&(o=h),d=h);return m=(t.s+t.c)/2,o>=0&&(r=Q8n(t,e,o,d),m=Yrn((vn(r,e.c.length),u(e.c[r],339))),nxn(e,r,n)),m}function zr(t,e,n){var r,s,o,h,d,m,k;for(h=(o=new aM,o),_4t(h,(Wn(e),e)),k=(!h.b&&(h.b=new Ul((wn(),wo),Mc,h)),h.b),m=1;m0&&KTn(this,s)}function Y6t(t,e,n,r,s,o){var h,d,m;if(!s[e.a]){for(s[e.a]=!0,h=r,!h&&(h=new mq),ge(h.e,e),m=o[e.a].Kc();m.Ob();)d=u(m.Pb(),289),!(d.d==n||d.c==n)&&(d.c!=e&&Y6t(t,d.c,e,h,s,o),d.d!=e&&Y6t(t,d.d,e,h,s,o),ge(h.c,d),Hs(h.d,d.b));return h}return null}function f6n(t){var e,n,r,s,o,h,d;for(e=0,s=new G(t.e);s.a=2}function d6n(t,e,n,r,s){var o,h,d,m,k,T;for(o=t.c.d.j,h=u(jh(n,0),8),T=1;T1||(e=Hi(Qf,lt(ut(Lo,1),te,95,0,[qg,Jf])),tO(iq(e,t))>1)||(r=Hi(t1,lt(ut(Lo,1),te,95,0,[W0,bf])),tO(iq(r,t))>1))}function X6t(t,e,n){var r,s,o;for(o=new G(t.t);o.a0&&(r.b.n-=r.c,r.b.n<=0&&r.b.u>0&&Zr(e,r.b));for(s=new G(t.i);s.a0&&(r.a.u-=r.c,r.a.u<=0&&r.a.n>0&&Zr(n,r.a))}function XH(t){var e,n,r,s,o;if(t.g==null&&(t.d=t.bj(t.f),Or(t,t.d),t.c))return o=t.f,o;if(e=u(t.g[t.i-1],51),s=e.Pb(),t.e=e,n=t.bj(s),n.Ob())t.d=n,Or(t,n);else for(t.d=null;!e.Ob()&&(ls(t.g,--t.i,null),t.i!=0);)r=u(t.g[t.i-1],51),e=r;return s}function p6n(t,e){var n,r,s,o,h,d;if(r=e,s=r.Lk(),Ng(t.e,s)){if(s.Si()&&dq(t,s,r.md()))return!1}else for(d=Lu(t.e.Dh(),s),n=u(t.g,124),o=0;o1||n>1)return 2;return e+n==1?2:0}function Dl(t,e){var n,r,s,o,h,d;return o=t.a*dut+t.b*1502,d=t.b*dut+11,n=b.Math.floor(d*lN),o+=n,d-=n*y8t,o%=y8t,t.a=o,t.b=d,e<=24?b.Math.floor(t.a*L9t[e]):(s=t.a*(1<=2147483648&&(r-=4294967296),r)}function Dde(t,e,n){var r,s,o,h,d,m,k;for(o=new fe,k=new Ki,h=new Ki,B7n(t,k,h,e),p9n(t,k,h,e,n),m=new G(t);m.ar.b.g&&In(o.c,r);return o}function x6n(t,e,n){var r,s,o,h,d,m;for(d=t.c,h=(n.q?n.q:(mn(),mn(),q0)).vc().Kc();h.Ob();)o=u(h.Pb(),44),r=!wE(_i(new ln(null,new gn(d,16)),new Sl(new jXt(e,o)))).Bd((U2(),Rk)),r&&(m=o.md(),Lt(m,4)&&(s=nxt(m),s!=null&&(m=s)),e.qf(u(o.ld(),149),m))}function k6n(t,e,n){var r,s;if(EI(t.b),E1(t.b,(pO(),vK),(tS(),kP)),E1(t.b,yK,e.g),E1(t.b,xK,e.a),t.a=XO(t.b,e),n.Ug("Compaction by shrinking a tree",t.a.c.length),e.i.c.length>1)for(s=new G(t.a);s.a=0?t.Lh(r,!0,!0):tv(t,o,!0),160)),u(s,220).Xl(e,n)}else throw at(new zn(Jb+e.xe()+aA))}function QH(t,e){var n,r,s,o,h;if(e){for(o=Lt(t.Cb,90)||Lt(t.Cb,102),h=!o&&Lt(t.Cb,331),r=new Zn((!e.a&&(e.a=new DS(e,Do,e)),e.a));r.e!=r.i.gc();)if(n=u(ar(r),89),s=lV(n),o?Lt(s,90):h?Lt(s,156):s)return s;return o?(wn(),xf):(wn(),Sd)}else return null}function E6n(t,e){var n,r,s,o;for(e.Ug("Resize child graph to fit parent.",1),r=new G(t.b);r.a=2*e&&ge(n,new yit(h[r-1]+e,h[r]-e));return n}function S6n(t,e,n){var r,s,o,h,d,m,k,T;if(n)for(o=n.a.length,r=new W2(o),d=(r.b-r.a)*r.c<0?(Tb(),y2):new _b(r);d.Ob();)h=u(d.Pb(),17),s=qE(n,h.a),s&&(m=ndn(t,(k=(kb(),T=new J2t,T),e&&Z6t(k,e),k),s),n7(m,yg(s,a0)),qH(s,m),E6t(s,m),xat(t,s,m))}function JH(t){var e,n,r,s,o,h;if(!t.j){if(h=new bC,e=_L,o=e.a.zc(t,e),o==null){for(r=new Zn(Yo(t));r.e!=r.i.gc();)n=u(ar(r),29),s=JH(n),gs(h,s),Or(h,n);e.a.Bc(t)!=null}Uy(h),t.j=new $4((u(Dt(Qt((Lb(),Fn).o),11),19),h.i),h.g),_l(t).b&=-33}return t.j}function _6n(t){var e,n,r,s;if(t==null)return null;if(r=su(t,!0),s=NN.length,hn(r.substr(r.length-s,s),NN)){if(n=r.length,n==4){if(e=(qn(0,r.length),r.charCodeAt(0)),e==43)return aOt;if(e==45)return ZTe}else if(n==3)return aOt}return new z2t(r)}function A6n(t){var e,n,r;return n=t.l,n&n-1||(r=t.m,r&r-1)||(e=t.h,e&e-1)||e==0&&r==0&&n==0?-1:e==0&&r==0&&n!=0?w4t(n):e==0&&r!=0&&n==0?w4t(r)+22:e!=0&&r==0&&n==0?w4t(e)+44:-1}function p5(t,e){var n,r,s,o,h;for(s=e.a&t.f,o=null,r=t.b[s];;r=r.b){if(r==e){o?o.b=e.b:t.b[s]=e.b;break}o=r}for(h=e.f&t.f,o=null,n=t.c[h];;n=n.d){if(n==e){o?o.d=e.d:t.c[h]=e.d;break}o=n}e.e?e.e.c=e.c:t.a=e.c,e.c?e.c.e=e.e:t.e=e.e,--t.i,++t.g}function L6n(t,e){var n;e.d?e.d.b=e.b:t.a=e.b,e.b?e.b.d=e.d:t.e=e.d,!e.e&&!e.c?(n=u(nf(u(rk(t.b,e.a),260)),260),n.a=0,++t.c):(n=u(nf(u(tr(t.b,e.a),260)),260),--n.a,e.e?e.e.c=e.c:n.b=u(nf(e.c),511),e.c?e.c.e=e.e:n.c=u(nf(e.e),511)),--t.d}function D6n(t){var e,n,r,s,o,h,d,m,k,T;for(n=t.o,e=t.p,h=xi,s=Ga,d=xi,o=Ga,k=0;k0),o.a.Xb(o.c=--o.b),Ly(o,s),ur(o.b3&&M0(t,0,e-3))}function I6n(t){var e,n,r,s;return $t(X(t,(De(),A3)))===$t((Ag(),Xp))?!t.e&&$t(X(t,iP))!==$t((c7(),JN)):(r=u(X(t,e1t),298),s=Ie(Me(X(t,n1t)))||$t(X(t,FA))===$t((QS(),QN)),e=u(X(t,R_t),17).a,n=t.a.c.length,!s&&r!=(c7(),JN)&&(e==0||e>n))}function O6n(t){var e,n;for(n=0;n0);n++);if(n>0&&n0);e++);return e>0&&n>16!=6&&e){if(_7(t,e))throw at(new zn(oA+K1e(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Ext(t,r):t.Cb.Th(t,-1-n,null,r))),e&&(r=gk(e,t,6,r)),r=ovt(t,e,r),r&&r.oj()}else t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,6,e,e))}function ZH(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=3&&e){if(_7(t,e))throw at(new zn(oA+Nge(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?_xt(t,r):t.Cb.Th(t,-1-n,null,r))),e&&(r=gk(e,t,12,r)),r=cvt(t,e,r),r&&r.oj()}else t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,3,e,e))}function Z6t(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=9&&e){if(_7(t,e))throw at(new zn(oA+I0e(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Cxt(t,r):t.Cb.Th(t,-1-n,null,r))),e&&(r=gk(e,t,9,r)),r=uvt(t,e,r),r&&r.oj()}else t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,9,e,e))}function P7(t){var e,n,r,s,o;if(r=of(t),o=t.j,o==null&&r)return t.Jk()?null:r.ik();if(Lt(r,156)){if(n=r.jk(),n&&(s=n.wi(),s!=t.i)){if(e=u(r,156),e.nk())try{t.g=s.ti(e,o)}catch(h){if(h=es(h),Lt(h,82))t.g=null;else throw at(h)}t.i=s}return t.g}return null}function Nde(t){var e;return e=new fe,ge(e,new O6(new ae(t.c,t.d),new ae(t.c+t.b,t.d))),ge(e,new O6(new ae(t.c,t.d),new ae(t.c,t.d+t.a))),ge(e,new O6(new ae(t.c+t.b,t.d+t.a),new ae(t.c+t.b,t.d))),ge(e,new O6(new ae(t.c+t.b,t.d+t.a),new ae(t.c,t.d+t.a))),e}function N6n(t){var e,n,r;if(t==null)return Vu;try{return rc(t)}catch(s){if(s=es(s),Lt(s,103))return e=s,r=V2(Wl(t))+"@"+(n=(pg(),ext(t)>>>0),n.toString(16)),Wwn(Opn(),(xE(),"Exception during lenientFormat for "+r),e),"<"+r+" threw "+V2(e.Rm)+">";throw at(s)}}function P6n(t,e,n){var r,s,o;for(o=e.a.ec().Kc();o.Ob();)s=u(o.Pb(),74),r=u(tr(t.b,s),272),!r&&(Ji(O0(s))==Ji(qb(s))?kkn(t,s,n):O0(s)==Ji(qb(s))?tr(t.c,s)==null&&tr(t.b,qb(s))!=null&&fpe(t,s,n,!1):tr(t.d,s)==null&&tr(t.b,O0(s))!=null&&fpe(t,s,n,!0))}function F6n(t,e){var n,r,s,o,h,d,m;for(s=t.Kc();s.Ob();)for(r=u(s.Pb(),10),d=new Yc,hc(d,r),Xs(d,(ve(),Jn)),Zt(d,(oe(),IG),(Pn(),!0)),h=e.Kc();h.Ob();)o=u(h.Pb(),10),m=new Yc,hc(m,o),Xs(m,Gn),Zt(m,IG,!0),n=new Pm,Zt(n,IG,!0),Xa(n,d),xa(n,m)}function B6n(t,e,n,r){var s,o,h,d;s=wle(t,e,n),o=wle(t,n,e),h=u(tr(t.c,e),118),d=u(tr(t.c,n),118),s1)for(e=km((n=new H2,++t.b,n),t.d),d=Dr(o,0);d.b!=d.d.c;)h=u(Ar(d),125),Hf(Of(If(Nf(Mf(new tf,1),0),e),h))}function $6n(t,e,n){var r,s,o,h,d;for(n.Ug("Breaking Point Removing",1),t.a=u(X(e,(De(),zg)),223),o=new G(e.b);o.a>16!=11&&e){if(_7(t,e))throw at(new zn(oA+vkt(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Axt(t,r):t.Cb.Th(t,-1-n,null,r))),e&&(r=gk(e,t,10,r)),r=mvt(t,e,r),r&&r.oj()}else t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,11,e,e))}function z6n(t){var e,n,r,s;for(r=new sw(new mr(t.b).a);r.b;)n=Um(r),s=u(n.ld(),12),e=u(n.md(),10),Zt(e,(oe(),Li),s),Zt(s,ml,e),Zt(s,eP,(Pn(),!0)),Xs(s,u(X(e,Dc),64)),X(e,Dc),Zt(s.i,(De(),bs),(ka(),YT)),u(X(Pa(s.i),lu),21).Fc((Co(),DT))}function q6n(t,e,n){var r,s,o,h,d,m;if(o=0,h=0,t.c)for(m=new G(t.d.i.j);m.ao.a?-1:s.am){for(T=t.d,t.d=Vt(MIt,jTt,66,2*m+4,0,1),o=0;o=9223372036854776e3?(WE(),a9t):(s=!1,t<0&&(s=!0,t=-t),r=0,t>=bw&&(r=Ys(t/bw),t-=r*bw),n=0,t>=Sk&&(n=Ys(t/Sk),t-=n*Sk),e=Ys(t),o=Eu(e,n,r),s&&kat(o),o)}function Z6n(t){var e,n,r,s,o;if(o=new fe,Cu(t.b,new E0(o)),t.b.c.length=0,o.c.length!=0){for(e=(vn(0,o.c.length),u(o.c[0],82)),n=1,r=o.c.length;n=-e&&r==e?new Ws(he(n-1),he(r)):new Ws(he(n),he(r-1))}function Bde(){return Za(),lt(ut(h_n,1),te,81,0,[KCt,VCt,B5,gft,fSt,nG,fG,E3,lSt,eSt,cSt,k3,hSt,JCt,dSt,RCt,aG,pft,tG,uG,pSt,cG,jCt,uSt,bSt,lG,gSt,eG,YCt,aSt,sSt,dG,qCt,ZU,iG,zCt,vT,rSt,ZCt,oSt,CA,UCt,HCt,iSt,tSt,sG,hG,$Ct,oG,nSt,rG,XCt,WCt,WN,JU,QCt,GCt])}function nkn(t,e,n){t.d=0,t.b=0,e.k==(Un(),uu)&&n.k==uu&&u(X(e,(oe(),Li)),10)==u(X(n,Li),10)&&(qst(e).j==(ve(),Hn)?Tde(t,e,n):Tde(t,n,e)),e.k==uu&&n.k==fa?qst(e).j==(ve(),Hn)?t.d=1:t.b=1:n.k==uu&&e.k==fa&&(qst(n).j==(ve(),Hn)?t.b=1:t.d=1),$mn(t,e,n)}function rkn(t){var e,n,r,s,o,h,d,m,k,T,A;return A=Jxt(t),e=t.a,m=e!=null,m&&ME(A,"category",t.a),s=NM(new cr(t.d)),h=!s,h&&(k=new cp,_1(A,"knownOptions",k),n=new qGt(k),Fa(new cr(t.d),n)),o=NM(t.g),d=!o,d&&(T=new cp,_1(A,"supportedFeatures",T),r=new HGt(T),Fa(t.g,r)),A}function ikn(t){var e,n,r,s,o,h,d,m,k;for(r=!1,e=336,n=0,o=new CZt(t.length),d=t,m=0,k=d.length;m>16!=7&&e){if(_7(t,e))throw at(new zn(oA+Hfe(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Txt(t,r):t.Cb.Th(t,-1-n,null,r))),e&&(r=u(e,54).Rh(t,1,zP,r)),r=hyt(t,e,r),r&&r.oj()}else t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,7,e,e))}function Rde(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=3&&e){if(_7(t,e))throw at(new zn(oA+zue(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Sxt(t,r):t.Cb.Th(t,-1-n,null,r))),e&&(r=u(e,54).Rh(t,0,HP,r)),r=fyt(t,e,r),r&&r.oj()}else t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,3,e,e))}function Zot(t,e){F7();var n,r,s,o,h,d,m,k,T;return e.d>t.d&&(d=t,t=e,e=d),e.d<63?Gkn(t,e):(h=(t.d&-2)<<4,k=M3t(t,h),T=M3t(e,h),r=vct(t,nk(k,h)),s=vct(e,nk(T,h)),m=Zot(k,T),n=Zot(r,s),o=Zot(vct(k,r),vct(s,T)),o=Sct(Sct(o,m),n),o=nk(o,h),m=nk(m,h<<1),Sct(Sct(m,o),n))}function Bp(){Bp=V,b1t=new F4(q2e,0),TAt=new F4("LONGEST_PATH",1),CAt=new F4("LONGEST_PATH_SOURCE",2),p1t=new F4("COFFMAN_GRAHAM",3),EAt=new F4(qut,4),SAt=new F4("STRETCH_WIDTH",5),XG=new F4("MIN_WIDTH",6),RT=new F4("BF_MODEL_ORDER",7),jT=new F4("DF_MODEL_ORDER",8)}function akn(t,e,n){var r,s,o,h,d;for(h=c_(t,n),d=Vt(V0,jp,10,e.length,0,1),r=0,o=h.Kc();o.Ob();)s=u(o.Pb(),12),Ie(Me(X(s,(oe(),eP))))&&(d[r++]=u(X(s,ml),10));if(r=0;o+=n?1:-1)h=h|e.c.lg(m,o,n,r&&!Ie(Me(X(e.j,(oe(),i2))))&&!Ie(Me(X(e.j,(oe(),U5))))),h=h|e.q.ug(m,o,n),h=h|C0e(t,m[o],n,r);return qs(t.c,e),h}function nV(t,e,n){var r,s,o,h,d,m,k,T,A,P;for(T=rie(t.j),A=0,P=T.length;A1&&(t.a=!0),jun(u(n.b,68),ki(Oa(u(e.b,68).c),qd(ia(Oa(u(n.b,68).a),u(e.b,68).a),s))),lre(t,e),jde(t,n)}function $de(t){var e,n,r,s,o,h,d;for(o=new G(t.a.a);o.a0&&o>0?h.p=e++:r>0?h.p=n++:o>0?h.p=s++:h.p=n++}mn(),Ds(t.j,new R8)}function hkn(t){var e,n;n=null,e=u(Oe(t.g,0),18);do{if(n=e.d.i,qi(n,(oe(),gf)))return u(X(n,gf),12).i;if(n.k!=(Un(),xs)&&Mr(new rr(sr(_s(n).a.Kc(),new z))))e=u(dr(new rr(sr(_s(n).a.Kc(),new z))),18);else if(n.k!=xs)return null}while(n&&n.k!=(Un(),xs));return n}function fkn(t,e){var n,r,s,o,h,d,m,k,T;for(d=e.j,h=e.g,m=u(Oe(d,d.c.length-1),113),T=(vn(0,d.c.length),u(d.c[0],113)),k=yot(t,h,m,T),o=1;ok&&(m=n,T=s,k=r);e.a=T,e.c=m}function dkn(t,e,n){var r,s,o,h,d,m,k;for(k=new pp(new SUt(t)),h=lt(ut(w4e,1),f2e,12,0,[e,n]),d=0,m=h.length;dm-t.b&&dm-t.a&&d0?o.a?(d=o.b.Mf().a,n>d&&(s=(n-d)/2,o.d.b=s,o.d.c=s)):o.d.c=t.s+n:IS(t.u)&&(r=Zxt(o.b),r.c<0&&(o.d.b=-r.c),r.c+r.b>o.b.Mf().a&&(o.d.c=r.c+r.b-o.b.Mf().a))}function Dkn(t,e){var n,r,s,o,h;h=new fe,n=e;do o=u(tr(t.b,n),131),o.B=n.c,o.D=n.d,In(h.c,o),n=u(tr(t.k,n),18);while(n);return r=(vn(0,h.c.length),u(h.c[0],131)),r.j=!0,r.A=u(r.d.a.ec().Kc().Pb(),18).c.i,s=u(Oe(h,h.c.length-1),131),s.q=!0,s.C=u(s.d.a.ec().Kc().Pb(),18).d.i,h}function Mkn(t){var e,n;if(e=u(t.a,17).a,n=u(t.b,17).a,e>=0){if(e==n)return new Ws(he(-e-1),he(-e-1));if(e==-n)return new Ws(he(-e),he(n+1))}return b.Math.abs(e)>b.Math.abs(n)?e<0?new Ws(he(-e),he(n)):new Ws(he(-e),he(n+1)):new Ws(he(e+1),he(n))}function Ikn(t){var e,n;n=u(X(t,(De(),Iu)),171),e=u(X(t,(oe(),Aw)),311),n==(Rh(),s2)?(Zt(t,Iu,rP),Zt(t,Aw,(Cg(),H5))):n==S3?(Zt(t,Iu,rP),Zt(t,Aw,(Cg(),qk))):e==(Cg(),H5)?(Zt(t,Iu,s2),Zt(t,Aw,ZN)):e==qk&&(Zt(t,Iu,S3),Zt(t,Aw,ZN))}function rV(){rV=V,fP=new pZ,Dke=ri(new Fs,(Ua(),Qc),(Za(),tG)),Oke=el(ri(new Fs,Qc,cG),Zo,oG),Nke=Yd(Yd(nS(el(ri(new Fs,Wf,fG),Zo,hG),cu),lG),dG),Mke=el(ri(ri(ri(new Fs,H0,nG),cu,iG),cu,vT),Zo,rG),Ike=el(ri(ri(new Fs,cu,vT),cu,ZU),Zo,JU)}function D_(){D_=V,Bke=ri(el(new Fs,(Ua(),Zo),(Za(),XCt)),Qc,tG),zke=Yd(Yd(nS(el(ri(new Fs,Wf,fG),Zo,hG),cu),lG),dG),Rke=el(ri(ri(ri(new Fs,H0,nG),cu,iG),cu,vT),Zo,rG),$ke=ri(ri(new Fs,Qc,cG),Zo,oG),jke=el(ri(ri(new Fs,cu,vT),cu,ZU),Zo,JU)}function Okn(t,e,n,r,s){var o,h;(!go(e)&&e.c.i.c==e.d.i.c||!qoe(dc(lt(ut(la,1),ue,8,0,[s.i.n,s.n,s.a])),n))&&!go(e)&&(e.c==s?CE(e.a,0,new io(n)):Zr(e.a,new io(n)),r&&!x1(t.a,n)&&(h=u(X(e,(De(),Vo)),75),h||(h=new Qu,Zt(e,Vo,h)),o=new io(n),hs(h,o,h.c.b,h.c),qs(t.a,o)))}function Hde(t,e){var n,r,s,o;for(o=qr(Ja(B0,L0(qr(Ja(e==null?0:$i(e),R0)),15))),n=o&t.b.length-1,s=null,r=t.b[n];r;s=r,r=r.a)if(r.d==o&&Ud(r.i,e))return s?s.a=r.a:t.b[n]=r.a,vWt(u(nf(r.c),604),u(nf(r.f),604)),LM(u(nf(r.b),227),u(nf(r.e),227)),--t.f,++t.e,!0;return!1}function Nkn(t){var e,n;for(n=new rr(sr(ua(t).a.Kc(),new z));Mr(n);)if(e=u(dr(n),18),e.c.i.k!=(Un(),Vc))throw at(new fp(zut+EO(t)+"' has its layer constraint set to FIRST, but has at least one incoming edge that does not come from a FIRST_SEPARATE node. That must not happen."))}function Pkn(t,e,n){var r,s,o,h,d,m,k;if(s=Gue(t.Db&254),s==0)t.Eb=n;else{if(s==1)d=Vt(aa,Ln,1,2,5,1),o=vot(t,e),o==0?(d[0]=n,d[1]=t.Eb):(d[0]=t.Eb,d[1]=n);else for(d=Vt(aa,Ln,1,s+1,5,1),h=nw(t.Eb),r=2,m=0,k=0;r<=128;r<<=1)r==e?d[k++]=n:t.Db&r&&(d[k++]=h[m++]);t.Eb=d}t.Db|=e}function Vde(t,e,n){var r,s,o,h;for(this.b=new fe,s=0,r=0,h=new G(t);h.a0&&(o=u(Oe(this.b,0),176),s+=o.o,r+=o.p),s*=2,r*=2,e>1?s=Ys(b.Math.ceil(s*e)):r=Ys(b.Math.ceil(r/e)),this.a=new U5t(s,r)}function Ude(t,e,n,r,s,o){var h,d,m,k,T,A,P,$,U,J,tt,ht;for(T=r,e.j&&e.o?($=u(tr(t.f,e.A),60),J=$.d.c+$.d.b,--T):J=e.a.c+e.a.b,A=s,n.q&&n.o?($=u(tr(t.f,n.C),60),k=$.d.c,++A):k=n.a.c,tt=k-J,m=b.Math.max(2,A-T),d=tt/m,U=J+d,P=T;P=0;h+=s?1:-1){for(d=e[h],m=r==(ve(),Jn)?s?gc(d,r):Bh(gc(d,r)):s?Bh(gc(d,r)):gc(d,r),o&&(t.c[d.p]=m.gc()),A=m.Kc();A.Ob();)T=u(A.Pb(),12),t.d[T.p]=k++;Hs(n,m)}}function Kde(t,e,n){var r,s,o,h,d,m,k,T;for(o=Rt(Ht(t.b.Kc().Pb())),k=Rt(Ht(Ipn(e.b))),r=qd(Oa(t.a),k-n),s=qd(Oa(e.a),n-o),T=ki(r,s),qd(T,1/(k-o)),this.a=T,this.b=new fe,d=!0,h=t.b.Kc(),h.Pb();h.Ob();)m=Rt(Ht(h.Pb())),d&&m-n>xlt&&(this.b.Fc(n),d=!1),this.b.Fc(m);d&&this.b.Fc(n)}function Fkn(t){var e,n,r,s;if(tEn(t,t.n),t.d.c.length>0){for(KC(t.c);z6t(t,u(et(new G(t.e.a)),125))>5,e&=31,r>=t.d)return t.e<0?(Xd(),Zve):(Xd(),yA);if(o=t.d-r,s=Vt(Fr,ii,28,o+1,15,1),_4n(s,o,t.a,r,e),t.e<0){for(n=0;n0&&t.a[n]<<32-e){for(n=0;n=0?!1:(n=y5((il(),ja),s,e),n?(r=n.Ik(),(r>1||r==-1)&&Om($o(ja,n))!=3):!0)):!1}function $kn(t,e,n,r){var s,o,h,d,m;return d=Jo(u(Dt((!e.b&&(e.b=new kn(vr,e,4,7)),e.b),0),84)),m=Jo(u(Dt((!e.c&&(e.c=new kn(vr,e,5,8)),e.c),0),84)),Ji(d)==Ji(m)||qy(m,d)?null:(h=AI(e),h==n?r:(o=u(tr(t.a,h),10),o&&(s=o.e,s)?s:null))}function zkn(t,e,n){var r,s,o,h,d;for(n.Ug("Longest path to source layering",1),t.a=e,d=t.a.a,t.b=Vt(Fr,ii,28,d.c.length,15,1),r=0,h=new G(d);h.a0&&(n[0]+=t.d,h-=n[0]),n[2]>0&&(n[2]+=t.d,h-=n[2]),o=b.Math.max(0,h),n[1]=b.Math.max(n[1],h),O3t(t,xu,s.c+r.b+n[0]-(n[1]-h)/2,n),e==xu&&(t.c.b=o,t.c.c=s.c+r.b+(o-h)/2)}function r0e(){this.c=Vt(ma,No,28,(ve(),lt(ut(bo,1),qc,64,0,[bc,Hn,Jn,Er,Gn])).length,15,1),this.b=Vt(ma,No,28,lt(ut(bo,1),qc,64,0,[bc,Hn,Jn,Er,Gn]).length,15,1),this.a=Vt(ma,No,28,lt(ut(bo,1),qc,64,0,[bc,Hn,Jn,Er,Gn]).length,15,1),Fwt(this.c,Zi),Fwt(this.b,Vs),Fwt(this.a,Vs)}function iu(t,e,n){var r,s,o,h;if(e<=n?(s=e,o=n):(s=n,o=e),r=0,t.b==null)t.b=Vt(Fr,ii,28,2,15,1),t.b[0]=s,t.b[1]=o,t.c=!0;else{if(r=t.b.length,t.b[r-1]+1==s){t.b[r-1]=o;return}h=Vt(Fr,ii,28,r+2,15,1),Xc(t.b,0,h,0,r),t.b=h,t.b[r-1]>=s&&(t.c=!1,t.a=!1),t.b[r++]=s,t.b[r]=o,t.c||g5(t)}}function Kkn(t,e,n){var r,s,o,h,d,m,k;for(k=e.d,t.a=new wu(k.c.length),t.c=new _r,d=new G(k);d.a=0?t.Lh(k,!1,!0):tv(t,n,!1),61));t:for(o=A.Kc();o.Ob();){for(s=u(o.Pb(),58),T=0;T1;)r3(s,s.i-1);return r}function s0e(t,e){var n,r,s,o,h,d,m;for(n=new K4,o=new G(t.b);o.at.d[h.p]&&(n+=C3t(t.b,o),Ob(t.a,he(o)));for(;!WC(t.a);)i4t(t.b,u(K6(t.a),17).a)}return n}function Zkn(t){var e,n,r,s,o,h,d,m,k;for(t.a=new wvt,k=0,s=0,r=new G(t.i.b);r.ad.d&&(T=d.d+d.a+k));n.c.d=T,e.a.zc(n,e),m=b.Math.max(m,n.c.d+n.c.a)}return m}function Co(){Co=V,CG=new ky("COMMENTS",0),Uh=new ky("EXTERNAL_PORTS",1),LA=new ky("HYPEREDGES",2),SG=new ky("HYPERNODES",3),DT=new ky("NON_FREE_PORTS",4),q5=new ky("NORTH_SOUTH_PORTS",5),DA=new ky(D2e,6),AT=new ky("CENTER_LABELS",7),LT=new ky("END_LABELS",8),_G=new ky("PARTITIONS",9)}function e8n(t,e,n,r,s){return r<0?(r=d5(t,s,lt(ut(Pe,1),ue,2,6,[qct,Hct,Vct,Uct,Tk,Gct,Kct,Wct,Yct,Xct,Qct,Jct]),e),r<0&&(r=d5(t,s,lt(ut(Pe,1),ue,2,6,["Jan","Feb","Mar","Apr",Tk,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),e)),r<0?!1:(n.k=r,!0)):r>0?(n.k=r-1,!0):!1}function n8n(t,e,n,r,s){return r<0?(r=d5(t,s,lt(ut(Pe,1),ue,2,6,[qct,Hct,Vct,Uct,Tk,Gct,Kct,Wct,Yct,Xct,Qct,Jct]),e),r<0&&(r=d5(t,s,lt(ut(Pe,1),ue,2,6,["Jan","Feb","Mar","Apr",Tk,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),e)),r<0?!1:(n.k=r,!0)):r>0?(n.k=r-1,!0):!1}function r8n(t,e,n,r,s,o){var h,d,m,k;if(d=32,r<0){if(e[0]>=t.length||(d=Va(t,e[0]),d!=43&&d!=45)||(++e[0],r=KH(t,e),r<0))return!1;d==45&&(r=-r)}return d==32&&e[0]-n==2&&s.b==2&&(m=new x$,k=m.q.getFullYear()-Wb+Wb-80,h=k%100,o.a=r==h,r+=(k/100|0)*100+(r=0?zb(t):FS(zb(Cp(t)))),xA[e]=J$(Rf(t,e),0)?zb(Rf(t,e)):FS(zb(Cp(Rf(t,e)))),t=Ja(t,5);for(;e=k&&(m=r);m&&(T=b.Math.max(T,m.a.o.a)),T>P&&(A=k,P=T)}return A}function u8n(t){var e,n,r,s,o,h,d;for(o=new pp(u(Hr(new kh),50)),d=Vs,n=new G(t.d);n.anwe?Ds(m,t.b):r<=nwe&&r>rwe?Ds(m,t.d):r<=rwe&&r>iwe?Ds(m,t.c):r<=iwe&&Ds(m,t.a),o=l0e(t,m,o);return s}function h0e(t,e,n,r){var s,o,h,d,m,k;for(s=(r.c+r.a)/2,nh(e.j),Zr(e.j,s),nh(n.e),Zr(n.e,s),k=new IWt,d=new G(t.f);d.a1,d&&(r=new ae(s,n.b),Zr(e.a,r)),XS(e.a,lt(ut(la,1),ue,8,0,[P,A]))}function lkt(t,e,n){var r,s;for(e=48;n--)ML[n]=n-48<<24>>24;for(r=70;r>=65;r--)ML[r]=r-65+10<<24>>24;for(s=102;s>=97;s--)ML[s]=s-97+10<<24>>24;for(o=0;o<10;o++)tW[o]=48+o&js;for(t=10;t<=15;t++)tW[t]=65+t-10&js}function d8n(t,e){e.Ug("Process graph bounds",1),Zt(t,(ji(),R1t),KM(hat(Ny(new ln(null,new gn(t.b,16)),new zZ)))),Zt(t,j1t,KM(hat(Ny(new ln(null,new gn(t.b,16)),new qZ)))),Zt(t,pLt,KM(lat(Ny(new ln(null,new gn(t.b,16)),new HZ)))),Zt(t,bLt,KM(lat(Ny(new ln(null,new gn(t.b,16)),new VZ)))),e.Vg()}function g8n(t){var e,n,r,s,o;s=u(X(t,(De(),Ow)),21),o=u(X(t,GG),21),n=new ae(t.f.a+t.d.b+t.d.c,t.f.b+t.d.d+t.d.a),e=new io(n),s.Hc((Yl(),z3))&&(r=u(X(t,IT),8),o.Hc((Ml(),XT))&&(r.a<=0&&(r.a=20),r.b<=0&&(r.b=20)),e.a=b.Math.max(n.a,r.a),e.b=b.Math.max(n.b,r.b)),Ie(Me(X(t,c1t)))||V7n(t,n,e)}function p8n(t,e){var n,r,s,o;for(o=gc(e,(ve(),Er)).Kc();o.Ob();)r=u(o.Pb(),12),n=u(X(r,(oe(),ml)),10),n&&Hf(Of(If(Nf(Mf(new tf,0),.1),t.i[e.p].d),t.i[n.p].a));for(s=gc(e,Hn).Kc();s.Ob();)r=u(s.Pb(),12),n=u(X(r,(oe(),ml)),10),n&&Hf(Of(If(Nf(Mf(new tf,0),.1),t.i[n.p].d),t.i[e.p].a))}function ect(t){var e,n,r,s,o,h;if(!t.c){if(h=new Oc,e=_L,o=e.a.zc(t,e),o==null){for(r=new Zn(Wc(t));r.e!=r.i.gc();)n=u(ar(r),89),s=lV(n),Lt(s,90)&&gs(h,ect(u(s,29))),Or(h,n);e.a.Bc(t)!=null,e.a.gc()==0}lwn(h),Uy(h),t.c=new $4((u(Dt(Qt((Lb(),Fn).o),15),19),h.i),h.g),_l(t).b&=-33}return t.c}function fkt(t){var e;if(t.c!=10)throw at(new Yr(Qr((Ur(),pU))));switch(e=t.a,e){case 110:e=10;break;case 114:e=13;break;case 116:e=9;break;case 92:case 124:case 46:case 94:case 45:case 63:case 42:case 43:case 123:case 125:case 40:case 41:case 91:case 93:break;default:throw at(new Yr(Qr((Ur(),Hh))))}return e}function p0e(t){var e,n,r,s,o;if(t.l==0&&t.m==0&&t.h==0)return"0";if(t.h==aN&&t.m==0&&t.l==0)return"-9223372036854775808";if(t.h>>19)return"-"+p0e(h7(t));for(n=t,r="";!(n.l==0&&n.m==0&&n.h==0);){if(s=Mst(EV),n=Gkt(n,s,!0),e=""+RWt(Zb),!(n.l==0&&n.m==0&&n.h==0))for(o=9-e.length;o>0;o--)e="0"+e;r=e+r}return r}function b8n(t){var e,n,r,s,o,h,d;for(e=!1,n=0,s=new G(t.d.b);s.a=t.a||!Yxt(e,n))return-1;if(HE(u(r.Kb(e),20)))return 1;for(s=0,h=u(r.Kb(e),20).Kc();h.Ob();)if(o=u(h.Pb(),18),m=o.c.i==e?o.d.i:o.c.i,d=dkt(t,m,n,r),d==-1||(s=b.Math.max(s,d),s>t.c-1))return-1;return s+1}function b0e(t,e){var n,r,s,o,h,d;if($t(e)===$t(t))return!0;if(!Lt(e,15)||(r=u(e,15),d=t.gc(),r.gc()!=d))return!1;if(h=r.Kc(),t.Yi()){for(n=0;n0){if(t._j(),e!=null){for(o=0;o>24;case 97:case 98:case 99:case 100:case 101:case 102:return t-97+10<<24>>24;case 65:case 66:case 67:case 68:case 69:case 70:return t-65+10<<24>>24;default:throw at(new jd("Invalid hexadecimal"))}}function aV(){aV=V,Q9t=new P4("SPIRAL",0),K9t=new P4("LINE_BY_LINE",1),W9t=new P4("MANHATTAN",2),G9t=new P4("JITTER",3),Hht=new P4("QUADRANTS_LINE_BY_LINE",4),X9t=new P4("QUADRANTS_MANHATTAN",5),Y9t=new P4("QUADRANTS_JITTER",6),U9t=new P4("COMBINE_LINE_BY_LINE_MANHATTAN",7),V9t=new P4("COMBINE_JITTER_MANHATTAN",8)}function m0e(t,e,n,r){var s,o,h,d,m,k;for(m=Sot(t,n),k=Sot(e,n),s=!1;m&&k&&(r||dvn(m,k,n));)h=Sot(m,n),d=Sot(k,n),HI(e),HI(t),o=m.c,_ct(m,!1),_ct(k,!1),n?(Xy(e,k.p,o),e.p=k.p,Xy(t,m.p+1,o),t.p=m.p):(Xy(t,m.p,o),t.p=m.p,Xy(e,k.p+1,o),e.p=k.p),Aa(m,null),Aa(k,null),m=h,k=d,s=!0;return s}function v0e(t){switch(t.g){case 0:return new Wet;case 1:return new NC;case 3:return new GYt;case 4:return new zJ;case 5:return new yZt;case 6:return new yM;case 2:return new OC;case 7:return new Dj;case 8:return new vM;default:throw at(new zn("No implementation is available for the layerer "+(t.f!=null?t.f:""+t.g)))}}function k8n(t,e,n,r){var s,o,h,d,m;for(s=!1,o=!1,d=new G(r.j);d.a=e.length)throw at(new Bo("Greedy SwitchDecider: Free layer not in graph."));this.c=e[t],this.e=new dI(r),aat(this.e,this.c,(ve(),Gn)),this.i=new dI(r),aat(this.i,this.c,Jn),this.f=new Bte(this.c),this.a=!o&&s.i&&!s.s&&this.c[0].k==(Un(),Ms),this.a&&F4n(this,t,e.length)}function x0e(t,e){var n,r,s,o,h,d;o=!t.B.Hc((Ml(),jP)),h=t.B.Hc(Kdt),t.a=new ale(h,o,t.c),t.n&&Gyt(t.a.n,t.n),Jnt(t.g,(A1(),xu),t.a),e||(r=new p_(1,o,t.c),r.n.a=t.k,W6(t.p,(ve(),Hn),r),s=new p_(1,o,t.c),s.n.d=t.k,W6(t.p,Er,s),d=new p_(0,o,t.c),d.n.c=t.k,W6(t.p,Gn,d),n=new p_(0,o,t.c),n.n.b=t.k,W6(t.p,Jn,n))}function T8n(t){var e,n,r;switch(e=u(X(t.d,(De(),zg)),223),e.g){case 2:n=fSn(t);break;case 3:n=(r=new fe,ms(_i(Wo(fc(fc(new ln(null,new gn(t.d.b,16)),new dJ),new gJ),new pJ),new rC),new nUt(r)),r);break;default:throw at(new Ro("Compaction not supported for "+e+" edges."))}NTn(t,n),Fa(new cr(t.g),new tUt(t))}function C8n(t,e){var n,r,s,o,h,d,m;if(e.Ug("Process directions",1),n=u(X(t,(Cc(),Mv)),88),n!=(Rs(),kd))for(s=Dr(t.b,0);s.b!=s.d.c;){switch(r=u(Ar(s),39),d=u(X(r,(ji(),pP)),17).a,m=u(X(r,bP),17).a,n.g){case 4:m*=-1;break;case 1:o=d,d=m,m=o;break;case 2:h=d,d=-m,m=h}Zt(r,pP,he(d)),Zt(r,bP,he(m))}e.Vg()}function S8n(t,e){var n;return n=new As,e&&Qo(n,u(tr(t.a,zP),96)),Lt(e,422)&&Qo(n,u(tr(t.a,qP),96)),Lt(e,366)?(Qo(n,u(tr(t.a,Po),96)),n):(Lt(e,84)&&Qo(n,u(tr(t.a,vr),96)),Lt(e,207)?(Qo(n,u(tr(t.a,bi),96)),n):Lt(e,193)?(Qo(n,u(tr(t.a,kl),96)),n):(Lt(e,326)&&Qo(n,u(tr(t.a,Ts),96)),n))}function _8n(t){var e,n,r,s,o,h,d,m;for(m=new tse,d=new G(t.a);d.a0&&e=0)return!1;if(e.p=n.b,ge(n.e,e),s==(Un(),fa)||s==uu){for(h=new G(e.j);h.at.d[d.p]&&(n+=C3t(t.b,o),Ob(t.a,he(o)))):++h;for(n+=t.b.d*h;!WC(t.a);)i4t(t.b,u(K6(t.a),17).a)}return n}function M0e(t){var e,n,r,s,o,h;return o=0,e=of(t),e.kk()&&(o|=4),t.Bb&ol&&(o|=2),Lt(t,102)?(n=u(t,19),s=yo(n),n.Bb&Fc&&(o|=32),s&&(fr(Py(s)),o|=8,h=s.t,(h>1||h==-1)&&(o|=16),s.Bb&Fc&&(o|=64)),n.Bb&po&&(o|=b3),o|=Uf):Lt(e,468)?o|=512:(r=e.kk(),r&&r.i&1&&(o|=256)),t.Bb&512&&(o|=128),o}function j8n(t,e){var n;return t.f==a0t?(n=Om($o((il(),ja),e)),t.e?n==4&&e!=(vk(),s8)&&e!=(vk(),i8)&&e!=(vk(),o0t)&&e!=(vk(),c0t):n==2):t.d&&(t.d.Hc(e)||t.d.Hc(tk($o((il(),ja),e)))||t.d.Hc(y5((il(),ja),t.b,e)))?!0:t.f&&tkt((il(),t.f),TI($o(ja,e)))?(n=Om($o(ja,e)),t.e?n==4:n==2):!1}function $8n(t){var e,n,r,s,o,h,d,m,k,T,A,P,$;for(P=-1,$=0,k=t,T=0,A=k.length;T0&&++$;++P}return $}function z8n(t,e,n,r){var s,o,h,d,m,k,T,A;return h=u(ne(n,(ai(),Jk)),8),m=h.a,T=h.b+t,s=b.Math.atan2(T,m),s<0&&(s+=xw),s+=e,s>xw&&(s-=xw),d=u(ne(r,Jk),8),k=d.a,A=d.b+t,o=b.Math.atan2(A,k),o<0&&(o+=xw),o+=e,o>xw&&(o-=xw),Z1(),$f(1e-10),b.Math.abs(s-o)<=1e-10||s==o||isNaN(s)&&isNaN(o)?0:so?1:ym(isNaN(s),isNaN(o))}function ict(t){var e,n,r,s,o,h,d;for(d=new _r,r=new G(t.a.b);r.a=t.o)throw at(new Y2t);d=e>>5,h=e&31,o=Rf(1,qr(Rf(h,1))),s?t.n[n][d]=T1(t.n[n][d],o):t.n[n][d]=sa(t.n[n][d],Gvt(o)),o=Rf(o,1),r?t.n[n][d]=T1(t.n[n][d],o):t.n[n][d]=sa(t.n[n][d],Gvt(o))}catch(m){throw m=es(m),Lt(m,333)?at(new Bo(Cut+t.o+"*"+t.p+Sut+e+ao+n+_ut)):at(m)}}function V8n(t,e,n,r){var s,o,h,d,m,k,T,A,P;for(P=new pp(new CUt(t)),d=lt(ut(V0,1),jp,10,0,[e,n]),m=0,k=d.length;m0&&(r=(!t.n&&(t.n=new Jt(Po,t,1,7)),u(Dt(t.n,0),135)).a,!r||ni(ni((e.a+=' "',e),r),'"'))),ni(pm(ni(pm(ni(pm(ni(pm((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function I0e(t){var e,n,r;return t.Db&64?Bot(t):(e=new eh(xTt),n=t.k,n?ni(ni((e.a+=' "',e),n),'"'):(!t.n&&(t.n=new Jt(Po,t,1,7)),t.n.i>0&&(r=(!t.n&&(t.n=new Jt(Po,t,1,7)),u(Dt(t.n,0),135)).a,!r||ni(ni((e.a+=' "',e),r),'"'))),ni(pm(ni(pm(ni(pm(ni(pm((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function K8n(t,e){var n,r,s,o,h;for(e==(i_(),_1t)&&IO(u(Ai(t.a,(Qy(),XN)),15)),s=u(Ai(t.a,(Qy(),XN)),15).Kc();s.Ob();)switch(r=u(s.Pb(),105),n=u(Oe(r.j,0),113).d.j,o=new fl(r.j),Ds(o,new cR),e.g){case 2:Mot(t,o,n,(Vm(),r2),1);break;case 1:case 0:h=O6n(o),Mot(t,new xp(o,0,h),n,(Vm(),r2),0),Mot(t,new xp(o,h,o.c.length),n,r2,1)}}function act(t,e){var n,r,s,o,h,d,m;if(e==null||e.length==0)return null;if(s=u(nu(t.a,e),143),!s){for(r=(d=new si(t.b).a.vc().Kc(),new Qi(d));r.a.Ob();)if(n=(o=u(r.a.Pb(),44),u(o.md(),143)),h=n.c,m=e.length,hn(h.substr(h.length-m,m),e)&&(e.length==h.length||Va(h,h.length-e.length-1)==46)){if(s)return null;s=n}s&&jo(t.a,e,s)}return s}function W8n(t,e){var n,r,s,o;return n=new Gi,r=u(nc(Wo(new ln(null,new gn(t.f,16)),n),jy(new we,new Fi,new Nn,new Bn,lt(ut(Ho,1),te,108,0,[(bl(),w3),sc]))),21),s=r.gc(),r=u(nc(Wo(new ln(null,new gn(e.f,16)),n),jy(new we,new Fi,new Nn,new Bn,lt(ut(Ho,1),te,108,0,[w3,sc]))),21),o=r.gc(),ss.p?(Xs(o,Er),o.d&&(d=o.o.b,e=o.a.b,o.a.b=d-e)):o.j==Er&&s.p>t.p&&(Xs(o,Hn),o.d&&(d=o.o.b,e=o.a.b,o.a.b=-(d-e)));break}return s}function HO(t,e,n,r,s){var o,h,d,m,k,T,A;if(!(Lt(e,207)||Lt(e,366)||Lt(e,193)))throw at(new zn("Method only works for ElkNode-, ElkLabel and ElkPort-objects."));return h=t.a/2,m=e.i+r-h,T=e.j+s-h,k=m+e.g+t.a,A=T+e.f+t.a,o=new Qu,Zr(o,new ae(m,T)),Zr(o,new ae(m,A)),Zr(o,new ae(k,A)),Zr(o,new ae(k,T)),d=new Wot(o),Qo(d,e),n&&hi(t.b,e,d),d}function B7(t,e,n){var r,s,o,h,d,m,k,T,A,P;for(o=new ae(e,n),T=new G(t.a);T.a1,d&&(r=new ae(s,n.b),Zr(e.a,r)),XS(e.a,lt(ut(la,1),ue,8,0,[P,A]))}function cf(){cf=V,ZG=new Ey(r0,0),cP=new Ey("NIKOLOV",1),uP=new Ey("NIKOLOV_PIXEL",2),OAt=new Ey("NIKOLOV_IMPROVED",3),NAt=new Ey("NIKOLOV_IMPROVED_PIXEL",4),IAt=new Ey("DUMMYNODE_PERCENTAGE",5),PAt=new Ey("NODECOUNT_PERCENTAGE",6),tK=new Ey("NO_BOUNDARY",7),Lv=new Ey("MODEL_ORDER_LEFT_TO_RIGHT",8),N3=new Ey("MODEL_ORDER_RIGHT_TO_LEFT",9)}function iEn(t){var e,n,r,s,o;for(r=t.length,e=new YC,o=0;o=40,h&&s7n(t),gTn(t),Fkn(t),n=Xue(t),r=0;n&&r0&&Zr(t.f,o)):(t.c[h]-=k+1,t.c[h]<=0&&t.a[h]>0&&Zr(t.e,o))))}function U0e(t,e,n,r){var s,o,h,d,m,k,T;for(m=new ae(n,r),ia(m,u(X(e,(ji(),zT)),8)),T=Dr(e.b,0);T.b!=T.d.c;)k=u(Ar(T),39),ki(k.e,m),Zr(t.b,k);for(d=u(nc(r3t(new ln(null,new gn(e.a,16))),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)]))),15).Kc();d.Ob();){for(h=u(d.Pb(),65),o=Dr(h.a,0);o.b!=o.d.c;)s=u(Ar(o),8),s.a+=m.a,s.b+=m.b;Zr(t.a,h)}}function Akt(t,e){var n,r,s,o;if(0<(Lt(t,16)?u(t,16).gc():xg(t.Kc()))){if(s=e,1=0&&mo*2?(T=new Fq(A),k=tl(h)/Gl(h),m=Mct(T,e,new C6,n,r,s,k),ki(k1(T.e),m),A.c.length=0,o=0,In(A.c,T),In(A.c,h),o=tl(T)*Gl(T)+tl(h)*Gl(h)):(In(A.c,h),o+=tl(h)*Gl(h));return A}function K0e(t,e){var n,r,s,o,h,d;if(d=u(X(e,(De(),bs)),101),d==(ka(),Y0)||d==hu)for(s=new ae(e.f.a+e.d.b+e.d.c,e.f.b+e.d.d+e.d.a).b,h=new G(t.a);h.an?e:n;k<=A;++k)k==n?d=r++:(o=s[k],T=U.am(o.Lk()),k==e&&(m=k==A&&!T?r-1:r),T&&++r);return P=u(f_(t,e,n),76),d!=m&&hE(t,new jI(t.e,7,h,he(d),$.md(),m)),P}}else return u(Uot(t,e,n),76);return u(f_(t,e,n),76)}function TEn(t,e){var n,r,s,o,h,d,m;for(e.Ug("Port order processing",1),m=u(X(t,(De(),hAt)),430),r=new G(t.b);r.a=0&&(d=mvn(t,h),!(d&&(k<22?m.l|=1<>>1,h.m=T>>>1|(A&1)<<21,h.l=P>>>1|(T&1)<<21,--k;return n&&kat(m),o&&(r?(Zb=h7(t),s&&(Zb=Mce(Zb,(WE(),o9t)))):Zb=Eu(t.l,t.m,t.h)),m}function _En(t,e){var n,r,s,o,h,d,m,k,T,A;for(k=t.e[e.c.p][e.p]+1,m=e.c.a.c.length+1,d=new G(t.a);d.a0&&(qn(0,t.length),t.charCodeAt(0)==45||(qn(0,t.length),t.charCodeAt(0)==43))?1:0,r=h;rn)throw at(new jd(av+t+'"'));return d}function AEn(t){var e,n,r,s,o,h,d;for(h=new Ki,o=new G(t.a);o.a1)&&e==1&&u(t.a[t.b],10).k==(Un(),Vc)?xk(u(t.a[t.b],10),(uh(),K0)):r&&(!n||(t.c-t.b&t.a.length-1)>1)&&e==1&&u(t.a[t.c-1&t.a.length-1],10).k==(Un(),Vc)?xk(u(t.a[t.c-1&t.a.length-1],10),(uh(),h2)):(t.c-t.b&t.a.length-1)==2?(xk(u(r_(t),10),(uh(),K0)),xk(u(r_(t),10),h2)):r6n(t,s),E3t(t)}function MEn(t,e,n){var r,s,o,h,d;for(o=0,s=new Zn((!t.a&&(t.a=new Jt(bi,t,10,11)),t.a));s.e!=s.i.gc();)r=u(ar(s),27),h="",(!r.n&&(r.n=new Jt(Po,r,1,7)),r.n).i==0||(h=u(Dt((!r.n&&(r.n=new Jt(Po,r,1,7)),r.n),0),135).a),d=new Eat(o++,e,h),Qo(d,r),Zt(d,(ji(),JA),r),d.e.b=r.j+r.f/2,d.f.a=b.Math.max(r.g,1),d.e.a=r.i+r.g/2,d.f.b=b.Math.max(r.f,1),Zr(e.b,d),yu(n.f,r,d)}function IEn(t){var e,n,r,s,o;r=u(X(t,(oe(),Li)),27),o=u(ne(r,(De(),Ow)),181).Hc((Yl(),qw)),t.e||(s=u(X(t,lu),21),e=new ae(t.f.a+t.d.b+t.d.c,t.f.b+t.d.d+t.d.a),s.Hc((Co(),Uh))?(Mi(r,bs,(ka(),hu)),rv(r,e.a,e.b,!1,!0)):Ie(Me(ne(r,c1t)))||rv(r,e.a,e.b,!0,!0)),o?Mi(r,Ow,en(qw)):Mi(r,Ow,(n=u(y1(xL),9),new _h(n,u(Ff(n,n.length),9),0)))}function Lkt(t,e,n){var r,s,o,h;if(e[0]>=t.length)return n.o=0,!0;switch(Va(t,e[0])){case 43:s=1;break;case 45:s=-1;break;default:return n.o=0,!0}if(++e[0],o=e[0],h=KH(t,e),h==0&&e[0]==o)return!1;if(e[0]d&&(d=s,T.c.length=0),s==d&&ge(T,new Ws(n.c.i,n)));mn(),Ds(T,t.c),Sm(t.b,m.p,T)}}function FEn(t,e){var n,r,s,o,h,d,m,k,T;for(h=new G(e.b);h.ad&&(d=s,T.c.length=0),s==d&&ge(T,new Ws(n.d.i,n)));mn(),Ds(T,t.c),Sm(t.f,m.p,T)}}function BEn(t,e){var n,r,s,o,h,d,m,k;if(k=Me(X(e,(Cc(),l8e))),k==null||(Wn(k),k)){for(cxn(t,e),s=new fe,m=Dr(e.b,0);m.b!=m.d.c;)h=u(Ar(m),39),n=w6t(t,h,null),n&&(Qo(n,e),In(s.c,n));if(t.a=null,t.b=null,s.c.length>1)for(r=new G(s);r.a=0&&d!=n&&(o=new ha(t,1,d,h,null),r?r.nj(o):r=o),n>=0&&(o=new ha(t,1,n,d==n?h:null,e),r?r.nj(o):r=o)),r}function X0e(t){var e,n,r;if(t.b==null){if(r=new dp,t.i!=null&&(Mo(r,t.i),r.a+=":"),t.f&256){for(t.f&256&&t.a!=null&&(ehn(t.i)||(r.a+="//"),Mo(r,t.a)),t.d!=null&&(r.a+="/",Mo(r,t.d)),t.f&16&&(r.a+="/"),e=0,n=t.j.length;eP?!1:(A=(m=B_(r,P,!1),m.a),T+d+A<=e.b&&($I(n,o-n.s),n.c=!0,$I(r,o-n.s),kO(r,n.s,n.t+n.d+d),r.k=!0,R4t(n.q,r),$=!0,s&&(zq(e,r),r.j=e,t.c.length>h&&(CO((vn(h,t.c.length),u(t.c[h],186)),r),(vn(h,t.c.length),u(t.c[h],186)).a.c.length==0&&Ep(t,h)))),$)}function VEn(t,e){var n,r,s,o,h,d;if(e.Ug("Partition midprocessing",1),s=new Fm,ms(_i(new ln(null,new gn(t.a,16)),new qB),new HVt(s)),s.d!=0){for(d=u(nc(a3t((o=s.i,new ln(null,(o||(s.i=new W4(s,s.c))).Nc()))),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)]))),15),r=d.Kc(),n=u(r.Pb(),17);r.Ob();)h=u(r.Pb(),17),F6n(u(Ai(s,n),21),u(Ai(s,h),21)),n=h;e.Vg()}}function Z0e(t,e,n){var r,s,o,h,d,m,k,T;if(e.p==0){for(e.p=1,h=n,h||(s=new fe,o=(r=u(y1(bo),9),new _h(r,u(Ff(r,r.length),9),0)),h=new Ws(s,o)),u(h.a,15).Fc(e),e.k==(Un(),Ms)&&u(h.b,21).Fc(u(X(e,(oe(),Dc)),64)),m=new G(e.j);m.a0){if(s=u(t.Ab.g,2033),e==null){for(o=0;on.s&&dh)return ve(),Jn;break;case 4:case 3:if(T<0)return ve(),Hn;if(T+n>o)return ve(),Er}return m=(k+d/2)/h,r=(T+n/2)/o,m+r<=1&&m-r<=0?(ve(),Gn):m+r>=1&&m-r>=0?(ve(),Jn):r<.5?(ve(),Hn):(ve(),Er)}function YEn(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J;for(n=!1,T=Rt(Ht(X(e,(De(),Av)))),U=Kb*T,s=new G(e.b);s.am+U&&(J=A.g+P.g,P.a=(P.g*P.a+A.g*A.a)/J,P.g=J,A.f=P,n=!0)),o=d,A=P;return n}function rge(t,e,n,r,s,o,h){var d,m,k,T,A,P;for(P=new B6,k=e.Kc();k.Ob();)for(d=u(k.Pb(),853),A=new G(d.Rf());A.a0?d.a?(k=d.b.Mf().b,s>k&&(t.v||d.c.d.c.length==1?(h=(s-k)/2,d.d.d=h,d.d.a=h):(n=u(Oe(d.c.d,0),187).Mf().b,r=(n-k)/2,d.d.d=b.Math.max(0,r),d.d.a=s-r-k))):d.d.a=t.t+s:IS(t.u)&&(o=Zxt(d.b),o.d<0&&(d.d.d=-o.d),o.d+o.a>d.b.Mf().b&&(d.d.a=o.d+o.a-d.b.Mf().b))}function Vf(){Vf=V,jk=new _a((ai(),DP),he(1)),KU=new _a($w,80),F3e=new _a(zMt,5),S3e=new _a(sx,tT),N3e=new _a(qdt,he(1)),P3e=new _a(Hdt,(Pn(),!0)),gCt=new xm(50),I3e=new _a(Yp,gCt),hCt=AP,pCt=fL,_3e=new _a(Idt,!1),dCt=LP,D3e=R3,M3e=l2,L3e=jw,A3e=ux,O3e=j3,fCt=(u6t(),v3e),eft=E3e,GU=m3e,tft=y3e,bCt=k3e,j3e=dL,$3e=MK,R3e=MP,B3e=DK,wCt=(lk(),q3),new _a(t8,wCt)}function JEn(t,e){var n;switch(WI(t)){case 6:return ba(e);case 7:return Cy(e);case 8:return Ty(e);case 3:return Array.isArray(e)&&(n=WI(e),!(n>=14&&n<=16));case 11:return e!=null&&typeof e===Pct;case 12:return e!=null&&(typeof e===ZO||typeof e==Pct);case 0:return aot(e,t.__elementTypeId$);case 2:return $it(e)&&e.Tm!==yt;case 1:return $it(e)&&e.Tm!==yt||aot(e,t.__elementTypeId$);default:return!0}}function ige(t,e){var n,r,s,o;return r=b.Math.min(b.Math.abs(t.c-(e.c+e.b)),b.Math.abs(t.c+t.b-e.c)),o=b.Math.min(b.Math.abs(t.d-(e.d+e.a)),b.Math.abs(t.d+t.a-e.d)),n=b.Math.abs(t.c+t.b/2-(e.c+e.b/2)),n>t.b/2+e.b/2||(s=b.Math.abs(t.d+t.a/2-(e.d+e.a/2)),s>t.a/2+e.a/2)?1:n==0&&s==0?0:n==0?o/s+1:s==0?r/n+1:b.Math.min(r/n,o/s)+1}function ZEn(t,e){var n,r,s,o,h,d,m;for(o=0,d=0,m=0,s=new G(t.f.e);s.a0&&t.d!=(WS(),ift)&&(d+=h*(r.d.a+t.a[e.a][r.a]*(e.d.a-r.d.a)/n)),n>0&&t.d!=(WS(),nft)&&(m+=h*(r.d.b+t.a[e.a][r.a]*(e.d.b-r.d.b)/n)));switch(t.d.g){case 1:return new ae(d/o,e.d.b);case 2:return new ae(e.d.a,m/o);default:return new ae(d/o,m/o)}}function sge(t){var e,n,r,s,o,h;for(n=(!t.a&&(t.a=new Ps(vh,t,5)),t.a).i+2,h=new wu(n),ge(h,new ae(t.j,t.k)),ms(new ln(null,(!t.a&&(t.a=new Ps(vh,t,5)),new gn(t.a,16))),new pGt(h)),ge(h,new ae(t.b,t.c)),e=1;e0&&(aO(m,!1,(Rs(),Uo)),aO(m,!0,tc)),Cu(e.g,new mXt(t,n)),hi(t.g,e,n)}function cge(){cge=V;var t;for(p9t=lt(ut(Fr,1),ii,28,15,[-1,-1,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5]),Dht=Vt(Fr,ii,28,37,15,1),Xve=lt(ut(Fr,1),ii,28,15,[-1,-1,63,40,32,28,25,23,21,20,19,19,18,18,17,17,16,16,16,15,15,15,15,14,14,14,14,14,14,13,13,13,13,13,13,13,13]),b9t=Vt(x2,cut,28,37,14,1),t=2;t<=36;t++)Dht[t]=Ys(b.Math.pow(t,p9t[t])),b9t[t]=_O(rN,Dht[t])}function t7n(t){var e;if((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a).i!=1)throw at(new zn(Fwe+(!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a).i));return e=new Qu,iO(u(Dt((!t.b&&(t.b=new kn(vr,t,4,7)),t.b),0),84))&&Ma(e,Xpe(t,iO(u(Dt((!t.b&&(t.b=new kn(vr,t,4,7)),t.b),0),84)),!1)),iO(u(Dt((!t.c&&(t.c=new kn(vr,t,5,8)),t.c),0),84))&&Ma(e,Xpe(t,iO(u(Dt((!t.c&&(t.c=new kn(vr,t,5,8)),t.c),0),84)),!0)),e}function uge(t,e){var n,r,s,o,h;for(e.d?s=t.a.c==(Gd(),Dv)?ua(e.b):_s(e.b):s=t.a.c==(Gd(),Gp)?ua(e.b):_s(e.b),o=!1,r=new rr(sr(s.a.Kc(),new z));Mr(r);)if(n=u(dr(r),18),h=Ie(t.a.f[t.a.g[e.b.p].p]),!(!h&&!go(n)&&n.c.i.c==n.d.i.c)&&!(Ie(t.a.n[t.a.g[e.b.p].p])||Ie(t.a.n[t.a.g[e.b.p].p]))&&(o=!0,x1(t.b,t.a.g[tvn(n,e.b).p])))return e.c=!0,e.a=n,e;return e.c=o,e.a=null,e}function Mkt(t,e,n){var r,s,o,h,d,m,k;if(r=n.gc(),r==0)return!1;if(t.Pj())if(m=t.Qj(),z5t(t,e,n),h=r==1?t.Ij(3,null,n.Kc().Pb(),e,m):t.Ij(5,null,n,e,m),t.Mj()){for(d=r<100?null:new xb(r),o=e+r,s=e;s0){for(h=0;h>16==-15&&t.Cb.Yh()&&Vst(new jst(t.Cb,9,13,n,t.c,Np(Al(u(t.Cb,62)),t))):Lt(t.Cb,90)&&t.Db>>16==-23&&t.Cb.Yh()&&(e=t.c,Lt(e,90)||(e=(wn(),xf)),Lt(n,90)||(n=(wn(),xf)),Vst(new jst(t.Cb,9,10,n,e,Np(Wc(u(t.Cb,29)),t)))))),t.c}function r7n(t,e,n){var r,s,o,h,d,m,k,T,A;for(n.Ug("Hyperedge merging",1),_xn(t,e),m=new La(e.b,0);m.b0,d=gH(e,o),Umt(n?d.b:d.g,e),s5(d).c.length==1&&hs(r,d,r.c.b,r.c),s=new Ws(o,e),Ob(t.o,s),zu(t.e.a,o))}function bge(t,e){var n,r,s,o,h,d,m;return r=b.Math.abs(zz(t.b).a-zz(e.b).a),d=b.Math.abs(zz(t.b).b-zz(e.b).b),s=0,m=0,n=1,h=1,r>t.b.b/2+e.b.b/2&&(s=b.Math.min(b.Math.abs(t.b.c-(e.b.c+e.b.b)),b.Math.abs(t.b.c+t.b.b-e.b.c)),n=1-s/r),d>t.b.a/2+e.b.a/2&&(m=b.Math.min(b.Math.abs(t.b.d-(e.b.d+e.b.a)),b.Math.abs(t.b.d+t.b.a-e.b.d)),h=1-m/d),o=b.Math.min(n,h),(1-o)*b.Math.sqrt(r*r+d*d)}function a7n(t){var e,n,r,s;for(Dct(t,t.e,t.f,(Bm(),c2),!0,t.c,t.i),Dct(t,t.e,t.f,c2,!1,t.c,t.i),Dct(t,t.e,t.f,Z5,!0,t.c,t.i),Dct(t,t.e,t.f,Z5,!1,t.c,t.i),n7n(t,t.c,t.e,t.f,t.i),r=new La(t.i,0);r.b=65;n--)_d[n]=n-65<<24>>24;for(r=122;r>=97;r--)_d[r]=r-97+26<<24>>24;for(s=57;s>=48;s--)_d[s]=s-48+52<<24>>24;for(_d[43]=62,_d[47]=63,o=0;o<=25;o++)nb[o]=65+o&js;for(h=26,m=0;h<=51;++h,m++)nb[h]=97+m&js;for(t=52,d=0;t<=61;++t,d++)nb[t]=48+d&js;nb[62]=43,nb[63]=47}function wge(t,e){var n,r,s,o,h,d;return s=O4t(t),d=O4t(e),s==d?t.e==e.e&&t.a<54&&e.a<54?t.fe.f?1:0:(r=t.e-e.e,n=(t.d>0?t.d:b.Math.floor((t.a-1)*Tbe)+1)-(e.d>0?e.d:b.Math.floor((e.a-1)*Tbe)+1),n>r+1?s:n0&&(h=Z4(h,Age(r))),Sle(o,h))):sk&&(P=0,$+=m+e,m=0),B7(h,P,$),n=b.Math.max(n,P+T.a),m=b.Math.max(m,T.b),P+=T.a+e;return new ae(n+e,$+m+e)}function Pkt(t,e){var n,r,s,o,h,d,m;if(!ed(t))throw at(new Ro(Pwe));if(r=ed(t),o=r.g,s=r.f,o<=0&&s<=0)return ve(),bc;switch(d=t.i,m=t.j,e.g){case 2:case 1:if(d<0)return ve(),Gn;if(d+t.g>o)return ve(),Jn;break;case 4:case 3:if(m<0)return ve(),Hn;if(m+t.f>s)return ve(),Er}return h=(d+t.g/2)/o,n=(m+t.f/2)/s,h+n<=1&&h-n<=0?(ve(),Gn):h+n>=1&&h-n>=0?(ve(),Jn):n<.5?(ve(),Hn):(ve(),Er)}function u7n(t,e,n,r,s){var o,h;if(o=Qa(sa(e[0],So),sa(r[0],So)),t[0]=qr(o),o=_m(o,32),n>=s){for(h=1;h0&&(s.b[h++]=0,s.b[h++]=o.b[0]-1),e=1;e0&&(H(m,m.d-s.d),s.c==(C1(),o2)&&N(m,m.a-s.d),m.d<=0&&m.i>0&&hs(e,m,e.c.b,e.c)));for(o=new G(t.f);o.a0&&(q(d,d.i-s.d),s.c==(C1(),o2)&&j(d,d.b-s.d),d.i<=0&&d.d>0&&hs(n,d,n.c.b,n.c)))}function f7n(t,e,n,r,s){var o,h,d,m,k,T,A,P,$;for(mn(),Ds(t,new U8),h=bI(t),$=new fe,P=new fe,d=null,m=0;h.b!=0;)o=u(h.b==0?null:(ur(h.b!=0),Oh(h,h.a.a)),163),!d||tl(d)*Gl(d)/21&&(m>tl(d)*Gl(d)/2||h.b==0)&&(A=new Fq(P),T=tl(d)/Gl(d),k=Mct(A,e,new C6,n,r,s,T),ki(k1(A.e),k),d=A,In($.c,A),m=0,P.c.length=0));return Hs($,P),$}function Xc(t,e,n,r,s){pg();var o,h,d,m,k,T,A;if(Syt(t,"src"),Syt(n,"dest"),A=Wl(t),m=Wl(n),Uvt((A.i&4)!=0,"srcType is not an array"),Uvt((m.i&4)!=0,"destType is not an array"),T=A.c,h=m.c,Uvt(T.i&1?T==h:(h.i&1)==0,"Array types don't match"),Jpn(t,e,n,r,s),!(T.i&1)&&A!=m)if(k=nw(t),o=nw(n),$t(t)===$t(n)&&er;)ls(o,d,k[--e]);else for(d=r+s;r0),r.a.Xb(r.c=--r.b),A>P+m&&Kl(r);for(h=new G($);h.a0),r.a.Xb(r.c=--r.b)}}function g7n(){yi();var t,e,n,r,s,o;if(l0t)return l0t;for(t=new ih(4),a3(t,Gb(wht,!0)),$_(t,Gb("M",!0)),$_(t,Gb("C",!0)),o=new ih(4),r=0;r<11;r++)iu(o,r,r);return e=new ih(4),a3(e,Gb("M",!0)),iu(e,4448,4607),iu(e,65438,65439),s=new yS(2),gw(s,t),gw(s,OL),n=new yS(2),n.Jm(Mz(o,Gb("L",!0))),n.Jm(e),n=new By(3,n),n=new Cyt(s,n),l0t=n,l0t}function s3(t,e){var n,r,s,o,h,d,m,k;for(n=new RegExp(e,"g"),m=Vt(Pe,ue,2,0,6,1),r=0,k=t,o=null;;)if(d=n.exec(k),d==null||k==""){m[r]=k;break}else h=d.index,m[r]=(Da(0,h,k.length),k.substr(0,h)),k=Lh(k,h+d[0].length,k.length),n.lastIndex=0,o==k&&(m[r]=(Da(0,1,k.length),k.substr(0,1)),k=(qn(1,k.length+1),k.substr(1))),o=k,++r;if(t.length>0){for(s=m.length;s>0&&m[s-1]=="";)--s;s0&&(A-=r[0]+t.c,r[0]+=t.c),r[2]>0&&(A-=r[2]+t.c),r[1]=b.Math.max(r[1],A),Pz(t.a[1],n.c+e.b+r[0]-(r[1]-A)/2,r[1]);for(o=t.a,d=0,k=o.length;d0?(t.n.c.length-1)*t.i:0,r=new G(t.n);r.a1)for(r=Dr(s,0);r.b!=r.d.c;)for(n=u(Ar(r),235),o=0,m=new G(n.e);m.a0&&(e[0]+=t.c,A-=e[0]),e[2]>0&&(A-=e[2]+t.c),e[1]=b.Math.max(e[1],A),Fz(t.a[1],r.d+n.d+e[0]-(e[1]-A)/2,e[1]);else for(U=r.d+n.d,$=r.a-n.d-n.a,h=t.a,m=0,T=h.length;m0||Wm(s.b.d,t.b.d+t.b.a)==0&&r.b<0||Wm(s.b.d+s.b.a,t.b.d)==0&&r.b>0){d=0;break}}else d=b.Math.min(d,b1e(t,s,r));d=b.Math.min(d,xge(t,o,d,r))}return d}function KO(t,e){var n,r,s,o,h,d,m;if(t.b<2)throw at(new zn("The vector chain must contain at least a source and a target point."));for(s=(ur(t.b!=0),u(t.a.a.c,8)),rI(e,s.a,s.b),m=new j6((!e.a&&(e.a=new Ps(vh,e,5)),e.a)),h=Dr(t,1);h.a=0&&o!=n))throw at(new zn(AN));for(s=0,m=0;mRt(td(h.g,h.d[0]).a)?(ur(m.b>0),m.a.Xb(m.c=--m.b),Ly(m,h),s=!0):d.e&&d.e.gc()>0&&(o=(!d.e&&(d.e=new fe),d.e).Mc(e),k=(!d.e&&(d.e=new fe),d.e).Mc(n),(o||k)&&((!d.e&&(d.e=new fe),d.e).Fc(h),++h.c));s||In(r.c,h)}function x7n(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht;return A=t.a.i+t.a.g/2,P=t.a.i+t.a.g/2,U=e.i+e.g/2,tt=e.j+e.f/2,d=new ae(U,tt),k=u(ne(e,(ai(),Jk)),8),k.a=k.a+A,k.b=k.b+P,o=(d.b-k.b)/(d.a-k.a),r=d.b-o*d.a,J=n.i+n.g/2,ht=n.j+n.f/2,m=new ae(J,ht),T=u(ne(n,Jk),8),T.a=T.a+A,T.b=T.b+P,h=(m.b-T.b)/(m.a-T.a),s=m.b-h*m.a,$=(r-s)/(h-o),k.a<$&&d.a<$||$>>0,"0"+e.toString(16)),r="\\x"+Lh(n,n.length-2,n.length)):t>=po?(n=(e=t>>>0,"0"+e.toString(16)),r="\\v"+Lh(n,n.length-6,n.length)):r=""+String.fromCharCode(t&js)}return r}function Cge(t){var e,n,r;if(z4(u(X(t,(De(),bs)),101)))for(n=new G(t.j);n.a=e.o&&n.f<=e.f||e.a*.5<=n.f&&e.a*1.5>=n.f){if(h=u(Oe(e.n,e.n.c.length-1),209),h.e+h.d+n.g+s<=r&&(o=u(Oe(e.n,e.n.c.length-1),209),o.f-t.f+n.f<=t.b||t.a.c.length==1))return O5t(e,n),!0;if(e.s+n.g<=r&&(e.t+e.d+n.f+s<=t.b||t.a.c.length==1))return ge(e.b,n),d=u(Oe(e.n,e.n.c.length-1),209),ge(e.n,new aq(e.s,d.f+d.a+e.i,e.i)),dxt(u(Oe(e.n,e.n.c.length-1),209),n),vge(e,n),!0}return!1}function _ge(t,e,n){var r,s,o,h;return t.Pj()?(s=null,o=t.Qj(),r=t.Ij(1,h=Kst(t,e,n),n,e,o),t.Mj()&&!(t.Yi()&&h!=null?Ti(h,n):$t(h)===$t(n))?(h!=null&&(s=t.Oj(h,s)),s=t.Nj(n,s),t.Tj()&&(s=t.Wj(h,n,s)),s?(s.nj(r),s.oj()):t.Jj(r)):(t.Tj()&&(s=t.Wj(h,n,s)),s?(s.nj(r),s.oj()):t.Jj(r)),h):(h=Kst(t,e,n),t.Mj()&&!(t.Yi()&&h!=null?Ti(h,n):$t(h)===$t(n))&&(s=null,h!=null&&(s=t.Oj(h,null)),s=t.Nj(n,s),s&&s.oj()),h)}function A7n(t,e){var n,r,s,o,h;if(e.Ug("Path-Like Graph Wrapping",1),t.b.c.length==0){e.Vg();return}if(s=new q6t(t),h=(s.i==null&&(s.i=N4t(s,new bR)),Rt(s.i)*s.f),n=h/(s.i==null&&(s.i=N4t(s,new bR)),Rt(s.i)),s.b>n){e.Vg();return}switch(u(X(t,(De(),d1t)),351).g){case 2:o=new mR;break;case 0:o=new oC;break;default:o=new vR}if(r=o.og(t,s),!o.pg())switch(u(X(t,WG),352).g){case 2:r=w1e(s,r);break;case 1:r=ofe(s,r)}TTn(t,s,r),e.Vg()}function N_(t,e){var n,r,s,o,h,d,m,k;e%=24,t.q.getHours()!=e&&(r=new b.Date(t.q.getTime()),r.setDate(r.getDate()+1),d=t.q.getTimezoneOffset()-r.getTimezoneOffset(),d>0&&(m=d/60|0,k=d%60,s=t.q.getDate(),n=t.q.getHours(),n+m>=24&&++s,o=new b.Date(t.q.getFullYear(),t.q.getMonth(),s,e+m,t.q.getMinutes()+k,t.q.getSeconds(),t.q.getMilliseconds()),t.q.setTime(o.getTime()))),h=t.q.getTime(),t.q.setTime(h+36e5),t.q.getHours()!=e&&t.q.setTime(h)}function L7n(t,e){var n,r,s,o;if(qfn(t.d,t.e),t.c.a.$b(),Rt(Ht(X(e.j,(De(),FG))))!=0||Rt(Ht(X(e.j,FG)))!=0)for(n=S5,$t(X(e.j,U0))!==$t((Wd(),Up))&&Zt(e.j,(oe(),i2),(Pn(),!0)),o=u(X(e.j,$A),17).a,s=0;ss&&++k,ge(h,(vn(d+k,e.c.length),u(e.c[d+k],17))),m+=(vn(d+k,e.c.length),u(e.c[d+k],17)).a-r,++n;n=tt&&t.e[m.p]>U*t.b||At>=n*tt)&&(In(P.c,d),d=new fe,Ma(h,o),o.a.$b(),k-=T,$=b.Math.max($,k*t.b+J),k+=At,Tt=At,At=0,T=0,J=0);return new Ws($,P)}function pct(t){var e,n,r,s,o,h,d;if(!t.d){if(d=new Jtt,e=_L,o=e.a.zc(t,e),o==null){for(r=new Zn(Yo(t));r.e!=r.i.gc();)n=u(ar(r),29),gs(d,pct(n));e.a.Bc(t)!=null,e.a.gc()==0}for(h=d.i,s=(!t.q&&(t.q=new Jt(vf,t,11,10)),new Zn(t.q));s.e!=s.i.gc();++h)u(ar(s),411);gs(d,(!t.q&&(t.q=new Jt(vf,t,11,10)),t.q)),Uy(d),t.d=new $4((u(Dt(Qt((Lb(),Fn).o),9),19),d.i),d.g),t.e=u(d.g,688),t.e==null&&(t.e=DTe),_l(t).b&=-17}return t.d}function $7(t,e,n,r){var s,o,h,d,m,k;if(k=Lu(t.e.Dh(),e),m=0,s=u(t.g,124),vo(),u(e,69).xk()){for(h=0;h1||U==-1)if(A=u(J,71),P=u(T,71),A.dc())P.$b();else for(h=!!yo(e),o=0,d=t.a?A.Kc():A.Ii();d.Ob();)k=u(d.Pb(),58),s=u(od(t,k),58),s?(h?(m=P.dd(s),m==-1?P.Gi(o,s):o!=m&&P.Ui(o,s)):P.Gi(o,s),++o):t.b&&!h&&(P.Gi(o,k),++o);else J==null?T.Wb(null):(s=od(t,J),s==null?t.b&&!yo(e)&&T.Wb(J):T.Wb(s))}function N7n(t,e){var n,r,s,o,h,d,m,k;for(n=new gQ,s=new rr(sr(ua(e).a.Kc(),new z));Mr(s);)if(r=u(dr(s),18),!go(r)&&(d=r.c.i,Yxt(d,QU))){if(k=dkt(t,d,QU,XU),k==-1)continue;n.b=b.Math.max(n.b,k),!n.a&&(n.a=new fe),ge(n.a,d)}for(h=new rr(sr(_s(e).a.Kc(),new z));Mr(h);)if(o=u(dr(h),18),!go(o)&&(m=o.d.i,Yxt(m,XU))){if(k=dkt(t,m,XU,QU),k==-1)continue;n.d=b.Math.max(n.d,k),!n.c&&(n.c=new fe),ge(n.c,m)}return n}function P7n(t,e,n,r){var s,o,h,d,m,k,T;if(n.d.i!=e.i){for(s=new Ig(t),y(s,(Un(),fa)),Zt(s,(oe(),Li),n),Zt(s,(De(),bs),(ka(),hu)),In(r.c,s),h=new Yc,hc(h,s),Xs(h,(ve(),Gn)),d=new Yc,hc(d,s),Xs(d,Jn),T=n.d,xa(n,h),o=new Pm,Qo(o,n),Zt(o,Vo,null),Xa(o,d),xa(o,T),k=new La(n.b,0);k.b1e6)throw at(new f$("power of ten too big"));if(t<=xi)return nk(RO(Bk[1],e),e);for(r=RO(Bk[1],xi),s=r,n=Pc(t-xi),e=Ys(t%xi);$c(n,xi)>0;)s=Z4(s,r),n=sf(n,xi);for(s=Z4(s,RO(Bk[1],e)),s=nk(s,xi),n=Pc(t-xi);$c(n,xi)>0;)s=nk(s,xi),n=sf(n,xi);return s=nk(s,e),s}function Lge(t){var e,n,r,s,o,h,d,m,k,T;for(m=new G(t.a);m.ak&&r>k)T=d,k=Rt(e.p[d.p])+Rt(e.d[d.p])+d.o.b+d.d.a;else{s=!1,n._g()&&n.bh("bk node placement breaks on "+d+" which should have been after "+T);break}if(!s)break}return n._g()&&n.bh(e+" is feasible: "+s),s}function jkt(t,e,n,r){var s,o,h,d,m,k,T,A,P;if(o=new Ig(t),y(o,(Un(),uu)),Zt(o,(De(),bs),(ka(),hu)),s=0,e){for(h=new Yc,Zt(h,(oe(),Li),e),Zt(o,Li,e.i),Xs(h,(ve(),Gn)),hc(h,o),P=Kd(e.e),k=P,T=0,A=k.length;T0){if(s<0&&T.a&&(s=m,o=k[0],r=0),s>=0){if(d=T.b,m==s&&(d-=r++,d==0))return 0;if(!Ope(e,k,T,d,h)){m=s-1,k[0]=o;continue}}else if(s=-1,!Ope(e,k,T,0,h))return 0}else{if(s=-1,Va(T.c,0)==32){if(A=k[0],Oae(e,k),k[0]>A)continue}else if(Ehn(e,T.c,k[0])){k[0]+=T.c.length;continue}return 0}return CCn(h,n)?k[0]:0}function z7n(t,e,n){var r,s,o,h,d,m,k,T,A,P;for(T=new Rz(new e$(n)),d=Vt(Fl,$0,28,t.f.e.c.length,16,1),Eyt(d,d.length),n[e.a]=0,k=new G(t.f.e);k.a=0&&!u5(t,T,A);)--A;s[T]=A}for($=0;$=0&&!u5(t,d,U);)--d;o[U]=d}for(m=0;me[P]&&Pr[m]&&cV(t,m,P,!1,!0)}function $kt(t){var e,n,r,s,o,h,d,m;n=Ie(Me(X(t,(Vf(),_3e)))),o=t.a.c.d,d=t.a.d.d,n?(h=qd(ia(new ae(d.a,d.b),o),.5),m=qd(Oa(t.e),.5),e=ia(ki(new ae(o.a,o.b),h),m),Xmt(t.d,e)):(s=Rt(Ht(X(t.a,F3e))),r=t.d,o.a>=d.a?o.b>=d.b?(r.a=d.a+(o.a-d.a)/2+s,r.b=d.b+(o.b-d.b)/2-s-t.e.b):(r.a=d.a+(o.a-d.a)/2+s,r.b=o.b+(d.b-o.b)/2+s):o.b>=d.b?(r.a=o.a+(d.a-o.a)/2+s,r.b=d.b+(o.b-d.b)/2+s):(r.a=o.a+(d.a-o.a)/2+s,r.b=o.b+(d.b-o.b)/2-s-t.e.b))}function F_(t){var e,n,r,s,o,h,d,m;if(!t.f){if(m=new cM,d=new cM,e=_L,h=e.a.zc(t,e),h==null){for(o=new Zn(Yo(t));o.e!=o.i.gc();)s=u(ar(o),29),gs(m,F_(s));e.a.Bc(t)!=null,e.a.gc()==0}for(r=(!t.s&&(t.s=new Jt(Wu,t,21,17)),new Zn(t.s));r.e!=r.i.gc();)n=u(ar(r),179),Lt(n,102)&&Or(d,u(n,19));Uy(d),t.r=new yte(t,(u(Dt(Qt((Lb(),Fn).o),6),19),d.i),d.g),gs(m,t.r),Uy(m),t.f=new $4((u(Dt(Qt(Fn.o),5),19),m.i),m.g),_l(t).b&=-3}return t.f}function Mge(t){wm(t,new dw(gm(hm(dm(fm(new G1,vw),"ELK DisCo"),"Layouter for arranging unconnected subgraphs. The subgraphs themselves are, by default, not laid out."),new g1))),le(t,vw,Lut,Se(cCt)),le(t,vw,Dut,Se(Xht)),le(t,vw,Dk,Se(f3e)),le(t,vw,ov,Se(oCt)),le(t,vw,A8t,Se(b3e)),le(t,vw,L8t,Se(p3e)),le(t,vw,_8t,Se(w3e)),le(t,vw,D8t,Se(g3e)),le(t,vw,B8t,Se(d3e)),le(t,vw,R8t,Se(Yht)),le(t,vw,j8t,Se(aCt)),le(t,vw,$8t,Se(HU))}function fV(){fV=V,LIt=lt(ut(Yh,1),Zd,28,15,[48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70]),aTe=new RegExp(`[ +\r\f]+`);try{TL=lt(ut(E_n,1),Ln,2114,0,[new AM((wmt(),mH("yyyy-MM-dd'T'HH:mm:ss'.'SSSZ",hI((h$(),h$(),mA))))),new AM(mH("yyyy-MM-dd'T'HH:mm:ss'.'SSS",hI(mA))),new AM(mH("yyyy-MM-dd'T'HH:mm:ss",hI(mA))),new AM(mH("yyyy-MM-dd'T'HH:mm",hI(mA))),new AM(mH("yyyy-MM-dd",hI(mA)))])}catch(t){if(t=es(t),!Lt(t,82))throw at(t)}}function H7n(t,e){var n,r,s,o;if(s=Dl(t.d,1)!=0,r=ykt(t,e),r==0&&Ie(Me(X(e.j,(oe(),i2)))))return 0;!Ie(Me(X(e.j,(oe(),i2))))&&!Ie(Me(X(e.j,U5)))||$t(X(e.j,(De(),U0)))===$t((Wd(),Up))?e.c.mg(e.e,s):s=Ie(Me(X(e.j,i2))),qO(t,e,s,!0),Ie(Me(X(e.j,U5)))&&Zt(e.j,U5,(Pn(),!1)),Ie(Me(X(e.j,i2)))&&(Zt(e.j,i2,(Pn(),!1)),Zt(e.j,U5,!0)),n=ykt(t,e);do{if(I4t(t),n==0)return 0;s=!s,o=n,qO(t,e,s,!1),n=ykt(t,e)}while(o>n);return o}function Ige(t,e){var n,r,s,o;if(s=Dl(t.d,1)!=0,r=GH(t,e),r==0&&Ie(Me(X(e.j,(oe(),i2)))))return 0;!Ie(Me(X(e.j,(oe(),i2))))&&!Ie(Me(X(e.j,U5)))||$t(X(e.j,(De(),U0)))===$t((Wd(),Up))?e.c.mg(e.e,s):s=Ie(Me(X(e.j,i2))),qO(t,e,s,!0),Ie(Me(X(e.j,U5)))&&Zt(e.j,U5,(Pn(),!1)),Ie(Me(X(e.j,i2)))&&(Zt(e.j,i2,(Pn(),!1)),Zt(e.j,U5,!0)),n=GH(t,e);do{if(I4t(t),n==0)return 0;s=!s,o=n,qO(t,e,s,!1),n=GH(t,e)}while(o>n);return o}function zkt(t,e,n,r){var s,o,h,d,m,k,T,A,P;return m=ia(new ae(n.a,n.b),t),k=m.a*e.b-m.b*e.a,T=e.a*r.b-e.b*r.a,A=(m.a*r.b-m.b*r.a)/T,P=k/T,T==0?k==0?(s=ki(new ae(n.a,n.b),qd(new ae(r.a,r.b),.5)),o=Nb(t,s),h=Nb(ki(new ae(t.a,t.b),e),s),d=b.Math.sqrt(r.a*r.a+r.b*r.b)*.5,o=0&&A<=1&&P>=0&&P<=1?ki(new ae(t.a,t.b),qd(new ae(e.a,e.b),A)):null}function V7n(t,e,n){var r,s,o,h,d;if(r=u(X(t,(De(),t1t)),21),n.a>e.a&&(r.Hc((fw(),cL))?t.c.a+=(n.a-e.a)/2:r.Hc(uL)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((fw(),hL))?t.c.b+=(n.b-e.b)/2:r.Hc(lL)&&(t.c.b+=n.b-e.b)),u(X(t,(oe(),lu)),21).Hc((Co(),Uh))&&(n.a>e.a||n.b>e.b))for(d=new G(t.a);d.ae.a&&(r.Hc((fw(),cL))?t.c.a+=(n.a-e.a)/2:r.Hc(uL)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((fw(),hL))?t.c.b+=(n.b-e.b)/2:r.Hc(lL)&&(t.c.b+=n.b-e.b)),u(X(t,(oe(),lu)),21).Hc((Co(),Uh))&&(n.a>e.a||n.b>e.b))for(h=new G(t.a);h.a0?t.i:0)>e&&m>0&&(o=0,h+=m+t.i,s=b.Math.max(s,P),r+=m+t.i,m=0,P=0,n&&(++A,ge(t.n,new aq(t.s,h,t.i))),d=0),P+=k.g+(d>0?t.i:0),m=b.Math.max(m,k.f),n&&dxt(u(Oe(t.n,A),209),k),o+=k.g+(d>0?t.i:0),++d;return s=b.Math.max(s,P),r+=m,n&&(t.r=s,t.d=r,wxt(t.j)),new Ah(t.s,t.t,s,r)}function bct(t){var e,n,r,s,o,h,d,m,k,T,A,P;for(t.b=!1,A=Zi,m=Vs,P=Zi,k=Vs,r=t.e.a.ec().Kc();r.Ob();)for(n=u(r.Pb(),272),s=n.a,A=b.Math.min(A,s.c),m=b.Math.max(m,s.c+s.b),P=b.Math.min(P,s.d),k=b.Math.max(k,s.d+s.a),h=new G(n.c);h.at.o.a&&(T=(m-t.o.a)/2,d.b=b.Math.max(d.b,T),d.c=b.Math.max(d.c,T))}}function W7n(t){var e,n,r,s,o,h,d,m;for(o=new Sre,Cin(o,(ck(),KEe)),r=(s=cat(t,Vt(Pe,ue,2,0,6,1)),new gr(new hl(new crt(t,s).b)));r.bd?1:-1:o5t(t.a,e.a,o),s==-1)A=-m,T=h==m?Ost(e.a,d,t.a,o):Pst(e.a,d,t.a,o);else if(A=h,h==m){if(s==0)return Xd(),yA;T=Ost(t.a,o,e.a,d)}else T=Pst(t.a,o,e.a,d);return k=new Y2(A,T.length,T),qS(k),k}function Y7n(t,e){var n,r,s,o;if(o=pge(e),!e.c&&(e.c=new Jt(kl,e,9,9)),ms(new ln(null,(!e.c&&(e.c=new Jt(kl,e,9,9)),new gn(e.c,16))),new xVt(o)),s=u(X(o,(oe(),lu)),21),z9n(e,s),s.Hc((Co(),Uh)))for(r=new Zn((!e.c&&(e.c=new Jt(kl,e,9,9)),e.c));r.e!=r.i.gc();)n=u(ar(r),123),bCn(t,e,o,n);return u(ne(e,(De(),Ow)),181).gc()!=0&&o0e(e,o),Ie(Me(X(o,cAt)))&&s.Fc(_G),qi(o,sP)&&pWt(new V5t(Rt(Ht(X(o,sP)))),o),$t(ne(e,A3))===$t((Ag(),Xp))?$Sn(t,e,o):TSn(t,e,o),o}function X7n(t){var e,n,r,s,o,h,d,m;for(s=new G(t.b);s.a0?Lh(n.a,0,o-1):""):(Da(0,o-1,t.length),t.substr(0,o-1)):n?n.a:t}function Q7n(t,e){var n,r,s,o,h,d,m;for(e.Ug("Sort By Input Model "+X(t,(De(),U0)),1),s=0,r=new G(t.b);r.a=t.b.length?(o[s++]=h.b[r++],o[s++]=h.b[r++]):r>=h.b.length?(o[s++]=t.b[n++],o[s++]=t.b[n++]):h.b[r]0?t.i:0)),++e;for(_5t(t.n,m),t.d=n,t.r=r,t.g=0,t.f=0,t.e=0,t.o=Zi,t.p=Zi,o=new G(t.b);o.a0&&(s=(!t.n&&(t.n=new Jt(Po,t,1,7)),u(Dt(t.n,0),135)).a,!s||ni(ni((e.a+=' "',e),s),'"'))),n=(!t.b&&(t.b=new kn(vr,t,4,7)),!(t.b.i<=1&&(!t.c&&(t.c=new kn(vr,t,5,8)),t.c.i<=1))),n?e.a+=" [":e.a+=" ",ni(e,Fmt(new ert,new Zn(t.b))),n&&(e.a+="]"),e.a+=But,n&&(e.a+="["),ni(e,Fmt(new ert,new Zn(t.c))),n&&(e.a+="]"),e.a)}function Z7n(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On;for(Wt=t.c,se=e.c,n=Xo(Wt.a,t,0),r=Xo(se.a,e,0),At=u(Ym(t,(To(),vl)).Kc().Pb(),12),Ze=u(Ym(t,ku).Kc().Pb(),12),Bt=u(Ym(e,vl).Kc().Pb(),12),On=u(Ym(e,ku).Kc().Pb(),12),ht=Kd(At.e),Ce=Kd(Ze.g),Tt=Kd(Bt.e),rn=Kd(On.g),Xy(t,r,se),h=Tt,T=0,U=h.length;TT?new J2((C1(),F3),n,e,k-T):k>0&&T>0&&(new J2((C1(),F3),e,n,0),new J2(F3,n,e,0))),h)}function nTn(t,e,n){var r,s,o;for(t.a=new fe,o=Dr(e.b,0);o.b!=o.d.c;){for(s=u(Ar(o),39);u(X(s,(Cc(),h0)),17).a>t.a.c.length-1;)ge(t.a,new Ws(S5,E7t));r=u(X(s,h0),17).a,n==(Rs(),Uo)||n==tc?(s.e.aRt(Ht(u(Oe(t.a,r),42).b))&&re(u(Oe(t.a,r),42),s.e.a+s.f.a)):(s.e.bRt(Ht(u(Oe(t.a,r),42).b))&&re(u(Oe(t.a,r),42),s.e.b+s.f.b))}}function Pge(t,e,n,r){var s,o,h,d,m,k,T;if(o=fH(r),d=Ie(Me(X(r,(De(),nAt)))),(d||Ie(Me(X(t,zG))))&&!z4(u(X(t,bs),101)))s=hk(o),m=Dkt(t,n,n==(To(),ku)?s:bO(s));else switch(m=new Yc,hc(m,t),e?(T=m.n,T.a=e.a-t.n.a,T.b=e.b-t.n.b,$fe(T,0,0,t.o.a,t.o.b),Xs(m,nge(m,o))):(s=hk(o),Xs(m,n==(To(),ku)?s:bO(s))),h=u(X(r,(oe(),lu)),21),k=m.j,o.g){case 2:case 1:(k==(ve(),Hn)||k==Er)&&h.Fc((Co(),q5));break;case 4:case 3:(k==(ve(),Jn)||k==Gn)&&h.Fc((Co(),q5))}return m}function Fge(t,e){var n,r,s,o,h,d;for(h=new sw(new mr(t.f.b).a);h.b;){if(o=Um(h),s=u(o.ld(),602),e==1){if(s.Af()!=(Rs(),Gh)&&s.Af()!=kd)continue}else if(s.Af()!=(Rs(),Uo)&&s.Af()!=tc)continue;switch(r=u(u(o.md(),42).b,86),d=u(u(o.md(),42).a,194),n=d.c,s.Af().g){case 2:r.g.c=t.e.a,r.g.b=b.Math.max(1,r.g.b+n);break;case 1:r.g.c=r.g.c+n,r.g.b=b.Math.max(1,r.g.b-n);break;case 4:r.g.d=t.e.b,r.g.a=b.Math.max(1,r.g.a+n);break;case 3:r.g.d=r.g.d+n,r.g.a=b.Math.max(1,r.g.a-n)}}}function rTn(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J;for(d=Vt(Fr,ii,28,e.b.c.length,15,1),k=Vt(fft,te,273,e.b.c.length,0,1),m=Vt(V0,jp,10,e.b.c.length,0,1),A=t.a,P=0,$=A.length;P<$;++P){for(T=A[P],J=0,h=new G(T.e);h.a0&&m[r]&&(U=U4(t.b,m[r],s)),J=b.Math.max(J,s.c.c.b+U);for(o=new G(T.e);o.a1)throw at(new zn(ON));m||(o=D0(e,r.Kc().Pb()),h.Fc(o))}return K4t(t,g6t(t,e,n),h)}function gV(t,e,n){var r,s,o,h,d,m,k,T;if(Ng(t.e,e))m=(vo(),u(e,69).xk()?new Sz(e,t):new eI(e,t)),WH(m.c,m.b),xS(m,u(n,16));else{for(T=Lu(t.e.Dh(),e),r=u(t.g,124),h=0;h"}m!=null&&(e.a+=""+m)}else t.e?(d=t.e.zb,d!=null&&(e.a+=""+d)):(e.a+="?",t.b?(e.a+=" super ",xct(t.b,e)):t.f&&(e.a+=" extends ",xct(t.f,e)))}function uTn(t){t.b=null,t.a=null,t.o=null,t.q=null,t.v=null,t.w=null,t.B=null,t.p=null,t.Q=null,t.R=null,t.S=null,t.T=null,t.U=null,t.V=null,t.W=null,t.bb=null,t.eb=null,t.ab=null,t.H=null,t.db=null,t.c=null,t.d=null,t.f=null,t.n=null,t.r=null,t.s=null,t.u=null,t.G=null,t.J=null,t.e=null,t.j=null,t.i=null,t.g=null,t.k=null,t.t=null,t.F=null,t.I=null,t.L=null,t.M=null,t.O=null,t.P=null,t.$=null,t.N=null,t.Z=null,t.cb=null,t.K=null,t.D=null,t.A=null,t.C=null,t._=null,t.fb=null,t.X=null,t.Y=null,t.gb=!1,t.hb=!1}function lTn(t){var e,n,r,s;if(r=Oct((!t.c&&(t.c=DI(Pc(t.f))),t.c),0),t.e==0||t.a==0&&t.f!=-1&&t.e<0)return r;if(e=O4t(t)<0?1:0,n=t.e,s=(r.length+1+b.Math.abs(Ys(t.e)),new I4),e==1&&(s.a+="-"),t.e>0)if(n-=r.length-e,n>=0){for(s.a+="0.";n>_w.length;n-=_w.length)Dte(s,_w);gZt(s,_w,Ys(n)),ni(s,(qn(e,r.length+1),r.substr(e)))}else n=e-n,ni(s,Lh(r,e,Ys(n))),s.a+=".",ni(s,Iyt(r,Ys(n)));else{for(ni(s,(qn(e,r.length+1),r.substr(e)));n<-_w.length;n+=_w.length)Dte(s,_w);gZt(s,_w,Ys(-n))}return s.a}function kct(t){var e,n,r,s,o,h,d,m,k;return!(t.k!=(Un(),xs)||t.j.c.length<=1||(o=u(X(t,(De(),bs)),101),o==(ka(),hu))||(s=(Yy(),(t.q?t.q:(mn(),mn(),q0))._b(Cv)?r=u(X(t,Cv),203):r=u(X(Pa(t),RA),203),r),s==JG)||!(s==J5||s==Q5)&&(h=Rt(Ht(Wy(t,jA))),e=u(X(t,oP),140),!e&&(e=new pvt(h,h,h,h)),k=gc(t,(ve(),Gn)),m=e.d+e.a+(k.gc()-1)*h,m>t.o.b||(n=gc(t,Jn),d=e.d+e.a+(n.gc()-1)*h,d>t.o.b)))}function hTn(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt;e.Ug("Orthogonal edge routing",1),k=Rt(Ht(X(t,(De(),X5)))),n=Rt(Ht(X(t,W5))),r=Rt(Ht(X(t,Pw))),P=new Uit(0,n),tt=0,h=new La(t.b,0),d=null,T=null,m=null,A=null;do T=h.b0?($=(U-1)*n,d&&($+=r),T&&($+=r),$e||Ie(Me(ne(m,(fd(),yP)))))&&(s=0,o+=T.b+n,In(A.c,T),T=new l3t(o,n),r=new Tat(0,T.f,T,n),zq(T,r),s=0),r.b.c.length==0||!Ie(Me(ne(Ji(m),(fd(),fdt))))&&(m.f>=r.o&&m.f<=r.f||r.a*.5<=m.f&&r.a*1.5>=m.f)?O5t(r,m):(h=new Tat(r.s+r.r+n,T.f,T,n),zq(T,h),O5t(h,m)),s=m.i+m.g;return In(A.c,T),A}function R_(t){var e,n,r,s;if(!(t.b==null||t.b.length<=2)&&!t.a){for(e=0,s=0;s=t.b[s+1])s+=2;else if(n0)for(r=new fl(u(Ai(t.a,o),21)),mn(),Ds(r,new _M(e)),s=new La(o.b,0);s.b0&&r>=-6?r>=0?iI(o,n-Ys(t.e),String.fromCharCode(46)):(dat(o,e-1,e-1,"0."),iI(o,e+1,af(_w,0,-Ys(r)-1))):(n-e>=1&&(iI(o,e,String.fromCharCode(46)),++n),iI(o,n,String.fromCharCode(69)),r>0&&iI(o,++n,String.fromCharCode(43)),iI(o,++n,""+OS(Pc(r)))),t.g=o.a,t.g))}function xTn(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce;r=Rt(Ht(X(e,(De(),sAt)))),Wt=u(X(e,$A),17).a,P=4,s=3,se=20/Wt,$=!1,m=0,h=xi;do{for(o=m!=1,A=m!=0,Ce=0,tt=t.a,Tt=0,Bt=tt.length;TtWt)?(m=2,h=xi):m==0?(m=1,h=Ce):(m=0,h=Ce)):($=Ce>=h||h-Ce0?1:ym(isNaN(r),isNaN(0)))>=0^($f(s0),(b.Math.abs(d)<=s0||d==0||isNaN(d)&&isNaN(0)?0:d<0?-1:d>0?1:ym(isNaN(d),isNaN(0)))>=0)?b.Math.max(d,r):($f(s0),(b.Math.abs(r)<=s0||r==0||isNaN(r)&&isNaN(0)?0:r<0?-1:r>0?1:ym(isNaN(r),isNaN(0)))>0?b.Math.sqrt(d*d+r*r):-b.Math.sqrt(d*d+r*r))}function gw(t,e){var n,r,s,o,h,d;if(e){if(!t.a&&(t.a=new u$),t.e==2){c$(t.a,e);return}if(e.e==1){for(s=0;s=po?Mo(n,I5t(r)):PE(n,r&js),h=new lst(10,null,0),sln(t.a,h,d-1)):(n=(h.Mm().length+o,new YC),Mo(n,h.Mm())),e.e==0?(r=e.Km(),r>=po?Mo(n,I5t(r)):PE(n,r&js)):Mo(n,e.Mm()),u(h,530).b=n.a}}function TTn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt;if(!n.dc()){for(d=0,P=0,r=n.Kc(),U=u(r.Pb(),17).a;d1&&(m=k.Hg(m,t.a,d));return m.c.length==1?u(Oe(m,m.c.length-1),238):m.c.length==2?dTn((vn(0,m.c.length),u(m.c[0],238)),(vn(1,m.c.length),u(m.c[1],238)),h,o):null}function ATn(t,e,n){var r,s,o,h,d,m,k;for(n.Ug("Find roots",1),t.a.c.length=0,s=Dr(e.b,0);s.b!=s.d.c;)r=u(Ar(s),39),r.b.b==0&&(Zt(r,(ji(),u2),(Pn(),!0)),ge(t.a,r));switch(t.a.c.length){case 0:o=new Eat(0,e,"DUMMY_ROOT"),Zt(o,(ji(),u2),(Pn(),!0)),Zt(o,F1t,!0),Zr(e.b,o);break;case 1:break;default:for(h=new Eat(0,e,nU),m=new G(t.a);m.a=b.Math.abs(r.b)?(r.b=0,o.d+o.a>h.d&&o.dh.c&&o.c0){if(e=new dmt(t.i,t.g),n=t.i,o=n<100?null:new xb(n),t.Tj())for(r=0;r0){for(d=t.g,k=t.i,KS(t),o=k<100?null:new xb(k),r=0;r>13|(t.m&15)<<9,s=t.m>>4&8191,o=t.m>>17|(t.h&255)<<5,h=(t.h&1048320)>>8,d=e.l&8191,m=e.l>>13|(e.m&15)<<9,k=e.m>>4&8191,T=e.m>>17|(e.h&255)<<5,A=(e.h&1048320)>>8,rn=n*d,Ze=r*d,On=s*d,Dn=o*d,er=h*d,m!=0&&(Ze+=n*m,On+=r*m,Dn+=s*m,er+=o*m),k!=0&&(On+=n*k,Dn+=r*k,er+=s*k),T!=0&&(Dn+=n*T,er+=r*T),A!=0&&(er+=n*A),$=rn&Il,U=(Ze&511)<<13,P=$+U,tt=rn>>22,ht=Ze>>9,Tt=(On&262143)<<4,At=(Dn&31)<<17,J=tt+ht+Tt+At,Wt=On>>18,se=Dn>>5,Ce=(er&4095)<<8,Bt=Wt+se+Ce,J+=P>>22,P&=Il,Bt+=J>>22,J&=Il,Bt&=Fg,Eu(P,J,Bt)}function Kge(t){var e,n,r,s,o,h,d;if(d=u(Oe(t.j,0),12),d.g.c.length!=0&&d.e.c.length!=0)throw at(new Ro("Interactive layout does not support NORTH/SOUTH ports with incoming _and_ outgoing edges."));if(d.g.c.length!=0){for(o=Zi,n=new G(d.g);n.a4)if(t.fk(e)){if(t.al()){if(s=u(e,54),r=s.Eh(),m=r==t.e&&(t.ml()?s.yh(s.Fh(),t.il())==t.jl():-1-s.Fh()==t.Lj()),t.nl()&&!m&&!r&&s.Jh()){for(o=0;o0&&Kfe(t,d,A);for(s=new G(A);s.at.d[h.p]&&(n+=C3t(t.b,o)*u(m.b,17).a,Ob(t.a,he(o)));for(;!WC(t.a);)i4t(t.b,u(K6(t.a),17).a)}return n}function OTn(t,e){var n,r,s,o,h,d,m,k,T,A;if(T=u(X(t,(oe(),Dc)),64),r=u(Oe(t.j,0),12),T==(ve(),Hn)?Xs(r,Er):T==Er&&Xs(r,Hn),u(X(e,(De(),Ow)),181).Hc((Yl(),qw))){if(m=Rt(Ht(X(t,FT))),k=Rt(Ht(X(t,BT))),h=Rt(Ht(X(t,O3))),d=u(X(e,M3),21),d.Hc((wl(),Hg)))for(n=k,A=t.o.a/2-r.n.a,o=new G(r.f);o.a0&&(k=t.n.a/o);break;case 2:case 4:s=t.i.o.b,s>0&&(k=t.n.b/s)}Zt(t,(oe(),xv),k)}if(m=t.o,h=t.a,r)h.a=r.a,h.b=r.b,t.d=!0;else if(e!=Td&&e!=d2&&d!=bc)switch(d.g){case 1:h.a=m.a/2;break;case 2:h.a=m.a,h.b=m.b/2;break;case 3:h.a=m.a/2,h.b=m.b;break;case 4:h.b=m.b/2}else h.a=m.a/2,h.b=m.b/2}function j_(t){var e,n,r,s,o,h,d,m,k,T;if(t.Pj())if(T=t.Ej(),m=t.Qj(),T>0)if(e=new B4t(t.pj()),n=T,o=n<100?null:new xb(n),uI(t,n,e.g),s=n==1?t.Ij(4,Dt(e,0),null,0,m):t.Ij(6,e,null,-1,m),t.Mj()){for(r=new Zn(e);r.e!=r.i.gc();)o=t.Oj(ar(r),o);o?(o.nj(s),o.oj()):t.Jj(s)}else o?(o.nj(s),o.oj()):t.Jj(s);else uI(t,t.Ej(),t.Fj()),t.Jj(t.Ij(6,(mn(),co),null,-1,m));else if(t.Mj())if(T=t.Ej(),T>0){for(d=t.Fj(),k=T,uI(t,T,d),o=k<100?null:new xb(k),r=0;r1&&tl(h)*Gl(h)/2>d[0]){for(o=0;od[o];)++o;U=new xp(J,0,o+1),A=new Fq(U),T=tl(h)/Gl(h),m=Mct(A,e,new C6,n,r,s,T),ki(k1(A.e),m),V6(D7(P,A),X7),$=new xp(J,o+1,J.c.length),xxt(P,$),J.c.length=0,k=0,Kte(d,d.length,0)}else tt=P.b.c.length==0?null:Oe(P.b,0),tt!=null&&sat(P,0),k>0&&(d[k]=d[k-1]),d[k]+=tl(h)*Gl(h),++k,In(J.c,h);return J}function jTn(t,e){var n,r,s,o;n=e.b,o=new fl(n.j),s=0,r=n.j,r.c.length=0,Am(u(iw(t.b,(ve(),Hn),(Vm(),mv)),15),n),s=xO(o,s,new am,r),Am(u(iw(t.b,Hn,r2),15),n),s=xO(o,s,new bJ,r),Am(u(iw(t.b,Hn,wv),15),n),Am(u(iw(t.b,Jn,mv),15),n),Am(u(iw(t.b,Jn,r2),15),n),s=xO(o,s,new lR,r),Am(u(iw(t.b,Jn,wv),15),n),Am(u(iw(t.b,Er,mv),15),n),s=xO(o,s,new hR,r),Am(u(iw(t.b,Er,r2),15),n),s=xO(o,s,new fR,r),Am(u(iw(t.b,Er,wv),15),n),Am(u(iw(t.b,Gn,mv),15),n),s=xO(o,s,new aR,r),Am(u(iw(t.b,Gn,r2),15),n),Am(u(iw(t.b,Gn,wv),15),n)}function $Tn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$;for(d=new G(e);d.a.5?ht-=h*2*(U-.5):U<.5&&(ht+=o*2*(.5-U)),s=d.d.b,httt.a-J-T&&(ht=tt.a-J-T),d.n.a=e+ht}}function VTn(t){var e,n,r,s,o;if(r=u(X(t,(De(),Iu)),171),r==(Rh(),s2)){for(n=new rr(sr(ua(t).a.Kc(),new z));Mr(n);)if(e=u(dr(n),18),!ose(e))throw at(new fp(zut+EO(t)+"' has its layer constraint set to FIRST_SEPARATE, but has at least one incoming edge. FIRST_SEPARATE nodes must not have incoming edges."))}else if(r==S3){for(o=new rr(sr(_s(t).a.Kc(),new z));Mr(o);)if(s=u(dr(o),18),!ose(s))throw at(new fp(zut+EO(t)+"' has its layer constraint set to LAST_SEPARATE, but has at least one outgoing edge. LAST_SEPARATE nodes must not have outgoing edges."))}}function XO(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U;if(t.e&&t.c.c>19&&(e=h7(e),m=!m),h=A6n(e),o=!1,s=!1,r=!1,t.h==aN&&t.m==0&&t.l==0)if(s=!0,o=!0,h==-1)t=OQt((WE(),a9t)),r=!0,m=!m;else return d=H6t(t,h),m&&kat(d),n&&(Zb=Eu(0,0,0)),d;else t.h>>19&&(o=!0,t=h7(t),r=!0,m=!m);return h!=-1?rbn(t,h,m,o,n):Lxt(t,e)<0?(n&&(o?Zb=h7(t):Zb=Eu(t.l,t.m,t.h)),Eu(0,0,0)):SEn(r?t:Eu(t.l,t.m,t.h),e,m,o,s,n)}function Sct(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U;if(h=t.e,m=e.e,h==0)return e;if(m==0)return t;if(o=t.d,d=e.d,o+d==2)return n=sa(t.a[0],So),r=sa(e.a[0],So),h==m?(T=Qa(n,r),U=qr(T),$=qr(Ab(T,32)),$==0?new kg(h,U):new Y2(h,2,lt(ut(Fr,1),ii,28,15,[U,$]))):(Xd(),J$(h<0?sf(r,n):sf(n,r),0)?zb(h<0?sf(r,n):sf(n,r)):FS(zb(Cp(h<0?sf(r,n):sf(n,r)))));if(h==m)P=h,A=o>=d?Pst(t.a,o,e.a,d):Pst(e.a,d,t.a,o);else{if(s=o!=d?o>d?1:-1:o5t(t.a,e.a,o),s==0)return Xd(),yA;s==1?(P=h,A=Ost(t.a,o,e.a,d)):(P=m,A=Ost(e.a,d,t.a,o))}return k=new Y2(P,A.length,A),qS(k),k}function GTn(t,e){var n,r,s,o,h,d,m;if(!(t.g>e.f||e.g>t.f)){for(n=0,r=0,h=t.w.a.ec().Kc();h.Ob();)s=u(h.Pb(),12),Nat(dc(lt(ut(la,1),ue,8,0,[s.i.n,s.n,s.a])).b,e.g,e.f)&&++n;for(d=t.r.a.ec().Kc();d.Ob();)s=u(d.Pb(),12),Nat(dc(lt(ut(la,1),ue,8,0,[s.i.n,s.n,s.a])).b,e.g,e.f)&&--n;for(m=e.w.a.ec().Kc();m.Ob();)s=u(m.Pb(),12),Nat(dc(lt(ut(la,1),ue,8,0,[s.i.n,s.n,s.a])).b,t.g,t.f)&&++r;for(o=e.r.a.ec().Kc();o.Ob();)s=u(o.Pb(),12),Nat(dc(lt(ut(la,1),ue,8,0,[s.i.n,s.n,s.a])).b,t.g,t.f)&&--r;n=0)return n;switch(Om($o(t,n))){case 2:{if(hn("",Lp(t,n.qk()).xe())){if(m=TI($o(t,n)),d=RE($o(t,n)),T=K6t(t,e,m,d),T)return T;for(s=Ekt(t,e),h=0,A=s.gc();h1)throw at(new zn(ON));for(T=Lu(t.e.Dh(),e),r=u(t.g,124),h=0;h1,k=new sd(P.b);lc(k.a)||lc(k.b);)m=u(lc(k.a)?et(k.a):et(k.b),18),A=m.c==P?m.d:m.c,b.Math.abs(dc(lt(ut(la,1),ue,8,0,[A.i.n,A.n,A.a])).b-h.b)>1&&Okn(t,m,h,o,P)}}function JTn(t){var e,n,r,s,o,h;if(s=new La(t.e,0),r=new La(t.a,0),t.d)for(n=0;nxlt;){for(o=e,h=0;b.Math.abs(e-o)0),s.a.Xb(s.c=--s.b),d7n(t,t.b-h,o,r,s),ur(s.b0),r.a.Xb(r.c=--r.b)}if(!t.d)for(n=0;n0?(t.f[T.p]=$/(T.e.c.length+T.g.c.length),t.c=b.Math.min(t.c,t.f[T.p]),t.b=b.Math.max(t.b,t.f[T.p])):d&&(t.f[T.p]=$)}}function t9n(t){t.b=null,t.bb=null,t.fb=null,t.qb=null,t.a=null,t.c=null,t.d=null,t.e=null,t.f=null,t.n=null,t.M=null,t.L=null,t.Q=null,t.R=null,t.K=null,t.db=null,t.eb=null,t.g=null,t.i=null,t.j=null,t.k=null,t.gb=null,t.o=null,t.p=null,t.q=null,t.r=null,t.$=null,t.ib=null,t.S=null,t.T=null,t.t=null,t.s=null,t.u=null,t.v=null,t.w=null,t.B=null,t.A=null,t.C=null,t.D=null,t.F=null,t.G=null,t.H=null,t.I=null,t.J=null,t.P=null,t.Z=null,t.U=null,t.V=null,t.W=null,t.X=null,t.Y=null,t._=null,t.ab=null,t.cb=null,t.hb=null,t.nb=null,t.lb=null,t.mb=null,t.ob=null,t.pb=null,t.jb=null,t.kb=null,t.N=!1,t.O=!1}function e9n(t,e,n){var r,s,o,h;for(n.Ug("Graph transformation ("+t.a+")",1),h=Rm(e.a),o=new G(e.b);o.a=d.b.c)&&(d.b=e),(!d.c||e.c<=d.c.c)&&(d.d=d.c,d.c=e),(!d.e||e.d>=d.e.d)&&(d.e=e),(!d.f||e.d<=d.f.d)&&(d.f=e);return r=new _H((u7(),bv)),MI(t,l4e,new hl(lt(ut(GN,1),Ln,382,0,[r]))),h=new _H(y3),MI(t,u4e,new hl(lt(ut(GN,1),Ln,382,0,[h]))),s=new _H(v3),MI(t,c4e,new hl(lt(ut(GN,1),Ln,382,0,[s]))),o=new _H(F5),MI(t,o4e,new hl(lt(ut(GN,1),Ln,382,0,[o]))),Qot(r.c,bv),Qot(s.c,v3),Qot(o.c,F5),Qot(h.c,y3),d.a.c.length=0,Hs(d.a,r.c),Hs(d.a,Bh(s.c)),Hs(d.a,o.c),Hs(d.a,Bh(h.c)),d}function i9n(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U;for(e.Ug(cwe,1),$=Rt(Ht(ne(t,(N0(),B3)))),h=Rt(Ht(ne(t,(fd(),iL)))),d=u(ne(t,rL),107),M4t((!t.a&&(t.a=new Jt(bi,t,10,11)),t.a)),T=Hge((!t.a&&(t.a=new Jt(bi,t,10,11)),t.a),$,h),!t.a&&(t.a=new Jt(bi,t,10,11)),k=new G(T);k.a0&&(t.a=m+($-1)*o,e.c.b+=t.a,e.f.b+=t.a)),U.a.gc()!=0&&(P=new Uit(1,o),$=Xkt(P,e,U,J,e.f.b+m-e.c.b),$>0&&(e.f.b+=m+($-1)*o))}function Xge(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt;for(T=Rt(Ht(X(t,(De(),_v)))),r=Rt(Ht(X(t,pAt))),P=new iM,Zt(P,_v,T+r),k=e,ht=k.d,J=k.c.i,Tt=k.d.i,tt=ymt(J.c),At=ymt(Tt.c),s=new fe,A=tt;A<=At;A++)d=new Ig(t),y(d,(Un(),fa)),Zt(d,(oe(),Li),k),Zt(d,bs,(ka(),hu)),Zt(d,KG,P),$=u(Oe(t.b,A),30),A==tt?Xy(d,$.a.c.length-n,$):Aa(d,$),Bt=Rt(Ht(X(k,Hp))),Bt<0&&(Bt=0,Zt(k,Hp,Bt)),d.o.b=Bt,U=b.Math.floor(Bt/2),h=new Yc,Xs(h,(ve(),Gn)),hc(h,d),h.n.b=U,m=new Yc,Xs(m,Jn),hc(m,d),m.n.b=U,xa(k,h),o=new Pm,Qo(o,k),Zt(o,Vo,null),Xa(o,m),xa(o,ht),Kvn(d,k,o),In(s.c,o),k=o;return s}function _ct(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At;for(m=u(Pp(t,(ve(),Gn)).Kc().Pb(),12).e,$=u(Pp(t,Jn).Kc().Pb(),12).g,d=m.c.length,At=rd(u(Oe(t.j,0),12));d-- >0;){for(J=(vn(0,m.c.length),u(m.c[0],18)),s=(vn(0,$.c.length),u($.c[0],18)),Tt=s.d.e,o=Xo(Tt,s,0),A1n(J,s.d,o),Xa(s,null),xa(s,null),U=J.a,e&&Zr(U,new io(At)),r=Dr(s.a,0);r.b!=r.d.c;)n=u(Ar(r),8),Zr(U,new io(n));for(ht=J.b,P=new G(s.b);P.ah)&&qs(t.b,u(tt.b,18));++d}o=h}}}function Kkt(t,e){var n;if(e==null||hn(e,Vu)||e.length==0&&t.k!=(Fp(),Qk))return null;switch(t.k.g){case 1:return kH(e,uT)?(Pn(),bT):kH(e,jlt)?(Pn(),t2):null;case 2:try{return he(lh(e,Ga,xi))}catch(r){if(r=es(r),Lt(r,130))return null;throw at(r)}case 4:try{return Jy(e)}catch(r){if(r=es(r),Lt(r,130))return null;throw at(r)}case 3:return e;case 5:return bue(t),D1e(t,e);case 6:return bue(t),s6n(t,t.a,e);case 7:try{return n=bxn(t),n.cg(e),n}catch(r){if(r=es(r),Lt(r,33))return null;throw at(r)}default:throw at(new Ro("Invalid type set for this layout option."))}}function Wkt(t){var e;switch(t.d){case 1:{if(t.Sj())return t.o!=-2;break}case 2:{if(t.Sj())return t.o==-2;break}case 3:case 5:case 4:case 6:case 7:return t.o>-2;default:return!1}switch(e=t.Rj(),t.p){case 0:return e!=null&&Ie(Me(e))!=bS(t.k,0);case 1:return e!=null&&u(e,222).a!=qr(t.k)<<24>>24;case 2:return e!=null&&u(e,180).a!=(qr(t.k)&js);case 6:return e!=null&&bS(u(e,168).a,t.k);case 5:return e!=null&&u(e,17).a!=qr(t.k);case 7:return e!=null&&u(e,191).a!=qr(t.k)<<16>>16;case 3:return e!=null&&Rt(Ht(e))!=t.j;case 4:return e!=null&&u(e,161).a!=t.j;default:return e==null?t.n!=null:!Ti(e,t.n)}}function QO(t,e,n){var r,s,o,h;return t.ol()&&t.nl()&&(h=jit(t,u(n,58)),$t(h)!==$t(n))?(t.xj(e),t.Dj(e,Zse(t,e,h)),t.al()&&(o=(s=u(n,54),t.ml()?t.kl()?s.Th(t.b,yo(u(En($u(t.b),t.Lj()),19)).n,u(En($u(t.b),t.Lj()).Hk(),29).kk(),null):s.Th(t.b,ns(s.Dh(),yo(u(En($u(t.b),t.Lj()),19))),null,null):s.Th(t.b,-1-t.Lj(),null,null)),!u(h,54).Ph()&&(o=(r=u(h,54),t.ml()?t.kl()?r.Rh(t.b,yo(u(En($u(t.b),t.Lj()),19)).n,u(En($u(t.b),t.Lj()).Hk(),29).kk(),o):r.Rh(t.b,ns(r.Dh(),yo(u(En($u(t.b),t.Lj()),19))),null,o):r.Rh(t.b,-1-t.Lj(),null,o))),o&&o.oj()),Hl(t.b)&&t.Jj(t.Ij(9,n,h,e,!1)),h):n}function Qge(t){var e,n,r,s,o,h,d,m,k,T;for(r=new fe,h=new G(t.e.a);h.a0&&(h=b.Math.max(h,ece(t.C.b+r.d.b,s))),T=r,A=s,P=o;t.C&&t.C.c>0&&($=P+t.C.c,k&&($+=T.d.c),h=b.Math.max(h,(Z1(),$f(gd),b.Math.abs(A-1)<=gd||A==1||isNaN(A)&&isNaN(1)?0:$/(1-A)))),n.n.b=0,n.a.a=h}function Zge(t,e){var n,r,s,o,h,d,m,k,T,A,P,$;if(n=u(Io(t.b,e),127),m=u(u(Ai(t.r,e),21),87),m.dc()){n.n.d=0,n.n.a=0;return}for(k=t.u.Hc((wl(),Hg)),h=0,t.A.Hc((Yl(),qw))&&A0e(t,e),d=m.Kc(),T=null,P=0,A=0;d.Ob();)r=u(d.Pb(),117),o=Rt(Ht(r.b.of((hz(),$U)))),s=r.b.Mf().b,T?($=A+T.d.a+t.w+r.d.d,h=b.Math.max(h,(Z1(),$f(gd),b.Math.abs(P-o)<=gd||P==o||isNaN(P)&&isNaN(o)?0:$/(o-P)))):t.C&&t.C.d>0&&(h=b.Math.max(h,ece(t.C.d+r.d.d,o))),T=r,P=o,A=s;t.C&&t.C.a>0&&($=A+t.C.a,k&&($+=T.d.a),h=b.Math.max(h,(Z1(),$f(gd),b.Math.abs(P-1)<=gd||P==1||isNaN(P)&&isNaN(1)?0:$/(1-P)))),n.n.d=0,n.a.b=h}function o9n(t,e,n,r,s,o,h,d){var m,k,T,A,P,$,U,J,tt,ht;if(U=!1,k=ekt(n.q,e.f+e.b-n.q.f),$=r.f>e.b&&d,ht=s-(n.q.e+k-h),A=(m=B_(r,ht,!1),m.a),$&&A>r.f)return!1;if($){for(P=0,tt=new G(e.d);tt.a=(vn(o,t.c.length),u(t.c[o],186)).e,!$&&A>e.b&&!T)?!1:((T||$||A<=e.b)&&(T&&A>e.b?(n.d=A,$I(n,Rfe(n,A))):(nfe(n.q,k),n.c=!0),$I(r,s-(n.s+n.r)),kO(r,n.q.e+n.q.d,e.f),zq(e,r),t.c.length>o&&(CO((vn(o,t.c.length),u(t.c[o],186)),r),(vn(o,t.c.length),u(t.c[o],186)).a.c.length==0&&Ep(t,o)),U=!0),U)}function tpe(t,e,n){var r,s,o,h,d,m;for(this.g=t,d=e.d.length,m=n.d.length,this.d=Vt(V0,jp,10,d+m,0,1),h=0;h0?Jst(this,this.f/this.a):td(e.g,e.d[0]).a!=null&&td(n.g,n.d[0]).a!=null?Jst(this,(Rt(td(e.g,e.d[0]).a)+Rt(td(n.g,n.d[0]).a))/2):td(e.g,e.d[0]).a!=null?Jst(this,td(e.g,e.d[0]).a):td(n.g,n.d[0]).a!=null&&Jst(this,td(n.g,n.d[0]).a)}function c9n(t,e){var n,r,s,o,h,d,m,k,T,A;for(t.a=new Iee(Vpn(gL)),r=new G(e.a);r.a=1&&(tt-h>0&&A>=0?(m.n.a+=J,m.n.b+=o*h):tt-h<0&&T>=0&&(m.n.a+=J*tt,m.n.b+=o));t.o.a=e.a,t.o.b=e.b,Zt(t,(De(),Ow),(Yl(),r=u(y1(xL),9),new _h(r,u(Ff(r,r.length),9),0)))}function h9n(t,e,n,r,s,o){var h;if(!(e==null||!Uat(e,BIt,RIt)))throw at(new zn("invalid scheme: "+e));if(!t&&!(n!=null&&$d(n,Hu(35))==-1&&n.length>0&&(qn(0,n.length),n.charCodeAt(0)!=47)))throw at(new zn("invalid opaquePart: "+n));if(t&&!(e!=null&&BM(WK,e.toLowerCase()))&&!(n==null||!Uat(n,CL,SL)))throw at(new zn(Fme+n));if(t&&e!=null&&BM(WK,e.toLowerCase())&&!Vyn(n))throw at(new zn(Fme+n));if(!X2n(r))throw at(new zn("invalid device: "+r));if(!Nbn(s))throw h=s==null?"invalid segments: null":"invalid segment: "+Dbn(s),at(new zn(h));if(!(o==null||$d(o,Hu(35))==-1))throw at(new zn("invalid query: "+o))}function f9n(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht;if(n.Ug("Network simplex layering",1),t.b=e,ht=u(X(e,(De(),$A)),17).a*4,tt=t.b.a,tt.c.length<1){n.Vg();return}for(o=lEn(t,tt),J=null,s=Dr(o,0);s.b!=s.d.c;){for(r=u(Ar(s),15),d=ht*Ys(b.Math.sqrt(r.gc())),h=CEn(r),uct(pwt(frn(bwt(mit(h),d),J),!0),n.eh(1)),P=t.b.b,U=new G(h.a);U.a1)for(J=Vt(Fr,ii,28,t.b.b.c.length,15,1),A=0,k=new G(t.b.b);k.a0){EH(t,n,0),n.a+=String.fromCharCode(r),s=Nwn(e,o),EH(t,n,s),o+=s-1;continue}r==39?o+10&&U.a<=0){m.c.length=0,In(m.c,U);break}$=U.i-U.d,$>=d&&($>d&&(m.c.length=0,d=$),In(m.c,U))}m.c.length!=0&&(h=u(Oe(m,MH(s,m.c.length)),118),At.a.Bc(h)!=null,h.g=T++,Fkt(h,e,n,r),m.c.length=0)}for(tt=t.c.length+1,P=new G(t);P.aVs||e.o==Fw&&T=d&&s<=m)d<=s&&o<=m?(n[T++]=s,n[T++]=o,r+=2):d<=s?(n[T++]=s,n[T++]=m,t.b[r]=m+1,h+=2):o<=m?(n[T++]=d,n[T++]=o,r+=2):(n[T++]=d,n[T++]=m,t.b[r]=m+1);else if(mKb)&&d<10);mwt(t.c,new Gx),ipe(t),oln(t.c),n9n(t.f)}function x9n(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J;for(n=u(X(t,(De(),bs)),101),h=t.f,o=t.d,d=h.a+o.b+o.c,m=0-o.d-t.c.b,T=h.b+o.d+o.a-t.c.b,k=new fe,A=new fe,s=new G(e);s.a=2){for(m=Dr(n,0),h=u(Ar(m),8),d=u(Ar(m),8);d.a0&&aO(k,!0,(Rs(),tc)),d.k==(Un(),Ms)&&zee(k),hi(t.f,d,e)}}function T9n(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt;for(s=u(X(t,(ji(),JA)),27),k=xi,T=xi,d=Ga,m=Ga,At=Dr(t.b,0);At.b!=At.d.c;)ht=u(Ar(At),39),$=ht.e,U=ht.f,k=b.Math.min(k,$.a-U.a/2),T=b.Math.min(T,$.b-U.b/2),d=b.Math.max(d,$.a+U.a/2),m=b.Math.max(m,$.b+U.b/2);for(P=u(ne(s,(Cc(),SLt)),107),Tt=Dr(t.b,0);Tt.b!=Tt.d.c;)ht=u(Ar(Tt),39),A=X(ht,JA),Lt(A,207)&&(o=u(A,27),Ch(o,ht.e.a,ht.e.b),$O(o,ht));for(tt=Dr(t.a,0);tt.b!=tt.d.c;)J=u(Ar(tt),65),r=u(X(J,JA),74),r&&(e=J.a,n=b5(r,!0,!0),KO(e,n));Bt=d-k+(P.b+P.c),h=m-T+(P.d+P.a),Ie(Me(ne(s,(ai(),R3))))||rv(s,Bt,h,!1,!1),Mi(s,ox,Bt-(P.b+P.c)),Mi(s,ax,h-(P.d+P.a))}function ape(t,e){var n,r,s,o,h,d,m,k,T,A;for(m=!0,s=0,k=t.g[e.p],T=e.o.b+t.o,n=t.d[e.p][2],Mh(t.b,k,he(u(Oe(t.b,k),17).a-1+n)),Mh(t.c,k,Rt(Ht(Oe(t.c,k)))-T+n*t.f),++k,k>=t.j?(++t.j,ge(t.b,he(1)),ge(t.c,T)):(r=t.d[e.p][1],Mh(t.b,k,he(u(Oe(t.b,k),17).a+1-r)),Mh(t.c,k,Rt(Ht(Oe(t.c,k)))+T-r*t.f)),(t.r==(cf(),cP)&&(u(Oe(t.b,k),17).a>t.k||u(Oe(t.b,k-1),17).a>t.k)||t.r==uP&&(Rt(Ht(Oe(t.c,k)))>t.n||Rt(Ht(Oe(t.c,k-1)))>t.n))&&(m=!1),h=new rr(sr(ua(e).a.Kc(),new z));Mr(h);)o=u(dr(h),18),d=o.c.i,t.g[d.p]==k&&(A=ape(t,d),s=s+u(A.a,17).a,m=m&&Ie(Me(A.b)));return t.g[e.p]=k,s=s+t.d[e.p][0],new Ws(he(s),(Pn(),!!m))}function ope(t,e){var n,r,s,o,h;n=Rt(Ht(X(e,(De(),Yf)))),n<2&&Zt(e,Yf,2),r=u(X(e,ph),88),r==(Rs(),Ed)&&Zt(e,ph,fH(e)),s=u(X(e,T6e),17),s.a==0?Zt(e,(oe(),Kk),new Kat):Zt(e,(oe(),Kk),new pq(s.a)),o=Me(X(e,BA)),o==null&&Zt(e,BA,(Pn(),$t(X(e,zg))===$t((Lg(),WT)))),ms(new ln(null,new gn(e.a,16)),new lp(t)),ms(fc(new ln(null,new gn(e.b,16)),new p4),new $C(t)),h=new epe(e),Zt(e,(oe(),G5),h),EI(t.a),E1(t.a,(Ua(),Wf),u(X(e,Dw),188)),E1(t.a,H0,u(X(e,Iw),188)),E1(t.a,Qc,u(X(e,FA),188)),E1(t.a,cu,u(X(e,UG),188)),E1(t.a,Zo,Tpn(u(X(e,zg),223))),kmt(t.a,vSn(e)),Zt(e,Yft,XO(t.a,e))}function Xkt(t,e,n,r,s){var o,h,d,m,k,T,A,P,$,U,J,tt,ht;for(A=new _r,h=new fe,s1e(t,n,t.d.Ag(),h,A),s1e(t,r,t.d.Bg(),h,A),t.b=.2*(J=hde(fc(new ln(null,new gn(h,16)),new TZ)),tt=hde(fc(new ln(null,new gn(h,16)),new CZ)),b.Math.min(J,tt)),o=0,d=0;d=2&&(ht=Dde(h,!0,P),!t.e&&(t.e=new $Ut(t)),Dwn(t.e,ht,h,t.b)),ffe(h,P),D9n(h),$=-1,T=new G(h);T.ad)}function cpe(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt;for(k=Zi,T=Zi,d=Vs,m=Vs,P=new G(e.i);P.a-1){for(s=Dr(d,0);s.b!=s.d.c;)r=u(Ar(s),131),r.v=h;for(;d.b!=0;)for(r=u(Tot(d,0),131),n=new G(r.i);n.a-1){for(o=new G(d);o.a0)&&(W(m,b.Math.min(m.o,s.o-1)),q(m,m.i-1),m.i==0&&In(d.c,m))}}function lpe(t,e,n,r,s){var o,h,d,m;return m=Zi,h=!1,d=zkt(t,ia(new ae(e.a,e.b),t),ki(new ae(n.a,n.b),s),ia(new ae(r.a,r.b),n)),o=!!d&&!(b.Math.abs(d.a-t.a)<=lv&&b.Math.abs(d.b-t.b)<=lv||b.Math.abs(d.a-e.a)<=lv&&b.Math.abs(d.b-e.b)<=lv),d=zkt(t,ia(new ae(e.a,e.b),t),n,s),d&&((b.Math.abs(d.a-t.a)<=lv&&b.Math.abs(d.b-t.b)<=lv)==(b.Math.abs(d.a-e.a)<=lv&&b.Math.abs(d.b-e.b)<=lv)||o?m=b.Math.min(m,RS(ia(d,n))):h=!0),d=zkt(t,ia(new ae(e.a,e.b),t),r,s),d&&(h||(b.Math.abs(d.a-t.a)<=lv&&b.Math.abs(d.b-t.b)<=lv)==(b.Math.abs(d.a-e.a)<=lv&&b.Math.abs(d.b-e.b)<=lv)||o)&&(m=b.Math.min(m,RS(ia(d,r)))),m}function hpe(t){wm(t,new dw(p$(gm(hm(dm(fm(new G1,Yb),c2e),"Minimizes the stress within a layout using stress majorization. Stress exists if the euclidean distance between a pair of nodes doesn't match their graph theoretic distance, that is, the shortest path between the two nodes. The method allows to specify individual edge lengths."),new U1),Du))),le(t,Yb,Y_,Se(kCt)),le(t,Yb,OV,(Pn(),!0)),le(t,Yb,_5,Se(K3e)),le(t,Yb,Ik,Se(W3e)),le(t,Yb,Mk,Se(Y3e)),le(t,Yb,nT,Se(G3e)),le(t,Yb,X_,Se(TCt)),le(t,Yb,rT,Se(X3e)),le(t,Yb,K8t,Se(xCt)),le(t,Yb,Y8t,Se(vCt)),le(t,Yb,X8t,Se(yCt)),le(t,Yb,Q8t,Se(ECt)),le(t,Yb,W8t,Se(YU))}function M9n(t){var e,n,r,s,o,h,d,m;for(e=null,r=new G(t);r.a0&&n.c==0&&(!e&&(e=new fe),In(e.c,n));if(e)for(;e.c.length!=0;){if(n=u(Ep(e,0),239),n.b&&n.b.c.length>0){for(o=(!n.b&&(n.b=new fe),new G(n.b));o.aXo(t,n,0))return new Ws(s,n)}else if(Rt(td(s.g,s.d[0]).a)>Rt(td(n.g,n.d[0]).a))return new Ws(s,n)}for(d=(!n.e&&(n.e=new fe),n.e).Kc();d.Ob();)h=u(d.Pb(),239),m=(!h.b&&(h.b=new fe),h.b),Fy(0,m.c.length),sS(m.c,0,n),h.c==m.c.length&&In(e.c,h)}return null}function I9n(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht;for(e.Ug("Interactive crossing minimization",1),h=0,o=new G(t.b);o.a0&&(n+=m.n.a+m.o.a/2,++A),U=new G(m.j);U.a0&&(n/=A),ht=Vt(ma,No,28,r.a.c.length,15,1),d=0,k=new G(r.a);k.a=d&&s<=m)d<=s&&o<=m?r+=2:d<=s?(t.b[r]=m+1,h+=2):o<=m?(n[T++]=s,n[T++]=d-1,r+=2):(n[T++]=s,n[T++]=d-1,t.b[r]=m+1,h+=2);else if(m2?(T=new fe,Hs(T,new xp(ht,1,ht.b)),o=Jpe(T,At+t.a),Tt=new Wot(o),Qo(Tt,e),In(n.c,Tt)):r?Tt=u(tr(t.b,O0(e)),272):Tt=u(tr(t.b,qb(e)),272),m=O0(e),r&&(m=qb(e)),h=M4n(tt,m),k=At+t.a,h.a?(k+=b.Math.abs(tt.b-A.b),J=new ae(A.a,(A.b+tt.b)/2)):(k+=b.Math.abs(tt.a-A.a),J=new ae((A.a+tt.a)/2,A.b)),r?hi(t.d,e,new pxt(Tt,h,J,k)):hi(t.c,e,new pxt(Tt,h,J,k)),hi(t.b,e,Tt),U=(!e.n&&(e.n=new Jt(Po,e,1,7)),e.n),$=new Zn(U);$.e!=$.i.gc();)P=u(ar($),135),s=HO(t,P,!0,0,0),In(n.c,s)}function O9n(t){var e,n,r,s,o,h,d;if(!t.A.dc()){if(t.A.Hc((Yl(),RP))&&(u(Io(t.b,(ve(),Hn)),127).k=!0,u(Io(t.b,Er),127).k=!0,e=t.q!=(ka(),Y0)&&t.q!=hu,Qj(u(Io(t.b,Jn),127),e),Qj(u(Io(t.b,Gn),127),e),Qj(t.g,e),t.A.Hc(qw)&&(u(Io(t.b,Hn),127).j=!0,u(Io(t.b,Er),127).j=!0,u(Io(t.b,Jn),127).k=!0,u(Io(t.b,Gn),127).k=!0,t.g.k=!0)),t.A.Hc(BP))for(t.a.j=!0,t.a.k=!0,t.g.j=!0,t.g.k=!0,d=t.B.Hc((Ml(),kL)),s=not(),o=0,h=s.length;o0),u(T.a.Xb(T.c=--T.b),18));o!=r&&T.b>0;)t.a[o.p]=!0,t.a[r.p]=!0,o=(ur(T.b>0),u(T.a.Xb(T.c=--T.b),18));T.b>0&&Kl(T)}}function dpe(t,e,n){var r,s,o,h,d,m,k,T,A,P,$;if(!t.b)return!1;for(h=null,P=null,m=new Rst(null,null),s=1,m.a[1]=t.b,A=m;A.a[s];)k=s,d=P,P=A,A=A.a[s],r=t.a.Ne(e,A.d),s=r<0?0:1,r==0&&(!n.c||Nc(A.e,n.d))&&(h=A),!(A&&A.b)&&!vy(A.a[s])&&(vy(A.a[1-s])?P=P.a[k]=Wq(A,s):vy(A.a[1-s])||($=P.a[1-k],$&&(!vy($.a[1-k])&&!vy($.a[k])?(P.b=!1,$.b=!0,A.b=!0):(o=d.a[1]==P?1:0,vy($.a[k])?d.a[o]=qre(P,k):vy($.a[1-k])&&(d.a[o]=Wq(P,k)),A.b=d.a[o].b=!0,d.a[o].a[0].b=!1,d.a[o].a[1].b=!1))));return h&&(n.b=!0,n.d=h.e,A!=h&&(T=new Rst(A.d,A.e),F3n(t,m,h,T),P==h&&(P=T)),P.a[P.a[1]==A?1:0]=A.a[A.a[0]?0:1],--t.c),t.b=m.a[1],t.b&&(t.b.b=!1),n.b}function F9n(t){var e,n,r,s,o,h,d,m,k,T,A,P;for(s=new G(t.a.a.b);s.a0?s-=864e5:s+=864e5,m=new avt(Qa(Pc(e.q.getTime()),s))),T=new I4,k=t.a.length,o=0;o=97&&r<=122||r>=65&&r<=90){for(h=o+1;h=k)throw at(new zn("Missing trailing '"));h+1=14&&T<=16))?e.a._b(r)?(n.a?ni(n.a,n.b):n.a=new eh(n.d),mS(n.a,"[...]")):(d=nw(r),k=new LS(e),Eg(n,ppe(d,k))):Lt(r,183)?Eg(n,g5n(u(r,183))):Lt(r,195)?Eg(n,Zyn(u(r,195))):Lt(r,201)?Eg(n,u4n(u(r,201))):Lt(r,2111)?Eg(n,t3n(u(r,2111))):Lt(r,53)?Eg(n,d5n(u(r,53))):Lt(r,376)?Eg(n,M5n(u(r,376))):Lt(r,846)?Eg(n,f5n(u(r,846))):Lt(r,109)&&Eg(n,h5n(u(r,109))):Eg(n,r==null?Vu:rc(r));return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function q7(t,e){var n,r,s,o;o=t.F,e==null?(t.F=null,p7(t,null)):(t.F=(Wn(e),e),r=$d(e,Hu(60)),r!=-1?(s=(Da(0,r,e.length),e.substr(0,r)),$d(e,Hu(46))==-1&&!hn(s,kk)&&!hn(s,lA)&&!hn(s,wU)&&!hn(s,hA)&&!hn(s,fA)&&!hn(s,dA)&&!hn(s,gA)&&!hn(s,pA)&&(s=Yme),n=cz(e,Hu(62)),n!=-1&&(s+=""+(qn(n+1,e.length+1),e.substr(n+1))),p7(t,s)):(s=e,$d(e,Hu(46))==-1&&(r=$d(e,Hu(91)),r!=-1&&(s=(Da(0,r,e.length),e.substr(0,r))),!hn(s,kk)&&!hn(s,lA)&&!hn(s,wU)&&!hn(s,hA)&&!hn(s,fA)&&!hn(s,dA)&&!hn(s,gA)&&!hn(s,pA)?(s=Yme,r!=-1&&(s+=""+(qn(r,e.length+1),e.substr(r)))):s=e),p7(t,s),s==e&&(t.F=t.D))),t.Db&4&&!(t.Db&1)&&Ei(t,new ha(t,1,5,o,e))}function bpe(t,e){var n,r,s,o,h,d,m,k,T,A;if(m=e.length-1,d=(qn(m,e.length),e.charCodeAt(m)),d==93){if(h=$d(e,Hu(91)),h>=0)return s=z2n(t,(Da(1,h,e.length),e.substr(1,h-1))),T=(Da(h+1,m,e.length),e.substr(h+1,m-(h+1))),dSn(t,T,s)}else{if(n=-1,h9t==null&&(h9t=new RegExp("\\d")),h9t.test(String.fromCharCode(d))&&(n=Tvt(e,Hu(46),m-1),n>=0)){r=u(Ist(t,roe(t,(Da(1,n,e.length),e.substr(1,n-1))),!1),61),k=0;try{k=lh((qn(n+1,e.length+1),e.substr(n+1)),Ga,xi)}catch(P){throw P=es(P),Lt(P,130)?(o=P,at(new _q(o))):at(P)}if(k>16==-10?n=u(t.Cb,291).Yk(e,n):t.Db>>16==-15&&(!e&&(e=(wn(),Sd)),!k&&(k=(wn(),Sd)),t.Cb.Yh()&&(m=new Tg(t.Cb,1,13,k,e,Np(Al(u(t.Cb,62)),t),!1),n?n.nj(m):n=m));else if(Lt(t.Cb,90))t.Db>>16==-23&&(Lt(e,90)||(e=(wn(),xf)),Lt(k,90)||(k=(wn(),xf)),t.Cb.Yh()&&(m=new Tg(t.Cb,1,10,k,e,Np(Wc(u(t.Cb,29)),t),!1),n?n.nj(m):n=m));else if(Lt(t.Cb,456))for(d=u(t.Cb,850),h=(!d.b&&(d.b=new s$(new Gnt)),d.b),o=(r=new sw(new mr(h.a).a),new a$(r));o.a.b;)s=u(Um(o.a).ld(),89),n=H7(s,QH(s,d),n)}return n}function z9n(t,e){var n,r,s,o,h,d,m,k,T,A,P;for(h=Ie(Me(ne(t,(De(),L3)))),P=u(ne(t,M3),21),m=!1,k=!1,A=new Zn((!t.c&&(t.c=new Jt(kl,t,9,9)),t.c));A.e!=A.i.gc()&&(!m||!k);){for(o=u(ar(A),123),d=0,s=A0(ah(lt(ut(gh,1),Ln,20,0,[(!o.d&&(o.d=new kn(Ts,o,8,5)),o.d),(!o.e&&(o.e=new kn(Ts,o,7,4)),o.e)])));Mr(s)&&(r=u(dr(s),74),T=h&&Zm(r)&&Ie(Me(ne(r,Mw))),n=Wge((!r.b&&(r.b=new kn(vr,r,4,7)),r.b),o)?t==Ji(Jo(u(Dt((!r.c&&(r.c=new kn(vr,r,5,8)),r.c),0),84))):t==Ji(Jo(u(Dt((!r.b&&(r.b=new kn(vr,r,4,7)),r.b),0),84))),!((T||n)&&(++d,d>1))););(d>0||P.Hc((wl(),Hg))&&(!o.n&&(o.n=new Jt(Po,o,1,7)),o.n).i>0)&&(m=!0),d>1&&(k=!0)}m&&e.Fc((Co(),Uh)),k&&e.Fc((Co(),LA))}function wpe(t){var e,n,r,s,o,h,d,m,k,T,A,P;if(P=u(ne(t,(ai(),jw)),21),P.dc())return null;if(d=0,h=0,P.Hc((Yl(),RP))){for(T=u(ne(t,fL),101),r=2,n=2,s=2,o=2,e=Ji(t)?u(ne(Ji(t),Rw),88):u(ne(t,Rw),88),k=new Zn((!t.c&&(t.c=new Jt(kl,t,9,9)),t.c));k.e!=k.i.gc();)if(m=u(ar(k),123),A=u(ne(m,hx),64),A==(ve(),bc)&&(A=Pkt(m,e),Mi(m,hx,A)),T==(ka(),hu))switch(A.g){case 1:r=b.Math.max(r,m.i+m.g);break;case 2:n=b.Math.max(n,m.j+m.f);break;case 3:s=b.Math.max(s,m.i+m.g);break;case 4:o=b.Math.max(o,m.j+m.f)}else switch(A.g){case 1:r+=m.g+2;break;case 2:n+=m.f+2;break;case 3:s+=m.g+2;break;case 4:o+=m.f+2}d=b.Math.max(r,s),h=b.Math.max(n,o)}return rv(t,d,h,!0,!0)}function Act(t,e,n,r,s){var o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt;for(Tt=u(nc(Pq(_i(new ln(null,new gn(e.d,16)),new aUt(n)),new oUt(n)),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)]))),15),A=xi,T=Ga,m=new G(e.b.j);m.a0,k?k&&(P=ht.p,h?++P:--P,A=u(Oe(ht.c.a,P),10),r=$ce(A),$=!(Jot(r,se,n[0])||lee(r,se,n[0]))):$=!0),U=!1,Wt=e.D.i,Wt&&Wt.c&&d.e&&(T=h&&Wt.p>0||!h&&Wt.p=0){for(m=null,d=new La(T.a,k+1);d.bh?1:ym(isNaN(0),isNaN(h)))<0&&($f(s0),(b.Math.abs(h-1)<=s0||h==1||isNaN(h)&&isNaN(1)?0:h<1?-1:h>1?1:ym(isNaN(h),isNaN(1)))<0)&&($f(s0),(b.Math.abs(0-d)<=s0||d==0||isNaN(0)&&isNaN(d)?0:0d?1:ym(isNaN(0),isNaN(d)))<0)&&($f(s0),(b.Math.abs(d-1)<=s0||d==1||isNaN(d)&&isNaN(1)?0:d<1?-1:d>1?1:ym(isNaN(d),isNaN(1)))<0)),o)}function K9n(t){var e,n,r,s;if(n=t.D!=null?t.D:t.B,e=$d(n,Hu(91)),e!=-1){r=(Da(0,e,n.length),n.substr(0,e)),s=new dp;do s.a+="[";while((e=TE(n,91,++e))!=-1);hn(r,kk)?s.a+="Z":hn(r,lA)?s.a+="B":hn(r,wU)?s.a+="C":hn(r,hA)?s.a+="D":hn(r,fA)?s.a+="F":hn(r,dA)?s.a+="I":hn(r,gA)?s.a+="J":hn(r,pA)?s.a+="S":(s.a+="L",s.a+=""+r,s.a+=";");try{return null}catch(o){if(o=es(o),!Lt(o,63))throw at(o)}}else if($d(n,Hu(46))==-1){if(hn(n,kk))return Fl;if(hn(n,lA))return ul;if(hn(n,wU))return Yh;if(hn(n,hA))return ma;if(hn(n,fA))return Y3;if(hn(n,dA))return Fr;if(hn(n,gA))return x2;if(hn(n,pA))return wx}return null}function W9n(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce;for(t.e=e,d=W5n(e),se=new fe,r=new G(d);r.a=0&&J=k.c.c.length?T=k3t((Un(),xs),fa):T=k3t((Un(),fa),fa),T*=2,o=n.a.g,n.a.g=b.Math.max(o,o+(T-o)),h=n.b.g,n.b.g=b.Math.max(h,h+(T-h)),s=e}}function J9n(t){var e,n,r,s;for(ms(_i(new ln(null,new gn(t.a.b,16)),new rR),new aJ),Oyn(t),ms(_i(new ln(null,new gn(t.a.b,16)),new oJ),new cJ),t.c==(Lg(),e8)&&(ms(_i(fc(new ln(null,new gn(new cr(t.f),1)),new uJ),new lJ),new ZVt(t)),ms(_i(Wo(fc(fc(new ln(null,new gn(t.d.b,16)),new hJ),new iR),new fJ),new sR),new eUt(t))),s=new ae(Zi,Zi),e=new ae(Vs,Vs),r=new G(t.a.b);r.a0&&(e.a+=ao),wV(u(ar(d),167),e);for(e.a+=But,m=new j6((!r.c&&(r.c=new kn(vr,r,5,8)),r.c));m.e!=m.i.gc();)m.e>0&&(e.a+=ao),wV(u(ar(m),167),e);e.a+=")"}}function Z9n(t,e,n){var r,s,o,h,d,m,k,T;for(m=new Zn((!t.a&&(t.a=new Jt(bi,t,10,11)),t.a));m.e!=m.i.gc();)for(d=u(ar(m),27),s=new rr(sr(Og(d).a.Kc(),new z));Mr(s);){if(r=u(dr(s),74),!r.b&&(r.b=new kn(vr,r,4,7)),!(r.b.i<=1&&(!r.c&&(r.c=new kn(vr,r,5,8)),r.c.i<=1)))throw at(new L6("Graph must not contain hyperedges."));if(!S_(r)&&d!=Jo(u(Dt((!r.c&&(r.c=new kn(vr,r,5,8)),r.c),0),84)))for(k=new mZt,Qo(k,r),Zt(k,(Pb(),$k),r),Dnt(k,u(Ko(Eo(n.f,d)),153)),v6(k,u(tr(n,Jo(u(Dt((!r.c&&(r.c=new kn(vr,r,5,8)),r.c),0),84))),153)),ge(e.c,k),h=new Zn((!r.n&&(r.n=new Jt(Po,r,1,7)),r.n));h.e!=h.i.gc();)o=u(ar(h),135),T=new yie(k,o.a),Qo(T,o),Zt(T,$k,o),T.e.a=b.Math.max(o.g,1),T.e.b=b.Math.max(o.f,1),$kt(T),ge(e.d,T)}}function tCn(t,e,n){var r,s,o,h,d,m,k,T,A,P;switch(n.Ug("Node promotion heuristic",1),t.i=e,t.r=u(X(e,(De(),a2)),243),t.r!=(cf(),Lv)&&t.r!=N3?_Cn(t):Zkn(t),T=u(X(t.i,eAt),17).a,o=new Fd,t.r.g){case 2:case 1:z7(t,o);break;case 3:for(t.r=tK,z7(t,o),m=0,d=new G(t.b);d.at.k&&(t.r=cP,z7(t,o));break;case 4:for(t.r=tK,z7(t,o),k=0,s=new G(t.c);s.at.n&&(t.r=uP,z7(t,o));break;case 6:P=Ys(b.Math.ceil(t.g.length*T/100)),z7(t,new zVt(P));break;case 5:A=Ys(b.Math.ceil(t.e*T/100)),z7(t,new qVt(A));break;case 8:ebe(t,!0);break;case 9:ebe(t,!1);break;default:z7(t,o)}t.r!=Lv&&t.r!=N3?Ekn(t,e):H8n(t,e),n.Vg()}function eCn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At;for(A=t.b,T=new La(A,0),Ly(T,new eu(t)),Tt=!1,h=1;T.b0&&(P.d+=T.n.d,P.d+=T.d),P.a>0&&(P.a+=T.n.a,P.a+=T.d),P.b>0&&(P.b+=T.n.b,P.b+=T.d),P.c>0&&(P.c+=T.n.c,P.c+=T.d),P}function vpe(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U;for(P=n.d,A=n.c,o=new ae(n.f.a+n.d.b+n.d.c,n.f.b+n.d.d+n.d.a),h=o.b,k=new G(t.a);k.a0&&(t.c[e.c.p][e.p].d+=Dl(t.i,24)*lN*.07000000029802322-.03500000014901161,t.c[e.c.p][e.p].a=t.c[e.c.p][e.p].d/t.c[e.c.p][e.p].b)}}function iCn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt;for(U=new G(t);U.ar.d,r.d=b.Math.max(r.d,e),d&&n&&(r.d=b.Math.max(r.d,r.a),r.a=r.d+s);break;case 3:n=e>r.a,r.a=b.Math.max(r.a,e),d&&n&&(r.a=b.Math.max(r.a,r.d),r.d=r.a+s);break;case 2:n=e>r.c,r.c=b.Math.max(r.c,e),d&&n&&(r.c=b.Math.max(r.b,r.c),r.b=r.c+s);break;case 4:n=e>r.b,r.b=b.Math.max(r.b,e),d&&n&&(r.b=b.Math.max(r.b,r.c),r.c=r.b+s)}}}function xpe(t,e){var n,r,s,o,h,d,m,k,T;return k="",e.length==0?t.ne(b8t,$ct,-1,-1):(T=Zy(e),hn(T.substr(0,3),"at ")&&(T=(qn(3,T.length+1),T.substr(3))),T=T.replace(/\[.*?\]/g,""),h=T.indexOf("("),h==-1?(h=T.indexOf("@"),h==-1?(k=T,T=""):(k=Zy((qn(h+1,T.length+1),T.substr(h+1))),T=Zy((Da(0,h,T.length),T.substr(0,h))))):(n=T.indexOf(")",h),k=(Da(h+1,n,T.length),T.substr(h+1,n-(h+1))),T=Zy((Da(0,h,T.length),T.substr(0,h)))),h=$d(T,Hu(46)),h!=-1&&(T=(qn(h+1,T.length+1),T.substr(h+1))),(T.length==0||hn(T,"Anonymous function"))&&(T=$ct),d=cz(k,Hu(58)),s=Tvt(k,Hu(58),d-1),m=-1,r=-1,o=b8t,d!=-1&&s!=-1&&(o=(Da(0,s,k.length),k.substr(0,s)),m=BJt((Da(s+1,d,k.length),k.substr(s+1,d-(s+1)))),r=BJt((qn(d+1,k.length+1),k.substr(d+1)))),t.ne(o,T,m,r))}function oCn(t){var e,n,r,s,o,h,d,m,k,T,A;for(k=new G(t);k.a0||T.j==Gn&&T.e.c.length-T.g.c.length<0)){e=!1;break}for(s=new G(T.g);s.a=k&&Wt>=tt&&(P+=U.n.b+J.n.b+J.a.b-Bt,++d));if(n)for(h=new G(Tt.e);h.a=k&&Wt>=tt&&(P+=U.n.b+J.n.b+J.a.b-Bt,++d))}d>0&&(se+=P/d,++$)}$>0?(e.a=s*se/$,e.g=$):(e.a=0,e.g=0)}function uCn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce;for(o=t.f.b,P=o.a,T=o.b,U=t.e.g,$=t.e.f,H4(t.e,o.a,o.b),se=P/U,Ce=T/$,k=new Zn(Kz(t.e));k.e!=k.i.gc();)m=u(ar(k),135),Su(m,m.i*se),_u(m,m.j*Ce);for(Tt=new Zn(Jit(t.e));Tt.e!=Tt.i.gc();)ht=u(ar(Tt),123),Bt=ht.i,Wt=ht.j,Bt>0&&Su(ht,Bt*se),Wt>0&&_u(ht,Wt*Ce);for(e_(t.b,new fg),e=new fe,d=new sw(new mr(t.c).a);d.b;)h=Um(d),r=u(h.ld(),74),n=u(h.md(),407).a,s=b5(r,!1,!1),A=dfe(O0(r),MO(s),n),KO(A,s),At=Sfe(r),At&&Xo(e,At,0)==-1&&(In(e.c,At),ene(At,(ur(A.b!=0),u(A.a.a.c,8)),n));for(tt=new sw(new mr(t.d).a);tt.b;)J=Um(tt),r=u(J.ld(),74),n=u(J.md(),407).a,s=b5(r,!1,!1),A=dfe(qb(r),cO(MO(s)),n),A=cO(A),KO(A,s),At=_fe(r),At&&Xo(e,At,0)==-1&&(In(e.c,At),ene(At,(ur(A.b!=0),u(A.c.b.c,8)),n))}function kpe(t,e,n,r){var s,o,h,d,m;return d=new Zkt(e),tkn(d,r),s=!0,t&&t.pf((ai(),Rw))&&(o=u(t.of((ai(),Rw)),88),s=o==(Rs(),Ed)||o==Uo||o==tc),x0e(d,!1),Cu(d.e.Rf(),new Mvt(d,!1,s)),hst(d,d.f,(A1(),Ac),(ve(),Hn)),hst(d,d.f,Lc,Er),hst(d,d.g,Ac,Gn),hst(d,d.g,Lc,Jn),Yle(d,Hn),Yle(d,Er),Jee(d,Jn),Jee(d,Gn),Ay(),h=d.A.Hc((Yl(),z3))&&d.B.Hc((Ml(),$P))?dle(d):null,h&&urn(d.a,h),aCn(d),ovn(d),cvn(d),O9n(d),oEn(d),Nvn(d),tot(d,Hn),tot(d,Er),R8n(d),oTn(d),n&&(q2n(d),Pvn(d),tot(d,Jn),tot(d,Gn),m=d.B.Hc((Ml(),kL)),d1e(d,m,Hn),d1e(d,m,Er),g1e(d,m,Jn),g1e(d,m,Gn),ms(new ln(null,new gn(new si(d.i),0)),new mc),ms(_i(new ln(null,Lyt(d.r).a.oc()),new ca),new ya),Yyn(d),d.e.Pf(d.o),ms(new ln(null,Lyt(d.r).a.oc()),new ea)),d.o}function lCn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J;for(k=Zi,r=new G(t.a.b);r.a1)for($=new Vkt(U,At,r),Fa(At,new MXt(t,$)),In(h.c,$),A=At.a.ec().Kc();A.Ob();)T=u(A.Pb(),42),zu(o,T.b);if(d.a.gc()>1)for($=new Vkt(U,d,r),Fa(d,new IXt(t,$)),In(h.c,$),A=d.a.ec().Kc();A.Ob();)T=u(A.Pb(),42),zu(o,T.b)}}function gCn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht;if(J=t.n,tt=t.o,P=t.d,A=Rt(Ht(Wy(t,(De(),u1t)))),e){for(T=A*(e.gc()-1),$=0,m=e.Kc();m.Ob();)h=u(m.Pb(),10),T+=h.o.a,$=b.Math.max($,h.o.b);for(ht=J.a-(T-tt.a)/2,o=J.b-P.d+$,r=tt.a/(e.gc()+1),s=r,d=e.Kc();d.Ob();)h=u(d.Pb(),10),h.n.a=ht,h.n.b=o-h.o.b,ht+=h.o.a+A,k=Mde(h),k.n.a=h.o.a/2-k.a.a,k.n.b=h.o.b,U=u(X(h,(oe(),AG)),12),U.e.c.length+U.g.c.length==1&&(U.n.a=s-U.a.a,U.n.b=0,hc(U,t)),s+=r}if(n){for(T=A*(n.gc()-1),$=0,m=n.Kc();m.Ob();)h=u(m.Pb(),10),T+=h.o.a,$=b.Math.max($,h.o.b);for(ht=J.a-(T-tt.a)/2,o=J.b+tt.b+P.a-$,r=tt.a/(n.gc()+1),s=r,d=n.Kc();d.Ob();)h=u(d.Pb(),10),h.n.a=ht,h.n.b=o,ht+=h.o.a+A,k=Mde(h),k.n.a=h.o.a/2-k.a.a,k.n.b=0,U=u(X(h,(oe(),AG)),12),U.e.c.length+U.g.c.length==1&&(U.n.a=s-U.a.a,U.n.b=tt.b,hc(U,t)),s+=r}}function pCn(t,e){var n,r,s,o,h,d;if(u(X(e,(oe(),lu)),21).Hc((Co(),Uh))){for(d=new G(e.a);d.a=0&&h0&&(u(Io(t.b,e),127).a.b=n)}function yCn(t,e,n,r){var s,o,h,d,m,k,T,A,P,$,U,J;if(P=Rt(Ht(X(t,(De(),FT)))),$=Rt(Ht(X(t,BT))),A=Rt(Ht(X(t,O3))),d=t.o,o=u(Oe(t.j,0),12),h=o.n,J=B4n(o,A),!!J){if(e.Hc((wl(),Hg)))switch(u(X(t,(oe(),Dc)),64).g){case 1:J.c=(d.a-J.b)/2-h.a,J.d=$;break;case 3:J.c=(d.a-J.b)/2-h.a,J.d=-$-J.a;break;case 2:n&&o.e.c.length==0&&o.g.c.length==0?(T=r?J.a:u(Oe(o.f,0),72).o.b,J.d=(d.b-T)/2-h.b):J.d=d.b+$-h.b,J.c=-P-J.b;break;case 4:n&&o.e.c.length==0&&o.g.c.length==0?(T=r?J.a:u(Oe(o.f,0),72).o.b,J.d=(d.b-T)/2-h.b):J.d=d.b+$-h.b,J.c=P}else if(e.Hc(g2))switch(u(X(t,(oe(),Dc)),64).g){case 1:case 3:J.c=h.a+P;break;case 2:case 4:n&&!o.c?(T=r?J.a:u(Oe(o.f,0),72).o.b,J.d=(d.b-T)/2-h.b):J.d=h.b+$}for(s=J.d,k=new G(o.f);k.a=e.length)return{done:!0};var s=e[r++];return{value:[s,n.get(s)],done:!1}}}},w8n()||(t.prototype.createObject=function(){return{}},t.prototype.get=function(e){return this.obj[":"+e]},t.prototype.set=function(e,n){this.obj[":"+e]=n},t.prototype[fut]=function(e){delete this.obj[":"+e]},t.prototype.keys=function(){var e=[];for(var n in this.obj)n.charCodeAt(0)==58&&e.push(n.substring(1));return e}),t}function ji(){ji=V,JA=new Oi(G8t),new rs("DEPTH",he(0)),B1t=new rs("FAN",he(0)),gLt=new rs(W2e,he(0)),u2=new rs("ROOT",(Pn(),!1)),$1t=new rs("LEFTNEIGHBOR",null),Kke=new rs("RIGHTNEIGHBOR",null),oK=new rs("LEFTSIBLING",null),z1t=new rs("RIGHTSIBLING",null),F1t=new rs("DUMMY",!1),new rs("LEVEL",he(0)),wLt=new rs("REMOVABLE_EDGES",new Ki),pP=new rs("XCOOR",he(0)),bP=new rs("YCOOR",he(0)),cK=new rs("LEVELHEIGHT",0),P1=new rs("LEVELMIN",0),Xf=new rs("LEVELMAX",0),R1t=new rs("GRAPH_XMIN",0),j1t=new rs("GRAPH_YMIN",0),pLt=new rs("GRAPH_XMAX",0),bLt=new rs("GRAPH_YMAX",0),dLt=new rs("COMPACT_LEVEL_ASCENSION",!1),P1t=new rs("COMPACT_CONSTRAINTS",new fe),QA=new rs("ID",""),ZA=new rs("POSITION",he(0)),Kp=new rs("PRELIM",0),qT=new rs("MODIFIER",0),zT=new Oi(a2e),gP=new Oi(o2e)}function TCn(t){Nkt();var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt;if(t==null)return null;if(A=t.length*8,A==0)return"";for(d=A%24,$=A/24|0,P=d!=0?$+1:$,o=null,o=Vt(Yh,Zd,28,P*4,15,1),k=0,T=0,e=0,n=0,r=0,h=0,s=0,m=0;m<$;m++)e=t[s++],n=t[s++],r=t[s++],T=(n&15)<<24>>24,k=(e&3)<<24>>24,U=e&-128?(e>>2^192)<<24>>24:e>>2<<24>>24,J=n&-128?(n>>4^240)<<24>>24:n>>4<<24>>24,tt=r&-128?(r>>6^252)<<24>>24:r>>6<<24>>24,o[h++]=nb[U],o[h++]=nb[J|k<<4],o[h++]=nb[T<<2|tt],o[h++]=nb[r&63];return d==8?(e=t[s],k=(e&3)<<24>>24,U=e&-128?(e>>2^192)<<24>>24:e>>2<<24>>24,o[h++]=nb[U],o[h++]=nb[k<<4],o[h++]=61,o[h++]=61):d==16&&(e=t[s],n=t[s+1],T=(n&15)<<24>>24,k=(e&3)<<24>>24,U=e&-128?(e>>2^192)<<24>>24:e>>2<<24>>24,J=n&-128?(n>>4^240)<<24>>24:n>>4<<24>>24,o[h++]=nb[U],o[h++]=nb[J|k<<4],o[h++]=nb[T<<2],o[h++]=61),af(o,0,o.length)}function CCn(t,e){var n,r,s,o,h,d,m;if(t.e==0&&t.p>0&&(t.p=-(t.p-1)),t.p>Ga&&x3t(e,t.p-Wb),h=e.q.getDate(),LI(e,1),t.k>=0&&dfn(e,t.k),t.c>=0?LI(e,t.c):t.k>=0?(m=new Q4t(e.q.getFullYear()-Wb,e.q.getMonth(),35),r=35-m.q.getDate(),LI(e,b.Math.min(r,h))):LI(e,h),t.f<0&&(t.f=e.q.getHours()),t.b>0&&t.f<12&&(t.f+=12),isn(e,t.f==24&&t.g?0:t.f),t.j>=0&&Ydn(e,t.j),t.n>=0&&o0n(e,t.n),t.i>=0&&DQt(e,Qa(Ja(_O(Pc(e.q.getTime()),Rp),Rp),t.i)),t.a&&(s=new x$,x3t(s,s.q.getFullYear()-Wb-80),grt(Pc(e.q.getTime()),Pc(s.q.getTime()))&&x3t(e,s.q.getFullYear()-Wb+100)),t.d>=0){if(t.c==-1)n=(7+t.d-e.q.getDay())%7,n>3&&(n-=7),d=e.q.getMonth(),LI(e,e.q.getDate()+n),e.q.getMonth()!=d&&LI(e,e.q.getDate()+(n>0?-7:7));else if(e.q.getDay()!=t.d)return!1}return t.o>Ga&&(o=e.q.getTimezoneOffset(),DQt(e,Qa(Pc(e.q.getTime()),(t.o-o)*60*Rp))),!0}function _pe(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt;if(s=X(e,(oe(),Li)),!!Lt(s,207)){for(U=u(s,27),J=e.e,P=new io(e.c),o=e.d,P.a+=o.b,P.b+=o.d,Bt=u(ne(U,(De(),GG)),181),Zu(Bt,(Ml(),NK))&&($=u(ne(U,aAt),107),Snt($,o.a),D2t($,o.d),_nt($,o.b),m6($,o.c)),n=new fe,T=new G(e.a);T.ar.c.length-1;)ge(r,new Ws(S5,E7t));n=u(X(s,h0),17).a,bg(u(X(t,Mv),88))?(s.e.aRt(Ht((vn(n,r.c.length),u(r.c[n],42)).b))&&re((vn(n,r.c.length),u(r.c[n],42)),s.e.a+s.f.a)):(s.e.bRt(Ht((vn(n,r.c.length),u(r.c[n],42)).b))&&re((vn(n,r.c.length),u(r.c[n],42)),s.e.b+s.f.b))}for(o=Dr(t.b,0);o.b!=o.d.c;)s=u(Ar(o),39),n=u(X(s,(Cc(),h0)),17).a,Zt(s,(ji(),P1),Ht((vn(n,r.c.length),u(r.c[n],42)).a)),Zt(s,Xf,Ht((vn(n,r.c.length),u(r.c[n],42)).b));e.Vg()}function _Cn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J;for(t.o=Rt(Ht(X(t.i,(De(),Av)))),t.f=Rt(Ht(X(t.i,Pw))),t.j=t.i.b.c.length,d=t.j-1,P=0,t.k=0,t.n=0,t.b=id(Vt(Ra,ue,17,t.j,0,1)),t.c=id(Vt(zs,ue,345,t.j,7,1)),h=new G(t.i.b);h.a0&&ge(t.q,T),ge(t.p,T);e-=r,$=m+e,k+=e*t.f,Mh(t.b,d,he($)),Mh(t.c,d,k),t.k=b.Math.max(t.k,$),t.n=b.Math.max(t.n,k),t.e+=e,e+=J}}function ve(){ve=V;var t;bc=new tI(G_,0),Hn=new tI(_V,1),Jn=new tI(kut,2),Er=new tI(Eut,3),Gn=new tI(Tut,4),Cd=(mn(),new dE((t=u(y1(bo),9),new _h(t,u(Ff(t,t.length),9),0)))),e1=Ap(Hi(Hn,lt(ut(bo,1),qc,64,0,[]))),Kh=Ap(Hi(Jn,lt(ut(bo,1),qc,64,0,[]))),wh=Ap(Hi(Er,lt(ut(bo,1),qc,64,0,[]))),wf=Ap(Hi(Gn,lt(ut(bo,1),qc,64,0,[]))),Gu=Ap(Hi(Hn,lt(ut(bo,1),qc,64,0,[Er]))),Ou=Ap(Hi(Jn,lt(ut(bo,1),qc,64,0,[Gn]))),n1=Ap(Hi(Hn,lt(ut(bo,1),qc,64,0,[Gn]))),yl=Ap(Hi(Hn,lt(ut(bo,1),qc,64,0,[Jn]))),mh=Ap(Hi(Er,lt(ut(bo,1),qc,64,0,[Gn]))),Wh=Ap(Hi(Jn,lt(ut(bo,1),qc,64,0,[Er]))),xl=Ap(Hi(Hn,lt(ut(bo,1),qc,64,0,[Jn,Gn]))),Uu=Ap(Hi(Jn,lt(ut(bo,1),qc,64,0,[Er,Gn]))),Ku=Ap(Hi(Hn,lt(ut(bo,1),qc,64,0,[Er,Gn]))),cl=Ap(Hi(Hn,lt(ut(bo,1),qc,64,0,[Jn,Er]))),fu=Ap(Hi(Hn,lt(ut(bo,1),qc,64,0,[Jn,Er,Gn])))}function ACn(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce;for(e.Ug(_2e,1),J=new fe,se=new fe,k=new G(t.b);k.a0&&(At-=$),Ukt(h,At),T=0,P=new G(h.a);P.a0),d.a.Xb(d.c=--d.b)),m=.4*r*T,!o&&d.b0&&(m=(qn(0,e.length),e.charCodeAt(0)),m!=64)){if(m==37&&(A=e.lastIndexOf("%"),k=!1,A!=0&&(A==P-1||(k=(qn(A+1,e.length),e.charCodeAt(A+1)==46))))){if(h=(Da(1,A,e.length),e.substr(1,A-1)),At=hn("%",h)?null:n8t(h),r=0,k)try{r=lh((qn(A+2,e.length+1),e.substr(A+2)),Ga,xi)}catch(Bt){throw Bt=es(Bt),Lt(Bt,130)?(d=Bt,at(new _q(d))):at(Bt)}for(tt=D4t(t.Gh());tt.Ob();)if(U=eH(tt),Lt(U,519)&&(s=u(U,598),Tt=s.d,(At==null?Tt==null:hn(At,Tt))&&r--==0))return s;return null}if(T=e.lastIndexOf("."),$=T==-1?e:(Da(0,T,e.length),e.substr(0,T)),n=0,T!=-1)try{n=lh((qn(T+1,e.length+1),e.substr(T+1)),Ga,xi)}catch(Bt){if(Bt=es(Bt),Lt(Bt,130))$=e;else throw at(Bt)}for($=hn("%",$)?null:n8t($),J=D4t(t.Gh());J.Ob();)if(U=eH(J),Lt(U,197)&&(o=u(U,197),ht=o.xe(),($==null?ht==null:hn($,ht))&&n--==0))return o;return null}return bpe(t,e)}function FCn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt;for(T=new _r,m=new Fm,r=new G(t.a.a.b);r.ae.d.c){if($=t.c[e.a.d],tt=t.c[A.a.d],$==tt)continue;Hf(Of(If(Nf(Mf(new tf,1),100),$),tt))}}}}}function BCn(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se;if(P=u(u(Ai(t.r,e),21),87),e==(ve(),Jn)||e==Gn){Tpe(t,e);return}for(o=e==Hn?(Gm(),BN):(Gm(),RN),Bt=e==Hn?(qu(),O1):(qu(),Kf),n=u(Io(t.b,e),127),r=n.i,s=r.c+e5(lt(ut(ma,1),No,28,15,[n.n.b,t.C.b,t.k])),ht=r.c+r.b-e5(lt(ut(ma,1),No,28,15,[n.n.c,t.C.c,t.k])),h=wwt(Ovt(o),t.t),Tt=e==Hn?Vs:Zi,A=P.Kc();A.Ob();)k=u(A.Pb(),117),!(!k.c||k.c.d.c.length<=0)&&(tt=k.b.Mf(),J=k.e,$=k.c,U=$.i,U.b=(m=$.n,$.e.a+m.b+m.c),U.a=(d=$.n,$.e.b+d.d+d.a),SI(Bt,I8t),$.f=Bt,S1($,(pl(),Gf)),U.c=J.a-(U.b-tt.a)/2,Wt=b.Math.min(s,J.a),se=b.Math.max(ht,J.a+tt.a),U.cse&&(U.c=se-U.b),ge(h.d,new Oit(U,T5t(h,U))),Tt=e==Hn?b.Math.max(Tt,J.b+k.b.Mf().b):b.Math.min(Tt,J.b));for(Tt+=e==Hn?t.t:-t.t,At=H5t((h.e=Tt,h)),At>0&&(u(Io(t.b,e),127).a.b=At),T=P.Kc();T.Ob();)k=u(T.Pb(),117),!(!k.c||k.c.d.c.length<=0)&&(U=k.c.i,U.c-=k.e.a,U.d-=k.e.b)}function RCn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$;for(e=new _r,m=new Zn(t);m.e!=m.i.gc();){for(d=u(ar(m),27),n=new Os,hi(Jht,d,n),$=new ip,s=u(nc(new ln(null,new Lm(new rr(sr(jO(d).a.Kc(),new z)))),Gte($,gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)])))),85),Soe(n,u(s.xc((Pn(),!0)),16),new sy),r=u(nc(_i(u(s.xc(!1),15).Lc(),new D8),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[sc]))),15),h=r.Kc();h.Ob();)o=u(h.Pb(),74),P=Sfe(o),P&&(k=u(Ko(Eo(e.f,P)),21),k||(k=Xde(P),yu(e.f,P,k)),Ma(n,k));for(s=u(nc(new ln(null,new Lm(new rr(sr(Og(d).a.Kc(),new z)))),Gte($,gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[sc])))),85),Soe(n,u(s.xc(!0),16),new g4),r=u(nc(_i(u(s.xc(!1),15).Lc(),new th),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[sc]))),15),A=r.Kc();A.Ob();)T=u(A.Pb(),74),P=_fe(T),P&&(k=u(Ko(Eo(e.f,P)),21),k||(k=Xde(P),yu(e.f,P,k)),Ma(n,k))}}function jCn(t,e){mct();var n,r,s,o,h,d,m,k,T,A,P,$,U,J;if(m=$c(t,0)<0,m&&(t=Cp(t)),$c(t,0)==0)switch(e){case 0:return"0";case 1:return Y7;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return $=new yb,e<0?$.a+="0E+":$.a+="0E",$.a+=e==Ga?"2147483648":""+-e,$.a}T=18,A=Vt(Yh,Zd,28,T+1,15,1),n=T,J=t;do k=J,J=_O(J,10),A[--n]=qr(Qa(48,sf(k,Ja(J,10))))&js;while($c(J,0)!=0);if(s=sf(sf(sf(T,n),e),1),e==0)return m&&(A[--n]=45),af(A,n,T-n);if(e>0&&$c(s,-6)>=0){if($c(s,0)>=0){for(o=n+qr(s),d=T-1;d>=o;d--)A[d+1]=A[d];return A[++o]=46,m&&(A[--n]=45),af(A,n,T-n+1)}for(h=2;grt(h,Qa(Cp(s),1));h++)A[--n]=48;return A[--n]=46,A[--n]=48,m&&(A[--n]=45),af(A,n,T-n)}return U=n+1,r=T,P=new I4,m&&(P.a+="-"),r-U>=1?(Db(P,A[n]),P.a+=".",P.a+=af(A,n+1,T-n-1)):P.a+=af(A,n,T-n),P.a+="E",$c(s,0)>0&&(P.a+="+"),P.a+=""+OS(s),P.a}function rv(t,e,n,r,s){var o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se;if(tt=new ae(t.g,t.f),J=v6t(t),J.a=b.Math.max(J.a,e),J.b=b.Math.max(J.b,n),se=J.a/tt.a,T=J.b/tt.b,Bt=J.a-tt.a,m=J.b-tt.b,r)for(h=Ji(t)?u(ne(Ji(t),(ai(),Rw)),88):u(ne(t,(ai(),Rw)),88),d=$t(ne(t,(ai(),fL)))===$t((ka(),hu)),Tt=new Zn((!t.c&&(t.c=new Jt(kl,t,9,9)),t.c));Tt.e!=Tt.i.gc();)switch(ht=u(ar(Tt),123),At=u(ne(ht,hx),64),At==(ve(),bc)&&(At=Pkt(ht,h),Mi(ht,hx,At)),At.g){case 1:d||Su(ht,ht.i*se);break;case 2:Su(ht,ht.i+Bt),d||_u(ht,ht.j*T);break;case 3:d||Su(ht,ht.i*se),_u(ht,ht.j+m);break;case 4:d||_u(ht,ht.j*T)}if(H4(t,J.a,J.b),s)for(P=new Zn((!t.n&&(t.n=new Jt(Po,t,1,7)),t.n));P.e!=P.i.gc();)A=u(ar(P),135),$=A.i+A.g/2,U=A.j+A.f/2,Wt=$/tt.a,k=U/tt.b,Wt+k>=1&&(Wt-k>0&&U>=0?(Su(A,A.i+Bt),_u(A,A.j+m*k)):Wt-k<0&&$>=0&&(Su(A,A.i+Bt*Wt),_u(A,A.j+m)));return Mi(t,(ai(),jw),(Yl(),o=u(y1(xL),9),new _h(o,u(Ff(o,o.length),9),0))),new ae(se,T)}function Mpe(t){wm(t,new dw(p$(gm(hm(dm(fm(new G1,zh),"ELK Radial"),'A radial layout provider which is based on the algorithm of Peter Eades published in "Drawing free trees.", published by International Institute for Advanced Study of Social Information Science, Fujitsu Limited in 1991. The radial layouter takes a tree and places the nodes in radial order around the root. The nodes of the same tree level are placed on the same radius.'),new Kc),zh))),le(t,zh,JV,Se(H8e)),le(t,zh,h3,Se(V8e)),le(t,zh,_5,Se(j8e)),le(t,zh,Ik,Se($8e)),le(t,zh,Mk,Se(z8e)),le(t,zh,nT,Se(R8e)),le(t,zh,X_,Se(GLt)),le(t,zh,rT,Se(q8e)),le(t,zh,_lt,Se(tdt)),le(t,zh,Slt,Se(edt)),le(t,zh,sU,Se(WLt)),le(t,zh,Alt,Se(ndt)),le(t,zh,Llt,Se(YLt)),le(t,zh,q7t,Se(XLt)),le(t,zh,z7t,Se(KLt)),le(t,zh,B7t,Se(dK)),le(t,zh,R7t,Se(gK)),le(t,zh,j7t,Se(wP)),le(t,zh,$7t,Se(QLt)),le(t,zh,F7t,Se(ULt))}function mV(t){var e,n,r,s,o,h,d,m,k,T,A;if(t==null)throw at(new jd(Vu));if(k=t,o=t.length,m=!1,o>0&&(e=(qn(0,t.length),t.charCodeAt(0)),(e==45||e==43)&&(t=(qn(1,t.length+1),t.substr(1)),--o,m=e==45)),o==0)throw at(new jd(av+k+'"'));for(;t.length>0&&(qn(0,t.length),t.charCodeAt(0)==48);)t=(qn(1,t.length+1),t.substr(1)),--o;if(o>(cge(),Xve)[10])throw at(new jd(av+k+'"'));for(s=0;s0&&(A=-parseInt((Da(0,r,t.length),t.substr(0,r)),10),t=(qn(r,t.length+1),t.substr(r)),o-=r,n=!1);o>=h;){if(r=parseInt((Da(0,h,t.length),t.substr(0,h)),10),t=(qn(h,t.length+1),t.substr(h)),o-=h,n)n=!1;else{if($c(A,d)<0)throw at(new jd(av+k+'"'));A=Ja(A,T)}A=sf(A,r)}if($c(A,0)>0)throw at(new jd(av+k+'"'));if(!m&&(A=Cp(A),$c(A,0)<0))throw at(new jd(av+k+'"'));return A}function n8t(t){Tct();var e,n,r,s,o,h,d,m;if(t==null)return null;if(s=$d(t,Hu(37)),s<0)return t;for(m=new eh((Da(0,s,t.length),t.substr(0,s))),e=Vt(ul,M5,28,4,15,1),d=0,r=0,h=t.length;ss+2&&vat((qn(s+1,t.length),t.charCodeAt(s+1)),PIt,FIt)&&vat((qn(s+2,t.length),t.charCodeAt(s+2)),PIt,FIt))if(n=aun((qn(s+1,t.length),t.charCodeAt(s+1)),(qn(s+2,t.length),t.charCodeAt(s+2))),s+=2,r>0?(n&192)==128?e[d++]=n<<24>>24:r=0:n>=128&&((n&224)==192?(e[d++]=n<<24>>24,r=2):(n&240)==224?(e[d++]=n<<24>>24,r=3):(n&248)==240&&(e[d++]=n<<24>>24,r=4)),r>0){if(d==r){switch(d){case 2:{Db(m,((e[0]&31)<<6|e[1]&63)&js);break}case 3:{Db(m,((e[0]&15)<<12|(e[1]&63)<<6|e[2]&63)&js);break}}d=0,r=0}}else{for(o=0;o=2){if((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a).i==0)n=(kb(),s=new K8,s),Or((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a),n);else if((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a).i>1)for(P=new j6((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a));P.e!=P.i.gc();)E_(P);KO(e,u(Dt((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a),0),166))}if(A)for(r=new Zn((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a));r.e!=r.i.gc();)for(n=u(ar(r),166),k=new Zn((!n.a&&(n.a=new Ps(vh,n,5)),n.a));k.e!=k.i.gc();)m=u(ar(k),377),d.a=b.Math.max(d.a,m.a),d.b=b.Math.max(d.b,m.b);for(h=new Zn((!t.n&&(t.n=new Jt(Po,t,1,7)),t.n));h.e!=h.i.gc();)o=u(ar(h),135),T=u(ne(o,pL),8),T&&Ch(o,T.a,T.b),A&&(d.a=b.Math.max(d.a,o.i+o.g),d.b=b.Math.max(d.b,o.j+o.f));return d}function Ope(t,e,n,r,s){var o,h,d;if(Oae(t,e),h=e[0],o=Va(n.c,0),d=-1,t5t(n))if(r>0){if(h+r>t.length)return!1;d=KH((Da(0,h+r,t.length),t.substr(0,h+r)),e)}else d=KH(t,e);switch(o){case 71:return d=d5(t,h,lt(ut(Pe,1),ue,2,6,[mbe,vbe]),e),s.e=d,!0;case 77:return e8n(t,e,s,d,h);case 76:return n8n(t,e,s,d,h);case 69:return K4n(t,e,h,s);case 99:return W4n(t,e,h,s);case 97:return d=d5(t,h,lt(ut(Pe,1),ue,2,6,["AM","PM"]),e),s.b=d,!0;case 121:return r8n(t,e,h,d,n,s);case 100:return d<=0?!1:(s.c=d,!0);case 83:return d<0?!1:uwn(d,h,e[0],s);case 104:d==12&&(d=0);case 75:case 72:return d<0?!1:(s.f=d,s.g=!1,!0);case 107:return d<0?!1:(s.f=d,s.g=!0,!0);case 109:return d<0?!1:(s.j=d,!0);case 115:return d<0?!1:(s.n=d,!0);case 90:if(hrn[m]&&(tt=m),A=new G(t.a.b);A.a1;){if(s=W6n(e),A=o.g,U=u(ne(e,rL),107),J=Rt(Ht(ne(e,mK))),(!e.a&&(e.a=new Jt(bi,e,10,11)),e.a).i>1&&Rt(Ht(ne(e,(N0(),ldt))))!=Zi&&(o.c+(U.b+U.c))/(o.b+(U.d+U.a))1&&Rt(Ht(ne(e,(N0(),udt))))!=Zi&&(o.c+(U.b+U.c))/(o.b+(U.d+U.a))>J&&Mi(s,(N0(),B3),b.Math.max(Rt(Ht(ne(e,nL))),Rt(Ht(ne(s,B3)))-Rt(Ht(ne(e,udt))))),$=new lmt(r,T),m=Zpe($,s,P),k=m.g,k>=A&&k==k){for(h=0;h<(!s.a&&(s.a=new Jt(bi,s,10,11)),s.a).i;h++)S1e(t,u(Dt((!s.a&&(s.a=new Jt(bi,s,10,11)),s.a),h),27),u(Dt((!e.a&&(e.a=new Jt(bi,e,10,11)),e.a),h),27));soe(e,$),Jhn(o,m.c),Qhn(o,m.b)}--d}Mi(e,(N0(),eL),o.b),Mi(e,HT,o.c),n.Vg()}function HCn(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt;for(e.Ug("Interactive node layering",1),n=new fe,P=new G(t.a);P.a=d){ur(Tt.b>0),Tt.a.Xb(Tt.c=--Tt.b);break}else tt.a>m&&(r?(Hs(r.b,tt.b),r.a=b.Math.max(r.a,tt.a),Kl(Tt)):(ge(tt.b,T),tt.c=b.Math.min(tt.c,m),tt.a=b.Math.max(tt.a,d),r=tt));r||(r=new _Kt,r.c=m,r.a=d,Ly(Tt,r),ge(r.b,T))}for(h=t.b,k=0,ht=new G(n);ht.a$&&(o&&(ro(se,P),ro(rn,he(k.b-1))),Jr=n.b,is+=P+e,P=0,T=b.Math.max(T,n.b+n.c+er)),Su(d,Jr),_u(d,is),T=b.Math.max(T,Jr+er+n.c),P=b.Math.max(P,A),Jr+=er+e;if(T=b.Math.max(T,r),Dn=is+P+n.a,Dnn0,Ze=b.Math.abs(P.b-U.b)>n0,(!n&&rn&&Ze||n&&(rn||Ze))&&Zr(tt.a,Bt)),Ma(tt.a,r),r.b==0?P=Bt:P=(ur(r.b!=0),u(r.c.b.c,8)),Lpn($,A,J),ice(s)==Ce&&(Pa(Ce.i)!=s.a&&(J=new Sa,p6t(J,Pa(Ce.i),Tt)),Zt(tt,Qft,J)),h4n($,tt,Tt),T.a.zc($,T);Xa(tt,Wt),xa(tt,Ce)}for(k=T.a.ec().Kc();k.Ob();)m=u(k.Pb(),18),Xa(m,null),xa(m,null);e.Vg()}function GCn(t,e){var n,r,s,o,h,d,m,k,T,A,P;for(s=u(X(t,(Cc(),Mv)),88),T=s==(Rs(),Uo)||s==tc?kd:tc,n=u(nc(_i(new ln(null,new gn(t.b,16)),new XD),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)]))),15),m=u(nc(Wo(n.Oc(),new WUt(e)),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[sc]))),15),m.Gc(u(nc(Wo(n.Oc(),new YUt(e)),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[sc]))),16)),m.jd(new XUt(T)),P=new pp(new QUt(s)),r=new _r,d=m.Kc();d.Ob();)h=u(d.Pb(),240),k=u(h.a,39),Ie(Me(h.c))?(P.a.zc(k,(Pn(),t2))==null,new ra(P.a.Zc(k,!1)).a.gc()>0&&hi(r,k,u(new ra(P.a.Zc(k,!1)).a.Vc(),39)),new ra(P.a.ad(k,!0)).a.gc()>1&&hi(r,cle(P,k),k)):(new ra(P.a.Zc(k,!1)).a.gc()>0&&(o=u(new ra(P.a.Zc(k,!1)).a.Vc(),39),$t(o)===$t(Ko(Eo(r.f,k)))&&u(X(k,(ji(),P1t)),15).Fc(o)),new ra(P.a.ad(k,!0)).a.gc()>1&&(A=cle(P,k),$t(Ko(Eo(r.f,A)))===$t(k)&&u(X(A,(ji(),P1t)),15).Fc(k)),P.a.Bc(k)!=null)}function Npe(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt;if(t.gc()==1)return u(t.Xb(0),235);if(t.gc()<=0)return new mq;for(s=t.Kc();s.Ob();){for(n=u(s.Pb(),235),U=0,T=xi,A=xi,m=Ga,k=Ga,$=new G(n.e);$.a<$.c.c.length;)P=u(et($),153),U+=u(X(P,(Vf(),jk)),17).a,T=b.Math.min(T,P.d.a-P.e.a/2),A=b.Math.min(A,P.d.b-P.e.b/2),m=b.Math.max(m,P.d.a+P.e.a/2),k=b.Math.max(k,P.d.b+P.e.b/2);Zt(n,(Vf(),jk),he(U)),Zt(n,(Pb(),TA),new ae(T,A)),Zt(n,UN,new ae(m,k))}for(mn(),t.jd(new M8),J=new mq,Qo(J,u(t.Xb(0),96)),d=0,Tt=0,o=t.Kc();o.Ob();)n=u(o.Pb(),235),tt=ia(Oa(u(X(n,(Pb(),UN)),8)),u(X(n,TA),8)),d=b.Math.max(d,tt.a),Tt+=tt.a*tt.b;for(d=b.Math.max(d,b.Math.sqrt(Tt)*Rt(Ht(X(J,(Vf(),S3e))))),ht=Rt(Ht(X(J,KU))),At=0,Bt=0,h=0,e=ht,r=t.Kc();r.Ob();)n=u(r.Pb(),235),tt=ia(Oa(u(X(n,(Pb(),UN)),8)),u(X(n,TA),8)),At+tt.a>d&&(At=0,Bt+=h+ht,h=0),vEn(J,n,At,Bt),e=b.Math.max(e,At+tt.a),h=b.Math.max(h,tt.b),At+=tt.a+ht;return J}function KCn(t){Nkt();var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt;if(t==null||(o=Lq(t),U=x2n(o),U%4!=0))return null;if(J=U/4|0,J==0)return Vt(ul,M5,28,0,15,1);for(A=null,e=0,n=0,r=0,s=0,h=0,d=0,m=0,k=0,$=0,P=0,T=0,A=Vt(ul,M5,28,J*3,15,1);$>4)<<24>>24,A[P++]=((n&15)<<4|r>>2&15)<<24>>24,A[P++]=(r<<6|s)<<24>>24}return!PM(h=o[T++])||!PM(d=o[T++])?null:(e=_d[h],n=_d[d],m=o[T++],k=o[T++],_d[m]==-1||_d[k]==-1?m==61&&k==61?n&15?null:(tt=Vt(ul,M5,28,$*3+1,15,1),Xc(A,0,tt,0,$*3),tt[P]=(e<<2|n>>4)<<24>>24,tt):m!=61&&k==61?(r=_d[m],r&3?null:(tt=Vt(ul,M5,28,$*3+2,15,1),Xc(A,0,tt,0,$*3),tt[P++]=(e<<2|n>>4)<<24>>24,tt[P]=((n&15)<<4|r>>2&15)<<24>>24,tt)):null:(r=_d[m],s=_d[k],A[P++]=(e<<2|n>>4)<<24>>24,A[P++]=((n&15)<<4|r>>2&15)<<24>>24,A[P++]=(r<<6|s)<<24>>24,A))}function WCn(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt;for(e.Ug(_2e,1),U=u(X(t,(De(),zg)),223),s=new G(t.b);s.a=2){for(J=!0,P=new G(o.j),n=u(et(P),12),$=null;P.a0)if(r=A.gc(),k=Ys(b.Math.floor((r+1)/2))-1,s=Ys(b.Math.ceil((r+1)/2))-1,e.o==yd)for(T=s;T>=k;T--)e.a[Bt.p]==Bt&&(J=u(A.Xb(T),42),U=u(J.a,10),!x1(n,J.b)&&$>t.b.e[U.p]&&(e.a[U.p]=Bt,e.g[Bt.p]=e.g[U.p],e.a[Bt.p]=e.g[Bt.p],e.f[e.g[Bt.p].p]=(Pn(),!!(Ie(e.f[e.g[Bt.p].p])&Bt.k==(Un(),fa))),$=t.b.e[U.p]));else for(T=k;T<=s;T++)e.a[Bt.p]==Bt&&(ht=u(A.Xb(T),42),tt=u(ht.a,10),!x1(n,ht.b)&&$0&&(s=u(Oe(tt.c.a,se-1),10),h=t.i[s.p],rn=b.Math.ceil(U4(t.n,s,tt)),o=Wt.a.e-tt.d.d-(h.a.e+s.o.b+s.d.a)-rn),k=Zi,se0&&Ce.a.e.e-Ce.a.a-(Ce.b.e.e-Ce.b.a)<0,U=At.a.e.e-At.a.a-(At.b.e.e-At.b.a)<0&&Ce.a.e.e-Ce.a.a-(Ce.b.e.e-Ce.b.a)>0,$=At.a.e.e+At.b.aCe.b.e.e+Ce.a.a,Bt=0,!J&&!U&&(P?o+A>0?Bt=A:k-r>0&&(Bt=r):$&&(o+d>0?Bt=d:k-Tt>0&&(Bt=Tt))),Wt.a.e+=Bt,Wt.b&&(Wt.d.e+=Bt),!1))}function Fpe(t,e,n){var r,s,o,h,d,m,k,T,A,P;if(r=new Ah(e.Lf().a,e.Lf().b,e.Mf().a,e.Mf().b),s=new B6,t.c)for(h=new G(e.Rf());h.ak&&(r.a+=uJt(Vt(Yh,Zd,28,-k,15,1))),r.a+="Is",$d(m,Hu(32))>=0)for(s=0;s=r.o.b/2}else Tt=!A;Tt?(ht=u(X(r,(oe(),Wk)),15),ht?P?o=ht:(s=u(X(r,Hk),15),s?ht.gc()<=s.gc()?o=ht:o=s:(o=new fe,Zt(r,Hk,o))):(o=new fe,Zt(r,Wk,o))):(s=u(X(r,(oe(),Hk)),15),s?A?o=s:(ht=u(X(r,Wk),15),ht?s.gc()<=ht.gc()?o=s:o=ht:(o=new fe,Zt(r,Wk,o))):(o=new fe,Zt(r,Hk,o))),o.Fc(t),Zt(t,(oe(),AG),n),e.d==n?(xa(e,null),n.e.c.length+n.g.c.length==0&&hc(n,null),fbn(n)):(Xa(e,null),n.e.c.length+n.g.c.length==0&&hc(n,null)),nh(e.a)}function JCn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On,Dn,er,Jr,is;for(n.Ug("MinWidth layering",1),$=e.b,Ce=e.a,is=u(X(e,(De(),Z_t)),17).a,d=u(X(e,tAt),17).a,t.b=Rt(Ht(X(e,Yf))),t.d=Zi,Bt=new G(Ce);Bt.a0?(k=0,tt&&(k+=d),k+=(Ze-1)*h,At&&(k+=d),rn&&At&&(k=b.Math.max(k,mkn(At,h,Tt,Ce))),k=t.a&&(r=N7n(t,Tt),T=b.Math.max(T,r.b),Bt=b.Math.max(Bt,r.d),ge(d,new Ws(Tt,r)));for(rn=new fe,k=0;k0),tt.a.Xb(tt.c=--tt.b),Ze=new eu(t.b),Ly(tt,Ze),ur(tt.b0){for(P=T<100?null:new xb(T),k=new B4t(e),U=k.g,ht=Vt(Fr,ii,28,T,15,1),r=0,Bt=new $m(T),s=0;s=0;)if($!=null?Ti($,U[m]):$t($)===$t(U[m])){ht.length<=r&&(tt=ht,ht=Vt(Fr,ii,28,2*ht.length,15,1),Xc(tt,0,ht,0,r)),ht[r++]=s,Or(Bt,U[m]);break t}if($=$,$t($)===$t(d))break}}if(k=Bt,U=Bt.g,T=r,r>ht.length&&(tt=ht,ht=Vt(Fr,ii,28,r,15,1),Xc(tt,0,ht,0,r)),r>0){for(At=!0,o=0;o=0;)pk(t,ht[h]);if(r!=T){for(s=T;--s>=r;)pk(k,s);tt=ht,ht=Vt(Fr,ii,28,r,15,1),Xc(tt,0,ht,0,r)}e=k}}}else for(e=pvn(t,e),s=t.i;--s>=0;)e.Hc(t.g[s])&&(pk(t,s),At=!0);if(At){if(ht!=null){for(n=e.gc(),A=n==1?zS(t,4,e.Kc().Pb(),null,ht[0],J):zS(t,6,e,ht,ht[0],J),P=n<100?null:new xb(n),s=e.Kc();s.Ob();)$=s.Pb(),P=Svt(t,u($,76),P);P?(P.nj(A),P.oj()):Ei(t.e,A)}else{for(P=xan(e.gc()),s=e.Kc();s.Ob();)$=s.Pb(),P=Svt(t,u($,76),P);P&&P.oj()}return!0}else return!1}function eSn(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At;for(n=new the(e),n.a||DEn(e),k=_8n(e),m=new Fm,tt=new r0e,J=new G(e.a);J.a0||n.o==yd&&s=n}function rSn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On,Dn,er;for(At=e,Tt=new Fm,Bt=new Fm,T=jm(At,TTt),r=new une(t,n,Tt,Bt),E4n(r.a,r.b,r.c,r.d,T),m=(Ce=Tt.i,Ce||(Tt.i=new W4(Tt,Tt.c))),Ze=m.Kc();Ze.Ob();)for(rn=u(Ze.Pb(),166),s=u(Ai(Tt,rn),21),J=s.Kc();J.Ob();)if(U=J.Pb(),Wt=u(n5(t.d,U),166),Wt)d=(!rn.e&&(rn.e=new kn(Wi,rn,10,9)),rn.e),Or(d,Wt);else throw h=yg(At,a0),P=tme+U+eme+h,$=P+fT,at(new Rd($));for(k=(se=Bt.i,se||(Bt.i=new W4(Bt,Bt.c))),Dn=k.Kc();Dn.Ob();)for(On=u(Dn.Pb(),166),o=u(Ai(Bt,On),21),ht=o.Kc();ht.Ob();)if(tt=ht.Pb(),Wt=u(n5(t.d,tt),166),Wt)A=(!On.g&&(On.g=new kn(Wi,On,9,10)),On.g),Or(A,Wt);else throw h=yg(At,a0),P=tme+tt+eme+h,$=P+fT,at(new Rd($));!n.b&&(n.b=new kn(vr,n,4,7)),n.b.i!=0&&(!n.c&&(n.c=new kn(vr,n,5,8)),n.c.i!=0)&&(!n.b&&(n.b=new kn(vr,n,4,7)),n.b.i<=1&&(!n.c&&(n.c=new kn(vr,n,5,8)),n.c.i<=1))&&(!n.a&&(n.a=new Jt(Wi,n,6,6)),n.a).i==1&&(er=u(Dt((!n.a&&(n.a=new Jt(Wi,n,6,6)),n.a),0),166),!cot(er)&&!uot(er)&&(Vq(er,u(Dt((!n.b&&(n.b=new kn(vr,n,4,7)),n.b),0),84)),Uq(er,u(Dt((!n.c&&(n.c=new kn(vr,n,5,8)),n.c),0),84))))}function iSn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On;for(At=t.a,Bt=0,Wt=At.length;Bt0?(A=u(Oe(P.c.a,h-1),10),rn=U4(t.b,P,A),tt=P.n.b-P.d.d-(A.n.b+A.o.b+A.d.a+rn)):tt=P.n.b-P.d.d,k=b.Math.min(tt,k),h1&&(h=b.Math.min(h,b.Math.abs(u(jh(d.a,1),8).b-T.b)))));else for(J=new G(e.j);J.as&&(o=P.a-s,h=xi,r.c.length=0,s=P.a),P.a>=s&&(In(r.c,d),d.a.b>1&&(h=b.Math.min(h,b.Math.abs(u(jh(d.a,d.a.b-2),8).b-P.b)))));if(r.c.length!=0&&o>e.o.a/2&&h>e.o.b/2){for($=new Yc,hc($,e),Xs($,(ve(),Hn)),$.n.a=e.o.a/2,ht=new Yc,hc(ht,e),Xs(ht,Er),ht.n.a=e.o.a/2,ht.n.b=e.o.b,m=new G(r);m.a=k.b?Xa(d,ht):Xa(d,$)):(k=u(Ycn(d.a),8),tt=d.a.b==0?rd(d.c):u(Pf(d.a),8),tt.b>=k.b?xa(d,ht):xa(d,$)),A=u(X(d,(De(),Vo)),75),A&&Ky(A,k,!0);e.n.a=s-e.o.a/2}}function aSn(t,e,n){var r,s,o,h,d,m,k,T,A,P;for(d=Dr(t.b,0);d.b!=d.d.c;)if(h=u(Ar(d),39),!hn(h.c,nU))for(k=Mxn(h,t),e==(Rs(),Uo)||e==tc?Ds(k,new ttt):Ds(k,new ett),m=k.c.length,r=0;r=0?$=hk(d):$=bO(hk(d)),t.qf(NT,$)),k=new Sa,P=!1,t.pf(Sv)?(Xmt(k,u(t.of(Sv),8)),P=!0):bsn(k,h.a/2,h.b/2),$.g){case 4:Zt(T,Iu,(Rh(),s2)),Zt(T,DG,(ow(),z5)),T.o.b=h.b,J<0&&(T.o.a=-J),Xs(A,(ve(),Jn)),P||(k.a=h.a),k.a-=h.a;break;case 2:Zt(T,Iu,(Rh(),S3)),Zt(T,DG,(ow(),_T)),T.o.b=h.b,J<0&&(T.o.a=-J),Xs(A,(ve(),Gn)),P||(k.a=0);break;case 1:Zt(T,Aw,(Cg(),H5)),T.o.a=h.a,J<0&&(T.o.b=-J),Xs(A,(ve(),Er)),P||(k.b=h.b),k.b-=h.b;break;case 3:Zt(T,Aw,(Cg(),qk)),T.o.a=h.a,J<0&&(T.o.b=-J),Xs(A,(ve(),Hn)),P||(k.b=0)}if(Xmt(A.n,k),Zt(T,Sv,k),e==zw||e==Y0||e==hu){if(U=0,e==zw&&t.pf(Vp))switch($.g){case 1:case 2:U=u(t.of(Vp),17).a;break;case 3:case 4:U=-u(t.of(Vp),17).a}else switch($.g){case 4:case 2:U=o.b,e==Y0&&(U/=s.b);break;case 1:case 3:U=o.a,e==Y0&&(U/=s.a)}Zt(T,xv,U)}return Zt(T,Dc,$),T}function oSn(){xwt();function t(r){var s=this;this.dispatch=function(o){var h=o.data;switch(h.cmd){case"algorithms":var d=q5t((mn(),new Ta(new si(b2.b))));r.postMessage({id:h.id,data:d});break;case"categories":var m=q5t((mn(),new Ta(new si(b2.c))));r.postMessage({id:h.id,data:m});break;case"options":var k=q5t((mn(),new Ta(new si(b2.d))));r.postMessage({id:h.id,data:k});break;case"register":l9n(h.algorithms),r.postMessage({id:h.id});break;case"layout":j7n(h.graph,h.layoutOptions||{},h.options||{}),r.postMessage({id:h.id,data:h.graph});break}},this.saveDispatch=function(o){try{s.dispatch(o)}catch(h){r.postMessage({id:o.data.id,error:h})}}}function e(r){var s=this;this.dispatcher=new t({postMessage:function(o){s.onmessage({data:o})}}),this.postMessage=function(o){setTimeout(function(){s.dispatcher.saveDispatch({data:o})},0)}}if(typeof document===but&&typeof self!==but){var n=new t(self);self.onmessage=n.saveDispatch}else typeof g!==but&&g.exports&&(Object.defineProperty(w,"__esModule",{value:!0}),g.exports={default:e,Worker:e})}function qpe(t,e,n){var r,s,o,h,d,m,k,T,A,P;for(T=new Ig(n),Qo(T,e),Zt(T,(oe(),Li),e),T.o.a=e.g,T.o.b=e.f,T.n.a=e.i,T.n.b=e.j,ge(n.a,T),hi(t.a,e,T),((!e.a&&(e.a=new Jt(bi,e,10,11)),e.a).i!=0||Ie(Me(ne(e,(De(),L3)))))&&Zt(T,YSt,(Pn(),!0)),k=u(X(n,lu),21),A=u(X(T,(De(),bs)),101),A==(ka(),d2)?Zt(T,bs,Td):A!=Td&&k.Fc((Co(),DT)),P=0,r=u(X(n,ph),88),m=new Zn((!e.c&&(e.c=new Jt(kl,e,9,9)),e.c));m.e!=m.i.gc();)d=u(ar(m),123),s=Ji(e),($t(ne(s,U0))!==$t((Wd(),Up))||$t(ne(s,Dw))===$t((Ip(),ST))||$t(ne(s,Dw))===$t((Ip(),CT))||Ie(Me(ne(s,Ev)))||$t(ne(s,_3))!==$t((lw(),x3))||$t(ne(s,a2))===$t((cf(),Lv))||$t(ne(s,a2))===$t((cf(),N3))||$t(ne(s,Iw))===$t((Bp(),RT))||$t(ne(s,Iw))===$t((Bp(),jT)))&&!Ie(Me(ne(e,BG)))&&Mi(d,Pi,he(P++)),Ie(Me(ne(d,Nw)))||wCn(t,d,T,k,r,A);for(h=new Zn((!e.n&&(e.n=new Jt(Po,e,1,7)),e.n));h.e!=h.i.gc();)o=u(ar(h),135),!Ie(Me(ne(o,Nw)))&&o.a&&ge(T.b,Pat(o));return Ie(Me(X(T,PA)))&&k.Fc((Co(),CG)),Ie(Me(X(T,zG)))&&(k.Fc((Co(),SG)),k.Fc(LA),Zt(T,bs,Td)),T}function Mct(t,e,n,r,s,o,h){var d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On,Dn,er,Jr,is;for(J=0,On=0,k=new G(t.b);k.aJ&&(o&&(ro(se,$),ro(rn,he(T.b-1)),ge(t.d,U),d.c.length=0),Jr=n.b,is+=$+e,$=0,A=b.Math.max(A,n.b+n.c+er)),In(d.c,m),Gle(m,Jr,is),A=b.Math.max(A,Jr+er+n.c),$=b.Math.max($,P),Jr+=er+e,U=m;if(Hs(t.a,d),ge(t.d,u(Oe(d,d.c.length-1),163)),A=b.Math.max(A,r),Dn=is+$+n.a,Dns.d.d+s.d.a?T.f.d=!0:(T.f.d=!0,T.f.a=!0))),r.b!=r.d.c&&(e=n);T&&(o=u(tr(t.f,h.d.i),60),e.bo.d.d+o.d.a?T.f.d=!0:(T.f.d=!0,T.f.a=!0))}for(d=new rr(sr(ua($).a.Kc(),new z));Mr(d);)h=u(dr(d),18),h.a.b!=0&&(e=u(Pf(h.a),8),h.d.j==(ve(),Hn)&&(tt=new P_(e,new ae(e.a,s.d.d),s,h),tt.f.a=!0,tt.a=h.d,In(J.c,tt)),h.d.j==Er&&(tt=new P_(e,new ae(e.a,s.d.d+s.d.a),s,h),tt.f.d=!0,tt.a=h.d,In(J.c,tt)))}return J}function dSn(t,e,n){var r,s,o,h,d,m,k,T,A,P;for(m=new fe,A=e.length,h=Z4t(n),k=0;k=U&&(Tt>U&&($.c.length=0,U=Tt),In($.c,h));$.c.length!=0&&(P=u(Oe($,MH(e,$.c.length)),131),Dn.a.Bc(P)!=null,P.s=J++,X6t(P,Ze,se),$.c.length=0)}for(Bt=t.c.length+1,d=new G(t);d.aOn.s&&(Kl(n),zu(On.i,r),r.c>0&&(r.a=On,ge(On.t,r),r.b=Ce,ge(Ce.i,r)))}function Hpe(t,e,n,r,s){var o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On,Dn;for(J=new wu(e.b),Bt=new wu(e.b),P=new wu(e.b),rn=new wu(e.b),tt=new wu(e.b),Ce=Dr(e,0);Ce.b!=Ce.d.c;)for(Wt=u(Ar(Ce),12),d=new G(Wt.g);d.a0,ht=Wt.g.c.length>0,k&&ht?In(P.c,Wt):k?In(J.c,Wt):ht&&In(Bt.c,Wt);for(U=new G(J);U.aTt.nh()-k.b&&(P=Tt.nh()-k.b),$>Tt.oh()-k.d&&($=Tt.oh()-k.d),T0){for(At=Dr(t.f,0);At.b!=At.d.c;)Tt=u(Ar(At),10),Tt.p+=P-t.e;b6t(t),nh(t.f),lkt(t,r,$)}else{for(Zr(t.f,$),$.p=r,t.e=b.Math.max(t.e,r),o=new rr(sr(ua($).a.Kc(),new z));Mr(o);)s=u(dr(o),18),!s.c.i.c&&s.c.i.k==(Un(),Vc)&&(Zr(t.f,s.c.i),s.c.i.p=r-1);t.c=r}else b6t(t),nh(t.f),r=0,Mr(new rr(sr(ua($).a.Kc(),new z)))?(P=0,P=Qle(P,$),r=P+2,lkt(t,r,$)):(Zr(t.f,$),$.p=0,t.e=b.Math.max(t.e,0),t.b=u(Oe(t.d.b,0),30),t.c=0);for(t.f.b==0||b6t(t),t.d.a.c.length=0,ht=new fe,k=new G(t.d.b);k.a=48&&e<=57){for(r=e-48;s=48&&e<=57;)if(r=r*10+e-48,r<0)throw at(new Yr(Qr((Ur(),BTt))))}else throw at(new Yr(Qr((Ur(),_me))));if(n=r,e==44){if(s>=t.j)throw at(new Yr(Qr((Ur(),Lme))));if((e=Va(t.i,s++))>=48&&e<=57){for(n=e-48;s=48&&e<=57;)if(n=n*10+e-48,n<0)throw at(new Yr(Qr((Ur(),BTt))));if(r>n)throw at(new Yr(Qr((Ur(),Dme))))}else n=-1}if(e!=125)throw at(new Yr(Qr((Ur(),Ame))));t.bm(s)?(o=(yi(),yi(),new By(9,o)),t.d=s+1):(o=(yi(),yi(),new By(3,o)),t.d=s),o.Om(r),o.Nm(n),wi(t)}}return o}function vSn(t){var e,n,r,s,o;switch(n=u(X(t,(oe(),lu)),21),e=rz(J3e),s=u(X(t,(De(),A3)),346),s==(Ag(),Xp)&&ch(e,Z3e),Ie(Me(X(t,a1t)))?ri(e,(Ua(),Wf),(Za(),pft)):ri(e,(Ua(),Qc),(Za(),pft)),X(t,(kq(),oL))!=null&&ch(e,t4e),(Ie(Me(X(t,X_t)))||Ie(Me(X(t,G_t))))&&el(e,(Ua(),Zo),(Za(),UCt)),u(X(t,ph),88).g){case 2:case 3:case 4:el(ri(e,(Ua(),Wf),(Za(),KCt)),Zo,GCt)}switch(n.Hc((Co(),CG))&&el(ri(ri(e,(Ua(),Wf),(Za(),VCt)),cu,qCt),Zo,HCt),$t(X(t,a2))!==$t((cf(),ZG))&&ri(e,(Ua(),Qc),(Za(),cSt)),n.Hc(_G)&&(ri(e,(Ua(),Wf),(Za(),fSt)),ri(e,H0,lSt),ri(e,Qc,hSt)),$t(X(t,PG))!==$t((M7(),AA))&&$t(X(t,zg))!==$t((Lg(),IP))&&el(e,(Ua(),Zo),(Za(),nSt)),Ie(Me(X(t,W_t)))&&ri(e,(Ua(),Qc),(Za(),eSt)),Ie(Me(X(t,n1t)))&&ri(e,(Ua(),Qc),(Za(),dSt)),I6n(t)&&($t(X(t,A3))===$t(Xp)?r=u(X(t,iP),298):r=u(X(t,e1t),298),o=r==(c7(),$ft)?(Za(),uSt):(Za(),bSt),ri(e,(Ua(),cu),o)),u(X(t,kAt),388).g){case 1:ri(e,(Ua(),cu),(Za(),gSt));break;case 2:el(ri(ri(e,(Ua(),Qc),(Za(),RCt)),cu,jCt),Zo,$Ct)}return $t(X(t,U0))!==$t((Wd(),Up))&&ri(e,(Ua(),Qc),(Za(),pSt)),e}function Kpe(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At;if(Tu(t.a,e)){if(x1(u(tr(t.a,e),49),n))return 1}else hi(t.a,e,new Os);if(Tu(t.a,n)){if(x1(u(tr(t.a,n),49),e))return-1}else hi(t.a,n,new Os);if(Tu(t.e,e)){if(x1(u(tr(t.e,e),49),n))return-1}else hi(t.e,e,new Os);if(Tu(t.e,n)){if(x1(u(tr(t.a,n),49),e))return 1}else hi(t.e,n,new Os);if(t.c==(Wd(),k1t)||!qi(e,(oe(),Pi))||!qi(n,(oe(),Pi))){for(A=null,k=new G(e.j);k.ah?R7(t,e,n):R7(t,n,e),sh?1:0}return r=u(X(e,(oe(),Pi)),17).a,o=u(X(n,Pi),17).a,r>o?R7(t,e,n):R7(t,n,e),ro?1:0}function iv(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt;if(n==null)return null;if(t.a!=e.jk())throw at(new zn(lT+e.xe()+fv));if(Lt(e,468)){if(tt=l8n(u(e,685),n),!tt)throw at(new zn(Hlt+n+"' is not a valid enumerator of '"+e.xe()+"'"));return tt}switch(Lp((il(),ja),e).Nl()){case 2:{n=su(n,!1);break}case 3:{n=su(n,!0);break}}if(r=Lp(ja,e).Jl(),r)return r.jk().wi().ti(r,n);if(P=Lp(ja,e).Ll(),P){for(tt=new fe,k=Sat(n),T=0,A=k.length;T1)for(U=new j6((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a));U.e!=U.i.gc();)E_(U);for(h=u(Dt((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a),0),166),tt=Jr,Jr>Wt+Bt?tt=Wt+Bt:Jrse+J?ht=se+J:isWt-Bt&&ttse-J&&htJr+er?rn=Jr+er:Wtis+Ce?Ze=is+Ce:seJr-er&&rnis-Ce&&Zen&&(P=n-1),$=rb+Dl(e,24)*lN*A-A/2,$<0?$=1:$>r&&($=r-1),s=(kb(),m=new fC,m),Rq(s,P),Bq(s,$),Or((!h.a&&(h.a=new Ps(vh,h,5)),h.a),s)}function Wpe(t){wm(t,new dw(gm(hm(dm(fm(new G1,Ol),"ELK Rectangle Packing"),"Algorithm for packing of unconnected boxes, i.e. graphs without edges. The given order of the boxes is always preserved and the main reading direction of the boxes is left to right. The algorithm is divided into two phases. One phase approximates the width in which the rectangles can be placed. The next phase places the rectangles in rows using the previously calculated width as bounding width and bundles rectangles with a similar height in blocks. A compaction step reduces the size of the drawing. Finally, the rectangles are expanded to fill their bounding box and eliminate empty unused spaces."),new s6))),le(t,Ol,Dk,1.3),le(t,Ol,eT,(Pn(),!1)),le(t,Ol,ov,wDt),le(t,Ol,h3,15),le(t,Ol,QV,Se(hEe)),le(t,Ol,_5,Se(gEe)),le(t,Ol,Ik,Se(bEe)),le(t,Ol,Mk,Se(wEe)),le(t,Ol,nT,Se(dEe)),le(t,Ol,X_,Se(gDt)),le(t,Ol,rT,Se(mEe)),le(t,Ol,Q7t,Se(xDt)),le(t,Ol,J7t,Se(yDt)),le(t,Ol,X7t,Se(ddt)),le(t,Ol,Y7t,Se(kDt)),le(t,Ol,Z7t,Se(bDt)),le(t,Ol,tTt,Se(fdt)),le(t,Ol,eTt,Se(pDt)),le(t,Ol,nTt,Se(vDt)),le(t,Ol,Y_,Se(dDt)),le(t,Ol,ZV,Se(fEe)),le(t,Ol,K7t,Se(vP)),le(t,Ol,G7t,Se(fDt)),le(t,Ol,W7t,Se(yP)),le(t,Ol,U7t,Se(mDt))}function Oct(t,e){mct();var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On,Dn,er,Jr;if(rn=t.e,U=t.d,s=t.a,rn==0)switch(e){case 0:return"0";case 1:return Y7;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return se=new yb,e<0?se.a+="0E+":se.a+="0E",se.a+=-e,se.a}if(At=U*10+1+7,Bt=Vt(Yh,Zd,28,At+1,15,1),n=At,U==1)if(d=s[0],d<0){Jr=sa(d,So);do J=Jr,Jr=_O(Jr,10),Bt[--n]=48+qr(sf(J,Ja(Jr,10)))&js;while($c(Jr,0)!=0)}else{Jr=d;do J=Jr,Jr=Jr/10|0,Bt[--n]=48+(J-Jr*10)&js;while(Jr!=0)}else{On=Vt(Fr,ii,28,U,15,1),er=U,Xc(s,0,On,0,er);t:for(;;){for(Ce=0,k=er-1;k>=0;k--)Dn=Qa(Rf(Ce,32),sa(On[k],So)),ht=c3n(Dn),On[k]=qr(ht),Ce=qr(_m(ht,32));Tt=qr(Ce),tt=n;do Bt[--n]=48+Tt%10&js;while((Tt=Tt/10|0)!=0&&n!=0);for(r=9-tt+n,m=0;m0;m++)Bt[--n]=48;for(A=er-1;On[A]==0;A--)if(A==0)break t;er=A+1}for(;Bt[n]==48;)++n}if($=rn<0,h=At-n-e-1,e==0)return $&&(Bt[--n]=45),af(Bt,n,At-n);if(e>0&&h>=-6){if(h>=0){for(T=n+h,P=At-1;P>=T;P--)Bt[P+1]=Bt[P];return Bt[++T]=46,$&&(Bt[--n]=45),af(Bt,n,At-n+1)}for(A=2;A<-h+1;A++)Bt[--n]=48;return Bt[--n]=46,Bt[--n]=48,$&&(Bt[--n]=45),af(Bt,n,At-n)}return Ze=n+1,o=At,Wt=new I4,$&&(Wt.a+="-"),o-Ze>=1?(Db(Wt,Bt[n]),Wt.a+=".",Wt.a+=af(Bt,n+1,At-n-1)):Wt.a+=af(Bt,n,At-n),Wt.a+="E",h>0&&(Wt.a+="+"),Wt.a+=""+h,Wt.a}function Ype(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se;switch(t.c=e,t.g=new _r,n=(xy(),new my(t.c)),r=new RC(n),j5t(r),At=Gr(ne(t.c,(LO(),zDt))),m=u(ne(t.c,Edt),324),Wt=u(ne(t.c,Tdt),437),h=u(ne(t.c,RDt),489),Bt=u(ne(t.c,kdt),438),t.j=Rt(Ht(ne(t.c,IEe))),d=t.a,m.g){case 0:d=t.a;break;case 1:d=t.b;break;case 2:d=t.i;break;case 3:d=t.e;break;case 4:d=t.f;break;default:throw at(new zn(cU+(m.f!=null?m.f:""+m.g)))}if(t.d=new zne(d,Wt,h),Zt(t.d,(s7(),EA),Me(ne(t.c,DEe))),t.d.c=Ie(Me(ne(t.c,jDt))),Jz(t.c).i==0)return t.d;for(A=new Zn(Jz(t.c));A.e!=A.i.gc();){for(T=u(ar(A),27),$=T.g/2,P=T.f/2,se=new ae(T.i+$,T.j+P);Tu(t.g,se);)Tm(se,(b.Math.random()-.5)*n0,(b.Math.random()-.5)*n0);J=u(ne(T,(ai(),UT)),140),tt=new ere(se,new Ah(se.a-$-t.j/2-J.b,se.b-P-t.j/2-J.d,T.g+t.j+(J.b+J.c),T.f+t.j+(J.d+J.a))),ge(t.d.i,tt),hi(t.g,se,new Ws(tt,T))}switch(Bt.g){case 0:if(At==null)t.d.d=u(Oe(t.d.i,0),68);else for(Tt=new G(t.d.i);Tt.a0?er+1:1);for(h=new G(se.g);h.a0?er+1:1)}t.c[k]==0?Zr(t.e,J):t.a[k]==0&&Zr(t.f,J),++k}for(U=-1,$=1,A=new fe,t.d=u(X(e,(oe(),Kk)),234);yh>0;){for(;t.e.b!=0;)is=u(Tit(t.e),10),t.b[is.p]=U--,_kt(t,is),--yh;for(;t.f.b!=0;)El=u(Tit(t.f),10),t.b[El.p]=$++,_kt(t,El),--yh;if(yh>0){for(P=Ga,Tt=new G(At);Tt.a=P&&(Bt>P&&(A.c.length=0,P=Bt),In(A.c,J)));T=t.sg(A),t.b[T.p]=$++,_kt(t,T),--yh}}for(Jr=At.c.length+1,k=0;kt.b[Go]&&(nv(r,!0),Zt(e,tP,(Pn(),!0)));t.a=null,t.c=null,t.b=null,nh(t.f),nh(t.e),n.Vg()}function Xpe(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se;for(Wt=u(Dt((!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a),0),166),T=new Qu,Bt=new _r,se=sge(Wt),yu(Bt.f,Wt,se),P=new _r,r=new Ki,U=A0(ah(lt(ut(gh,1),Ln,20,0,[(!e.d&&(e.d=new kn(Ts,e,8,5)),e.d),(!e.e&&(e.e=new kn(Ts,e,7,4)),e.e)])));Mr(U);){if($=u(dr(U),74),(!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a).i!=1)throw at(new zn(Fwe+(!t.a&&(t.a=new Jt(Wi,t,6,6)),t.a).i));$!=t&&(tt=u(Dt((!$.a&&($.a=new Jt(Wi,$,6,6)),$.a),0),166),hs(r,tt,r.c.b,r.c),J=u(Ko(Eo(Bt.f,tt)),13),J||(J=sge(tt),yu(Bt.f,tt,J)),A=n?ia(new io(u(Oe(se,se.c.length-1),8)),u(Oe(J,J.c.length-1),8)):ia(new io((vn(0,se.c.length),u(se.c[0],8))),(vn(0,J.c.length),u(J.c[0],8))),yu(P.f,tt,A))}if(r.b!=0)for(ht=u(Oe(se,n?se.c.length-1:0),8),k=1;k1&&hs(T,ht,T.c.b,T.c),Qst(s)));ht=Tt}return T}function Qpe(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On;for(n.Ug(Q2e,1),On=u(nc(_i(new ln(null,new gn(e,16)),new ott),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)]))),15),T=u(nc(_i(new ln(null,new gn(e,16)),new ZUt(e)),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[sc]))),15),U=u(nc(_i(new ln(null,new gn(e,16)),new JUt(e)),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[sc]))),15),J=Vt(aK,rU,39,e.gc(),0,1),h=0;h=0&&Ze=0&&!J[$]){J[$]=s,T.gd(d),--d;break}if($=Ze-P,$=0&&!J[$]){J[$]=s,T.gd(d),--d;break}}for(U.jd(new ctt),m=J.length-1;m>=0;m--)!J[m]&&!U.dc()&&(J[m]=u(U.Xb(0),39),U.gd(0));for(k=0;k=0;m--)Zr(n,(vn(m,h.c.length),u(h.c[m],8)));return n}function Zpe(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt;for(At=Rt(Ht(ne(e,(N0(),B3)))),$=Rt(Ht(ne(e,nL))),P=Rt(Ht(ne(e,bK))),M4t((!e.a&&(e.a=new Jt(bi,e,10,11)),e.a)),ht=Hge((!e.a&&(e.a=new Jt(bi,e,10,11)),e.a),At,t.b),tt=0;ttP&&CO((vn(P,e.c.length),u(e.c[P],186)),T),T=null;e.c.length>P&&(vn(P,e.c.length),u(e.c[P],186)).a.c.length==0;)zu(e,(vn(P,e.c.length),e.c[P]));if(!T){--h;continue}if(!Ie(Me(u(Oe(T.b,0),27).of((fd(),yP))))&&HEn(e,U,o,T,tt,n,P,r)){J=!0;continue}if(tt){if($=U.b,A=T.f,!Ie(Me(u(Oe(T.b,0),27).of(yP)))&&o9n(e,U,o,T,n,P,r,s)){if(J=!0,$=t.j){t.a=-1,t.c=1;return}if(e=Va(t.i,t.d++),t.a=e,t.b==1){switch(e){case 92:if(r=10,t.d>=t.j)throw at(new Yr(Qr((Ur(),pU))));t.a=Va(t.i,t.d++);break;case 45:(t.e&512)==512&&t.d=t.j||Va(t.i,t.d)!=63)break;if(++t.d>=t.j)throw at(new Yr(Qr((Ur(),nht))));switch(e=Va(t.i,t.d++),e){case 58:r=13;break;case 61:r=14;break;case 33:r=15;break;case 91:r=19;break;case 62:r=18;break;case 60:if(t.d>=t.j)throw at(new Yr(Qr((Ur(),nht))));if(e=Va(t.i,t.d++),e==61)r=16;else if(e==33)r=17;else throw at(new Yr(Qr((Ur(),ume))));break;case 35:for(;t.d=t.j)throw at(new Yr(Qr((Ur(),pU))));t.a=Va(t.i,t.d++);break;default:r=0}t.c=r}function LSn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt;if(n.Ug("Process compaction",1),!!Ie(Me(X(e,(Cc(),xLt))))){for(s=u(X(e,Mv),88),$=Rt(Ht(X(e,H1t))),nTn(t,e,s),GCn(e,$/2/2),U=e.b,rw(U,new UUt(s)),k=Dr(U,0);k.b!=k.d.c;)if(m=u(Ar(k),39),!Ie(Me(X(m,(ji(),u2))))){if(r=A8n(m,s),J=E7n(m,e),A=0,P=0,r)switch(tt=r.e,s.g){case 2:A=tt.a-$-m.f.a,J.e.a-$-m.f.aA&&(A=J.e.a+J.f.a+$),P=A+m.f.a;break;case 4:A=tt.b-$-m.f.b,J.e.b-$-m.f.bA&&(A=J.e.b+J.f.b+$),P=A+m.f.b}else if(J)switch(s.g){case 2:A=J.e.a-$-m.f.a,P=A+m.f.a;break;case 1:A=J.e.a+J.f.a+$,P=A+m.f.a;break;case 4:A=J.e.b-$-m.f.b,P=A+m.f.b;break;case 3:A=J.e.b+J.f.b+$,P=A+m.f.b}$t(X(e,q1t))===$t((s_(),dP))?(o=A,h=P,d=f7(_i(new ln(null,new gn(t.a,16)),new NXt(o,h))),d.a!=null?s==(Rs(),Uo)||s==tc?m.e.a=A:m.e.b=A:(s==(Rs(),Uo)||s==Gh?d=f7(_i(loe(new ln(null,new gn(t.a,16))),new GUt(o))):d=f7(_i(loe(new ln(null,new gn(t.a,16))),new KUt(o))),d.a!=null&&(s==Uo||s==tc?m.e.a=Rt(Ht((ur(d.a!=null),u(d.a,42)).a)):m.e.b=Rt(Ht((ur(d.a!=null),u(d.a,42)).a)))),d.a!=null&&(T=Xo(t.a,(ur(d.a!=null),d.a),0),T>0&&T!=u(X(m,h0),17).a&&(Zt(m,dLt,(Pn(),!0)),Zt(m,h0,he(T))))):s==(Rs(),Uo)||s==tc?m.e.a=A:m.e.b=A}n.Vg()}}function tbe(t){var e,n,r,s,o,h,d,m,k;for(t.b=1,wi(t),e=null,t.c==0&&t.a==94?(wi(t),e=(yi(),yi(),new ih(4)),iu(e,0,gT),d=new ih(4)):d=(yi(),yi(),new ih(4)),s=!0;(k=t.c)!=1;){if(k==0&&t.a==93&&!s){e&&($_(e,d),d=e);break}if(n=t.a,r=!1,k==10)switch(n){case 100:case 68:case 119:case 87:case 115:case 83:a3(d,j7(n)),r=!0;break;case 105:case 73:case 99:case 67:n=(a3(d,j7(n)),-1),n<0&&(r=!0);break;case 112:case 80:if(m=M6t(t,n),!m)throw at(new Yr(Qr((Ur(),rht))));a3(d,m),r=!0;break;default:n=fkt(t)}else if(k==24&&!s){if(e&&($_(e,d),d=e),o=tbe(t),$_(d,o),t.c!=0||t.a!=93)throw at(new Yr(Qr((Ur(),vme))));break}if(wi(t),!r){if(k==0){if(n==91)throw at(new Yr(Qr((Ur(),PTt))));if(n==93)throw at(new Yr(Qr((Ur(),FTt))));if(n==45&&!s&&t.a!=93)throw at(new Yr(Qr((Ur(),iht))))}if(t.c!=0||t.a!=45||n==45&&s)iu(d,n,n);else{if(wi(t),(k=t.c)==1)throw at(new Yr(Qr((Ur(),bU))));if(k==0&&t.a==93)iu(d,n,n),iu(d,45,45);else{if(k==0&&t.a==93||k==24)throw at(new Yr(Qr((Ur(),iht))));if(h=t.a,k==0){if(h==91)throw at(new Yr(Qr((Ur(),PTt))));if(h==93)throw at(new Yr(Qr((Ur(),FTt))));if(h==45)throw at(new Yr(Qr((Ur(),iht))))}else k==10&&(h=fkt(t));if(wi(t),n>h)throw at(new Yr(Qr((Ur(),kme))));iu(d,n,h)}}}s=!1}if(t.c==1)throw at(new Yr(Qr((Ur(),bU))));return g5(d),R_(d),t.b=0,wi(t),d}function DSn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt;if(n.Ug("Coffman-Graham Layering",1),e.a.c.length==0){n.Vg();return}for(Wt=u(X(e,(De(),J_t)),17).a,m=0,h=0,P=new G(e.a);P.a=Wt||!Twn(ht,r))&&(r=Qee(e,T)),Aa(ht,r),o=new rr(sr(ua(ht).a.Kc(),new z));Mr(o);)s=u(dr(o),18),!t.a[s.p]&&(J=s.c.i,--t.e[J.p],t.e[J.p]==0&&V6(D7($,J),X7));for(k=T.c.length-1;k>=0;--k)ge(e.b,(vn(k,T.c.length),u(T.c[k],30)));e.a.c.length=0,n.Vg()}function ebe(t,e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt;Bt=!1;do for(Bt=!1,o=e?new cr(t.a.b).a.gc()-2:1;e?o>=0:ou(X(tt,Pi),17).a)&&(At=!1);if(At){for(m=e?o+1:o-1,d=m3t(t.a,he(m)),h=!1,Tt=!0,r=!1,T=Dr(d,0);T.b!=T.d.c;)k=u(Ar(T),10),qi(k,Pi)?k.p!=A.p&&(h=h|(e?u(X(k,Pi),17).au(X(A,Pi),17).a),Tt=!1):!h&&Tt&&k.k==(Un(),Vc)&&(r=!0,e?P=u(dr(new rr(sr(ua(k).a.Kc(),new z))),18).c.i:P=u(dr(new rr(sr(_s(k).a.Kc(),new z))),18).d.i,P==A&&(e?n=u(dr(new rr(sr(_s(k).a.Kc(),new z))),18).d.i:n=u(dr(new rr(sr(ua(k).a.Kc(),new z))),18).c.i,(e?u(Sy(t.a,n),17).a-u(Sy(t.a,P),17).a:u(Sy(t.a,P),17).a-u(Sy(t.a,n),17).a)<=2&&(Tt=!1)));if(r&&Tt&&(e?n=u(dr(new rr(sr(_s(A).a.Kc(),new z))),18).d.i:n=u(dr(new rr(sr(ua(A).a.Kc(),new z))),18).c.i,(e?u(Sy(t.a,n),17).a-u(Sy(t.a,A),17).a:u(Sy(t.a,A),17).a-u(Sy(t.a,n),17).a)<=2&&n.k==(Un(),xs)&&(Tt=!1)),h||Tt){for(J=Ide(t,A,e);J.a.gc()!=0;)U=u(J.a.ec().Kc().Pb(),10),J.a.Bc(U)!=null,Ma(J,Ide(t,U,e));--$,Bt=!0}}}while(Bt)}function MSn(t){zr(t.c,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#decimal"])),zr(t.d,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#integer"])),zr(t.e,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#boolean"])),zr(t.f,ti,lt(ut(Pe,1),ue,2,6,[Ka,"EBoolean",pi,"EBoolean:Object"])),zr(t.i,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#byte"])),zr(t.g,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#hexBinary"])),zr(t.j,ti,lt(ut(Pe,1),ue,2,6,[Ka,"EByte",pi,"EByte:Object"])),zr(t.n,ti,lt(ut(Pe,1),ue,2,6,[Ka,"EChar",pi,"EChar:Object"])),zr(t.t,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#double"])),zr(t.u,ti,lt(ut(Pe,1),ue,2,6,[Ka,"EDouble",pi,"EDouble:Object"])),zr(t.F,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#float"])),zr(t.G,ti,lt(ut(Pe,1),ue,2,6,[Ka,"EFloat",pi,"EFloat:Object"])),zr(t.I,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#int"])),zr(t.J,ti,lt(ut(Pe,1),ue,2,6,[Ka,"EInt",pi,"EInt:Object"])),zr(t.N,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#long"])),zr(t.O,ti,lt(ut(Pe,1),ue,2,6,[Ka,"ELong",pi,"ELong:Object"])),zr(t.Z,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#short"])),zr(t.$,ti,lt(ut(Pe,1),ue,2,6,[Ka,"EShort",pi,"EShort:Object"])),zr(t._,ti,lt(ut(Pe,1),ue,2,6,[Ka,"http://www.w3.org/2001/XMLSchema#string"]))}function ISn(t,e,n,r,s,o,h){var d,m,k,T,A,P,$,U;return P=u(r.a,17).a,$=u(r.b,17).a,A=t.b,U=t.c,d=0,T=0,e==(Rs(),Uo)||e==tc?(T=KM(Vue(Ny(Wo(new ln(null,new gn(n.b,16)),new ltt),new YZ))),A.e.b+A.f.b/2>T?(k=++$,d=Rt(Ht(Vl(My(Wo(new ln(null,new gn(n.b,16)),new BXt(s,k)),new DR))))):(m=++P,d=Rt(Ht(Vl(G6(Wo(new ln(null,new gn(n.b,16)),new RXt(s,m)),new XZ)))))):(T=KM(Vue(Ny(Wo(new ln(null,new gn(n.b,16)),new ZZ),new LR))),A.e.a+A.f.a/2>T?(k=++$,d=Rt(Ht(Vl(My(Wo(new ln(null,new gn(n.b,16)),new PXt(s,k)),new QZ))))):(m=++P,d=Rt(Ht(Vl(G6(Wo(new ln(null,new gn(n.b,16)),new FXt(s,m)),new QD)))))),e==Uo?(ro(t.a,new ae(Rt(Ht(X(A,(ji(),P1))))-s,d)),ro(t.a,new ae(U.e.a+U.f.a+s+o,d)),ro(t.a,new ae(U.e.a+U.f.a+s+o,U.e.b+U.f.b/2)),ro(t.a,new ae(U.e.a+U.f.a,U.e.b+U.f.b/2))):e==tc?(ro(t.a,new ae(Rt(Ht(X(A,(ji(),Xf))))+s,A.e.b+A.f.b/2)),ro(t.a,new ae(A.e.a+A.f.a+s,d)),ro(t.a,new ae(U.e.a-s-o,d)),ro(t.a,new ae(U.e.a-s-o,U.e.b+U.f.b/2)),ro(t.a,new ae(U.e.a,U.e.b+U.f.b/2))):e==Gh?(ro(t.a,new ae(d,Rt(Ht(X(A,(ji(),P1))))-s)),ro(t.a,new ae(d,U.e.b+U.f.b+s+o)),ro(t.a,new ae(U.e.a+U.f.a/2,U.e.b+U.f.b+s+o)),ro(t.a,new ae(U.e.a+U.f.a/2,U.e.b+U.f.b+s))):(t.a.b==0||(u(Pf(t.a),8).b=Rt(Ht(X(A,(ji(),Xf))))+s*u(h.b,17).a),ro(t.a,new ae(d,Rt(Ht(X(A,(ji(),Xf))))+s*u(h.b,17).a)),ro(t.a,new ae(d,U.e.b-s*u(h.a,17).a-o))),new Ws(he(P),he($))}function OSn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$;if(h=!0,A=null,r=null,s=null,e=!1,$=pTe,k=null,o=null,d=0,m=eot(t,d,BIt,RIt),m=0&&hn(t.substr(d,2),"//")?(d+=2,m=eot(t,d,CL,SL),r=(Da(d,m,t.length),t.substr(d,m-d)),d=m):A!=null&&(d==t.length||(qn(d,t.length),t.charCodeAt(d)!=47))&&(h=!1,m=qmt(t,Hu(35),d),m==-1&&(m=t.length),r=(Da(d,m,t.length),t.substr(d,m-d)),d=m);if(!n&&d0&&Va(T,T.length-1)==58&&(s=T,d=m)),dXot(o))&&(A=o);for(!A&&(A=(vn(0,tt.c.length),u(tt.c[0],185))),J=new G(e.b);J.aA&&(Dn=0,er+=T+Ce,T=0),U0e(Wt,h,Dn,er),e=b.Math.max(e,Dn+se.a),T=b.Math.max(T,se.b),Dn+=se.a+Ce;for(Bt=new _r,n=new _r,Ze=new G(t);Ze.a=-1900?1:0,n>=4?ni(t,lt(ut(Pe,1),ue,2,6,[mbe,vbe])[d]):ni(t,lt(ut(Pe,1),ue,2,6,["BC","AD"])[d]);break;case 121:Zwn(t,n,r);break;case 77:mEn(t,n,r);break;case 107:m=s.q.getHours(),m==0?M0(t,24,n):M0(t,m,n);break;case 83:M6n(t,n,s);break;case 69:T=r.q.getDay(),n==5?ni(t,lt(ut(Pe,1),ue,2,6,["S","M","T","W","T","F","S"])[T]):n==4?ni(t,lt(ut(Pe,1),ue,2,6,[Zct,tut,eut,nut,rut,iut,sut])[T]):ni(t,lt(ut(Pe,1),ue,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[T]);break;case 97:s.q.getHours()>=12&&s.q.getHours()<24?ni(t,lt(ut(Pe,1),ue,2,6,["AM","PM"])[1]):ni(t,lt(ut(Pe,1),ue,2,6,["AM","PM"])[0]);break;case 104:A=s.q.getHours()%12,A==0?M0(t,12,n):M0(t,A,n);break;case 75:P=s.q.getHours()%12,M0(t,P,n);break;case 72:$=s.q.getHours(),M0(t,$,n);break;case 99:U=r.q.getDay(),n==5?ni(t,lt(ut(Pe,1),ue,2,6,["S","M","T","W","T","F","S"])[U]):n==4?ni(t,lt(ut(Pe,1),ue,2,6,[Zct,tut,eut,nut,rut,iut,sut])[U]):n==3?ni(t,lt(ut(Pe,1),ue,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[U]):M0(t,U,1);break;case 76:J=r.q.getMonth(),n==5?ni(t,lt(ut(Pe,1),ue,2,6,["J","F","M","A","M","J","J","A","S","O","N","D"])[J]):n==4?ni(t,lt(ut(Pe,1),ue,2,6,[qct,Hct,Vct,Uct,Tk,Gct,Kct,Wct,Yct,Xct,Qct,Jct])[J]):n==3?ni(t,lt(ut(Pe,1),ue,2,6,["Jan","Feb","Mar","Apr",Tk,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"])[J]):M0(t,J+1,n);break;case 81:tt=r.q.getMonth()/3|0,n<4?ni(t,lt(ut(Pe,1),ue,2,6,["Q1","Q2","Q3","Q4"])[tt]):ni(t,lt(ut(Pe,1),ue,2,6,["1st quarter","2nd quarter","3rd quarter","4th quarter"])[tt]);break;case 100:ht=r.q.getDate(),M0(t,ht,n);break;case 109:k=s.q.getMinutes(),M0(t,k,n);break;case 115:h=s.q.getSeconds(),M0(t,h,n);break;case 122:n<4?ni(t,o.c[0]):ni(t,o.c[1]);break;case 118:ni(t,o.b);break;case 90:n<3?ni(t,T5n(o)):n==3?ni(t,L5n(o)):ni(t,D5n(o.a));break;default:return!1}return!0}function a8t(t,e,n,r){var s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On,Dn,er,Jr;if(N0e(e),m=u(Dt((!e.b&&(e.b=new kn(vr,e,4,7)),e.b),0),84),T=u(Dt((!e.c&&(e.c=new kn(vr,e,5,8)),e.c),0),84),d=Jo(m),k=Jo(T),h=(!e.a&&(e.a=new Jt(Wi,e,6,6)),e.a).i==0?null:u(Dt((!e.a&&(e.a=new Jt(Wi,e,6,6)),e.a),0),166),Ce=u(tr(t.a,d),10),Dn=u(tr(t.a,k),10),rn=null,er=null,Lt(m,193)&&(se=u(tr(t.a,m),304),Lt(se,12)?rn=u(se,12):Lt(se,10)&&(Ce=u(se,10),rn=u(Oe(Ce.j,0),12))),Lt(T,193)&&(On=u(tr(t.a,T),304),Lt(On,12)?er=u(On,12):Lt(On,10)&&(Dn=u(On,10),er=u(Oe(Dn.j,0),12))),!Ce||!Dn)throw at(new L6("The source or the target of edge "+e+" could not be found. This usually happens when an edge connects a node laid out by ELK Layered to a node in another level of hierarchy laid out by either another instance of ELK Layered or another layout algorithm alltogether. The former can be solved by setting the hierarchyHandling option to INCLUDE_CHILDREN."));for(J=new Pm,Qo(J,e),Zt(J,(oe(),Li),e),Zt(J,(De(),Vo),null),$=u(X(r,lu),21),Ce==Dn&&$.Fc((Co(),DA)),rn||(Wt=(To(),ku),Ze=null,h&&z4(u(X(Ce,bs),101))&&(Ze=new ae(h.j,h.k),Eie(Ze,AI(e)),Qie(Ze,n),qy(k,d)&&(Wt=vl,ki(Ze,Ce.n))),rn=Pge(Ce,Ze,Wt,r)),er||(Wt=(To(),vl),Jr=null,h&&z4(u(X(Dn,bs),101))&&(Jr=new ae(h.b,h.c),Eie(Jr,AI(e)),Qie(Jr,n)),er=Pge(Dn,Jr,Wt,Pa(Dn))),Xa(J,rn),xa(J,er),(rn.e.c.length>1||rn.g.c.length>1||er.e.c.length>1||er.g.c.length>1)&&$.Fc((Co(),LA)),P=new Zn((!e.n&&(e.n=new Jt(Po,e,1,7)),e.n));P.e!=P.i.gc();)if(A=u(ar(P),135),!Ie(Me(ne(A,Nw)))&&A.a)switch(tt=Pat(A),ge(J.b,tt),u(X(tt,l0),278).g){case 1:case 2:$.Fc((Co(),LT));break;case 0:$.Fc((Co(),AT)),Zt(tt,l0,(cd(),GT))}if(o=u(X(r,FA),322),ht=u(X(r,UG),323),s=o==(QS(),QN)||ht==(w_(),y1t),h&&(!h.a&&(h.a=new Ps(vh,h,5)),h.a).i!=0&&s){for(Tt=MO(h),U=new Qu,Bt=Dr(Tt,0);Bt.b!=Bt.d.c;)At=u(Ar(Bt),8),Zr(U,new io(At));Zt(J,t_t,U)}return J}function BSn(t,e,n,r){var s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On,Dn,er,Jr,is;for(Ze=0,On=0,Ce=new _r,Wt=u(Vl(My(Wo(new ln(null,new gn(t.b,16)),new JZ),new stt)),17).a+1,rn=Vt(Fr,ii,28,Wt,15,1),tt=Vt(Fr,ii,28,Wt,15,1),J=0;J1)for(d=er+1;dk.b.e.b*(1-ht)+k.c.e.b*ht));U++);if(se.gc()>0&&(Jr=k.a.b==0?Oa(k.b.e):u(Pf(k.a),8),At=ki(Oa(u(se.Xb(se.gc()-1),39).e),u(se.Xb(se.gc()-1),39).f),P=ki(Oa(u(se.Xb(0),39).e),u(se.Xb(0),39).f),U>=se.gc()-1&&Jr.b>At.b&&k.c.e.b>At.b||U<=0&&Jr.bk.b.e.a*(1-ht)+k.c.e.a*ht));U++);if(se.gc()>0&&(Jr=k.a.b==0?Oa(k.b.e):u(Pf(k.a),8),At=ki(Oa(u(se.Xb(se.gc()-1),39).e),u(se.Xb(se.gc()-1),39).f),P=ki(Oa(u(se.Xb(0),39).e),u(se.Xb(0),39).f),U>=se.gc()-1&&Jr.a>At.a&&k.c.e.a>At.a||U<=0&&Jr.a=Rt(Ht(X(t,(ji(),bLt))))&&++On):($.f&&$.d.e.a<=Rt(Ht(X(t,(ji(),R1t))))&&++Ze,$.g&&$.c.e.a+$.c.f.a>=Rt(Ht(X(t,(ji(),pLt))))&&++On)}else Bt==0?A6t(k):Bt<0&&(++rn[er],++tt[is],Dn=ISn(k,e,t,new Ws(he(Ze),he(On)),n,r,new Ws(he(tt[is]),he(rn[er]))),Ze=u(Dn.a,17).a,On=u(Dn.b,17).a)}function RSn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt;if(r=e,m=n,t.b&&r.j==(ve(),Gn)&&m.j==(ve(),Gn)&&(Tt=r,r=m,m=Tt),Tu(t.a,r)){if(x1(u(tr(t.a,r),49),m))return 1}else hi(t.a,r,new Os);if(Tu(t.a,m)){if(x1(u(tr(t.a,m),49),r))return-1}else hi(t.a,m,new Os);if(Tu(t.d,r)){if(x1(u(tr(t.d,r),49),m))return-1}else hi(t.d,r,new Os);if(Tu(t.d,m)){if(x1(u(tr(t.a,m),49),r))return 1}else hi(t.d,m,new Os);if(r.j!=m.j)return ht=Sin(r.j,m.j),ht==-1?$h(t,m,r):$h(t,r,m),ht;if(r.e.c.length!=0&&m.e.c.length!=0){if(t.b&&(ht=mue(r,m),ht!=0))return ht==-1?$h(t,m,r):ht==1&&$h(t,r,m),ht;if(o=u(Oe(r.e,0),18).c.i,T=u(Oe(m.e,0),18).c.i,o==T)return s=u(X(u(Oe(r.e,0),18),(oe(),Pi)),17).a,k=u(X(u(Oe(m.e,0),18),Pi),17).a,s>k?$h(t,r,m):$h(t,m,r),sk?1:0;for(U=t.c,J=0,tt=U.length;Jk?$h(t,r,m):$h(t,m,r),sk?1:0):t.b&&(ht=mue(r,m),ht!=0)?(ht==-1?$h(t,m,r):ht==1&&$h(t,r,m),ht):(h=0,A=0,qi(u(Oe(r.g,0),18),Pi)&&(h=u(X(u(Oe(r.g,0),18),Pi),17).a),qi(u(Oe(m.g,0),18),Pi)&&(A=u(X(u(Oe(r.g,0),18),Pi),17).a),d&&d==P?Ie(Me(X(u(Oe(r.g,0),18),vd)))&&!Ie(Me(X(u(Oe(m.g,0),18),vd)))?($h(t,r,m),1):!Ie(Me(X(u(Oe(r.g,0),18),vd)))&&Ie(Me(X(u(Oe(m.g,0),18),vd)))?($h(t,m,r),-1):(h>A?$h(t,r,m):$h(t,m,r),hA?1:0):(t.f&&(t.f._b(d)&&(h=u(t.f.xc(d),17).a),t.f._b(P)&&(A=u(t.f.xc(P),17).a)),h>A?$h(t,r,m):$h(t,m,r),hA?1:0))):r.e.c.length!=0&&m.g.c.length!=0?($h(t,r,m),1):r.g.c.length!=0&&m.e.c.length!=0?($h(t,m,r),-1):qi(r,(oe(),Pi))&&qi(m,Pi)?(s=u(X(r,Pi),17).a,k=u(X(m,Pi),17).a,s>k?$h(t,r,m):$h(t,m,r),sk?1:0):($h(t,m,r),-1)}function jSn(t){t.gb||(t.gb=!0,t.b=Tc(t,0),fs(t.b,18),Vi(t.b,19),t.a=Tc(t,1),fs(t.a,1),Vi(t.a,2),Vi(t.a,3),Vi(t.a,4),Vi(t.a,5),t.o=Tc(t,2),fs(t.o,8),fs(t.o,9),Vi(t.o,10),Vi(t.o,11),Vi(t.o,12),Vi(t.o,13),Vi(t.o,14),Vi(t.o,15),Vi(t.o,16),Vi(t.o,17),Vi(t.o,18),Vi(t.o,19),Vi(t.o,20),Vi(t.o,21),Vi(t.o,22),Vi(t.o,23),zo(t.o),zo(t.o),zo(t.o),zo(t.o),zo(t.o),zo(t.o),zo(t.o),zo(t.o),zo(t.o),zo(t.o),t.p=Tc(t,3),fs(t.p,2),fs(t.p,3),fs(t.p,4),fs(t.p,5),Vi(t.p,6),Vi(t.p,7),zo(t.p),zo(t.p),t.q=Tc(t,4),fs(t.q,8),t.v=Tc(t,5),Vi(t.v,9),zo(t.v),zo(t.v),zo(t.v),t.w=Tc(t,6),fs(t.w,2),fs(t.w,3),fs(t.w,4),Vi(t.w,5),t.B=Tc(t,7),Vi(t.B,1),zo(t.B),zo(t.B),zo(t.B),t.Q=Tc(t,8),Vi(t.Q,0),zo(t.Q),t.R=Tc(t,9),fs(t.R,1),t.S=Tc(t,10),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),zo(t.S),t.T=Tc(t,11),Vi(t.T,10),Vi(t.T,11),Vi(t.T,12),Vi(t.T,13),Vi(t.T,14),zo(t.T),zo(t.T),t.U=Tc(t,12),fs(t.U,2),fs(t.U,3),Vi(t.U,4),Vi(t.U,5),Vi(t.U,6),Vi(t.U,7),zo(t.U),t.V=Tc(t,13),Vi(t.V,10),t.W=Tc(t,14),fs(t.W,18),fs(t.W,19),fs(t.W,20),Vi(t.W,21),Vi(t.W,22),Vi(t.W,23),t.bb=Tc(t,15),fs(t.bb,10),fs(t.bb,11),fs(t.bb,12),fs(t.bb,13),fs(t.bb,14),fs(t.bb,15),fs(t.bb,16),Vi(t.bb,17),zo(t.bb),zo(t.bb),t.eb=Tc(t,16),fs(t.eb,2),fs(t.eb,3),fs(t.eb,4),fs(t.eb,5),fs(t.eb,6),fs(t.eb,7),Vi(t.eb,8),Vi(t.eb,9),t.ab=Tc(t,17),fs(t.ab,0),fs(t.ab,1),t.H=Tc(t,18),Vi(t.H,0),Vi(t.H,1),Vi(t.H,2),Vi(t.H,3),Vi(t.H,4),Vi(t.H,5),zo(t.H),t.db=Tc(t,19),Vi(t.db,2),t.c=di(t,20),t.d=di(t,21),t.e=di(t,22),t.f=di(t,23),t.i=di(t,24),t.g=di(t,25),t.j=di(t,26),t.k=di(t,27),t.n=di(t,28),t.r=di(t,29),t.s=di(t,30),t.t=di(t,31),t.u=di(t,32),t.fb=di(t,33),t.A=di(t,34),t.C=di(t,35),t.D=di(t,36),t.F=di(t,37),t.G=di(t,38),t.I=di(t,39),t.J=di(t,40),t.L=di(t,41),t.M=di(t,42),t.N=di(t,43),t.O=di(t,44),t.P=di(t,45),t.X=di(t,46),t.Y=di(t,47),t.Z=di(t,48),t.$=di(t,49),t._=di(t,50),t.cb=di(t,51),t.K=di(t,52))}function $Sn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On,Dn,er;for(h=new Ki,se=u(X(n,(De(),ph)),88),J=0,Ma(h,(!e.a&&(e.a=new Jt(bi,e,10,11)),e.a));h.b!=0;)T=u(h.b==0?null:(ur(h.b!=0),Oh(h,h.a.a)),27),k=Ji(T),($t(ne(k,U0))!==$t((Wd(),Up))||$t(ne(k,Dw))===$t((Ip(),ST))||$t(ne(k,Dw))===$t((Ip(),CT))||Ie(Me(ne(k,Ev)))||$t(ne(k,_3))!==$t((lw(),x3))||$t(ne(k,a2))===$t((cf(),Lv))||$t(ne(k,a2))===$t((cf(),N3))||$t(ne(k,Iw))===$t((Bp(),RT))||$t(ne(k,Iw))===$t((Bp(),jT)))&&!Ie(Me(ne(T,BG)))&&Mi(T,(oe(),Pi),he(J++)),ht=!Ie(Me(ne(T,Nw))),ht&&(P=(!T.a&&(T.a=new Jt(bi,T,10,11)),T.a).i!=0,U=p3n(T),$=$t(ne(T,A3))===$t((Ag(),Xp)),er=!ad(T,(ai(),VT))||sse(Gr(ne(T,VT))),Bt=null,er&&$&&(P||U)&&(Bt=pge(T),Zt(Bt,ph,se),qi(Bt,sP)&&pWt(new V5t(Rt(Ht(X(Bt,sP)))),Bt),u(ne(T,Ow),181).gc()!=0&&(A=Bt,ms(new ln(null,(!T.c&&(T.c=new Jt(kl,T,9,9)),new gn(T.c,16))),new kVt(A)),o0e(T,Bt))),Ce=n,rn=u(tr(t.a,Ji(T)),10),rn&&(Ce=rn.e),At=qpe(t,T,Ce),Bt&&(At.e=Bt,Bt.e=At,Ma(h,(!T.a&&(T.a=new Jt(bi,T,10,11)),T.a))));for(J=0,hs(h,e,h.c.b,h.c);h.b!=0;){for(o=u(h.b==0?null:(ur(h.b!=0),Oh(h,h.a.a)),27),m=new Zn((!o.b&&(o.b=new Jt(Ts,o,12,3)),o.b));m.e!=m.i.gc();)d=u(ar(m),74),N0e(d),($t(ne(e,U0))!==$t((Wd(),Up))||$t(ne(e,Dw))===$t((Ip(),ST))||$t(ne(e,Dw))===$t((Ip(),CT))||Ie(Me(ne(e,Ev)))||$t(ne(e,_3))!==$t((lw(),x3))||$t(ne(e,a2))===$t((cf(),Lv))||$t(ne(e,a2))===$t((cf(),N3))||$t(ne(e,Iw))===$t((Bp(),RT))||$t(ne(e,Iw))===$t((Bp(),jT)))&&Mi(d,(oe(),Pi),he(J++)),On=Jo(u(Dt((!d.b&&(d.b=new kn(vr,d,4,7)),d.b),0),84)),Dn=Jo(u(Dt((!d.c&&(d.c=new kn(vr,d,5,8)),d.c),0),84)),!(Ie(Me(ne(d,Nw)))||Ie(Me(ne(On,Nw)))||Ie(Me(ne(Dn,Nw))))&&(tt=Zm(d)&&Ie(Me(ne(On,L3)))&&Ie(Me(ne(d,Mw))),Wt=o,tt||qy(Dn,On)?Wt=On:qy(On,Dn)&&(Wt=Dn),Ce=n,rn=u(tr(t.a,Wt),10),rn&&(Ce=rn.e),Tt=a8t(t,d,Wt,Ce),Zt(Tt,(oe(),XSt),$kn(t,d,e,n)));if($=$t(ne(o,A3))===$t((Ag(),Xp)),$)for(s=new Zn((!o.a&&(o.a=new Jt(bi,o,10,11)),o.a));s.e!=s.i.gc();)r=u(ar(s),27),er=!ad(r,(ai(),VT))||sse(Gr(ne(r,VT))),Ze=$t(ne(r,A3))===$t(Xp),er&&Ze&&hs(h,r,h.c.b,h.c)}}function oe(){oe=V;var t,e;Li=new Oi(G8t),XSt=new Oi("coordinateOrigin"),Yft=new Oi("processors"),YSt=new rs("compoundNode",(Pn(),!1)),eP=new rs("insideConnections",!1),t_t=new Oi("originalBendpoints"),e_t=new Oi("originalDummyNodePosition"),n_t=new Oi("originalLabelEdge"),IA=new Oi("representedLabels"),MA=new Oi("endLabels"),Vk=new Oi("endLabel.origin"),Gk=new rs("labelSide",(uh(),NP)),V5=new rs("maxEdgeThickness",0),vd=new rs("reversed",!1),Kk=new Oi(s2e),N1=new rs("longEdgeSource",null),gf=new rs("longEdgeTarget",null),C3=new rs("longEdgeHasLabelDummies",!1),nP=new rs("longEdgeBeforeLabelDummy",!1),DG=new rs("edgeConstraint",(ow(),Ift)),yv=new Oi("inLayerLayoutUnit"),Aw=new rs("inLayerConstraint",(Cg(),ZN)),Uk=new rs("inLayerSuccessorConstraint",new fe),ZSt=new rs("inLayerSuccessorConstraintBetweenNonDummies",!1),ml=new Oi("portDummy"),LG=new rs("crossingHint",he(0)),lu=new rs("graphProperties",(e=u(y1(jft),9),new _h(e,u(Ff(e,e.length),9),0))),Dc=new rs("externalPortSide",(ve(),bc)),JSt=new rs("externalPortSize",new Sa),Vft=new Oi("externalPortReplacedDummies"),MG=new Oi("externalPortReplacedDummy"),$g=new rs("externalPortConnections",(t=u(y1(bo),9),new _h(t,u(Ff(t,t.length),9),0))),xv=new rs(Xbe,0),WSt=new Oi("barycenterAssociates"),Wk=new Oi("TopSideComments"),Hk=new Oi("BottomSideComments"),AG=new Oi("CommentConnectionPort"),Gft=new rs("inputCollect",!1),Wft=new rs("outputCollect",!1),tP=new rs("cyclic",!1),QSt=new Oi("crossHierarchyMap"),Qft=new Oi("targetOffset"),new rs("splineLabelSize",new Sa),G5=new Oi("spacings"),IG=new rs("partitionConstraint",!1),vv=new Oi("breakingPoint.info"),s_t=new Oi("splines.survivingEdge"),Lw=new Oi("splines.route.start"),K5=new Oi("splines.edgeChain"),i_t=new Oi("originalPortConstraints"),kv=new Oi("selfLoopHolder"),MT=new Oi("splines.nsPortY"),Pi=new Oi("modelOrder"),Kft=new Oi("longEdgeTargetNode"),i2=new rs(M2e,!1),U5=new rs(M2e,!1),Uft=new Oi("layerConstraints.hiddenNodes"),r_t=new Oi("layerConstraints.opposidePort"),Xft=new Oi("targetNode.modelOrder")}function zSn(t,e,n,r){var s,o,h,d,m,k,T,A,P,$,U;for(A=Dr(t.b,0);A.b!=A.d.c;)if(T=u(Ar(A),39),!hn(T.c,nU))for(o=u(nc(new ln(null,new gn(X5n(T,t),16)),gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)]))),15),e==(Rs(),Uo)||e==tc?o.jd(new ntt):o.jd(new MR),U=o.gc(),s=0;s0&&(d=u(Pf(u(o.Xb(s),65).a),8).a,P=T.e.a+T.f.a/2,m=u(Pf(u(o.Xb(s),65).a),8).b,$=T.e.b+T.f.b/2,r>0&&b.Math.abs(m-$)/(b.Math.abs(d-P)/40)>50&&($>m?ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a+r/5.3,T.e.b+T.f.b*h-r/2)):ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a+r/5.3,T.e.b+T.f.b*h+r/2)))),ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a,T.e.b+T.f.b*h))):e==tc?(k=Rt(Ht(X(T,(ji(),P1)))),T.e.a-r>k?ro(u(o.Xb(s),65).a,new ae(k-n,T.e.b+T.f.b*h)):u(o.Xb(s),65).a.b>0&&(d=u(Pf(u(o.Xb(s),65).a),8).a,P=T.e.a+T.f.a/2,m=u(Pf(u(o.Xb(s),65).a),8).b,$=T.e.b+T.f.b/2,r>0&&b.Math.abs(m-$)/(b.Math.abs(d-P)/40)>50&&($>m?ro(u(o.Xb(s),65).a,new ae(T.e.a-r/5.3,T.e.b+T.f.b*h-r/2)):ro(u(o.Xb(s),65).a,new ae(T.e.a-r/5.3,T.e.b+T.f.b*h+r/2)))),ro(u(o.Xb(s),65).a,new ae(T.e.a,T.e.b+T.f.b*h))):e==Gh?(k=Rt(Ht(X(T,(ji(),Xf)))),T.e.b+T.f.b+r0&&(d=u(Pf(u(o.Xb(s),65).a),8).a,P=T.e.a+T.f.a/2,m=u(Pf(u(o.Xb(s),65).a),8).b,$=T.e.b+T.f.b/2,r>0&&b.Math.abs(d-P)/(b.Math.abs(m-$)/40)>50&&(P>d?ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a*h-r/2,T.e.b+r/5.3+T.f.b)):ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a*h+r/2,T.e.b+r/5.3+T.f.b)))),ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a*h,T.e.b+T.f.b))):(k=Rt(Ht(X(T,(ji(),P1)))),iue(u(o.Xb(s),65),t)?ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a*h,u(Pf(u(o.Xb(s),65).a),8).b)):T.e.b-r>k?ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a*h,k-n)):u(o.Xb(s),65).a.b>0&&(d=u(Pf(u(o.Xb(s),65).a),8).a,P=T.e.a+T.f.a/2,m=u(Pf(u(o.Xb(s),65).a),8).b,$=T.e.b+T.f.b/2,r>0&&b.Math.abs(d-P)/(b.Math.abs(m-$)/40)>50&&(P>d?ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a*h-r/2,T.e.b-r/5.3)):ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a*h+r/2,T.e.b-r/5.3)))),ro(u(o.Xb(s),65).a,new ae(T.e.a+T.f.a*h,T.e.b)))}function ai(){ai=V;var t,e;VT=new Oi(bwe),fx=new Oi(wwe),dMt=(I0(),_dt),c7e=new un(t7t,dMt),sx=new un(Dk,null),u7e=new Oi(dTt),pMt=(fw(),Hi(Ddt,lt(ut(Mdt,1),te,297,0,[Ldt]))),CP=new un(QV,pMt),SP=new un(TN,(Pn(),!1)),bMt=(Rs(),Ed),Rw=new un(blt,bMt),vMt=(Lg(),Vdt),mMt=new un(EN,vMt),f7e=new un(hTt,!1),kMt=(Ag(),IK),cx=new un(XV,kMt),MMt=new xm(12),Yp=new un(ov,MMt),AP=new un(Y_,!1),Pdt=new un(ZV,!1),LP=new un(X_,!1),FMt=(ka(),d2),fL=new un(Fut,FMt),Jk=new Oi(JV),DP=new Oi(gN),qdt=new Oi(IV),Hdt=new Oi(W_),EMt=new Qu,Iv=new un(h7t,EMt),h7e=new un(g7t,!1),d7e=new un(p7t,!1),TMt=new HC,UT=new un(w7t,TMt),AK=new un(JEt,!1),w7e=new un(mwe,1),ox=new Oi(vwe),ax=new Oi(ywe),dL=new un(pN,!1),new un(xwe,!0),he(0),new un(kwe,he(100)),new un(Ewe,!1),he(0),new un(Twe,he(4e3)),he(0),new un(Cwe,he(400)),new un(Swe,!1),new un(_we,!1),new un(Awe,!0),new un(Lwe,!1),gMt=(pH(),Wdt),l7e=new un(fTt,gMt),m7e=new un(zEt,10),v7e=new un(qEt,10),$Mt=new un(Lut,20),y7e=new un(HEt,10),zMt=new un(Put,2),qMt=new un(plt,10),HMt=new un(VEt,0),LK=new un(KEt,5),VMt=new un(UEt,1),UMt=new un(GEt,1),$w=new un(h3,20),x7e=new un(WEt,10),WMt=new un(YEt,10),Zk=new Oi(XEt),KMt=new PQt,GMt=new un(m7t,KMt),p7e=new Oi(mlt),IMt=!1,g7e=new un(wlt,IMt),SMt=new xm(5),CMt=new un(r7t,SMt),_Mt=(e3(),e=u(y1(Lo),9),new _h(e,u(Ff(e,e.length),9),0)),ux=new un(nT,_Mt),NMt=(o5(),f2),OMt=new un(a7t,NMt),Bdt=new Oi(o7t),Rdt=new Oi(c7t),jdt=new Oi(u7t),Fdt=new Oi(l7t),AMt=(t=u(y1(xL),9),new _h(t,u(Ff(t,t.length),9),0)),jw=new un(_5,AMt),DMt=en((Ml(),XT)),l2=new un(Mk,DMt),LMt=new ae(0,0),lx=new un(Ik,LMt),R3=new un(eT,!1),wMt=(cd(),GT),Odt=new un(f7t,wMt),Idt=new un(OV,!1),he(1),new un(Dwe,null),PMt=new Oi(b7t),$dt=new Oi(d7t),jMt=(ve(),bc),hx=new un(ZEt,jMt),Pl=new Oi(QEt),BMt=(wl(),en(g2)),j3=new un(rT,BMt),zdt=new un(i7t,!1),RMt=new un(s7t,!0),MK=new un(bN,1),YMt=new un(gTt,null),MP=new un(wN,150),DK=new un(mN,1.414),t8=new un(cv,null),k7e=new un(pTt,1),_P=new un(e7t,!1),Ndt=new un(n7t,!1),yMt=new un(Dut,1),xMt=(HH(),Gdt),new un(Mwe,xMt),b7e=!0,T7e=(lk(),q3),C7e=q3,E7e=q3}function Za(){Za=V,KCt=new Ns("DIRECTION_PREPROCESSOR",0),VCt=new Ns("COMMENT_PREPROCESSOR",1),B5=new Ns("EDGE_AND_LAYER_CONSTRAINT_EDGE_REVERSER",2),gft=new Ns("INTERACTIVE_EXTERNAL_PORT_POSITIONER",3),fSt=new Ns("PARTITION_PREPROCESSOR",4),nG=new Ns("LABEL_DUMMY_INSERTER",5),fG=new Ns("SELF_LOOP_PREPROCESSOR",6),E3=new Ns("LAYER_CONSTRAINT_PREPROCESSOR",7),lSt=new Ns("PARTITION_MIDPROCESSOR",8),eSt=new Ns("HIGH_DEGREE_NODE_LAYER_PROCESSOR",9),cSt=new Ns("NODE_PROMOTION",10),k3=new Ns("LAYER_CONSTRAINT_POSTPROCESSOR",11),hSt=new Ns("PARTITION_POSTPROCESSOR",12),JCt=new Ns("HIERARCHICAL_PORT_CONSTRAINT_PROCESSOR",13),dSt=new Ns("SEMI_INTERACTIVE_CROSSMIN_PROCESSOR",14),RCt=new Ns("BREAKING_POINT_INSERTER",15),aG=new Ns("LONG_EDGE_SPLITTER",16),pft=new Ns("PORT_SIDE_PROCESSOR",17),tG=new Ns("INVERTED_PORT_PROCESSOR",18),uG=new Ns("PORT_LIST_SORTER",19),pSt=new Ns("SORT_BY_INPUT_ORDER_OF_MODEL",20),cG=new Ns("NORTH_SOUTH_PORT_PREPROCESSOR",21),jCt=new Ns("BREAKING_POINT_PROCESSOR",22),uSt=new Ns(E2e,23),bSt=new Ns(T2e,24),lG=new Ns("SELF_LOOP_PORT_RESTORER",25),gSt=new Ns("SINGLE_EDGE_GRAPH_WRAPPER",26),eG=new Ns("IN_LAYER_CONSTRAINT_PROCESSOR",27),YCt=new Ns("END_NODE_PORT_LABEL_MANAGEMENT_PROCESSOR",28),aSt=new Ns("LABEL_AND_NODE_SIZE_PROCESSOR",29),sSt=new Ns("INNERMOST_NODE_MARGIN_CALCULATOR",30),dG=new Ns("SELF_LOOP_ROUTER",31),qCt=new Ns("COMMENT_NODE_MARGIN_CALCULATOR",32),ZU=new Ns("END_LABEL_PREPROCESSOR",33),iG=new Ns("LABEL_DUMMY_SWITCHER",34),zCt=new Ns("CENTER_LABEL_MANAGEMENT_PROCESSOR",35),vT=new Ns("LABEL_SIDE_SELECTOR",36),rSt=new Ns("HYPEREDGE_DUMMY_MERGER",37),ZCt=new Ns("HIERARCHICAL_PORT_DUMMY_SIZE_PROCESSOR",38),oSt=new Ns("LAYER_SIZE_AND_GRAPH_HEIGHT_CALCULATOR",39),CA=new Ns("HIERARCHICAL_PORT_POSITION_PROCESSOR",40),UCt=new Ns("CONSTRAINTS_POSTPROCESSOR",41),HCt=new Ns("COMMENT_POSTPROCESSOR",42),iSt=new Ns("HYPERNODE_PROCESSOR",43),tSt=new Ns("HIERARCHICAL_PORT_ORTHOGONAL_EDGE_ROUTER",44),sG=new Ns("LONG_EDGE_JOINER",45),hG=new Ns("SELF_LOOP_POSTPROCESSOR",46),$Ct=new Ns("BREAKING_POINT_REMOVER",47),oG=new Ns("NORTH_SOUTH_PORT_POSTPROCESSOR",48),nSt=new Ns("HORIZONTAL_COMPACTOR",49),rG=new Ns("LABEL_DUMMY_REMOVER",50),XCt=new Ns("FINAL_SPLINE_BENDPOINTS_CALCULATOR",51),WCt=new Ns("END_LABEL_SORTER",52),WN=new Ns("REVERSED_EDGE_RESTORER",53),JU=new Ns("END_LABEL_POSTPROCESSOR",54),QCt=new Ns("HIERARCHICAL_NODE_RESIZER",55),GCt=new Ns("DIRECTION_POSTPROCESSOR",56)}function o8t(){o8t=V,b_t=(YI(),xG),B5e=new un(nEt,b_t),Y5e=new un(rEt,(Pn(),!1)),k_t=(fq(),Hft),txe=new un(BV,k_t),pxe=new un(iEt,!1),bxe=new un(sEt,!0),u5e=new un(aEt,!1),D_t=(KI(),T1t),Mxe=new un(oEt,D_t),he(1),jxe=new un(cEt,he(7)),$xe=new un(uEt,!1),X5e=new un(lEt,!1),p_t=(Ip(),Dft),F5e=new un(Hut,p_t),C_t=(Bp(),b1t),gxe=new un(kN,C_t),E_t=(Rh(),rP),axe=new un(hEt,E_t),he(-1),sxe=new un(fEt,null),he(-1),oxe=new un(dEt,he(-1)),he(-1),cxe=new un(Vut,he(4)),he(-1),lxe=new un(Uut,he(2)),T_t=(cf(),ZG),dxe=new un(Gut,T_t),he(0),fxe=new un(Kut,he(0)),rxe=new un(Wut,he(xi)),g_t=(QS(),_A),P5e=new un(Z_,g_t),y5e=new un(gEt,!1),_5e=new un(Yut,.1),O5e=new un(Xut,!1),L5e=new un(pEt,null),D5e=new un(bEt,null),he(-1),M5e=new un(wEt,null),he(-1),I5e=new un(mEt,he(-1)),he(0),x5e=new un(vEt,he(40)),d_t=(c7(),zft),C5e=new un(Qut,d_t),f_t=JN,k5e=new un(RV,f_t),L_t=(w_(),zA),Dxe=new un(A5,L_t),xxe=new Oi(jV),S_t=(qI(),EG),wxe=new un(Jut,S_t),__t=(AO(),TG),vxe=new un(Zut,__t),Txe=new un(tlt,.3),Sxe=new Oi(elt),A_t=(Yy(),JG),_xe=new un(nlt,A_t),v_t=(tH(),S1t),q5e=new un(yEt,v_t),y_t=(i_(),A1t),H5e=new un(xEt,y_t),x_t=(b7(),VA),V5e=new un($V,x_t),G5e=new un(zV,.2),$5e=new un(rlt,2),Pxe=new un(kEt,null),Bxe=new un(EEt,10),Fxe=new un(TEt,10),Rxe=new un(CEt,20),he(0),Ixe=new un(SEt,he(0)),he(0),Oxe=new un(_Et,he(0)),he(0),Nxe=new un(AEt,he(0)),l5e=new un(ilt,!1),c_t=(M7(),AA),f5e=new un(LEt,c_t),o_t=(Eq(),Aft),h5e=new un(DEt,o_t),J5e=new un(qV,!1),he(0),Q5e=new un(slt,he(16)),he(0),Z5e=new un(alt,he(5)),O_t=(iH(),M1t),a6e=new un(Bg,O_t),zxe=new un(HV,10),Vxe=new un(VV,1),I_t=($q(),yG),Qxe=new un(tA,I_t),Kxe=new Oi(olt),M_t=he(1),he(0),Yxe=new un(clt,M_t),N_t=(jq(),D1t),l6e=new un(UV,N_t),o6e=new Oi(GV),n6e=new un(KV,!0),t6e=new un(WV,2),i6e=new un(ult,!0),m_t=(UH(),kG),j5e=new un(MEt,m_t),w_t=(wk(),ET),R5e=new un(IEt,w_t),h_t=(Wd(),Up),v5e=new un(YV,h_t),m5e=new un(OEt,!1),w5e=new un(NEt,!1),u_t=(lw(),x3),d5e=new un(llt,u_t),l_t=(o_(),w1t),b5e=new un(PEt,l_t),g5e=new un(hlt,0),p5e=new un(flt,0),nxe=Mft,exe=QN,uxe=XG,hxe=XG,ixe=p1t,A5e=(Ag(),Xp),N5e=_A,S5e=_A,E5e=_A,T5e=Xp,kxe=qA,Exe=zA,mxe=zA,yxe=zA,Cxe=x1t,Lxe=qA,Axe=qA,U5e=(Lg(),e8),K5e=e8,W5e=VA,z5e=IP,qxe=$T,Hxe=P3,Uxe=$T,Gxe=P3,Jxe=$T,Zxe=P3,Wxe=Lft,Xxe=yG,h6e=$T,f6e=P3,c6e=$T,u6e=P3,r6e=P3,e6e=P3,s6e=P3}function qSn(t,e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On,Dn,er,Jr,is,El,Go,yh,mx,rb,r1,i1,Vw,o8,k2,c8,d0,J0,Bv,u8,vx,g0,Uw,Ug,f9e,mOt,Rv,NL,h0t,l8,PL,X3,FL,f0t,d9e;for(mOt=0,Jr=e,Go=0,rb=Jr.length;Go0&&(t.a[d0.p]=mOt++)}for(PL=0,is=n,yh=0,r1=is.length;yh0;){for(d0=(ur(vx.b>0),u(vx.a.Xb(vx.c=--vx.b),12)),u8=0,d=new G(d0.e);d.a0&&(d0.j==(ve(),Hn)?(t.a[d0.p]=PL,++PL):(t.a[d0.p]=PL+i1+o8,++o8))}PL+=o8}for(Bv=new _r,U=new zd,er=e,El=0,mx=er.length;Elk.b&&(k.b=g0)):d0.i.c==f9e&&(g0k.c&&(k.c=g0));for(GE(J,0,J.length,null),l8=Vt(Fr,ii,28,J.length,15,1),r=Vt(Fr,ii,28,PL+1,15,1),ht=0;ht0;)Ce%2>0&&(s+=f0t[Ce+1]),Ce=(Ce-1)/2|0,++f0t[Ce];for(Ze=Vt(lke,Ln,374,J.length*2,0,1),Bt=0;Bt0&&_I(El.f),ne(ht,YMt)!=null&&(d=u(ne(ht,YMt),347),Bv=d.Tg(ht),H4(ht,b.Math.max(ht.g,Bv.a),b.Math.max(ht.f,Bv.b)));if(r1=u(ne(e,Yp),107),$=e.g-(r1.b+r1.c),P=e.f-(r1.d+r1.a),g0.bh("Available Child Area: ("+$+"|"+P+")"),Mi(e,sx,$/P),Rle(e,s,r.eh(mx)),u(ne(e,t8),280)==RK&&(r8t(e),H4(e,r1.b+Rt(Ht(ne(e,ox)))+r1.c,r1.d+Rt(Ht(ne(e,ax)))+r1.a)),g0.bh("Executed layout algorithm: "+Gr(ne(e,VT))+" on node "+e.k),u(ne(e,t8),280)==q3){if($<0||P<0)throw at(new fp("The size defined by the parent parallel node is too small for the space provided by the paddings of the child hierarchical node. "+e.k));for(ad(e,ox)||ad(e,ax)||r8t(e),J=Rt(Ht(ne(e,ox))),U=Rt(Ht(ne(e,ax))),g0.bh("Desired Child Area: ("+J+"|"+U+")"),Vw=$/J,o8=P/U,i1=b.Math.min(Vw,b.Math.min(o8,Rt(Ht(ne(e,k7e))))),Mi(e,MK,i1),g0.bh(e.k+" -- Local Scale Factor (X|Y): ("+Vw+"|"+o8+")"),Bt=u(ne(e,CP),21),o=0,h=0,i1'?":hn(ume,t)?"'(?<' or '(? toIndex: ",T8t=", toIndex: ",C8t="Index: ",S8t=", Size: ",Q7="org.eclipse.elk.alg.common",Xr={50:1},Ibe="org.eclipse.elk.alg.common.compaction",Obe="Scanline/EventHandler",j0="org.eclipse.elk.alg.common.compaction.oned",Nbe="CNode belongs to another CGroup.",Pbe="ISpacingsHandler/1",wut="The ",mut=" instance has been finished already.",Fbe="The direction ",Bbe=" is not supported by the CGraph instance.",Rbe="OneDimensionalCompactor",jbe="OneDimensionalCompactor/lambda$0$Type",$be="Quadruplet",zbe="ScanlineConstraintCalculator",qbe="ScanlineConstraintCalculator/ConstraintsScanlineHandler",Hbe="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",Vbe="ScanlineConstraintCalculator/Timestamp",Ube="ScanlineConstraintCalculator/lambda$0$Type",t0={178:1,46:1},vut="org.eclipse.elk.alg.common.compaction.options",pc="org.eclipse.elk.core.data",_8t="org.eclipse.elk.polyomino.traversalStrategy",A8t="org.eclipse.elk.polyomino.lowLevelSort",L8t="org.eclipse.elk.polyomino.highLevelSort",D8t="org.eclipse.elk.polyomino.fill",uf={134:1},yut="polyomino",U_="org.eclipse.elk.alg.common.networksimplex",$0={183:1,3:1,4:1},Gbe="org.eclipse.elk.alg.common.nodespacing",ww="org.eclipse.elk.alg.common.nodespacing.cellsystem",J7="CENTER",Kbe={217:1,336:1},M8t={3:1,4:1,5:1,603:1},_k="LEFT",Ak="RIGHT",I8t="Vertical alignment cannot be null",O8t="BOTTOM",SV="org.eclipse.elk.alg.common.nodespacing.internal",G_="UNDEFINED",gd=.01,hN="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",Wbe="LabelPlacer/lambda$0$Type",Ybe="LabelPlacer/lambda$1$Type",Xbe="portRatioOrPosition",Z7="org.eclipse.elk.alg.common.overlaps",xut="DOWN",e0="org.eclipse.elk.alg.common.polyomino",_V="NORTH",kut="EAST",Eut="SOUTH",Tut="WEST",AV="org.eclipse.elk.alg.common.polyomino.structures",N8t="Direction",Cut="Grid is only of size ",Sut=". Requested point (",_ut=") is out of bounds.",LV=" Given center based coordinates were (",fN="org.eclipse.elk.graph.properties",Qbe="IPropertyHolder",P8t={3:1,96:1,137:1},Lk="org.eclipse.elk.alg.common.spore",Jbe="org.eclipse.elk.alg.common.utils",mw={205:1},T5="org.eclipse.elk.core",Zbe="Connected Components Compaction",t2e="org.eclipse.elk.alg.disco",DV="org.eclipse.elk.alg.disco.graph",Aut="org.eclipse.elk.alg.disco.options",F8t="CompactionStrategy",B8t="org.eclipse.elk.disco.componentCompaction.strategy",R8t="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",j8t="org.eclipse.elk.disco.debug.discoGraph",$8t="org.eclipse.elk.disco.debug.discoPolys",e2e="componentCompaction",vw="org.eclipse.elk.disco",Lut="org.eclipse.elk.spacing.componentComponent",Dut="org.eclipse.elk.edge.thickness",Dk="org.eclipse.elk.aspectRatio",ov="org.eclipse.elk.padding",C5="org.eclipse.elk.alg.disco.transform",Mut=1.5707963267948966,S5=17976931348623157e292,l3={3:1,4:1,5:1,198:1},n2e={3:1,6:1,4:1,5:1,100:1,115:1},Iut="org.eclipse.elk.alg.force",z8t="ComponentsProcessor",r2e="ComponentsProcessor/1",q8t="ElkGraphImporter/lambda$0$Type",dN="org.eclipse.elk.alg.force.graph",i2e="Component Layout",H8t="org.eclipse.elk.alg.force.model",MV="org.eclipse.elk.force.model",V8t="org.eclipse.elk.force.iterations",U8t="org.eclipse.elk.force.repulsivePower",Out="org.eclipse.elk.force.temperature",n0=.001,Nut="org.eclipse.elk.force.repulsion",K_="org.eclipse.elk.alg.force.options",tT=1.600000023841858,Du="org.eclipse.elk.force",gN="org.eclipse.elk.priority",h3="org.eclipse.elk.spacing.nodeNode",Put="org.eclipse.elk.spacing.edgeLabel",IV="org.eclipse.elk.randomSeed",W_="org.eclipse.elk.separateConnectedComponents",Y_="org.eclipse.elk.interactive",Fut="org.eclipse.elk.portConstraints",OV="org.eclipse.elk.edgeLabels.inline",X_="org.eclipse.elk.omitNodeMicroLayout",eT="org.eclipse.elk.nodeSize.fixedGraphSize",Mk="org.eclipse.elk.nodeSize.options",_5="org.eclipse.elk.nodeSize.constraints",nT="org.eclipse.elk.nodeLabels.placement",rT="org.eclipse.elk.portLabels.placement",pN="org.eclipse.elk.topdownLayout",bN="org.eclipse.elk.topdown.scaleFactor",wN="org.eclipse.elk.topdown.hierarchicalNodeWidth",mN="org.eclipse.elk.topdown.hierarchicalNodeAspectRatio",cv="org.eclipse.elk.topdown.nodeType",G8t="origin",s2e="random",a2e="boundingBox.upLeft",o2e="boundingBox.lowRight",K8t="org.eclipse.elk.stress.fixed",W8t="org.eclipse.elk.stress.desiredEdgeLength",Y8t="org.eclipse.elk.stress.dimension",X8t="org.eclipse.elk.stress.epsilon",Q8t="org.eclipse.elk.stress.iterationLimit",Yb="org.eclipse.elk.stress",c2e="ELK Stress",Ik="org.eclipse.elk.nodeSize.minimum",NV="org.eclipse.elk.alg.force.stress",u2e="Layered layout",Ok="org.eclipse.elk.alg.layered",vN="org.eclipse.elk.alg.layered.compaction.components",Q_="org.eclipse.elk.alg.layered.compaction.oned",PV="org.eclipse.elk.alg.layered.compaction.oned.algs",yw="org.eclipse.elk.alg.layered.compaction.recthull",pd="org.eclipse.elk.alg.layered.components",r0="NONE",J8t="MODEL_ORDER",qc={3:1,6:1,4:1,9:1,5:1,126:1},l2e={3:1,6:1,4:1,5:1,150:1,100:1,115:1},FV="org.eclipse.elk.alg.layered.compound",zi={47:1},au="org.eclipse.elk.alg.layered.graph",But=" -> ",h2e="Not supported by LGraph",Z8t="Port side is undefined",Rut={3:1,6:1,4:1,5:1,482:1,150:1,100:1,115:1},jp={3:1,6:1,4:1,5:1,150:1,199:1,210:1,100:1,115:1},f2e={3:1,6:1,4:1,5:1,150:1,2042:1,210:1,100:1,115:1},d2e=`([{"' \r +`,g2e=`)]}"' \r +`,p2e="The given string contains parts that cannot be parsed as numbers.",yN="org.eclipse.elk.core.math",b2e={3:1,4:1,140:1,214:1,423:1},w2e={3:1,4:1,107:1,214:1,423:1},$p="org.eclipse.elk.alg.layered.graph.transform",m2e="ElkGraphImporter",v2e="ElkGraphImporter/lambda$1$Type",y2e="ElkGraphImporter/lambda$2$Type",x2e="ElkGraphImporter/lambda$4$Type",Yn="org.eclipse.elk.alg.layered.intermediate",k2e="Node margin calculation",E2e="ONE_SIDED_GREEDY_SWITCH",T2e="TWO_SIDED_GREEDY_SWITCH",jut="No implementation is available for the layout processor ",$ut="IntermediateProcessorStrategy",zut="Node '",C2e="FIRST_SEPARATE",S2e="LAST_SEPARATE",_2e="Odd port side processing",Gs="org.eclipse.elk.alg.layered.intermediate.compaction",J_="org.eclipse.elk.alg.layered.intermediate.greedyswitch",z0="org.eclipse.elk.alg.layered.p3order.counting",xN={230:1},Nk="org.eclipse.elk.alg.layered.intermediate.loops",dh="org.eclipse.elk.alg.layered.intermediate.loops.ordering",Xb="org.eclipse.elk.alg.layered.intermediate.loops.routing",tEt="org.eclipse.elk.alg.layered.intermediate.preserveorder",i0="org.eclipse.elk.alg.layered.intermediate.wrapping",Hc="org.eclipse.elk.alg.layered.options",qut="INTERACTIVE",eEt="GREEDY",A2e="DEPTH_FIRST",L2e="EDGE_LENGTH",D2e="SELF_LOOPS",M2e="firstTryWithInitialOrder",nEt="org.eclipse.elk.layered.directionCongruency",rEt="org.eclipse.elk.layered.feedbackEdges",BV="org.eclipse.elk.layered.interactiveReferencePoint",iEt="org.eclipse.elk.layered.mergeEdges",sEt="org.eclipse.elk.layered.mergeHierarchyEdges",aEt="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",oEt="org.eclipse.elk.layered.portSortingStrategy",cEt="org.eclipse.elk.layered.thoroughness",uEt="org.eclipse.elk.layered.unnecessaryBendpoints",lEt="org.eclipse.elk.layered.generatePositionAndLayerIds",Hut="org.eclipse.elk.layered.cycleBreaking.strategy",kN="org.eclipse.elk.layered.layering.strategy",hEt="org.eclipse.elk.layered.layering.layerConstraint",fEt="org.eclipse.elk.layered.layering.layerChoiceConstraint",dEt="org.eclipse.elk.layered.layering.layerId",Vut="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",Uut="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",Gut="org.eclipse.elk.layered.layering.nodePromotion.strategy",Kut="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",Wut="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",Z_="org.eclipse.elk.layered.crossingMinimization.strategy",gEt="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",Yut="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",Xut="org.eclipse.elk.layered.crossingMinimization.semiInteractive",pEt="org.eclipse.elk.layered.crossingMinimization.inLayerPredOf",bEt="org.eclipse.elk.layered.crossingMinimization.inLayerSuccOf",wEt="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",mEt="org.eclipse.elk.layered.crossingMinimization.positionId",vEt="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",Qut="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",RV="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",A5="org.eclipse.elk.layered.nodePlacement.strategy",jV="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",Jut="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",Zut="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",tlt="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",elt="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",nlt="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",yEt="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",xEt="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",$V="org.eclipse.elk.layered.edgeRouting.splines.mode",zV="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",rlt="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",kEt="org.eclipse.elk.layered.spacing.baseValue",EEt="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",TEt="org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers",CEt="org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers",SEt="org.eclipse.elk.layered.priority.direction",_Et="org.eclipse.elk.layered.priority.shortness",AEt="org.eclipse.elk.layered.priority.straightness",ilt="org.eclipse.elk.layered.compaction.connectedComponents",LEt="org.eclipse.elk.layered.compaction.postCompaction.strategy",DEt="org.eclipse.elk.layered.compaction.postCompaction.constraints",qV="org.eclipse.elk.layered.highDegreeNodes.treatment",slt="org.eclipse.elk.layered.highDegreeNodes.threshold",alt="org.eclipse.elk.layered.highDegreeNodes.treeHeight",Bg="org.eclipse.elk.layered.wrapping.strategy",HV="org.eclipse.elk.layered.wrapping.additionalEdgeSpacing",VV="org.eclipse.elk.layered.wrapping.correctionFactor",tA="org.eclipse.elk.layered.wrapping.cutting.strategy",olt="org.eclipse.elk.layered.wrapping.cutting.cuts",clt="org.eclipse.elk.layered.wrapping.cutting.msd.freedom",UV="org.eclipse.elk.layered.wrapping.validify.strategy",GV="org.eclipse.elk.layered.wrapping.validify.forbiddenIndices",KV="org.eclipse.elk.layered.wrapping.multiEdge.improveCuts",WV="org.eclipse.elk.layered.wrapping.multiEdge.distancePenalty",ult="org.eclipse.elk.layered.wrapping.multiEdge.improveWrappedEdges",MEt="org.eclipse.elk.layered.edgeLabels.sideSelection",IEt="org.eclipse.elk.layered.edgeLabels.centerLabelPlacementStrategy",YV="org.eclipse.elk.layered.considerModelOrder.strategy",OEt="org.eclipse.elk.layered.considerModelOrder.portModelOrder",NEt="org.eclipse.elk.layered.considerModelOrder.noModelOrder",llt="org.eclipse.elk.layered.considerModelOrder.components",PEt="org.eclipse.elk.layered.considerModelOrder.longEdgeStrategy",hlt="org.eclipse.elk.layered.considerModelOrder.crossingCounterNodeInfluence",flt="org.eclipse.elk.layered.considerModelOrder.crossingCounterPortInfluence",dlt="layering",I2e="layering.minWidth",O2e="layering.nodePromotion",iT="crossingMinimization",XV="org.eclipse.elk.hierarchyHandling",N2e="crossingMinimization.greedySwitch",P2e="nodePlacement",F2e="nodePlacement.bk",B2e="edgeRouting",EN="org.eclipse.elk.edgeRouting",bd="spacing",FEt="priority",BEt="compaction",R2e="compaction.postCompaction",j2e="Specifies whether and how post-process compaction is applied.",REt="highDegreeNodes",jEt="wrapping",$2e="wrapping.cutting",z2e="wrapping.validify",$Et="wrapping.multiEdge",glt="edgeLabels",eA="considerModelOrder",zEt="org.eclipse.elk.spacing.commentComment",qEt="org.eclipse.elk.spacing.commentNode",HEt="org.eclipse.elk.spacing.edgeEdge",plt="org.eclipse.elk.spacing.edgeNode",VEt="org.eclipse.elk.spacing.labelLabel",UEt="org.eclipse.elk.spacing.labelPortHorizontal",GEt="org.eclipse.elk.spacing.labelPortVertical",KEt="org.eclipse.elk.spacing.labelNode",WEt="org.eclipse.elk.spacing.nodeSelfLoop",YEt="org.eclipse.elk.spacing.portPort",XEt="org.eclipse.elk.spacing.individual",QEt="org.eclipse.elk.port.borderOffset",JEt="org.eclipse.elk.noLayout",ZEt="org.eclipse.elk.port.side",TN="org.eclipse.elk.debugMode",t7t="org.eclipse.elk.alignment",e7t="org.eclipse.elk.insideSelfLoops.activate",n7t="org.eclipse.elk.insideSelfLoops.yo",blt="org.eclipse.elk.direction",r7t="org.eclipse.elk.nodeLabels.padding",i7t="org.eclipse.elk.portLabels.nextToPortIfPossible",s7t="org.eclipse.elk.portLabels.treatAsGroup",a7t="org.eclipse.elk.portAlignment.default",o7t="org.eclipse.elk.portAlignment.north",c7t="org.eclipse.elk.portAlignment.south",u7t="org.eclipse.elk.portAlignment.west",l7t="org.eclipse.elk.portAlignment.east",QV="org.eclipse.elk.contentAlignment",h7t="org.eclipse.elk.junctionPoints",f7t="org.eclipse.elk.edgeLabels.placement",d7t="org.eclipse.elk.port.index",g7t="org.eclipse.elk.commentBox",p7t="org.eclipse.elk.hypernode",b7t="org.eclipse.elk.port.anchor",wlt="org.eclipse.elk.partitioning.activate",mlt="org.eclipse.elk.partitioning.partition",JV="org.eclipse.elk.position",w7t="org.eclipse.elk.margins",m7t="org.eclipse.elk.spacing.portsSurrounding",ZV="org.eclipse.elk.interactiveLayout",_c="org.eclipse.elk.core.util",v7t={3:1,4:1,5:1,601:1},q2e="NETWORK_SIMPLEX",y7t="SIMPLE",_o={106:1,47:1},tU="org.eclipse.elk.alg.layered.p1cycles",Rg="org.eclipse.elk.alg.layered.p2layers",x7t={413:1,230:1},H2e={846:1,3:1,4:1},al="org.eclipse.elk.alg.layered.p3order",Ao="org.eclipse.elk.alg.layered.p4nodes",V2e={3:1,4:1,5:1,854:1},s0=1e-5,Qb="org.eclipse.elk.alg.layered.p4nodes.bk",vlt="org.eclipse.elk.alg.layered.p5edges",M1="org.eclipse.elk.alg.layered.p5edges.orthogonal",ylt="org.eclipse.elk.alg.layered.p5edges.orthogonal.direction",xlt=1e-6,f3="org.eclipse.elk.alg.layered.p5edges.splines",klt=.09999999999999998,eU=1e-8,U2e=4.71238898038469,k7t=3.141592653589793,jg="org.eclipse.elk.alg.mrtree",Elt=.10000000149011612,nU="SUPER_ROOT",nA="org.eclipse.elk.alg.mrtree.graph",E7t=-17976931348623157e292,ou="org.eclipse.elk.alg.mrtree.intermediate",G2e="Processor compute fanout",rU={3:1,6:1,4:1,5:1,534:1,100:1,115:1},K2e="Set neighbors in level",CN="org.eclipse.elk.alg.mrtree.options",W2e="DESCENDANTS",T7t="org.eclipse.elk.mrtree.compaction",C7t="org.eclipse.elk.mrtree.edgeEndTextureLength",S7t="org.eclipse.elk.mrtree.treeLevel",_7t="org.eclipse.elk.mrtree.positionConstraint",A7t="org.eclipse.elk.mrtree.weighting",L7t="org.eclipse.elk.mrtree.edgeRoutingMode",D7t="org.eclipse.elk.mrtree.searchOrder",Y2e="Position Constraint",Mu="org.eclipse.elk.mrtree",X2e="org.eclipse.elk.tree",Q2e="Processor arrange level",sT="org.eclipse.elk.alg.mrtree.p2order",Xl="org.eclipse.elk.alg.mrtree.p4route",M7t="org.eclipse.elk.alg.radial",xw=6.283185307179586,I7t="Before",O7t=5e-324,iU="After",N7t="org.eclipse.elk.alg.radial.intermediate",J2e="COMPACTION",Tlt="org.eclipse.elk.alg.radial.intermediate.compaction",Z2e={3:1,4:1,5:1,100:1},P7t="org.eclipse.elk.alg.radial.intermediate.optimization",Clt="No implementation is available for the layout option ",rA="org.eclipse.elk.alg.radial.options",F7t="org.eclipse.elk.radial.centerOnRoot",B7t="org.eclipse.elk.radial.orderId",R7t="org.eclipse.elk.radial.radius",sU="org.eclipse.elk.radial.rotate",Slt="org.eclipse.elk.radial.compactor",_lt="org.eclipse.elk.radial.compactionStepSize",j7t="org.eclipse.elk.radial.sorter",$7t="org.eclipse.elk.radial.wedgeCriteria",z7t="org.eclipse.elk.radial.optimizationCriteria",Alt="org.eclipse.elk.radial.rotation.targetAngle",Llt="org.eclipse.elk.radial.rotation.computeAdditionalWedgeSpace",q7t="org.eclipse.elk.radial.rotation.outgoingEdgeAngles",twe="Compaction",H7t="rotation",zh="org.eclipse.elk.radial",ewe="org.eclipse.elk.alg.radial.p1position.wedge",V7t="org.eclipse.elk.alg.radial.sorting",nwe=5.497787143782138,rwe=3.9269908169872414,iwe=2.356194490192345,swe="org.eclipse.elk.alg.rectpacking",aU="org.eclipse.elk.alg.rectpacking.intermediate",Dlt="org.eclipse.elk.alg.rectpacking.options",U7t="org.eclipse.elk.rectpacking.trybox",G7t="org.eclipse.elk.rectpacking.currentPosition",K7t="org.eclipse.elk.rectpacking.desiredPosition",W7t="org.eclipse.elk.rectpacking.inNewRow",Y7t="org.eclipse.elk.rectpacking.widthApproximation.strategy",X7t="org.eclipse.elk.rectpacking.widthApproximation.targetWidth",Q7t="org.eclipse.elk.rectpacking.widthApproximation.optimizationGoal",J7t="org.eclipse.elk.rectpacking.widthApproximation.lastPlaceShift",Z7t="org.eclipse.elk.rectpacking.packing.strategy",tTt="org.eclipse.elk.rectpacking.packing.compaction.rowHeightReevaluation",eTt="org.eclipse.elk.rectpacking.packing.compaction.iterations",nTt="org.eclipse.elk.rectpacking.whiteSpaceElimination.strategy",Mlt="widthApproximation",awe="Compaction Strategy",owe="packing.compaction",Ol="org.eclipse.elk.rectpacking",aT="org.eclipse.elk.alg.rectpacking.p1widthapproximation",oU="org.eclipse.elk.alg.rectpacking.p2packing",cwe="No Compaction",rTt="org.eclipse.elk.alg.rectpacking.p3whitespaceelimination",SN="org.eclipse.elk.alg.rectpacking.util",cU="No implementation available for ",d3="org.eclipse.elk.alg.spore",g3="org.eclipse.elk.alg.spore.options",uv="org.eclipse.elk.sporeCompaction",Ilt="org.eclipse.elk.underlyingLayoutAlgorithm",iTt="org.eclipse.elk.processingOrder.treeConstruction",sTt="org.eclipse.elk.processingOrder.spanningTreeCostFunction",Olt="org.eclipse.elk.processingOrder.preferredRoot",Nlt="org.eclipse.elk.processingOrder.rootSelection",Plt="org.eclipse.elk.structure.structureExtractionStrategy",aTt="org.eclipse.elk.compaction.compactionStrategy",oTt="org.eclipse.elk.compaction.orthogonal",cTt="org.eclipse.elk.overlapRemoval.maxIterations",uTt="org.eclipse.elk.overlapRemoval.runScanline",Flt="processingOrder",uwe="overlapRemoval",oT="org.eclipse.elk.sporeOverlap",lwe="org.eclipse.elk.alg.spore.p1structure",Blt="org.eclipse.elk.alg.spore.p2processingorder",Rlt="org.eclipse.elk.alg.spore.p3execution",hwe="Topdown Layout",fwe="Invalid index: ",cT="org.eclipse.elk.core.alg",L5={341:1},p3={294:1},dwe="Make sure its type is registered with the ",lTt=" utility class.",uT="true",jlt="false",gwe="Couldn't clone property '",lv=.05,Nl="org.eclipse.elk.core.options",pwe=1.2999999523162842,hv="org.eclipse.elk.box",hTt="org.eclipse.elk.expandNodes",fTt="org.eclipse.elk.box.packingMode",bwe="org.eclipse.elk.algorithm",wwe="org.eclipse.elk.resolvedAlgorithm",dTt="org.eclipse.elk.bendPoints",KSn="org.eclipse.elk.labelManager",mwe="org.eclipse.elk.scaleFactor",vwe="org.eclipse.elk.childAreaWidth",ywe="org.eclipse.elk.childAreaHeight",xwe="org.eclipse.elk.animate",kwe="org.eclipse.elk.animTimeFactor",Ewe="org.eclipse.elk.layoutAncestors",Twe="org.eclipse.elk.maxAnimTime",Cwe="org.eclipse.elk.minAnimTime",Swe="org.eclipse.elk.progressBar",_we="org.eclipse.elk.validateGraph",Awe="org.eclipse.elk.validateOptions",Lwe="org.eclipse.elk.zoomToFit",WSn="org.eclipse.elk.font.name",Dwe="org.eclipse.elk.font.size",gTt="org.eclipse.elk.topdown.sizeApproximator",pTt="org.eclipse.elk.topdown.scaleCap",Mwe="org.eclipse.elk.edge.type",Iwe="partitioning",Owe="nodeLabels",uU="portAlignment",$lt="nodeSize",zlt="port",bTt="portLabels",_N="topdown",Nwe="insideSelfLoops",iA="org.eclipse.elk.fixed",lU="org.eclipse.elk.random",wTt={3:1,34:1,22:1,347:1},Pwe="port must have a parent node to calculate the port side",Fwe="The edge needs to have exactly one edge section. Found: ",sA="org.eclipse.elk.core.util.adapters",qh="org.eclipse.emf.ecore",D5="org.eclipse.elk.graph",Bwe="EMapPropertyHolder",Rwe="ElkBendPoint",jwe="ElkGraphElement",$we="ElkConnectableShape",mTt="ElkEdge",zwe="ElkEdgeSection",qwe="EModelElement",Hwe="ENamedElement",vTt="ElkLabel",yTt="ElkNode",xTt="ElkPort",Vwe={94:1,93:1},Pk="org.eclipse.emf.common.notify.impl",Jb="The feature '",aA="' is not a valid changeable feature",Uwe="Expecting null",qlt="' is not a valid feature",Gwe="The feature ID",Kwe=" is not a valid feature ID",Fc=32768,Wwe={110:1,94:1,93:1,58:1,54:1,99:1},Rn="org.eclipse.emf.ecore.impl",kw="org.eclipse.elk.graph.impl",oA="Recursive containment not allowed for ",lT="The datatype '",fv="' is not a valid classifier",Hlt="The value '",M5={195:1,3:1,4:1},Vlt="The class '",hT="http://www.eclipse.org/elk/ElkGraph",kTt="property",cA="value",Ult="source",Ywe="properties",Xwe="identifier",Glt="height",Klt="width",Wlt="parent",Ylt="text",Xlt="children",Qwe="hierarchical",ETt="sources",Qlt="targets",TTt="sections",hU="bendPoints",CTt="outgoingShape",STt="incomingShape",_Tt="outgoingSections",ATt="incomingSections",oo="org.eclipse.emf.common.util",LTt="Severe implementation error in the Json to ElkGraph importer.",a0="id",Ba="org.eclipse.elk.graph.json",DTt="Unhandled parameter types: ",Jwe="startPoint",Zwe="An edge must have at least one source and one target (edge id: '",fT="').",tme="Referenced edge section does not exist: ",eme=" (edge id: '",MTt="target",nme="sourcePoint",rme="targetPoint",fU="group",pi="name",ime="connectableShape cannot be null",sme="edge cannot be null",Jlt="Passed edge is not 'simple'.",dU="org.eclipse.elk.graph.util",AN="The 'no duplicates' constraint is violated",Zlt="targetIndex=",Ew=", size=",tht="sourceIndex=",o0={3:1,4:1,20:1,31:1,56:1,16:1,15:1,59:1,70:1,66:1,61:1},eht={3:1,4:1,20:1,31:1,56:1,16:1,51:1,15:1,59:1,70:1,66:1,61:1,596:1},gU="logging",ame="measureExecutionTime",ome="parser.parse.1",cme="parser.parse.2",pU="parser.next.1",nht="parser.next.2",ume="parser.next.3",lme="parser.next.4",Tw="parser.factor.1",ITt="parser.factor.2",hme="parser.factor.3",fme="parser.factor.4",dme="parser.factor.5",gme="parser.factor.6",pme="parser.atom.1",bme="parser.atom.2",wme="parser.atom.3",OTt="parser.atom.4",rht="parser.atom.5",NTt="parser.cc.1",bU="parser.cc.2",mme="parser.cc.3",vme="parser.cc.5",PTt="parser.cc.6",FTt="parser.cc.7",iht="parser.cc.8",yme="parser.ope.1",xme="parser.ope.2",kme="parser.ope.3",zp="parser.descape.1",Eme="parser.descape.2",Tme="parser.descape.3",Cme="parser.descape.4",Sme="parser.descape.5",Hh="parser.process.1",_me="parser.quantifier.1",Ame="parser.quantifier.2",Lme="parser.quantifier.3",Dme="parser.quantifier.4",BTt="parser.quantifier.5",Mme="org.eclipse.emf.common.notify",RTt={424:1,686:1},Ime={3:1,4:1,20:1,31:1,56:1,16:1,15:1,70:1,61:1},LN={378:1,152:1},uA="index=",sht={3:1,4:1,5:1,129:1},Ome={3:1,4:1,20:1,31:1,56:1,16:1,15:1,59:1,70:1,61:1},jTt={3:1,6:1,4:1,5:1,198:1},Nme={3:1,4:1,5:1,173:1,379:1},Pme=";/?:@&=+$,",Fme="invalid authority: ",Bme="EAnnotation",Rme="ETypedElement",jme="EStructuralFeature",$me="EAttribute",zme="EClassifier",qme="EEnumLiteral",Hme="EGenericType",Vme="EOperation",Ume="EParameter",Gme="EReference",Kme="ETypeParameter",Yi="org.eclipse.emf.ecore.util",aht={79:1},$Tt={3:1,20:1,16:1,15:1,61:1,597:1,79:1,71:1,97:1},Wme="org.eclipse.emf.ecore.util.FeatureMap$Entry",ol=8192,b3=2048,lA="byte",wU="char",hA="double",fA="float",dA="int",gA="long",pA="short",Yme="java.lang.Object",I5={3:1,4:1,5:1,254:1},zTt={3:1,4:1,5:1,688:1},Xme={3:1,4:1,20:1,31:1,56:1,16:1,15:1,59:1,70:1,66:1,61:1,71:1},ic={3:1,4:1,20:1,31:1,56:1,16:1,15:1,59:1,70:1,66:1,61:1,79:1,71:1,97:1},DN="mixed",ti="http:///org/eclipse/emf/ecore/util/ExtendedMetaData",lf="kind",Qme={3:1,4:1,5:1,689:1},qTt={3:1,4:1,20:1,31:1,56:1,16:1,15:1,70:1,61:1,79:1,71:1,97:1},mU={20:1,31:1,56:1,16:1,15:1,61:1,71:1},vU={51:1,128:1,287:1},yU={76:1,343:1},xU="The value of type '",kU="' must be of type '",O5=1352,hf="http://www.eclipse.org/emf/2002/Ecore",EU=-32768,dv="constraints",Ka="baseType",Jme="getEStructuralFeature",Zme="getFeatureID",bA="feature",tve="getOperationID",HTt="operation",eve="defaultValue",nve="eTypeParameters",rve="isInstance",ive="getEEnumLiteral",sve="eContainingClass",li={57:1},ave={3:1,4:1,5:1,124:1},ove="org.eclipse.emf.ecore.resource",cve={94:1,93:1,599:1,2034:1},oht="org.eclipse.emf.ecore.resource.impl",VTt="unspecified",MN="simple",TU="attribute",uve="attributeWildcard",CU="element",cht="elementWildcard",I1="collapse",uht="itemType",SU="namespace",IN="##targetNamespace",ff="whiteSpace",UTt="wildcards",Cw="http://www.eclipse.org/emf/2003/XMLType",lht="##any",dT="uninitialized",ON="The multiplicity constraint is violated",_U="org.eclipse.emf.ecore.xml.type",lve="ProcessingInstruction",hve="SimpleAnyType",fve="XMLTypeDocumentRoot",$s="org.eclipse.emf.ecore.xml.type.impl",NN="INF",dve="processing",gve="ENTITIES_._base",GTt="minLength",KTt="ENTITY",AU="NCName",pve="IDREFS_._base",WTt="integer",hht="token",fht="pattern",bve="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",YTt="\\i\\c*",wve="[\\i-[:]][\\c-[:]]*",mve="nonPositiveInteger",PN="maxInclusive",XTt="NMTOKEN",vve="NMTOKENS_._base",QTt="nonNegativeInteger",FN="minInclusive",yve="normalizedString",xve="unsignedByte",kve="unsignedInt",Eve="18446744073709551615",Tve="unsignedShort",Cve="processingInstruction",qp="org.eclipse.emf.ecore.xml.type.internal",gT=1114111,Sve="Internal Error: shorthands: \\u",wA="xml:isDigit",dht="xml:isWord",ght="xml:isSpace",pht="xml:isNameChar",bht="xml:isInitialNameChar",_ve="09٠٩۰۹०९০৯੦੯૦૯୦୯௧௯౦౯೦೯൦൯๐๙໐໙༠༩",Ave="AZazÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁΆΆΈΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆאתװײءغفيٱڷںھۀێېۓەەۥۦअहऽऽक़ॡঅঌএঐওনপরললশহড়ঢ়য়ৡৰৱਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹਖ਼ੜਫ਼ਫ਼ੲੴઅઋઍઍએઑઓનપરલળવહઽઽૠૠଅଌଏଐଓନପରଲଳଶହଽଽଡ଼ଢ଼ୟୡஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹఅఌఎఐఒనపళవహౠౡಅಌಎಐಒನಪಳವಹೞೞೠೡഅഌഎഐഒനപഹൠൡกฮะะาำเๅກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະະາຳຽຽເໄཀཇཉཀྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼΩΩKÅ℮℮ↀↂ〇〇〡〩ぁゔァヺㄅㄬ一龥가힣",Lve="Private Use",wht="ASSIGNED",mht="\0€ÿĀſƀɏɐʯʰ˿̀ͯͰϿЀӿ԰֏֐׿؀ۿ܀ݏހ޿ऀॿঀ৿਀੿઀૿଀୿஀௿ఀ౿ಀ೿ഀൿ඀෿฀๿຀໿ༀ࿿က႟Ⴀჿᄀᇿሀ፿Ꭰ᏿᐀ᙿ ᚟ᚠ᛿ក៿᠀᢯Ḁỿἀ῿ ⁰₟₠⃏⃐⃿℀⅏⅐↏←⇿∀⋿⌀⏿␀␿⑀⑟①⓿─╿▀▟■◿☀⛿✀➿⠀⣿⺀⻿⼀⿟⿰⿿ 〿぀ゟ゠ヿ㄀ㄯ㄰㆏㆐㆟ㆠㆿ㈀㋿㌀㏿㐀䶵一鿿ꀀ꒏꒐꓏가힣豈﫿ffﭏﭐ﷿︠︯︰﹏﹐﹯ﹰ﻾\uFEFF\uFEFF＀￯",JTt="UNASSIGNED",pT={3:1,122:1},Dve="org.eclipse.emf.ecore.xml.type.util",LU={3:1,4:1,5:1,381:1},ZTt="org.eclipse.xtext.xbase.lib",Mve="Cannot add elements to a Range",Ive="Cannot set elements in a Range",Ove="Cannot remove elements from a Range",Nve="user.agent",l,DU,vht;b.goog=b.goog||{},b.goog.global=b.goog.global||b,DU={},D(1,null,{},S),l.Fb=function(e){return MQt(this,e)},l.Gb=function(){return this.Rm},l.Hb=function(){return Em(this)},l.Ib=function(){var e;return V2(Wl(this))+"@"+(e=$i(this)>>>0,e.toString(16))},l.equals=function(t){return this.Fb(t)},l.hashCode=function(){return this.Hb()},l.toString=function(){return this.Ib()};var Pve,Fve,Bve;D(296,1,{296:1,2124:1},Y4t),l.ve=function(e){var n;return n=new Y4t,n.i=4,e>1?n.c=Zne(this,e-1):n.c=this,n},l.we=function(){return wg(this),this.b},l.xe=function(){return V2(this)},l.ye=function(){return wg(this),this.k},l.ze=function(){return(this.i&4)!=0},l.Ae=function(){return(this.i&1)!=0},l.Ib=function(){return a4t(this)},l.i=0;var aa=I(Sc,"Object",1),t9t=I(Sc,"Class",296);D(2096,1,tN),I(eN,"Optional",2096),D(1191,2096,tN,_),l.Fb=function(e){return e===this},l.Hb=function(){return 2040732332},l.Ib=function(){return"Optional.absent()"},l.Jb=function(e){return Hr(e),UC(),yht};var yht;I(eN,"Absent",1191),D(636,1,{},ert),I(eN,"Joiner",636);var YSn=os(eN,"Predicate");D(589,1,{178:1,589:1,3:1,46:1},Rj),l.Mb=function(e){return Zce(this,e)},l.Lb=function(e){return Zce(this,e)},l.Fb=function(e){var n;return Lt(e,589)?(n=u(e,589),U6t(this.a,n.a)):!1},l.Hb=function(){return e5t(this.a)+306654252},l.Ib=function(){return P4n(this.a)},I(eN,"Predicates/AndPredicate",589),D(419,2096,{419:1,3:1},FC),l.Fb=function(e){var n;return Lt(e,419)?(n=u(e,419),Ti(this.a,n.a)):!1},l.Hb=function(){return 1502476572+$i(this.a)},l.Ib=function(){return cbe+this.a+")"},l.Jb=function(e){return new FC(Qz(e.Kb(this.a),"the Function passed to Optional.transform() must not return null."))},I(eN,"Present",419),D(204,1,V7),l.Nb=function(e){Na(this,e)},l.Qb=function(){yWt()},I(on,"UnmodifiableIterator",204),D(2076,204,U7),l.Qb=function(){yWt()},l.Rb=function(e){throw at(new Vr)},l.Wb=function(e){throw at(new Vr)},I(on,"UnmodifiableListIterator",2076),D(399,2076,U7),l.Ob=function(){return this.c0},l.Pb=function(){if(this.c>=this.d)throw at(new cc);return this.Xb(this.c++)},l.Tb=function(){return this.c},l.Ub=function(){if(this.c<=0)throw at(new cc);return this.Xb(--this.c)},l.Vb=function(){return this.c-1},l.c=0,l.d=0,I(on,"AbstractIndexedListIterator",399),D(713,204,V7),l.Ob=function(){return rat(this)},l.Pb=function(){return t4t(this)},l.e=1,I(on,"AbstractIterator",713),D(2084,1,{229:1}),l.Zb=function(){var e;return e=this.f,e||(this.f=this.ac())},l.Fb=function(e){return Cat(this,e)},l.Hb=function(){return $i(this.Zb())},l.dc=function(){return this.gc()==0},l.ec=function(){return U6(this)},l.Ib=function(){return rc(this.Zb())},I(on,"AbstractMultimap",2084),D(742,2084,pw),l.$b=function(){qq(this)},l._b=function(e){return jWt(this,e)},l.ac=function(){return new vE(this,this.c)},l.ic=function(e){return this.hc()},l.bc=function(){return new W4(this,this.c)},l.jc=function(){return this.mc(this.hc())},l.kc=function(){return new iWt(this)},l.lc=function(){return Not(this.c.vc().Nc(),new F,64,this.d)},l.cc=function(e){return Ai(this,e)},l.fc=function(e){return hO(this,e)},l.gc=function(){return this.d},l.mc=function(e){return mn(),new Ta(e)},l.nc=function(){return new rWt(this)},l.oc=function(){return Not(this.c.Cc().Nc(),new M,64,this.d)},l.pc=function(e,n){return new yq(this,e,n,null)},l.d=0,I(on,"AbstractMapBasedMultimap",742),D(1696,742,pw),l.hc=function(){return new wu(this.a)},l.jc=function(){return mn(),mn(),co},l.cc=function(e){return u(Ai(this,e),15)},l.fc=function(e){return u(hO(this,e),15)},l.Zb=function(){return Q6(this)},l.Fb=function(e){return Cat(this,e)},l.qc=function(e){return u(Ai(this,e),15)},l.rc=function(e){return u(hO(this,e),15)},l.mc=function(e){return ast(u(e,15))},l.pc=function(e,n){return aie(this,e,u(n,15),null)},I(on,"AbstractListMultimap",1696),D(748,1,wa),l.Nb=function(e){Na(this,e)},l.Ob=function(){return this.c.Ob()||this.e.Ob()},l.Pb=function(){var e;return this.e.Ob()||(e=u(this.c.Pb(),44),this.b=e.ld(),this.a=u(e.md(),16),this.e=this.a.Kc()),this.sc(this.b,this.e.Pb())},l.Qb=function(){this.e.Qb(),u(nf(this.a),16).dc()&&this.c.Qb(),--this.d.d},I(on,"AbstractMapBasedMultimap/Itr",748),D(1129,748,wa,rWt),l.sc=function(e,n){return n},I(on,"AbstractMapBasedMultimap/1",1129),D(1130,1,{},M),l.Kb=function(e){return u(e,16).Nc()},I(on,"AbstractMapBasedMultimap/1methodref$spliterator$Type",1130),D(1131,748,wa,iWt),l.sc=function(e,n){return new bm(e,n)},I(on,"AbstractMapBasedMultimap/2",1131);var e9t=os(xr,"Map");D(2065,1,sv),l.wc=function(e){e_(this,e)},l.yc=function(e,n,r){return Vat(this,e,n,r)},l.$b=function(){this.vc().$b()},l.tc=function(e){return bot(this,e)},l._b=function(e){return!!Vxt(this,e,!1)},l.uc=function(e){var n,r,s;for(r=this.vc().Kc();r.Ob();)if(n=u(r.Pb(),44),s=n.md(),$t(e)===$t(s)||e!=null&&Ti(e,s))return!0;return!1},l.Fb=function(e){var n,r,s;if(e===this)return!0;if(!Lt(e,85)||(s=u(e,85),this.gc()!=s.gc()))return!1;for(r=s.vc().Kc();r.Ob();)if(n=u(r.Pb(),44),!this.tc(n))return!1;return!0},l.xc=function(e){return Ko(Vxt(this,e,!1))},l.Hb=function(){return U4t(this.vc())},l.dc=function(){return this.gc()==0},l.ec=function(){return new cr(this)},l.zc=function(e,n){throw at(new hp("Put not supported on this map"))},l.Ac=function(e){t_(this,e)},l.Bc=function(e){return Ko(Vxt(this,e,!0))},l.gc=function(){return this.vc().gc()},l.Ib=function(){return hfe(this)},l.Cc=function(){return new si(this)},I(xr,"AbstractMap",2065),D(2085,2065,sv),l.bc=function(){return new v$(this)},l.vc=function(){return nee(this)},l.ec=function(){var e;return e=this.g,e||(this.g=this.bc())},l.Cc=function(){var e;return e=this.i,e||(this.i=new LYt(this))},I(on,"Maps/ViewCachingAbstractMap",2085),D(402,2085,sv,vE),l.xc=function(e){return tgn(this,e)},l.Bc=function(e){return Ebn(this,e)},l.$b=function(){this.d==this.e.c?this.e.$b():Az(new ryt(this))},l._b=function(e){return Bue(this.d,e)},l.Ec=function(){return new jj(this)},l.Dc=function(){return this.Ec()},l.Fb=function(e){return this===e||Ti(this.d,e)},l.Hb=function(){return $i(this.d)},l.ec=function(){return this.e.ec()},l.gc=function(){return this.d.gc()},l.Ib=function(){return rc(this.d)},I(on,"AbstractMapBasedMultimap/AsMap",402);var gh=os(Sc,"Iterable");D(31,1,o3),l.Jc=function(e){Fa(this,e)},l.Lc=function(){return this.Oc()},l.Nc=function(){return new gn(this,0)},l.Oc=function(){return new ln(null,this.Nc())},l.Fc=function(e){throw at(new hp("Add not supported on this collection"))},l.Gc=function(e){return Ma(this,e)},l.$b=function(){Hyt(this)},l.Hc=function(e){return Ky(this,e,!1)},l.Ic=function(e){return rO(this,e)},l.dc=function(){return this.gc()==0},l.Mc=function(e){return Ky(this,e,!0)},l.Pc=function(){return dyt(this)},l.Qc=function(e){return v_(this,e)},l.Ib=function(){return Hb(this)},I(xr,"AbstractCollection",31);var df=os(xr,"Set");D(dd,31,sl),l.Nc=function(){return new gn(this,1)},l.Fb=function(e){return Ale(this,e)},l.Hb=function(){return U4t(this)},I(xr,"AbstractSet",dd),D(2068,dd,sl),I(on,"Sets/ImprovedAbstractSet",2068),D(2069,2068,sl),l.$b=function(){this.Rc().$b()},l.Hc=function(e){return fle(this,e)},l.dc=function(){return this.Rc().dc()},l.Mc=function(e){var n;return this.Hc(e)&&Lt(e,44)?(n=u(e,44),this.Rc().ec().Mc(n.ld())):!1},l.gc=function(){return this.Rc().gc()},I(on,"Maps/EntrySet",2069),D(1127,2069,sl,jj),l.Hc=function(e){return m5t(this.a.d.vc(),e)},l.Kc=function(){return new ryt(this.a)},l.Rc=function(){return this.a},l.Mc=function(e){var n;return m5t(this.a.d.vc(),e)?(n=u(nf(u(e,44)),44),qdn(this.a.e,n.ld()),!0):!1},l.Nc=function(){return pI(this.a.d.vc().Nc(),new $j(this.a))},I(on,"AbstractMapBasedMultimap/AsMap/AsMapEntries",1127),D(1128,1,{},$j),l.Kb=function(e){return ise(this.a,u(e,44))},I(on,"AbstractMapBasedMultimap/AsMap/AsMapEntries/0methodref$wrapEntry$Type",1128),D(746,1,wa,ryt),l.Nb=function(e){Na(this,e)},l.Pb=function(){var e;return e=u(this.b.Pb(),44),this.a=u(e.md(),16),ise(this.c,e)},l.Ob=function(){return this.b.Ob()},l.Qb=function(){AE(!!this.a),this.b.Qb(),this.c.e.d-=this.a.gc(),this.a.$b(),this.a=null},I(on,"AbstractMapBasedMultimap/AsMap/AsMapIterator",746),D(542,2068,sl,v$),l.$b=function(){this.b.$b()},l.Hc=function(e){return this.b._b(e)},l.Jc=function(e){Hr(e),this.b.wc(new Uj(e))},l.dc=function(){return this.b.dc()},l.Kc=function(){return new GC(this.b.vc().Kc())},l.Mc=function(e){return this.b._b(e)?(this.b.Bc(e),!0):!1},l.gc=function(){return this.b.gc()},I(on,"Maps/KeySet",542),D(327,542,sl,W4),l.$b=function(){var e;Az((e=this.b.vc().Kc(),new _wt(this,e)))},l.Ic=function(e){return this.b.ec().Ic(e)},l.Fb=function(e){return this===e||Ti(this.b.ec(),e)},l.Hb=function(){return $i(this.b.ec())},l.Kc=function(){var e;return e=this.b.vc().Kc(),new _wt(this,e)},l.Mc=function(e){var n,r;return r=0,n=u(this.b.Bc(e),16),n&&(r=n.gc(),n.$b(),this.a.d-=r),r>0},l.Nc=function(){return this.b.ec().Nc()},I(on,"AbstractMapBasedMultimap/KeySet",327),D(747,1,wa,_wt),l.Nb=function(e){Na(this,e)},l.Ob=function(){return this.c.Ob()},l.Pb=function(){return this.a=u(this.c.Pb(),44),this.a.ld()},l.Qb=function(){var e;AE(!!this.a),e=u(this.a.md(),16),this.c.Qb(),this.b.a.d-=e.gc(),e.$b(),this.a=null},I(on,"AbstractMapBasedMultimap/KeySet/1",747),D(502,402,{85:1,133:1},cI),l.bc=function(){return this.Sc()},l.ec=function(){return this.Uc()},l.Sc=function(){return new FM(this.c,this.Wc())},l.Tc=function(){return this.Wc().Tc()},l.Uc=function(){var e;return e=this.b,e||(this.b=this.Sc())},l.Vc=function(){return this.Wc().Vc()},l.Wc=function(){return u(this.d,133)},I(on,"AbstractMapBasedMultimap/SortedAsMap",502),D(446,502,h8t,SS),l.bc=function(){return new mE(this.a,u(u(this.d,133),139))},l.Sc=function(){return new mE(this.a,u(u(this.d,133),139))},l.ec=function(){var e;return e=this.b,u(e||(this.b=new mE(this.a,u(u(this.d,133),139))),277)},l.Uc=function(){var e;return e=this.b,u(e||(this.b=new mE(this.a,u(u(this.d,133),139))),277)},l.Wc=function(){return u(u(this.d,133),139)},l.Xc=function(e){return u(u(this.d,133),139).Xc(e)},l.Yc=function(e){return u(u(this.d,133),139).Yc(e)},l.Zc=function(e,n){return new SS(this.a,u(u(this.d,133),139).Zc(e,n))},l.$c=function(e){return u(u(this.d,133),139).$c(e)},l._c=function(e){return u(u(this.d,133),139)._c(e)},l.ad=function(e,n){return new SS(this.a,u(u(this.d,133),139).ad(e,n))},I(on,"AbstractMapBasedMultimap/NavigableAsMap",446),D(501,327,ube,FM),l.Nc=function(){return this.b.ec().Nc()},I(on,"AbstractMapBasedMultimap/SortedKeySet",501),D(401,501,f8t,mE),I(on,"AbstractMapBasedMultimap/NavigableKeySet",401),D(551,31,o3,yq),l.Fc=function(e){var n,r;return Ll(this),r=this.d.dc(),n=this.d.Fc(e),n&&(++this.f.d,r&&fI(this)),n},l.Gc=function(e){var n,r,s;return e.dc()?!1:(s=(Ll(this),this.d.gc()),n=this.d.Gc(e),n&&(r=this.d.gc(),this.f.d+=r-s,s==0&&fI(this)),n)},l.$b=function(){var e;e=(Ll(this),this.d.gc()),e!=0&&(this.d.$b(),this.f.d-=e,Nz(this))},l.Hc=function(e){return Ll(this),this.d.Hc(e)},l.Ic=function(e){return Ll(this),this.d.Ic(e)},l.Fb=function(e){return e===this?!0:(Ll(this),Ti(this.d,e))},l.Hb=function(){return Ll(this),$i(this.d)},l.Kc=function(){return Ll(this),new $vt(this)},l.Mc=function(e){var n;return Ll(this),n=this.d.Mc(e),n&&(--this.f.d,Nz(this)),n},l.gc=function(){return wQt(this)},l.Nc=function(){return Ll(this),this.d.Nc()},l.Ib=function(){return Ll(this),rc(this.d)},I(on,"AbstractMapBasedMultimap/WrappedCollection",551);var Vh=os(xr,"List");D(744,551,{20:1,31:1,16:1,15:1},byt),l.jd=function(e){rw(this,e)},l.Nc=function(){return Ll(this),this.d.Nc()},l.bd=function(e,n){var r;Ll(this),r=this.d.dc(),u(this.d,15).bd(e,n),++this.a.d,r&&fI(this)},l.cd=function(e,n){var r,s,o;return n.dc()?!1:(o=(Ll(this),this.d.gc()),r=u(this.d,15).cd(e,n),r&&(s=this.d.gc(),this.a.d+=s-o,o==0&&fI(this)),r)},l.Xb=function(e){return Ll(this),u(this.d,15).Xb(e)},l.dd=function(e){return Ll(this),u(this.d,15).dd(e)},l.ed=function(){return Ll(this),new KQt(this)},l.fd=function(e){return Ll(this),new bne(this,e)},l.gd=function(e){var n;return Ll(this),n=u(this.d,15).gd(e),--this.a.d,Nz(this),n},l.hd=function(e,n){return Ll(this),u(this.d,15).hd(e,n)},l.kd=function(e,n){return Ll(this),aie(this.a,this.e,u(this.d,15).kd(e,n),this.b?this.b:this)},I(on,"AbstractMapBasedMultimap/WrappedList",744),D(1126,744,{20:1,31:1,16:1,15:1,59:1},FJt),I(on,"AbstractMapBasedMultimap/RandomAccessWrappedList",1126),D(628,1,wa,$vt),l.Nb=function(e){Na(this,e)},l.Ob=function(){return jE(this),this.b.Ob()},l.Pb=function(){return jE(this),this.b.Pb()},l.Qb=function(){yJt(this)},I(on,"AbstractMapBasedMultimap/WrappedCollection/WrappedIterator",628),D(745,628,P0,KQt,bne),l.Qb=function(){yJt(this)},l.Rb=function(e){var n;n=wQt(this.a)==0,(jE(this),u(this.b,128)).Rb(e),++this.a.a.d,n&&fI(this.a)},l.Sb=function(){return(jE(this),u(this.b,128)).Sb()},l.Tb=function(){return(jE(this),u(this.b,128)).Tb()},l.Ub=function(){return(jE(this),u(this.b,128)).Ub()},l.Vb=function(){return(jE(this),u(this.b,128)).Vb()},l.Wb=function(e){(jE(this),u(this.b,128)).Wb(e)},I(on,"AbstractMapBasedMultimap/WrappedList/WrappedListIterator",745),D(743,551,ube,svt),l.Nc=function(){return Ll(this),this.d.Nc()},I(on,"AbstractMapBasedMultimap/WrappedSortedSet",743),D(1125,743,f8t,qQt),I(on,"AbstractMapBasedMultimap/WrappedNavigableSet",1125),D(1124,551,sl,rZt),l.Nc=function(){return Ll(this),this.d.Nc()},I(on,"AbstractMapBasedMultimap/WrappedSet",1124),D(1133,1,{},F),l.Kb=function(e){return Jdn(u(e,44))},I(on,"AbstractMapBasedMultimap/lambda$1$Type",1133),D(1132,1,{},mnt),l.Kb=function(e){return new bm(this.a,e)},I(on,"AbstractMapBasedMultimap/lambda$2$Type",1132);var Sw=os(xr,"Map/Entry");D(358,1,Fct),l.Fb=function(e){var n;return Lt(e,44)?(n=u(e,44),Ud(this.ld(),n.ld())&&Ud(this.md(),n.md())):!1},l.Hb=function(){var e,n;return e=this.ld(),n=this.md(),(e==null?0:$i(e))^(n==null?0:$i(n))},l.nd=function(e){throw at(new Vr)},l.Ib=function(){return this.ld()+"="+this.md()},I(on,lbe,358),D(2086,31,o3),l.$b=function(){this.od().$b()},l.Hc=function(e){var n;return Lt(e,44)?(n=u(e,44),v1n(this.od(),n.ld(),n.md())):!1},l.Mc=function(e){var n;return Lt(e,44)?(n=u(e,44),zre(this.od(),n.ld(),n.md())):!1},l.gc=function(){return this.od().d},I(on,"Multimaps/Entries",2086),D(749,2086,o3,qj),l.Kc=function(){return this.a.kc()},l.od=function(){return this.a},l.Nc=function(){return this.a.lc()},I(on,"AbstractMultimap/Entries",749),D(750,749,sl,iwt),l.Nc=function(){return this.a.lc()},l.Fb=function(e){return l6t(this,e)},l.Hb=function(){return Joe(this)},I(on,"AbstractMultimap/EntrySet",750),D(751,31,o3,bb),l.$b=function(){this.a.$b()},l.Hc=function(e){return wbn(this.a,e)},l.Kc=function(){return this.a.nc()},l.gc=function(){return this.a.d},l.Nc=function(){return this.a.oc()},I(on,"AbstractMultimap/Values",751),D(2087,31,{849:1,20:1,31:1,16:1}),l.Jc=function(e){Hr(e),X4(this).Jc(new Tnt(e))},l.Nc=function(){var e;return e=X4(this).Nc(),Not(e,new wt,64|e.yd()&1296,this.a.d)},l.Fc=function(e){return fwt(),!0},l.Gc=function(e){return Hr(this),Hr(e),Lt(e,552)?k1n(u(e,849)):!e.dc()&&Wst(this,e.Kc())},l.Hc=function(e){var n;return n=u(Gy(Q6(this.a),e),16),(n?n.gc():0)>0},l.Fb=function(e){return Vxn(this,e)},l.Hb=function(){return $i(X4(this))},l.dc=function(){return X4(this).dc()},l.Mc=function(e){return C1e(this,e,1)>0},l.Ib=function(){return rc(X4(this))},I(on,"AbstractMultiset",2087),D(2089,2068,sl),l.$b=function(){qq(this.a.a)},l.Hc=function(e){var n,r;return Lt(e,503)?(r=u(e,425),u(r.a.md(),16).gc()<=0?!1:(n=gre(this.a,r.a.ld()),n==u(r.a.md(),16).gc())):!1},l.Mc=function(e){var n,r,s,o;return Lt(e,503)&&(r=u(e,425),n=r.a.ld(),s=u(r.a.md(),16).gc(),s!=0)?(o=this.a,N5n(o,n,s)):!1},I(on,"Multisets/EntrySet",2089),D(1139,2089,sl,vnt),l.Kc=function(){return new uWt(nee(Q6(this.a.a)).Kc())},l.gc=function(){return Q6(this.a.a).gc()},I(on,"AbstractMultiset/EntrySet",1139),D(627,742,pw),l.hc=function(){return this.pd()},l.jc=function(){return this.qd()},l.cc=function(e){return this.rd(e)},l.fc=function(e){return this.sd(e)},l.Zb=function(){var e;return e=this.f,e||(this.f=this.ac())},l.qd=function(){return mn(),mn(),FU},l.Fb=function(e){return Cat(this,e)},l.rd=function(e){return u(Ai(this,e),21)},l.sd=function(e){return u(hO(this,e),21)},l.mc=function(e){return mn(),new dE(u(e,21))},l.pc=function(e,n){return new rZt(this,e,u(n,21))},I(on,"AbstractSetMultimap",627),D(1723,627,pw),l.hc=function(){return new pp(this.b)},l.pd=function(){return new pp(this.b)},l.jc=function(){return Byt(new pp(this.b))},l.qd=function(){return Byt(new pp(this.b))},l.cc=function(e){return u(u(Ai(this,e),21),87)},l.rd=function(e){return u(u(Ai(this,e),21),87)},l.fc=function(e){return u(u(hO(this,e),21),87)},l.sd=function(e){return u(u(hO(this,e),21),87)},l.mc=function(e){return Lt(e,277)?Byt(u(e,277)):(mn(),new Vmt(u(e,87)))},l.Zb=function(){var e;return e=this.f,e||(this.f=Lt(this.c,139)?new SS(this,u(this.c,139)):Lt(this.c,133)?new cI(this,u(this.c,133)):new vE(this,this.c))},l.pc=function(e,n){return Lt(n,277)?new qQt(this,e,u(n,277)):new svt(this,e,u(n,87))},I(on,"AbstractSortedSetMultimap",1723),D(1724,1723,pw),l.Zb=function(){var e;return e=this.f,u(u(e||(this.f=Lt(this.c,139)?new SS(this,u(this.c,139)):Lt(this.c,133)?new cI(this,u(this.c,133)):new vE(this,this.c)),133),139)},l.ec=function(){var e;return e=this.i,u(u(e||(this.i=Lt(this.c,139)?new mE(this,u(this.c,139)):Lt(this.c,133)?new FM(this,u(this.c,133)):new W4(this,this.c)),87),277)},l.bc=function(){return Lt(this.c,139)?new mE(this,u(this.c,139)):Lt(this.c,133)?new FM(this,u(this.c,133)):new W4(this,this.c)},I(on,"AbstractSortedKeySortedSetMultimap",1724),D(2109,1,{2046:1}),l.Fb=function(e){return pyn(this,e)},l.Hb=function(){var e;return U4t((e=this.g,e||(this.g=new xM(this))))},l.Ib=function(){var e;return hfe((e=this.f,e||(this.f=new $mt(this))))},I(on,"AbstractTable",2109),D(679,dd,sl,xM),l.$b=function(){xWt()},l.Hc=function(e){var n,r;return Lt(e,478)?(n=u(e,697),r=u(Gy(See(this.a),Cb(n.c.e,n.b)),85),!!r&&m5t(r.vc(),new bm(Cb(n.c.c,n.a),ik(n.c,n.b,n.a)))):!1},l.Kc=function(){return vhn(this.a)},l.Mc=function(e){var n,r;return Lt(e,478)?(n=u(e,697),r=u(Gy(See(this.a),Cb(n.c.e,n.b)),85),!!r&&Xbn(r.vc(),new bm(Cb(n.c.c,n.a),ik(n.c,n.b,n.a)))):!1},l.gc=function(){return Lte(this.a)},l.Nc=function(){return C1n(this.a)},I(on,"AbstractTable/CellSet",679),D(2025,31,o3,xnt),l.$b=function(){xWt()},l.Hc=function(e){return o3n(this.a,e)},l.Kc=function(){return yhn(this.a)},l.gc=function(){return Lte(this.a)},l.Nc=function(){return $re(this.a)},I(on,"AbstractTable/Values",2025),D(1697,1696,pw),I(on,"ArrayListMultimapGwtSerializationDependencies",1697),D(520,1697,pw,irt,s3t),l.hc=function(){return new wu(this.a)},l.a=0,I(on,"ArrayListMultimap",520),D(678,2109,{678:1,2046:1,3:1},R1e),I(on,"ArrayTable",678),D(2021,399,U7,xJt),l.Xb=function(e){return new X4t(this.a,e)},I(on,"ArrayTable/1",2021),D(2022,1,{},bnt),l.td=function(e){return new X4t(this.a,e)},I(on,"ArrayTable/1methodref$getCell$Type",2022),D(2110,1,{697:1}),l.Fb=function(e){var n;return e===this?!0:Lt(e,478)?(n=u(e,697),Ud(Cb(this.c.e,this.b),Cb(n.c.e,n.b))&&Ud(Cb(this.c.c,this.a),Cb(n.c.c,n.a))&&Ud(ik(this.c,this.b,this.a),ik(n.c,n.b,n.a))):!1},l.Hb=function(){return lO(lt(ut(aa,1),Ln,1,5,[Cb(this.c.e,this.b),Cb(this.c.c,this.a),ik(this.c,this.b,this.a)]))},l.Ib=function(){return"("+Cb(this.c.e,this.b)+","+Cb(this.c.c,this.a)+")="+ik(this.c,this.b,this.a)},I(on,"Tables/AbstractCell",2110),D(478,2110,{478:1,697:1},X4t),l.a=0,l.b=0,l.d=0,I(on,"ArrayTable/2",478),D(2024,1,{},wnt),l.td=function(e){return hae(this.a,e)},I(on,"ArrayTable/2methodref$getValue$Type",2024),D(2023,399,U7,kJt),l.Xb=function(e){return hae(this.a,e)},I(on,"ArrayTable/3",2023),D(2077,2065,sv),l.$b=function(){Az(this.kc())},l.vc=function(){return new Vj(this)},l.lc=function(){return new ane(this.kc(),this.gc())},I(on,"Maps/IteratorBasedAbstractMap",2077),D(842,2077,sv),l.$b=function(){throw at(new Vr)},l._b=function(e){return $Wt(this.c,e)},l.kc=function(){return new EJt(this,this.c.b.c.gc())},l.lc=function(){return _it(this.c.b.c.gc(),16,new zj(this))},l.xc=function(e){var n;return n=u(_S(this.c,e),17),n?this.vd(n.a):null},l.dc=function(){return this.c.b.c.dc()},l.ec=function(){return Pit(this.c)},l.zc=function(e,n){var r;if(r=u(_S(this.c,e),17),!r)throw at(new zn(this.ud()+" "+e+" not in "+Pit(this.c)));return this.wd(r.a,n)},l.Bc=function(e){throw at(new Vr)},l.gc=function(){return this.c.b.c.gc()},I(on,"ArrayTable/ArrayMap",842),D(2020,1,{},zj),l.td=function(e){return Aee(this.a,e)},I(on,"ArrayTable/ArrayMap/0methodref$getEntry$Type",2020),D(2018,358,Fct,fYt),l.ld=function(){return Osn(this.a,this.b)},l.md=function(){return this.a.vd(this.b)},l.nd=function(e){return this.a.wd(this.b,e)},l.b=0,I(on,"ArrayTable/ArrayMap/1",2018),D(2019,399,U7,EJt),l.Xb=function(e){return Aee(this.a,e)},I(on,"ArrayTable/ArrayMap/2",2019),D(2017,842,sv,pee),l.ud=function(){return"Column"},l.vd=function(e){return ik(this.b,this.a,e)},l.wd=function(e,n){return Rce(this.b,this.a,e,n)},l.a=0,I(on,"ArrayTable/Row",2017),D(843,842,sv,$mt),l.vd=function(e){return new pee(this.a,e)},l.zc=function(e,n){return u(n,85),trn()},l.wd=function(e,n){return u(n,85),ern()},l.ud=function(){return"Row"},I(on,"ArrayTable/RowMap",843),D(1157,1,fh,dYt),l.Ad=function(e){return(this.a.yd()&-262&e)!=0},l.yd=function(){return this.a.yd()&-262},l.zd=function(){return this.a.zd()},l.Nb=function(e){this.a.Nb(new pYt(e,this.b))},l.Bd=function(e){return this.a.Bd(new gYt(e,this.b))},I(on,"CollectSpliterators/1",1157),D(1158,1,ir,gYt),l.Cd=function(e){this.a.Cd(this.b.Kb(e))},I(on,"CollectSpliterators/1/lambda$0$Type",1158),D(1159,1,ir,pYt),l.Cd=function(e){this.a.Cd(this.b.Kb(e))},I(on,"CollectSpliterators/1/lambda$1$Type",1159),D(1154,1,fh,RZt),l.Ad=function(e){return((16464|this.b)&e)!=0},l.yd=function(){return 16464|this.b},l.zd=function(){return this.a.zd()},l.Nb=function(e){this.a.Qe(new wYt(e,this.c))},l.Bd=function(e){return this.a.Re(new bYt(e,this.c))},l.b=0,I(on,"CollectSpliterators/1WithCharacteristics",1154),D(1155,1,nN,bYt),l.Dd=function(e){this.a.Cd(this.b.td(e))},I(on,"CollectSpliterators/1WithCharacteristics/lambda$0$Type",1155),D(1156,1,nN,wYt),l.Dd=function(e){this.a.Cd(this.b.td(e))},I(on,"CollectSpliterators/1WithCharacteristics/lambda$1$Type",1156),D(1150,1,fh),l.Ad=function(e){return(this.a&e)!=0},l.yd=function(){return this.a},l.zd=function(){return this.e&&(this.b=Amt(this.b,this.e.zd())),Amt(this.b,0)},l.Nb=function(e){this.e&&(this.e.Nb(e),this.e=null),this.c.Nb(new mYt(this,e)),this.b=0},l.Bd=function(e){for(;;){if(this.e&&this.e.Bd(e))return bS(this.b,rN)&&(this.b=sf(this.b,1)),!0;if(this.e=null,!this.c.Bd(new knt(this)))return!1}},l.a=0,l.b=0,I(on,"CollectSpliterators/FlatMapSpliterator",1150),D(1152,1,ir,knt),l.Cd=function(e){Man(this.a,e)},I(on,"CollectSpliterators/FlatMapSpliterator/lambda$0$Type",1152),D(1153,1,ir,mYt),l.Cd=function(e){nhn(this.a,this.b,e)},I(on,"CollectSpliterators/FlatMapSpliterator/lambda$1$Type",1153),D(1151,1150,fh,iie),I(on,"CollectSpliterators/FlatMapSpliteratorOfObject",1151),D(253,1,Bct),l.Fd=function(e){return this.Ed(u(e,253))},l.Ed=function(e){var n;return e==(Wnt(),kht)?1:e==(Knt(),xht)?-1:(n=(Ez(),JI(this.a,e.a)),n!=0?n:Lt(this,526)==Lt(e,526)?0:Lt(this,526)?1:-1)},l.Id=function(){return this.a},l.Fb=function(e){return bxt(this,e)},I(on,"Cut",253),D(1823,253,Bct,nWt),l.Ed=function(e){return e==this?0:1},l.Gd=function(e){throw at(new j2t)},l.Hd=function(e){e.a+="+∞)"},l.Id=function(){throw at(new Ro(fbe))},l.Hb=function(){return pg(),ext(this)},l.Jd=function(e){return!1},l.Ib=function(){return"+∞"};var xht;I(on,"Cut/AboveAll",1823),D(526,253,{253:1,526:1,3:1,34:1},LJt),l.Gd=function(e){tu((e.a+="(",e),this.a)},l.Hd=function(e){Db(tu(e,this.a),93)},l.Hb=function(){return~$i(this.a)},l.Jd=function(e){return Ez(),JI(this.a,e)<0},l.Ib=function(){return"/"+this.a+"\\"},I(on,"Cut/AboveValue",526),D(1822,253,Bct,eWt),l.Ed=function(e){return e==this?0:-1},l.Gd=function(e){e.a+="(-∞"},l.Hd=function(e){throw at(new j2t)},l.Id=function(){throw at(new Ro(fbe))},l.Hb=function(){return pg(),ext(this)},l.Jd=function(e){return!0},l.Ib=function(){return"-∞"};var kht;I(on,"Cut/BelowAll",1822),D(1824,253,Bct,DJt),l.Gd=function(e){tu((e.a+="[",e),this.a)},l.Hd=function(e){Db(tu(e,this.a),41)},l.Hb=function(){return $i(this.a)},l.Jd=function(e){return Ez(),JI(this.a,e)<=0},l.Ib=function(){return"\\"+this.a+"/"},I(on,"Cut/BelowValue",1824),D(547,1,F0),l.Jc=function(e){Fa(this,e)},l.Ib=function(){return w2n(u(Qz(this,"use Optional.orNull() instead of Optional.or(null)"),20).Kc())},I(on,"FluentIterable",547),D(442,547,F0,vS),l.Kc=function(){return new rr(sr(this.a.Kc(),new z))},I(on,"FluentIterable/2",442),D(1059,547,F0,RQt),l.Kc=function(){return A0(this)},I(on,"FluentIterable/3",1059),D(724,399,U7,zmt),l.Xb=function(e){return this.a[e].Kc()},I(on,"FluentIterable/3/1",724),D(2070,1,{}),l.Ib=function(){return rc(this.Kd().b)},I(on,"ForwardingObject",2070),D(2071,2070,dbe),l.Kd=function(){return this.Ld()},l.Jc=function(e){Fa(this,e)},l.Lc=function(){return this.Oc()},l.Nc=function(){return new gn(this,0)},l.Oc=function(){return new ln(null,this.Nc())},l.Fc=function(e){return this.Ld(),qWt()},l.Gc=function(e){return this.Ld(),HWt()},l.$b=function(){this.Ld(),VWt()},l.Hc=function(e){return this.Ld().Hc(e)},l.Ic=function(e){return this.Ld().Ic(e)},l.dc=function(){return this.Ld().b.dc()},l.Kc=function(){return this.Ld().Kc()},l.Mc=function(e){return this.Ld(),UWt()},l.gc=function(){return this.Ld().b.gc()},l.Pc=function(){return this.Ld().Pc()},l.Qc=function(e){return this.Ld().Qc(e)},I(on,"ForwardingCollection",2071),D(2078,31,d8t),l.Kc=function(){return this.Od()},l.Fc=function(e){throw at(new Vr)},l.Gc=function(e){throw at(new Vr)},l.Md=function(){var e;return e=this.c,e||(this.c=this.Nd())},l.$b=function(){throw at(new Vr)},l.Hc=function(e){return e!=null&&Ky(this,e,!1)},l.Nd=function(){switch(this.gc()){case 0:return Dm(),Dm(),Eht;case 1:return Dm(),new Ait(Hr(this.Od().Pb()));default:return new yyt(this,this.Pc())}},l.Mc=function(e){throw at(new Vr)},I(on,"ImmutableCollection",2078),D(727,2078,d8t,B2t),l.Kc=function(){return sk(this.a.Kc())},l.Hc=function(e){return e!=null&&this.a.Hc(e)},l.Ic=function(e){return this.a.Ic(e)},l.dc=function(){return this.a.dc()},l.Od=function(){return sk(this.a.Kc())},l.gc=function(){return this.a.gc()},l.Pc=function(){return this.a.Pc()},l.Qc=function(e){return this.a.Qc(e)},l.Ib=function(){return rc(this.a)},I(on,"ForwardingImmutableCollection",727),D(306,2078,G7),l.Kc=function(){return this.Od()},l.ed=function(){return this.Pd(0)},l.fd=function(e){return this.Pd(e)},l.jd=function(e){rw(this,e)},l.Nc=function(){return new gn(this,16)},l.kd=function(e,n){return this.Qd(e,n)},l.bd=function(e,n){throw at(new Vr)},l.cd=function(e,n){throw at(new Vr)},l.Md=function(){return this},l.Fb=function(e){return Ixn(this,e)},l.Hb=function(){return Spn(this)},l.dd=function(e){return e==null?-1:Ymn(this,e)},l.Od=function(){return this.Pd(0)},l.Pd=function(e){return ait(this,e)},l.gd=function(e){throw at(new Vr)},l.hd=function(e,n){throw at(new Vr)},l.Qd=function(e,n){var r;return uH((r=new AYt(this),new xp(r,e,n)))};var Eht;I(on,"ImmutableList",306),D(2105,306,G7),l.Kc=function(){return sk(this.Rd().Kc())},l.kd=function(e,n){return uH(this.Rd().kd(e,n))},l.Hc=function(e){return e!=null&&this.Rd().Hc(e)},l.Ic=function(e){return this.Rd().Ic(e)},l.Fb=function(e){return Ti(this.Rd(),e)},l.Xb=function(e){return Cb(this,e)},l.Hb=function(){return $i(this.Rd())},l.dd=function(e){return this.Rd().dd(e)},l.dc=function(){return this.Rd().dc()},l.Od=function(){return sk(this.Rd().Kc())},l.gc=function(){return this.Rd().gc()},l.Qd=function(e,n){return uH(this.Rd().kd(e,n))},l.Pc=function(){return this.Rd().Qc(Vt(aa,Ln,1,this.Rd().gc(),5,1))},l.Qc=function(e){return this.Rd().Qc(e)},l.Ib=function(){return rc(this.Rd())},I(on,"ForwardingImmutableList",2105),D(729,1,K7),l.vc=function(){return K2(this)},l.wc=function(e){e_(this,e)},l.ec=function(){return Pit(this)},l.yc=function(e,n,r){return Vat(this,e,n,r)},l.Cc=function(){return this.Vd()},l.$b=function(){throw at(new Vr)},l._b=function(e){return this.xc(e)!=null},l.uc=function(e){return this.Vd().Hc(e)},l.Td=function(){return new lKt(this)},l.Ud=function(){return new hKt(this)},l.Fb=function(e){return mbn(this,e)},l.Hb=function(){return K2(this).Hb()},l.dc=function(){return this.gc()==0},l.zc=function(e,n){return Znn()},l.Bc=function(e){throw at(new Vr)},l.Ib=function(){return s4n(this)},l.Vd=function(){return this.e?this.e:this.e=this.Ud()},l.c=null,l.d=null,l.e=null;var Rve;I(on,"ImmutableMap",729),D(730,729,K7),l._b=function(e){return $Wt(this,e)},l.uc=function(e){return NYt(this.b,e)},l.Sd=function(){return Nue(new ynt(this))},l.Td=function(){return Nue(Xee(this.b))},l.Ud=function(){return Vd(),new B2t(Yee(this.b))},l.Fb=function(e){return PYt(this.b,e)},l.xc=function(e){return _S(this,e)},l.Hb=function(){return $i(this.b.c)},l.dc=function(){return this.b.c.dc()},l.gc=function(){return this.b.c.gc()},l.Ib=function(){return rc(this.b.c)},I(on,"ForwardingImmutableMap",730),D(2072,2071,Rct),l.Kd=function(){return this.Wd()},l.Ld=function(){return this.Wd()},l.Nc=function(){return new gn(this,1)},l.Fb=function(e){return e===this||this.Wd().Fb(e)},l.Hb=function(){return this.Wd().Hb()},I(on,"ForwardingSet",2072),D(1085,2072,Rct,ynt),l.Kd=function(){return BE(this.a.b)},l.Ld=function(){return BE(this.a.b)},l.Hc=function(e){if(Lt(e,44)&&u(e,44).ld()==null)return!1;try{return OYt(BE(this.a.b),e)}catch(n){if(n=es(n),Lt(n,212))return!1;throw at(n)}},l.Wd=function(){return BE(this.a.b)},l.Qc=function(e){var n;return n=Nne(BE(this.a.b),e),BE(this.a.b).b.gc()=0?"+":"")+(r/60|0),n=nz(b.Math.abs(r)%60),(Efe(),rye)[this.q.getDay()]+" "+iye[this.q.getMonth()]+" "+nz(this.q.getDate())+" "+nz(this.q.getHours())+":"+nz(this.q.getMinutes())+":"+nz(this.q.getSeconds())+" GMT"+e+n+" "+this.q.getFullYear()};var OU=I(xr,"Date",206);D(2015,206,kbe,Ghe),l.a=!1,l.b=0,l.c=0,l.d=0,l.e=0,l.f=0,l.g=!1,l.i=0,l.j=0,l.k=0,l.n=0,l.o=0,l.p=0,I("com.google.gwt.i18n.shared.impl","DateRecord",2015),D(2064,1,{}),l.pe=function(){return null},l.qe=function(){return null},l.re=function(){return null},l.se=function(){return null},l.te=function(){return null},I(Ck,"JSONValue",2064),D(221,2064,{221:1},cp,Xj),l.Fb=function(e){return Lt(e,221)?o3t(this.a,u(e,221).a):!1},l.oe=function(){return Tnn},l.Hb=function(){return Xyt(this.a)},l.pe=function(){return this},l.Ib=function(){var e,n,r;for(r=new eh("["),n=0,e=this.a.length;n0&&(r.a+=","),tu(r,$y(this,n));return r.a+="]",r.a},I(Ck,"JSONArray",221),D(492,2064,{492:1},xc),l.oe=function(){return Cnn},l.qe=function(){return this},l.Ib=function(){return Pn(),""+this.a},l.a=!1;var Uve,Gve;I(Ck,"JSONBoolean",492),D(997,63,Pg,lWt),I(Ck,"JSONException",997),D(1036,2064,{},K),l.oe=function(){return Snn},l.Ib=function(){return Vu};var Kve;I(Ck,"JSONNull",1036),D(263,2064,{263:1},cE),l.Fb=function(e){return Lt(e,263)?this.a==u(e,263).a:!1},l.oe=function(){return knn},l.Hb=function(){return F6(this.a)},l.re=function(){return this},l.Ib=function(){return this.a+""},l.a=0,I(Ck,"JSONNumber",263),D(190,2064,{190:1},_6,uE),l.Fb=function(e){return Lt(e,190)?o3t(this.a,u(e,190).a):!1},l.oe=function(){return Enn},l.Hb=function(){return Xyt(this.a)},l.se=function(){return this},l.Ib=function(){var e,n,r,s,o,h,d;for(d=new eh("{"),e=!0,h=cat(this,Vt(Pe,ue,2,0,6,1)),r=h,s=0,o=r.length;s=0?":"+this.c:"")+")"},l.c=0;var m9t=I(Sc,"StackTraceElement",319);Bve={3:1,483:1,34:1,2:1};var Pe=I(Sc,g8t,2);D(111,427,{483:1},dp,YC,ef),I(Sc,"StringBuffer",111),D(104,427,{483:1},yb,I4,eh),I(Sc,"StringBuilder",104),D(702,77,out,dwt),I(Sc,"StringIndexOutOfBoundsException",702),D(2145,1,{});var Qve;D(48,63,{3:1,103:1,63:1,82:1,48:1},Vr,hp),I(Sc,"UnsupportedOperationException",48),D(247,242,{3:1,34:1,242:1,247:1},gO,Twt),l.Fd=function(e){return wge(this,u(e,247))},l.ue=function(){return Jy(Uge(this))},l.Fb=function(e){var n;return this===e?!0:Lt(e,247)?(n=u(e,247),this.e==n.e&&wge(this,n)==0):!1},l.Hb=function(){var e;return this.b!=0?this.b:this.a<54?(e=Pc(this.f),this.b=qr(sa(e,-1)),this.b=33*this.b+qr(sa(_m(e,32),-1)),this.b=17*this.b+Ys(this.e),this.b):(this.b=17*Lue(this.c)+Ys(this.e),this.b)},l.Ib=function(){return Uge(this)},l.a=0,l.b=0,l.d=0,l.e=0,l.f=0;var Jve,_w,v9t,y9t,x9t,k9t,E9t,T9t,Mht=I("java.math","BigDecimal",247);D(92,242,{3:1,34:1,242:1,92:1},kg,xre,Y2,Dle,Sb),l.Fd=function(e){return Sle(this,u(e,92))},l.ue=function(){return Jy(Oct(this,0))},l.Fb=function(e){return R5t(this,e)},l.Hb=function(){return Lue(this)},l.Ib=function(){return Oct(this,0)},l.b=-2,l.c=0,l.d=0,l.e=0;var Zve,NU,tye,Iht,PU,yA,N5=I("java.math","BigInteger",92),eye,nye,Bk,xA;D(497,2065,sv),l.$b=function(){dl(this)},l._b=function(e){return Tu(this,e)},l.uc=function(e){return lue(this,e,this.i)||lue(this,e,this.f)},l.vc=function(){return new mr(this)},l.xc=function(e){return tr(this,e)},l.zc=function(e,n){return hi(this,e,n)},l.Bc=function(e){return rk(this,e)},l.gc=function(){return QC(this)},l.g=0,I(xr,"AbstractHashMap",497),D(267,dd,sl,mr),l.$b=function(){this.a.$b()},l.Hc=function(e){return Qre(this,e)},l.Kc=function(){return new sw(this.a)},l.Mc=function(e){var n;return Qre(this,e)?(n=u(e,44).ld(),this.a.Bc(n),!0):!1},l.gc=function(){return this.a.gc()},I(xr,"AbstractHashMap/EntrySet",267),D(268,1,wa,sw),l.Nb=function(e){Na(this,e)},l.Pb=function(){return Um(this)},l.Ob=function(){return this.b},l.Qb=function(){Sae(this)},l.b=!1,l.d=0,I(xr,"AbstractHashMap/EntrySetIterator",268),D(426,1,wa,gr),l.Nb=function(e){Na(this,e)},l.Ob=function(){return frt(this)},l.Pb=function(){return Uyt(this)},l.Qb=function(){Kl(this)},l.b=0,l.c=-1,I(xr,"AbstractList/IteratorImpl",426),D(98,426,P0,La),l.Qb=function(){Kl(this)},l.Rb=function(e){Ly(this,e)},l.Sb=function(){return this.b>0},l.Tb=function(){return this.b},l.Ub=function(){return ur(this.b>0),this.a.Xb(this.c=--this.b)},l.Vb=function(){return this.b-1},l.Wb=function(e){_y(this.c!=-1),this.a.hd(this.c,e)},I(xr,"AbstractList/ListIteratorImpl",98),D(244,56,W7,xp),l.bd=function(e,n){Fy(e,this.b),this.c.bd(this.a+e,n),++this.b},l.Xb=function(e){return vn(e,this.b),this.c.Xb(this.a+e)},l.gd=function(e){var n;return vn(e,this.b),n=this.c.gd(this.a+e),--this.b,n},l.hd=function(e,n){return vn(e,this.b),this.c.hd(this.a+e,n)},l.gc=function(){return this.b},l.a=0,l.b=0,I(xr,"AbstractList/SubList",244),D(266,dd,sl,cr),l.$b=function(){this.a.$b()},l.Hc=function(e){return this.a._b(e)},l.Kc=function(){var e;return e=this.a.vc().Kc(),new vi(e)},l.Mc=function(e){return this.a._b(e)?(this.a.Bc(e),!0):!1},l.gc=function(){return this.a.gc()},I(xr,"AbstractMap/1",266),D(541,1,wa,vi),l.Nb=function(e){Na(this,e)},l.Ob=function(){return this.a.Ob()},l.Pb=function(){var e;return e=u(this.a.Pb(),44),e.ld()},l.Qb=function(){this.a.Qb()},I(xr,"AbstractMap/1/1",541),D(231,31,o3,si),l.$b=function(){this.a.$b()},l.Hc=function(e){return this.a.uc(e)},l.Kc=function(){var e;return e=this.a.vc().Kc(),new Qi(e)},l.gc=function(){return this.a.gc()},I(xr,"AbstractMap/2",231),D(300,1,wa,Qi),l.Nb=function(e){Na(this,e)},l.Ob=function(){return this.a.Ob()},l.Pb=function(){var e;return e=u(this.a.Pb(),44),e.md()},l.Qb=function(){this.a.Qb()},I(xr,"AbstractMap/2/1",300),D(493,1,{493:1,44:1}),l.Fb=function(e){var n;return Lt(e,44)?(n=u(e,44),Nc(this.d,n.ld())&&Nc(this.e,n.md())):!1},l.ld=function(){return this.d},l.md=function(){return this.e},l.Hb=function(){return V4(this.d)^V4(this.e)},l.nd=function(e){return fvt(this,e)},l.Ib=function(){return this.d+"="+this.e},I(xr,"AbstractMap/AbstractEntry",493),D(397,493,{493:1,397:1,44:1},I$),I(xr,"AbstractMap/SimpleEntry",397),D(2082,1,lut),l.Fb=function(e){var n;return Lt(e,44)?(n=u(e,44),Nc(this.ld(),n.ld())&&Nc(this.md(),n.md())):!1},l.Hb=function(){return V4(this.ld())^V4(this.md())},l.Ib=function(){return this.ld()+"="+this.md()},I(xr,lbe,2082),D(2090,2065,h8t),l.Xc=function(e){return srt(this.Ee(e))},l.tc=function(e){return rse(this,e)},l._b=function(e){return dvt(this,e)},l.vc=function(){return new Es(this)},l.Tc=function(){return wee(this.Ge())},l.Yc=function(e){return srt(this.He(e))},l.xc=function(e){var n;return n=e,Ko(this.Fe(n))},l.$c=function(e){return srt(this.Ie(e))},l.ec=function(){return new ks(this)},l.Vc=function(){return wee(this.Je())},l._c=function(e){return srt(this.Ke(e))},I(xr,"AbstractNavigableMap",2090),D(629,dd,sl,Es),l.Hc=function(e){return Lt(e,44)&&rse(this.b,u(e,44))},l.Kc=function(){return this.b.De()},l.Mc=function(e){var n;return Lt(e,44)?(n=u(e,44),this.b.Le(n)):!1},l.gc=function(){return this.b.gc()},I(xr,"AbstractNavigableMap/EntrySet",629),D(1146,dd,f8t,ks),l.Nc=function(){return new D$(this)},l.$b=function(){this.a.$b()},l.Hc=function(e){return dvt(this.a,e)},l.Kc=function(){var e;return e=this.a.vc().b.De(),new as(e)},l.Mc=function(e){return dvt(this.a,e)?(this.a.Bc(e),!0):!1},l.gc=function(){return this.a.gc()},I(xr,"AbstractNavigableMap/NavigableKeySet",1146),D(1147,1,wa,as),l.Nb=function(e){Na(this,e)},l.Ob=function(){return frt(this.a.a)},l.Pb=function(){var e;return e=$Jt(this.a),e.ld()},l.Qb=function(){GZt(this.a)},I(xr,"AbstractNavigableMap/NavigableKeySet/1",1147),D(2103,31,o3),l.Fc=function(e){return V6(D7(this,e),X7),!0},l.Gc=function(e){return Wn(e),wI(e!=this,"Can't add a queue to itself"),Ma(this,e)},l.$b=function(){for(;Yst(this)!=null;);},I(xr,"AbstractQueue",2103),D(310,31,{4:1,20:1,31:1,16:1},K4,Gre),l.Fc=function(e){return w3t(this,e),!0},l.$b=function(){E3t(this)},l.Hc=function(e){return Ice(new $S(this),e)},l.dc=function(){return WC(this)},l.Kc=function(){return new $S(this)},l.Mc=function(e){return ofn(new $S(this),e)},l.gc=function(){return this.c-this.b&this.a.length-1},l.Nc=function(){return new gn(this,272)},l.Qc=function(e){var n;return n=this.c-this.b&this.a.length-1,e.lengthn&&ls(e,n,null),e},l.b=0,l.c=0,I(xr,"ArrayDeque",310),D(458,1,wa,$S),l.Nb=function(e){Na(this,e)},l.Ob=function(){return this.a!=this.b},l.Pb=function(){return cH(this)},l.Qb=function(){Aoe(this)},l.a=0,l.b=0,l.c=-1,I(xr,"ArrayDeque/IteratorImpl",458),D(13,56,Cbe,fe,wu,fl),l.bd=function(e,n){Sm(this,e,n)},l.Fc=function(e){return ge(this,e)},l.cd=function(e,n){return l5t(this,e,n)},l.Gc=function(e){return Hs(this,e)},l.$b=function(){wy(this.c,0)},l.Hc=function(e){return Xo(this,e,0)!=-1},l.Jc=function(e){Cu(this,e)},l.Xb=function(e){return Oe(this,e)},l.dd=function(e){return Xo(this,e,0)},l.dc=function(){return this.c.length==0},l.Kc=function(){return new G(this)},l.gd=function(e){return Ep(this,e)},l.Mc=function(e){return zu(this,e)},l.ce=function(e,n){pre(this,e,n)},l.hd=function(e,n){return Mh(this,e,n)},l.gc=function(){return this.c.length},l.jd=function(e){Ds(this,e)},l.Pc=function(){return Tz(this.c)},l.Qc=function(e){return ld(this,e)};var XSn=I(xr,"ArrayList",13);D(7,1,wa,G),l.Nb=function(e){Na(this,e)},l.Ob=function(){return lc(this)},l.Pb=function(){return et(this)},l.Qb=function(){PS(this)},l.a=0,l.b=-1,I(xr,"ArrayList/1",7),D(2112,b.Function,{},It),l.Me=function(e,n){return Bi(e,n)},D(151,56,Sbe,hl),l.Hc=function(e){return Loe(this,e)!=-1},l.Jc=function(e){var n,r,s,o;for(Wn(e),r=this.a,s=0,o=r.length;s0)throw at(new zn(k8t+e+" greater than "+this.e));return this.f.Te()?Rne(this.c,this.b,this.a,e,n):bre(this.c,e,n)},l.zc=function(e,n){if(!Eot(this.c,this.f,e,this.b,this.a,this.e,this.d))throw at(new zn(e+" outside the range "+this.b+" to "+this.e));return Yce(this.c,e,n)},l.Bc=function(e){var n;return n=e,Eot(this.c,this.f,n,this.b,this.a,this.e,this.d)?jne(this.c,n):null},l.Le=function(e){return Vz(this,e.ld())&&q3t(this.c,e)},l.gc=function(){var e,n,r;if(this.f.Te()?this.a?n=E7(this.c,this.b,!0):n=E7(this.c,this.b,!1):n=J3t(this.c),!(n&&Vz(this,n.d)&&n))return 0;for(e=0,r=new uat(this.c,this.f,this.b,this.a,this.e,this.d);frt(r.a);r.b=u(Uyt(r.a),44))++e;return e},l.ad=function(e,n){if(this.f.Te()&&this.c.a.Ne(e,this.b)<0)throw at(new zn(k8t+e+Lbe+this.b));return this.f.Ue()?Rne(this.c,e,n,this.e,this.d):wre(this.c,e,n)},l.a=!1,l.d=!1,I(xr,"TreeMap/SubMap",631),D(303,22,gut,M$),l.Te=function(){return!1},l.Ue=function(){return!1};var Pht,Fht,Bht,Rht,BU=Lr(xr,"TreeMap/SubMapType",303,Pr,N1n,Van);D(1143,303,gut,VQt),l.Ue=function(){return!0},Lr(xr,"TreeMap/SubMapType/1",1143,BU,null,null),D(1144,303,gut,ZQt),l.Te=function(){return!0},l.Ue=function(){return!0},Lr(xr,"TreeMap/SubMapType/2",1144,BU,null,null),D(1145,303,gut,HQt),l.Te=function(){return!0},Lr(xr,"TreeMap/SubMapType/3",1145,BU,null,null);var lye;D(157,dd,{3:1,20:1,31:1,16:1,277:1,21:1,87:1,157:1},q2t,pp,ra),l.Nc=function(){return new D$(this)},l.Fc=function(e){return yI(this,e)},l.$b=function(){this.a.$b()},l.Hc=function(e){return this.a._b(e)},l.Kc=function(){return this.a.ec().Kc()},l.Mc=function(e){return rit(this,e)},l.gc=function(){return this.a.gc()};var n_n=I(xr,"TreeSet",157);D(1082,1,{},no),l.Ve=function(e,n){return oan(this.a,e,n)},I(put,"BinaryOperator/lambda$0$Type",1082),D(1083,1,{},ql),l.Ve=function(e,n){return can(this.a,e,n)},I(put,"BinaryOperator/lambda$1$Type",1083),D(952,1,{},Ne),l.Kb=function(e){return e},I(put,"Function/lambda$0$Type",952),D(395,1,Kr,Sl),l.Mb=function(e){return!this.a.Mb(e)},I(put,"Predicate/lambda$2$Type",395),D(581,1,{581:1});var hye=I(V_,"Handler",581);D(2107,1,tN),l.xe=function(){return"DUMMY"},l.Ib=function(){return this.xe()};var M9t;I(V_,"Level",2107),D(1706,2107,tN,Xt),l.xe=function(){return"INFO"},I(V_,"Level/LevelInfo",1706),D(1843,1,{},mKt);var jht;I(V_,"LogManager",1843),D(1896,1,tN,UZt),l.b=null,I(V_,"LogRecord",1896),D(525,1,{525:1},Ast),l.e=!1;var fye=!1,dye=!1,wd=!1,gye=!1,pye=!1;I(V_,"Logger",525),D(835,581,{581:1},_e),I(V_,"SimpleConsoleLogHandler",835),D(108,22,{3:1,34:1,22:1,108:1},prt);var I9t,sc,w3,Ho=Lr(Us,"Collector/Characteristics",108,Pr,xfn,Uan),bye;D(758,1,{},Tyt),I(Us,"CollectorImpl",758),D(1074,1,{},xe),l.Ve=function(e,n){return e2n(u(e,213),u(n,213))},I(Us,"Collectors/10methodref$merge$Type",1074),D(1075,1,{},Mn),l.Kb=function(e){return Kre(u(e,213))},I(Us,"Collectors/11methodref$toString$Type",1075),D(1076,1,{},mb),l.Kb=function(e){return Pn(),!!mmt(e)},I(Us,"Collectors/12methodref$test$Type",1076),D(144,1,{},ce),l.Yd=function(e,n){u(e,16).Fc(n)},I(Us,"Collectors/20methodref$add$Type",144),D(146,1,{},Br),l.Xe=function(){return new fe},I(Us,"Collectors/21methodref$ctor$Type",146),D(359,1,{},we),l.Xe=function(){return new Os},I(Us,"Collectors/23methodref$ctor$Type",359),D(360,1,{},Fi),l.Yd=function(e,n){qs(u(e,49),n)},I(Us,"Collectors/24methodref$add$Type",360),D(1069,1,{},mi),l.Ve=function(e,n){return RYt(u(e,15),u(n,16))},I(Us,"Collectors/4methodref$addAll$Type",1069),D(1073,1,{},ga),l.Yd=function(e,n){Eg(u(e,213),u(n,483))},I(Us,"Collectors/9methodref$add$Type",1073),D(1072,1,{},cte),l.Xe=function(){return new aw(this.a,this.b,this.c)},I(Us,"Collectors/lambda$15$Type",1072),D(1077,1,{},Ss),l.Xe=function(){var e;return e=new kp,Op(e,(Pn(),!1),new fe),Op(e,!0,new fe),e},I(Us,"Collectors/lambda$22$Type",1077),D(1078,1,{},vb),l.Xe=function(){return lt(ut(aa,1),Ln,1,5,[this.a])},I(Us,"Collectors/lambda$25$Type",1078),D(1079,1,{},v1),l.Yd=function(e,n){_un(this.a,nw(e))},I(Us,"Collectors/lambda$26$Type",1079),D(1080,1,{},up),l.Ve=function(e,n){return eln(this.a,nw(e),nw(n))},I(Us,"Collectors/lambda$27$Type",1080),D(1081,1,{},za),l.Kb=function(e){return nw(e)[0]},I(Us,"Collectors/lambda$28$Type",1081),D(728,1,{},br),l.Ve=function(e,n){return iyt(e,n)},I(Us,"Collectors/lambda$4$Type",728),D(145,1,{},An),l.Ve=function(e,n){return Frn(u(e,16),u(n,16))},I(Us,"Collectors/lambda$42$Type",145),D(361,1,{},Nn),l.Ve=function(e,n){return Brn(u(e,49),u(n,49))},I(Us,"Collectors/lambda$50$Type",361),D(362,1,{},Bn),l.Kb=function(e){return u(e,49)},I(Us,"Collectors/lambda$51$Type",362),D(1068,1,{},Bd),l.Yd=function(e,n){obn(this.a,u(e,85),n)},I(Us,"Collectors/lambda$7$Type",1068),D(1070,1,{},ke),l.Ve=function(e,n){return Bpn(u(e,85),u(n,85),new mi)},I(Us,"Collectors/lambda$8$Type",1070),D(1071,1,{},cm),l.Kb=function(e){return N2n(this.a,u(e,85))},I(Us,"Collectors/lambda$9$Type",1071),D(550,1,{}),l.$e=function(){jS(this)},l.d=!1,I(Us,"TerminatableStream",550),D(827,550,E8t,rvt),l.$e=function(){jS(this)},I(Us,"DoubleStreamImpl",827),D(1847,736,fh,ute),l.Re=function(e){return Bmn(this,u(e,189))},l.a=null,I(Us,"DoubleStreamImpl/2",1847),D(1848,1,uN,py),l.Pe=function(e){Din(this.a,e)},I(Us,"DoubleStreamImpl/2/lambda$0$Type",1848),D(1845,1,uN,y6),l.Pe=function(e){Lin(this.a,e)},I(Us,"DoubleStreamImpl/lambda$0$Type",1845),D(1846,1,uN,_4),l.Pe=function(e){ule(this.a,e)},I(Us,"DoubleStreamImpl/lambda$2$Type",1846),D(1397,735,fh,Jie),l.Re=function(e){return E1n(this,u(e,202))},l.a=0,l.b=0,l.c=0,I(Us,"IntStream/5",1397),D(806,550,E8t,ivt),l.$e=function(){jS(this)},l._e=function(){return Mb(this),this.a},I(Us,"IntStreamImpl",806),D(807,550,E8t,Lwt),l.$e=function(){jS(this)},l._e=function(){return Mb(this),jmt(),uye},I(Us,"IntStreamImpl/Empty",807),D(1687,1,nN,x6),l.Dd=function(e){vce(this.a,e)},I(Us,"IntStreamImpl/lambda$4$Type",1687);var r_n=os(Us,"Stream");D(26,550,{533:1,687:1,848:1},ln),l.$e=function(){jS(this)};var Rk;I(Us,"StreamImpl",26),D(1102,499,fh,BZt),l.Bd=function(e){for(;S0n(this);){if(this.a.Bd(e))return!0;jS(this.b),this.b=null,this.a=null}return!1},I(Us,"StreamImpl/1",1102),D(1103,1,ir,BC),l.Cd=function(e){Zcn(this.a,u(e,848))},I(Us,"StreamImpl/1/lambda$0$Type",1103),D(1104,1,Kr,A4),l.Mb=function(e){return qs(this.a,e)},I(Us,"StreamImpl/1methodref$add$Type",1104),D(1105,499,fh,wne),l.Bd=function(e){var n;return this.a||(n=new fe,this.b.a.Nb(new k0(n)),mn(),Ds(n,this.c),this.a=new gn(n,16)),toe(this.a,e)},l.a=null,I(Us,"StreamImpl/5",1105),D(1106,1,ir,k0),l.Cd=function(e){ge(this.a,e)},I(Us,"StreamImpl/5/2methodref$add$Type",1106),D(737,499,fh,Z3t),l.Bd=function(e){for(this.b=!1;!this.b&&this.c.Bd(new eXt(this,e)););return this.b},l.b=!1,I(Us,"StreamImpl/FilterSpliterator",737),D(1096,1,ir,eXt),l.Cd=function(e){Yun(this.a,this.b,e)},I(Us,"StreamImpl/FilterSpliterator/lambda$0$Type",1096),D(1091,736,fh,use),l.Re=function(e){return Lan(this,u(e,189))},I(Us,"StreamImpl/MapToDoubleSpliterator",1091),D(1095,1,ir,nXt),l.Cd=function(e){Zrn(this.a,this.b,e)},I(Us,"StreamImpl/MapToDoubleSpliterator/lambda$0$Type",1095),D(1090,735,fh,lse),l.Re=function(e){return Dan(this,u(e,202))},I(Us,"StreamImpl/MapToIntSpliterator",1090),D(1094,1,ir,rXt),l.Cd=function(e){tin(this.a,this.b,e)},I(Us,"StreamImpl/MapToIntSpliterator/lambda$0$Type",1094),D(734,499,fh,R3t),l.Bd=function(e){return NZt(this,e)},I(Us,"StreamImpl/MapToObjSpliterator",734),D(1093,1,ir,iXt),l.Cd=function(e){ein(this.a,this.b,e)},I(Us,"StreamImpl/MapToObjSpliterator/lambda$0$Type",1093),D(1092,499,fh,joe),l.Bd=function(e){for(;drt(this.b,0);){if(!this.a.Bd(new pe))return!1;this.b=sf(this.b,1)}return this.a.Bd(e)},l.b=0,I(Us,"StreamImpl/SkipSpliterator",1092),D(1097,1,ir,pe),l.Cd=function(e){},I(Us,"StreamImpl/SkipSpliterator/lambda$0$Type",1097),D(626,1,ir,Je),l.Cd=function(e){Cnt(this,e)},I(Us,"StreamImpl/ValueConsumer",626),D(1098,1,ir,an),l.Cd=function(e){U2()},I(Us,"StreamImpl/lambda$0$Type",1098),D(1099,1,ir,xn),l.Cd=function(e){U2()},I(Us,"StreamImpl/lambda$1$Type",1099),D(1100,1,{},J1),l.Ve=function(e,n){return con(this.a,e,n)},I(Us,"StreamImpl/lambda$4$Type",1100),D(1101,1,ir,sXt),l.Cd=function(e){gan(this.b,this.a,e)},I(Us,"StreamImpl/lambda$5$Type",1101),D(1107,1,ir,E0),l.Cd=function(e){Cpn(this.a,u(e,380))},I(Us,"TerminatableStream/lambda$0$Type",1107),D(2142,1,{}),D(2014,1,{},qa),I("javaemul.internal","ConsoleLogger",2014);var i_n=0;D(2134,1,{}),D(1830,1,ir,xo),l.Cd=function(e){u(e,317)},I(Q7,"BowyerWatsonTriangulation/lambda$0$Type",1830),D(1831,1,ir,$2),l.Cd=function(e){Ma(this.a,u(e,317).e)},I(Q7,"BowyerWatsonTriangulation/lambda$1$Type",1831),D(1832,1,ir,ko),l.Cd=function(e){u(e,177)},I(Q7,"BowyerWatsonTriangulation/lambda$2$Type",1832),D(1827,1,Xr,Zj),l.Ne=function(e,n){return cdn(this.a,u(e,177),u(n,177))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Q7,"NaiveMinST/lambda$0$Type",1827),D(506,1,{},by),I(Q7,"NodeMicroLayout",506),D(177,1,{177:1},O6),l.Fb=function(e){var n;return Lt(e,177)?(n=u(e,177),Nc(this.a,n.a)&&Nc(this.b,n.b)||Nc(this.a,n.b)&&Nc(this.b,n.a)):!1},l.Hb=function(){return V4(this.a)+V4(this.b)};var s_n=I(Q7,"TEdge",177);D(317,1,{317:1},Bkt),l.Fb=function(e){var n;return Lt(e,317)?(n=u(e,317),Aq(this,n.a)&&Aq(this,n.b)&&Aq(this,n.c)):!1},l.Hb=function(){return V4(this.a)+V4(this.b)+V4(this.c)},I(Q7,"TTriangle",317),D(225,1,{225:1},iz),I(Q7,"Tree",225),D(1218,1,{},nre),I(Ibe,"Scanline",1218);var wye=os(Ibe,Obe);D(1758,1,{},Qae),I(j0,"CGraph",1758),D(316,1,{316:1},sre),l.b=0,l.c=0,l.d=0,l.g=0,l.i=0,l.k=Vs,I(j0,"CGroup",316),D(830,1,{},U2t),I(j0,"CGroup/CGroupBuilder",830),D(60,1,{60:1},wZt),l.Ib=function(){var e;return this.j?Gr(this.j.Kb(this)):(wg(RU),RU.o+"@"+(e=Em(this)>>>0,e.toString(16)))},l.f=0,l.i=Vs;var RU=I(j0,"CNode",60);D(829,1,{},G2t),I(j0,"CNode/CNodeBuilder",829);var mye;D(1590,1,{},va),l.ff=function(e,n){return 0},l.gf=function(e,n){return 0},I(j0,Pbe,1590),D(1853,1,{},Ha),l.cf=function(e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt;for(T=Zi,s=new G(e.a.b);s.as.d.c||s.d.c==h.d.c&&s.d.b0?e+this.n.d+this.n.a:0},l.kf=function(){var e,n,r,s,o;if(o=0,this.e)this.b?o=this.b.a:this.a[1][1]&&(o=this.a[1][1].kf());else if(this.g)o=F5t(this,Cot(this,null,!0));else for(n=(A1(),lt(ut(m3,1),te,237,0,[Ac,xu,Lc])),r=0,s=n.length;r0?o+this.n.b+this.n.c:0},l.lf=function(){var e,n,r,s,o;if(this.g)for(e=Cot(this,null,!1),r=(A1(),lt(ut(m3,1),te,237,0,[Ac,xu,Lc])),s=0,o=r.length;s0&&(s[0]+=this.d,r-=s[0]),s[2]>0&&(s[2]+=this.d,r-=s[2]),this.c.a=b.Math.max(0,r),this.c.d=n.d+e.d+(this.c.a-r)/2,s[1]=b.Math.max(s[1],r),N3t(this,xu,n.d+e.d+s[0]-(s[1]-r)/2,s)},l.b=null,l.d=0,l.e=!1,l.f=!1,l.g=!1;var Vht=0,jU=0;I(ww,"GridContainerCell",1538),D(470,22,{3:1,34:1,22:1,470:1},wrt);var e2,c0,Gf,Aye=Lr(ww,"HorizontalLabelAlignment",470,Pr,Efn,Xan),Lye;D(314,217,{217:1,314:1},qne,Zae,Pne),l.jf=function(){return kte(this)},l.kf=function(){return Jvt(this)},l.a=0,l.c=!1;var a_n=I(ww,"LabelCell",314);D(252,336,{217:1,336:1,252:1},p_),l.jf=function(){return PO(this)},l.kf=function(){return FO(this)},l.lf=function(){dct(this)},l.mf=function(){gct(this)},l.b=0,l.c=0,l.d=!1,I(ww,"StripContainerCell",252),D(1691,1,Kr,Ic),l.Mb=function(e){return Xnn(u(e,217))},I(ww,"StripContainerCell/lambda$0$Type",1691),D(1692,1,{},wc),l.Ye=function(e){return u(e,217).kf()},I(ww,"StripContainerCell/lambda$1$Type",1692),D(1693,1,Kr,Ea),l.Mb=function(e){return Qnn(u(e,217))},I(ww,"StripContainerCell/lambda$2$Type",1693),D(1694,1,{},gu),l.Ye=function(e){return u(e,217).jf()},I(ww,"StripContainerCell/lambda$3$Type",1694),D(471,22,{3:1,34:1,22:1,471:1},mrt);var Kf,n2,O1,Dye=Lr(ww,"VerticalLabelAlignment",471,Pr,kfn,Qan),Mye;D(800,1,{},Zkt),l.c=0,l.d=0,l.k=0,l.s=0,l.t=0,l.v=!1,l.w=0,l.D=!1,I(SV,"NodeContext",800),D(1536,1,Xr,ta),l.Ne=function(e,n){return NQt(u(e,64),u(n,64))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(SV,"NodeContext/0methodref$comparePortSides$Type",1536),D(1537,1,Xr,fo),l.Ne=function(e,n){return S3n(u(e,117),u(n,117))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(SV,"NodeContext/1methodref$comparePortContexts$Type",1537),D(164,22,{3:1,34:1,22:1,164:1},Nh);var Iye,Oye,Nye,Pye,Fye,Bye,Rye,jye,$ye,zye,qye,Hye,Vye,Uye,Gye,Kye,Wye,Yye,Xye,Qye,Jye,Uht,Zye=Lr(SV,"NodeLabelLocation",164,Pr,not,Jan),t3e;D(117,1,{117:1},q1e),l.a=!1,I(SV,"PortContext",117),D(1541,1,ir,mc),l.Cd=function(e){ZWt(u(e,314))},I(hN,Wbe,1541),D(1542,1,Kr,ca),l.Mb=function(e){return!!u(e,117).c},I(hN,Ybe,1542),D(1543,1,ir,ya),l.Cd=function(e){ZWt(u(e,117).c)},I(hN,"LabelPlacer/lambda$2$Type",1543);var tCt;D(1540,1,ir,ea),l.Cd=function(e){Ay(),Lnn(u(e,117))},I(hN,"NodeLabelAndSizeUtilities/lambda$0$Type",1540),D(801,1,ir,Mvt),l.Cd=function(e){Hrn(this.b,this.c,this.a,u(e,187))},l.a=!1,l.c=!1,I(hN,"NodeLabelCellCreator/lambda$0$Type",801),D(1539,1,ir,Ont),l.Cd=function(e){Inn(this.a,u(e,187))},I(hN,"PortContextCreator/lambda$0$Type",1539);var $U;D(1902,1,{},Zl),I(Z7,"GreedyRectangleStripOverlapRemover",1902),D(1903,1,Xr,Uc),l.Ne=function(e,n){return xsn(u(e,226),u(n,226))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Z7,"GreedyRectangleStripOverlapRemover/0methodref$compareByYCoordinate$Type",1903),D(1849,1,{},kKt),l.a=5,l.e=0,I(Z7,"RectangleStripOverlapRemover",1849),D(1850,1,Xr,rm),l.Ne=function(e,n){return ksn(u(e,226),u(n,226))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Z7,"RectangleStripOverlapRemover/0methodref$compareLeftRectangleBorders$Type",1850),D(1852,1,Xr,kh),l.Ne=function(e,n){return hln(u(e,226),u(n,226))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Z7,"RectangleStripOverlapRemover/1methodref$compareRightRectangleBorders$Type",1852),D(417,22,{3:1,34:1,22:1,417:1},O$);var BN,Ght,Kht,RN,e3e=Lr(Z7,"RectangleStripOverlapRemover/OverlapRemovalDirection",417,Pr,B1n,Zan),n3e;D(226,1,{226:1},Oit),I(Z7,"RectangleStripOverlapRemover/RectangleNode",226),D(1851,1,ir,Nnt),l.Cd=function(e){Jmn(this.a,u(e,226))},I(Z7,"RectangleStripOverlapRemover/lambda$1$Type",1851),D(1323,1,Xr,Md),l.Ne=function(e,n){return mTn(u(e,176),u(n,176))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(e0,"PolyominoCompactor/CornerCasesGreaterThanRestComparator",1323),D(1326,1,{},w0),l.Kb=function(e){return u(e,334).a},I(e0,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$0$Type",1326),D(1327,1,Kr,Id),l.Mb=function(e){return u(e,332).a},I(e0,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$1$Type",1327),D(1328,1,Kr,m0),l.Mb=function(e){return u(e,332).a},I(e0,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$2$Type",1328),D(1321,1,Xr,hg),l.Ne=function(e,n){return W8n(u(e,176),u(n,176))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(e0,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator",1321),D(1324,1,{},Gi),l.Kb=function(e){return u(e,334).a},I(e0,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator/lambda$0$Type",1324),D(781,1,Xr,cn),l.Ne=function(e,n){return Dpn(u(e,176),u(n,176))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(e0,"PolyominoCompactor/MinNumOfExtensionsComparator",781),D(1319,1,Xr,Nr),l.Ne=function(e,n){return Rgn(u(e,330),u(n,330))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(e0,"PolyominoCompactor/MinPerimeterComparator",1319),D(1320,1,Xr,Si),l.Ne=function(e,n){return kmn(u(e,330),u(n,330))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(e0,"PolyominoCompactor/MinPerimeterComparatorWithShape",1320),D(1322,1,Xr,vc),l.Ne=function(e,n){return pEn(u(e,176),u(n,176))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(e0,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator",1322),D(1325,1,{},Rc),l.Kb=function(e){return u(e,334).a},I(e0,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator/lambda$0$Type",1325),D(782,1,{},qwt),l.Ve=function(e,n){return L1n(this,u(e,42),u(n,176))},I(e0,"SuccessorCombination",782),D(649,1,{},Eh),l.Ve=function(e,n){var r;return U5n((r=u(e,42),u(n,176),r))},I(e0,"SuccessorJitter",649),D(648,1,{},Zc),l.Ve=function(e,n){var r;return Mkn((r=u(e,42),u(n,176),r))},I(e0,"SuccessorLineByLine",648),D(573,1,{},Qh),l.Ve=function(e,n){var r;return Uxn((r=u(e,42),u(n,176),r))},I(e0,"SuccessorManhattan",573),D(1344,1,{},Od),l.Ve=function(e,n){var r;return ekn((r=u(e,42),u(n,176),r))},I(e0,"SuccessorMaxNormWindingInMathPosSense",1344),D(409,1,{},L4),l.Ve=function(e,n){return kyt(this,e,n)},l.c=!1,l.d=!1,l.e=!1,l.f=!1,I(e0,"SuccessorQuadrantsGeneric",409),D(1345,1,{},cs),l.Kb=function(e){return u(e,334).a},I(e0,"SuccessorQuadrantsGeneric/lambda$0$Type",1345),D(332,22,{3:1,34:1,22:1,332:1},N$),l.a=!1;var jN,$N,zN,qN,r3e=Lr(AV,N8t,332,Pr,P1n,ton),i3e;D(1317,1,{}),l.Ib=function(){var e,n,r,s,o,h;for(r=" ",e=he(0),o=0;o=0?"b"+e+"["+_st(this.a)+"]":"b["+_st(this.a)+"]"):"b_"+Em(this)},I(dN,"FBendpoint",250),D(289,137,{3:1,289:1,96:1,137:1},mZt),l.Ib=function(){return _st(this)},I(dN,"FEdge",289),D(235,137,{3:1,235:1,96:1,137:1},mq);var c_n=I(dN,"FGraph",235);D(453,309,{3:1,453:1,309:1,96:1,137:1},yie),l.Ib=function(){return this.b==null||this.b.length==0?"l["+_st(this.a)+"]":"l_"+this.b},I(dN,"FLabel",453),D(153,309,{3:1,153:1,309:1,96:1,137:1},JQt),l.Ib=function(){return u3t(this)},l.a=0,I(dN,"FNode",153),D(2100,1,{}),l.vf=function(e){Ikt(this,e)},l.wf=function(){xhe(this)},l.d=0,I(H8t,"AbstractForceModel",2100),D(641,2100,{641:1},mce),l.uf=function(e,n){var r,s,o,h,d;return Yge(this.f,e,n),o=ia(Oa(n.d),e.d),d=b.Math.sqrt(o.a*o.a+o.b*o.b),s=b.Math.max(0,d-RS(e.e)/2-RS(n.e)/2),r=M1e(this.e,e,n),r>0?h=-cln(s,this.c)*r:h=Bsn(s,this.b)*u(X(e,(Vf(),jk)),17).a,qd(o,h/d),o},l.vf=function(e){Ikt(this,e),this.a=u(X(e,(Vf(),GU)),17).a,this.c=Rt(Ht(X(e,KU))),this.b=Rt(Ht(X(e,tft)))},l.xf=function(e){return e0&&(h-=Gnn(s,this.a)*r),qd(o,h*this.b/d),o},l.vf=function(e){var n,r,s,o,h,d,m;for(Ikt(this,e),this.b=Rt(Ht(X(e,(Vf(),eft)))),this.c=this.b/u(X(e,GU),17).a,s=e.e.c.length,h=0,o=0,m=new G(e.e);m.a0},l.a=0,l.b=0,l.c=0,I(H8t,"FruchtermanReingoldModel",642),D(860,1,uf,MC),l.hf=function(e){Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,MV),""),"Force Model"),"Determines the model for force calculation."),uCt),(Fp(),ts)),lCt),en((D1(),_n))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,V8t),""),"Iterations"),"The number of iterations on the force model."),he(300)),ac),Ra),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,U8t),""),"Repulsive Power"),"Determines how many bend points are added to the edge; such bend points are regarded as repelling particles in the force model"),he(0)),ac),Ra),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Out),""),"FR Temperature"),"The temperature is used as a scaling factor for particle displacements."),n0),Wa),zs),en(_n)))),Bs(e,Out,MV,T3e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Nut),""),"Eades Repulsion"),"Factor for repulsive forces in Eades' model."),5),Wa),zs),en(_n)))),Bs(e,Nut,MV,x3e),Bpe((new IC,e))};var m3e,v3e,uCt,y3e,x3e,k3e,E3e,T3e;I(K_,"ForceMetaDataProvider",860),D(432,22,{3:1,34:1,22:1,432:1},Vwt);var Zht,UU,lCt=Lr(K_,"ForceModelStrategy",432,Pr,Lhn,ron),C3e;D(Rp,1,uf,IC),l.hf=function(e){Bpe(e)};var S3e,_3e,hCt,GU,fCt,A3e,L3e,D3e,M3e,dCt,I3e,gCt,pCt,O3e,jk,N3e,tft,bCt,P3e,F3e,KU,eft,B3e,R3e,j3e,wCt,$3e;I(K_,"ForceOptions",Rp),D(1001,1,{},Pd),l.sf=function(){var e;return e=new V2t,e},l.tf=function(e){},I(K_,"ForceOptions/ForceFactory",1001);var UN,TA,$k,WU;D(861,1,uf,_j),l.hf=function(e){Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,K8t),""),"Fixed Position"),"Prevent that the node is moved by the layout algorithm."),(Pn(),!1)),(Fp(),oa)),ys),en((D1(),Qs))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,W8t),""),"Desired Edge Length"),"Either specified for parent nodes or for individual edges, where the latter takes higher precedence."),100),Wa),zs),Hi(_n,lt(ut(G0,1),te,170,0,[f0]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Y8t),""),"Layout Dimension"),"Dimensions that are permitted to be altered during layout."),mCt),ts),CCt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,X8t),""),"Stress Epsilon"),"Termination criterion for the iterative process."),n0),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Q8t),""),"Iteration Limit"),"Maximum number of performed iterations. Takes higher precedence than 'epsilon'."),he(xi)),ac),Ra),en(_n)))),hpe((new Aj,e))};var z3e,q3e,mCt,H3e,V3e,U3e;I(K_,"StressMetaDataProvider",861),D(1004,1,uf,Aj),l.hf=function(e){hpe(e)};var YU,vCt,yCt,xCt,kCt,ECt,G3e,K3e,W3e,Y3e,TCt,X3e;I(K_,"StressOptions",1004),D(1005,1,{},U1),l.sf=function(){var e;return e=new vZt,e},l.tf=function(e){},I(K_,"StressOptions/StressFactory",1005),D(1110,205,mw,vZt),l.rf=function(e,n){var r,s,o,h,d;for(n.Ug(c2e,1),Ie(Me(ne(e,(TO(),kCt))))?Ie(Me(ne(e,TCt)))||sq((r=new by((xy(),new my(e))),r)):Ade(new V2t,e,n.eh(1)),o=qce(e),s=yge(this.a,o),d=s.Kc();d.Ob();)h=u(d.Pb(),235),!(h.e.c.length<=1)&&(pTn(this.b,h),$xn(this.b),Cu(h.d,new Nd));o=Npe(s),Vpe(o),n.Vg()},I(NV,"StressLayoutProvider",1110),D(1111,1,ir,Nd),l.Cd=function(e){$kt(u(e,453))},I(NV,"StressLayoutProvider/lambda$0$Type",1111),D(1002,1,{},wKt),l.c=0,l.e=0,l.g=0,I(NV,"StressMajorization",1002),D(391,22,{3:1,34:1,22:1,391:1},vrt);var nft,rft,ift,CCt=Lr(NV,"StressMajorization/Dimension",391,Pr,Cfn,ion),Q3e;D(1003,1,Xr,e$),l.Ne=function(e,n){return Ian(this.a,u(e,153),u(n,153))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(NV,"StressMajorization/lambda$0$Type",1003),D(1192,1,{},Cre),I(Ok,"ElkLayered",1192),D(1193,1,ir,n$),l.Cd=function(e){p5n(this.a,u(e,36))},I(Ok,"ElkLayered/lambda$0$Type",1193),D(1194,1,ir,Pnt),l.Cd=function(e){Oan(this.a,u(e,36))},I(Ok,"ElkLayered/lambda$1$Type",1194),D(1281,1,{},cJt);var J3e,Z3e,t4e;I(Ok,"GraphConfigurator",1281),D(770,1,ir,lp),l.Cd=function(e){Nfe(this.a,u(e,10))},I(Ok,"GraphConfigurator/lambda$0$Type",770),D(771,1,{},p4),l.Kb=function(e){return Dxt(),new ln(null,new gn(u(e,30).a,16))},I(Ok,"GraphConfigurator/lambda$1$Type",771),D(772,1,ir,$C),l.Cd=function(e){Nfe(this.a,u(e,10))},I(Ok,"GraphConfigurator/lambda$2$Type",772),D(1109,205,mw,EKt),l.rf=function(e,n){var r;r=Y7n(new CKt,e),$t(ne(e,(De(),A3)))===$t((Ag(),Xp))?_2n(this.a,r,n):Fxn(this.a,r,n),n.$g()||_pe(new d6,r)},I(Ok,"LayeredLayoutProvider",1109),D(367,22,{3:1,34:1,22:1,367:1},qM);var Wf,H0,Qc,cu,Zo,SCt=Lr(Ok,"LayeredPhases",367,Pr,Ldn,son),e4e;D(1717,1,{},Foe),l.i=0;var n4e;I(vN,"ComponentsToCGraphTransformer",1717);var r4e;D(1718,1,{},N2),l.yf=function(e,n){return b.Math.min(e.a!=null?Rt(e.a):e.c.i,n.a!=null?Rt(n.a):n.c.i)},l.zf=function(e,n){return b.Math.min(e.a!=null?Rt(e.a):e.c.i,n.a!=null?Rt(n.a):n.c.i)},I(vN,"ComponentsToCGraphTransformer/1",1718),D(86,1,{86:1}),l.i=0,l.k=!0,l.o=Vs;var sft=I(Q_,"CNode",86);D(469,86,{469:1,86:1},Wmt,ixt),l.Ib=function(){return""},I(vN,"ComponentsToCGraphTransformer/CRectNode",469),D(1688,1,{},I8);var aft,oft;I(vN,"OneDimensionalComponentsCompaction",1688),D(1689,1,{},im),l.Kb=function(e){return bfn(u(e,42))},l.Fb=function(e){return this===e},I(vN,"OneDimensionalComponentsCompaction/lambda$0$Type",1689),D(1690,1,{},Gx),l.Kb=function(e){return L2n(u(e,42))},l.Fb=function(e){return this===e},I(vN,"OneDimensionalComponentsCompaction/lambda$1$Type",1690),D(1720,1,{},Iee),I(Q_,"CGraph",1720),D(194,1,{194:1},Zat),l.b=0,l.c=0,l.e=0,l.g=!0,l.i=Vs,I(Q_,"CGroup",194),D(1719,1,{},hb),l.yf=function(e,n){return b.Math.max(e.a!=null?Rt(e.a):e.c.i,n.a!=null?Rt(n.a):n.c.i)},l.zf=function(e,n){return b.Math.max(e.a!=null?Rt(e.a):e.c.i,n.a!=null?Rt(n.a):n.c.i)},I(Q_,Pbe,1719),D(1721,1,{},O1e),l.d=!1;var i4e,cft=I(Q_,Rbe,1721);D(1722,1,{},Kx),l.Kb=function(e){return Mwt(),Pn(),u(u(e,42).a,86).d.e!=0},l.Fb=function(e){return this===e},I(Q_,jbe,1722),D(833,1,{},syt),l.a=!1,l.b=!1,l.c=!1,l.d=!1,I(Q_,$be,833),D(1898,1,{},Wte),I(PV,zbe,1898);var GN=os(yw,Obe);D(1899,1,{382:1},Ane),l.bf=function(e){Vkn(this,u(e,475))},I(PV,qbe,1899),D(Wb,1,Xr,b4),l.Ne=function(e,n){return Zln(u(e,86),u(n,86))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(PV,Hbe,Wb),D(475,1,{475:1},Gwt),l.a=!1,I(PV,Vbe,475),D(1901,1,Xr,ay),l.Ne=function(e,n){return tyn(u(e,475),u(n,475))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(PV,Ube,1901),D(148,1,{148:1},kE,qvt),l.Fb=function(e){var n;return e==null||u_n!=Wl(e)?!1:(n=u(e,148),Nc(this.c,n.c)&&Nc(this.d,n.d))},l.Hb=function(){return lO(lt(ut(aa,1),Ln,1,5,[this.c,this.d]))},l.Ib=function(){return"("+this.c+ao+this.d+(this.a?"cx":"")+this.b+")"},l.a=!0,l.c=0,l.d=0;var u_n=I(yw,"Point",148);D(416,22,{3:1,34:1,22:1,416:1},F$);var bv,v3,F5,y3,s4e=Lr(yw,"Point/Quadrant",416,Pr,R1n,aon),a4e;D(1708,1,{},xKt),l.b=null,l.c=null,l.d=null,l.e=null,l.f=null;var o4e,c4e,u4e,l4e,h4e;I(yw,"RectilinearConvexHull",1708),D(583,1,{382:1},_H),l.bf=function(e){A0n(this,u(e,148))},l.b=0;var _Ct;I(yw,"RectilinearConvexHull/MaximalElementsEventHandler",583),D(1710,1,Xr,sp),l.Ne=function(e,n){return thn(Ht(e),Ht(n))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(yw,"RectilinearConvexHull/MaximalElementsEventHandler/lambda$0$Type",1710),D(1709,1,{382:1},Jae),l.bf=function(e){skn(this,u(e,148))},l.a=0,l.b=null,l.c=null,l.d=null,l.e=null,I(yw,"RectilinearConvexHull/RectangleEventHandler",1709),D(1711,1,Xr,BD),l.Ne=function(e,n){return c1n(u(e,148),u(n,148))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(yw,"RectilinearConvexHull/lambda$0$Type",1711),D(1712,1,Xr,$X),l.Ne=function(e,n){return u1n(u(e,148),u(n,148))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(yw,"RectilinearConvexHull/lambda$1$Type",1712),D(1713,1,Xr,P2),l.Ne=function(e,n){return o1n(u(e,148),u(n,148))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(yw,"RectilinearConvexHull/lambda$2$Type",1713),D(1714,1,Xr,Gc),l.Ne=function(e,n){return l1n(u(e,148),u(n,148))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(yw,"RectilinearConvexHull/lambda$3$Type",1714),D(1715,1,Xr,zX),l.Ne=function(e,n){return z3n(u(e,148),u(n,148))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(yw,"RectilinearConvexHull/lambda$4$Type",1715),D(1716,1,{},rre),I(yw,"Scanline",1716),D(2104,1,{}),I(pd,"AbstractGraphPlacer",2104),D(335,1,{335:1},VJt),l.Ff=function(e){return this.Gf(e)?(dn(this.b,u(X(e,(oe(),$g)),21),e),!0):!1},l.Gf=function(e){var n,r,s,o;for(n=u(X(e,(oe(),$g)),21),o=u(Ai(Ri,n),21),s=o.Kc();s.Ob();)if(r=u(s.Pb(),21),!u(Ai(this.b,r),15).dc())return!1;return!0};var Ri;I(pd,"ComponentGroup",335),D(779,2104,{},K2t),l.Hf=function(e){var n,r;for(r=new G(this.a);r.ar&&(A=0,P+=m+s,m=0),k=h.c,B7(h,A+k.a,P+k.b),k1(k),o=b.Math.max(o,A+T.a),m=b.Math.max(m,T.b),A+=T.a+s;n.f.a=o,n.f.b=P+m},l.Jf=function(e,n){var r,s,o,h,d;if($t(X(n,(De(),_3)))===$t((lw(),x3))){for(s=e.Kc();s.Ob();){for(r=u(s.Pb(),36),d=0,h=new G(r.a);h.ar&&!u(X(h,(oe(),$g)),21).Hc((ve(),Hn))||k&&u(X(k,(oe(),$g)),21).Hc((ve(),Jn))||u(X(h,(oe(),$g)),21).Hc((ve(),Gn)))&&($=P,U+=m+s,m=0),T=h.c,u(X(h,(oe(),$g)),21).Hc((ve(),Hn))&&($=o+s),B7(h,$+T.a,U+T.b),o=b.Math.max(o,$+A.a),u(X(h,$g),21).Hc(Er)&&(P=b.Math.max(P,$+A.a+s)),k1(T),m=b.Math.max(m,A.b),$+=A.a+s,k=h;n.f.a=o,n.f.b=U+m},l.Jf=function(e,n){},I(pd,"ModelOrderRowGraphPlacer",1313),D(1311,1,Xr,IB),l.Ne=function(e,n){return _pn(u(e,36),u(n,36))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(pd,"SimpleRowGraphPlacer/1",1311);var d4e;D(1280,1,t0,p1),l.Lb=function(e){var n;return n=u(X(u(e,249).b,(De(),Vo)),75),!!n&&n.b!=0},l.Fb=function(e){return this===e},l.Mb=function(e){var n;return n=u(X(u(e,249).b,(De(),Vo)),75),!!n&&n.b!=0},I(FV,"CompoundGraphPostprocessor/1",1280),D(1279,1,zi,SKt),l.Kf=function(e,n){ehe(this,u(e,36),n)},I(FV,"CompoundGraphPreprocessor",1279),D(452,1,{452:1},Uue),l.c=!1,I(FV,"CompoundGraphPreprocessor/ExternalPort",452),D(249,1,{249:1},wz),l.Ib=function(){return cit(this.c)+":"+_1e(this.b)},I(FV,"CrossHierarchyEdge",249),D(777,1,Xr,_M),l.Ne=function(e,n){return Avn(this,u(e,249),u(n,249))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(FV,"CrossHierarchyEdgeComparator",777),D(304,137,{3:1,304:1,96:1,137:1}),l.p=0,I(au,"LGraphElement",304),D(18,304,{3:1,18:1,304:1,96:1,137:1},Pm),l.Ib=function(){return _1e(this)};var hft=I(au,"LEdge",18);D(36,304,{3:1,20:1,36:1,304:1,96:1,137:1},y4t),l.Jc=function(e){Fa(this,e)},l.Kc=function(){return new G(this.b)},l.Ib=function(){return this.b.c.length==0?"G-unlayered"+Hb(this.a):this.a.c.length==0?"G-layered"+Hb(this.b):"G[layerless"+Hb(this.a)+", layers"+Hb(this.b)+"]"};var g4e=I(au,"LGraph",36),p4e;D(666,1,{}),l.Lf=function(){return this.e.n},l.of=function(e){return X(this.e,e)},l.Mf=function(){return this.e.o},l.Nf=function(){return this.e.p},l.pf=function(e){return qi(this.e,e)},l.Of=function(e){this.e.n.a=e.a,this.e.n.b=e.b},l.Pf=function(e){this.e.o.a=e.a,this.e.o.b=e.b},l.Qf=function(e){this.e.p=e},I(au,"LGraphAdapters/AbstractLShapeAdapter",666),D(473,1,{853:1},z2),l.Rf=function(){var e,n;if(!this.b)for(this.b=C0(this.a.b.c.length),n=new G(this.a.b);n.a0&&kue((qn(n-1,e.length),e.charCodeAt(n-1)),g2e);)--n;if(h> ",e),BH(r)),ni(tu((e.a+="[",e),r.i),"]")),e.a},l.c=!0,l.d=!1;var ICt,OCt,NCt,PCt,FCt,BCt,w4e=I(au,"LPort",12);D(408,1,F0,D4),l.Jc=function(e){Fa(this,e)},l.Kc=function(){var e;return e=new G(this.a.e),new yVt(e)},I(au,"LPort/1",408),D(1309,1,wa,yVt),l.Nb=function(e){Na(this,e)},l.Pb=function(){return u(et(this.a),18).c},l.Ob=function(){return lc(this.a)},l.Qb=function(){PS(this.a)},I(au,"LPort/1/1",1309),D(369,1,F0,k6),l.Jc=function(e){Fa(this,e)},l.Kc=function(){var e;return e=new G(this.a.g),new M2t(e)},I(au,"LPort/2",369),D(776,1,wa,M2t),l.Nb=function(e){Na(this,e)},l.Pb=function(){return u(et(this.a),18).d},l.Ob=function(){return lc(this.a)},l.Qb=function(){PS(this.a)},I(au,"LPort/2/1",776),D(1302,1,F0,uXt),l.Jc=function(e){Fa(this,e)},l.Kc=function(){return new sd(this)},I(au,"LPort/CombineIter",1302),D(208,1,wa,sd),l.Nb=function(e){Na(this,e)},l.Qb=function(){zWt()},l.Ob=function(){return TS(this)},l.Pb=function(){return lc(this.a)?et(this.a):et(this.b)},I(au,"LPort/CombineIter/1",208),D(1303,1,t0,fb),l.Lb=function(e){return cee(e)},l.Fb=function(e){return this===e},l.Mb=function(e){return rl(),u(e,12).g.c.length!=0},I(au,"LPort/lambda$0$Type",1303),D(1304,1,t0,cy),l.Lb=function(e){return uee(e)},l.Fb=function(e){return this===e},l.Mb=function(e){return rl(),u(e,12).e.c.length!=0},I(au,"LPort/lambda$1$Type",1304),D(1305,1,t0,HX),l.Lb=function(e){return rl(),u(e,12).j==(ve(),Hn)},l.Fb=function(e){return this===e},l.Mb=function(e){return rl(),u(e,12).j==(ve(),Hn)},I(au,"LPort/lambda$2$Type",1305),D(1306,1,t0,F2),l.Lb=function(e){return rl(),u(e,12).j==(ve(),Jn)},l.Fb=function(e){return this===e},l.Mb=function(e){return rl(),u(e,12).j==(ve(),Jn)},I(au,"LPort/lambda$3$Type",1306),D(1307,1,t0,VX),l.Lb=function(e){return rl(),u(e,12).j==(ve(),Er)},l.Fb=function(e){return this===e},l.Mb=function(e){return rl(),u(e,12).j==(ve(),Er)},I(au,"LPort/lambda$4$Type",1307),D(1308,1,t0,UX),l.Lb=function(e){return rl(),u(e,12).j==(ve(),Gn)},l.Fb=function(e){return this===e},l.Mb=function(e){return rl(),u(e,12).j==(ve(),Gn)},I(au,"LPort/lambda$5$Type",1308),D(30,304,{3:1,20:1,304:1,30:1,96:1,137:1},eu),l.Jc=function(e){Fa(this,e)},l.Kc=function(){return new G(this.a)},l.Ib=function(){return"L_"+Xo(this.b.b,this,0)+Hb(this.a)},I(au,"Layer",30),D(1330,1,{},CKt),I($p,m2e,1330),D(1334,1,{},Wx),l.Kb=function(e){return Jo(u(e,84))},I($p,"ElkGraphImporter/0methodref$connectableShapeToNode$Type",1334),D(1337,1,{},K9),l.Kb=function(e){return Jo(u(e,84))},I($p,"ElkGraphImporter/1methodref$connectableShapeToNode$Type",1337),D(1331,1,ir,xVt),l.Cd=function(e){V1e(this.a,u(e,123))},I($p,q8t,1331),D(1332,1,ir,kVt),l.Cd=function(e){V1e(this.a,u(e,123))},I($p,v2e,1332),D(1333,1,{},NB),l.Kb=function(e){return new ln(null,new gn(zyt(u(e,74)),16))},I($p,y2e,1333),D(1335,1,Kr,EVt),l.Mb=function(e){return Min(this.a,u(e,27))},I($p,x2e,1335),D(1336,1,{},O8),l.Kb=function(e){return new ln(null,new gn(Wln(u(e,74)),16))},I($p,"ElkGraphImporter/lambda$5$Type",1336),D(1338,1,Kr,TVt),l.Mb=function(e){return Iin(this.a,u(e,27))},I($p,"ElkGraphImporter/lambda$7$Type",1338),D(1339,1,Kr,GX),l.Mb=function(e){return chn(u(e,74))},I($p,"ElkGraphImporter/lambda$8$Type",1339),D(1297,1,{},d6);var m4e;I($p,"ElkGraphLayoutTransferrer",1297),D(1298,1,Kr,CVt),l.Mb=function(e){return yan(this.a,u(e,18))},I($p,"ElkGraphLayoutTransferrer/lambda$0$Type",1298),D(1299,1,ir,SVt),l.Cd=function(e){$M(),ge(this.a,u(e,18))},I($p,"ElkGraphLayoutTransferrer/lambda$1$Type",1299),D(1300,1,Kr,_Vt),l.Mb=function(e){return san(this.a,u(e,18))},I($p,"ElkGraphLayoutTransferrer/lambda$2$Type",1300),D(1301,1,ir,AVt),l.Cd=function(e){$M(),ge(this.a,u(e,18))},I($p,"ElkGraphLayoutTransferrer/lambda$3$Type",1301),D(819,1,{},wvt),I(Yn,"BiLinkedHashMultiMap",819),D(1550,1,zi,N8),l.Kf=function(e,n){Kgn(u(e,36),n)},I(Yn,"CommentNodeMarginCalculator",1550),D(1551,1,{},KX),l.Kb=function(e){return new ln(null,new gn(u(e,30).a,16))},I(Yn,"CommentNodeMarginCalculator/lambda$0$Type",1551),D(1552,1,ir,WX),l.Cd=function(e){K7n(u(e,10))},I(Yn,"CommentNodeMarginCalculator/lambda$1$Type",1552),D(1553,1,zi,YX),l.Kf=function(e,n){Qkn(u(e,36),n)},I(Yn,"CommentPostprocessor",1553),D(1554,1,zi,XX),l.Kf=function(e,n){vCn(u(e,36),n)},I(Yn,"CommentPreprocessor",1554),D(1555,1,zi,QX),l.Kf=function(e,n){gkn(u(e,36),n)},I(Yn,"ConstraintsPostprocessor",1555),D(1556,1,zi,JX),l.Kf=function(e,n){xpn(u(e,36),n)},I(Yn,"EdgeAndLayerConstraintEdgeReverser",1556),D(1557,1,zi,ZX),l.Kf=function(e,n){hwn(u(e,36),n)},I(Yn,"EndLabelPostprocessor",1557),D(1558,1,{},tQ),l.Kb=function(e){return new ln(null,new gn(u(e,30).a,16))},I(Yn,"EndLabelPostprocessor/lambda$0$Type",1558),D(1559,1,Kr,eQ),l.Mb=function(e){return Sdn(u(e,10))},I(Yn,"EndLabelPostprocessor/lambda$1$Type",1559),D(1560,1,ir,nQ),l.Cd=function(e){eyn(u(e,10))},I(Yn,"EndLabelPostprocessor/lambda$2$Type",1560),D(1561,1,zi,rQ),l.Kf=function(e,n){H4n(u(e,36),n)},I(Yn,"EndLabelPreprocessor",1561),D(1562,1,{},RD),l.Kb=function(e){return new ln(null,new gn(u(e,30).a,16))},I(Yn,"EndLabelPreprocessor/lambda$0$Type",1562),D(1563,1,ir,XZt),l.Cd=function(e){Vrn(this.a,this.b,this.c,u(e,10))},l.a=0,l.b=0,l.c=!1,I(Yn,"EndLabelPreprocessor/lambda$1$Type",1563),D(1564,1,Kr,iQ),l.Mb=function(e){return $t(X(u(e,72),(De(),l0)))===$t((cd(),KT))},I(Yn,"EndLabelPreprocessor/lambda$2$Type",1564),D(1565,1,ir,LVt),l.Cd=function(e){Zr(this.a,u(e,72))},I(Yn,"EndLabelPreprocessor/lambda$3$Type",1565),D(1566,1,Kr,sQ),l.Mb=function(e){return $t(X(u(e,72),(De(),l0)))===$t((cd(),$3))},I(Yn,"EndLabelPreprocessor/lambda$4$Type",1566),D(1567,1,ir,DVt),l.Cd=function(e){Zr(this.a,u(e,72))},I(Yn,"EndLabelPreprocessor/lambda$5$Type",1567),D(1615,1,zi,Uet),l.Kf=function(e,n){l2n(u(e,36),n)};var v4e;I(Yn,"EndLabelSorter",1615),D(1616,1,Xr,W9),l.Ne=function(e,n){return Hwn(u(e,465),u(n,465))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"EndLabelSorter/1",1616),D(465,1,{465:1},kne),I(Yn,"EndLabelSorter/LabelGroup",465),D(1617,1,{},PB),l.Kb=function(e){return jM(),new ln(null,new gn(u(e,30).a,16))},I(Yn,"EndLabelSorter/lambda$0$Type",1617),D(1618,1,Kr,Yx),l.Mb=function(e){return jM(),u(e,10).k==(Un(),xs)},I(Yn,"EndLabelSorter/lambda$1$Type",1618),D(1619,1,ir,aQ),l.Cd=function(e){r4n(u(e,10))},I(Yn,"EndLabelSorter/lambda$2$Type",1619),D(1620,1,Kr,oQ),l.Mb=function(e){return jM(),$t(X(u(e,72),(De(),l0)))===$t((cd(),$3))},I(Yn,"EndLabelSorter/lambda$3$Type",1620),D(1621,1,Kr,cQ),l.Mb=function(e){return jM(),$t(X(u(e,72),(De(),l0)))===$t((cd(),KT))},I(Yn,"EndLabelSorter/lambda$4$Type",1621),D(1568,1,zi,uQ),l.Kf=function(e,n){cTn(this,u(e,36))},l.b=0,l.c=0,I(Yn,"FinalSplineBendpointsCalculator",1568),D(1569,1,{},lQ),l.Kb=function(e){return new ln(null,new gn(u(e,30).a,16))},I(Yn,"FinalSplineBendpointsCalculator/lambda$0$Type",1569),D(1570,1,{},Y9),l.Kb=function(e){return new ln(null,new Lm(new rr(sr(_s(u(e,10)).a.Kc(),new z))))},I(Yn,"FinalSplineBendpointsCalculator/lambda$1$Type",1570),D(1571,1,Kr,jD),l.Mb=function(e){return!go(u(e,18))},I(Yn,"FinalSplineBendpointsCalculator/lambda$2$Type",1571),D(1572,1,Kr,FB),l.Mb=function(e){return qi(u(e,18),(oe(),Lw))},I(Yn,"FinalSplineBendpointsCalculator/lambda$3$Type",1572),D(1573,1,ir,MVt),l.Cd=function(e){wEn(this.a,u(e,131))},I(Yn,"FinalSplineBendpointsCalculator/lambda$4$Type",1573),D(1574,1,ir,w4),l.Cd=function(e){IO(u(e,18).a)},I(Yn,"FinalSplineBendpointsCalculator/lambda$5$Type",1574),D(803,1,zi,I2t),l.Kf=function(e,n){e9n(this,u(e,36),n)},I(Yn,"GraphTransformer",803),D(517,22,{3:1,34:1,22:1,517:1},Uwt);var dft,KN,y4e=Lr(Yn,"GraphTransformer/Mode",517,Pr,Dhn,hcn),x4e;D(1575,1,zi,m4),l.Kf=function(e,n){E6n(u(e,36),n)},I(Yn,"HierarchicalNodeResizingProcessor",1575),D(1576,1,zi,hQ),l.Kf=function(e,n){qgn(u(e,36),n)},I(Yn,"HierarchicalPortConstraintProcessor",1576),D(1577,1,Xr,Lf),l.Ne=function(e,n){return lmn(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"HierarchicalPortConstraintProcessor/NodeComparator",1577),D(1578,1,zi,Xx),l.Kf=function(e,n){h7n(u(e,36),n)},I(Yn,"HierarchicalPortDummySizeProcessor",1578),D(1579,1,zi,fQ),l.Kf=function(e,n){x8n(this,u(e,36),n)},l.a=0,I(Yn,"HierarchicalPortOrthogonalEdgeRouter",1579),D(1580,1,Xr,P8),l.Ne=function(e,n){return Esn(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"HierarchicalPortOrthogonalEdgeRouter/1",1580),D(1581,1,Xr,v0),l.Ne=function(e,n){return L0n(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"HierarchicalPortOrthogonalEdgeRouter/2",1581),D(1582,1,zi,dQ),l.Kf=function(e,n){R3n(u(e,36),n)},I(Yn,"HierarchicalPortPositionProcessor",1582),D(1583,1,zi,om),l.Kf=function(e,n){tSn(this,u(e,36))},l.a=0,l.c=0;var XU,QU;I(Yn,"HighDegreeNodeLayeringProcessor",1583),D(580,1,{580:1},gQ),l.b=-1,l.d=-1,I(Yn,"HighDegreeNodeLayeringProcessor/HighDegreeNodeInformation",580),D(1584,1,{},pQ),l.Kb=function(e){return gI(),ua(u(e,10))},l.Fb=function(e){return this===e},I(Yn,"HighDegreeNodeLayeringProcessor/lambda$0$Type",1584),D(1585,1,{},BB),l.Kb=function(e){return gI(),_s(u(e,10))},l.Fb=function(e){return this===e},I(Yn,"HighDegreeNodeLayeringProcessor/lambda$1$Type",1585),D(1591,1,zi,bQ),l.Kf=function(e,n){r7n(this,u(e,36),n)},I(Yn,"HyperedgeDummyMerger",1591),D(804,1,{},Ivt),l.a=!1,l.b=!1,l.c=!1,I(Yn,"HyperedgeDummyMerger/MergeState",804),D(1592,1,{},X9),l.Kb=function(e){return new ln(null,new gn(u(e,30).a,16))},I(Yn,"HyperedgeDummyMerger/lambda$0$Type",1592),D(1593,1,{},Q9),l.Kb=function(e){return new ln(null,new gn(u(e,10).j,16))},I(Yn,"HyperedgeDummyMerger/lambda$1$Type",1593),D(1594,1,ir,RB),l.Cd=function(e){u(e,12).p=-1},I(Yn,"HyperedgeDummyMerger/lambda$2$Type",1594),D(1595,1,zi,$D),l.Kf=function(e,n){e7n(u(e,36),n)},I(Yn,"HypernodesProcessor",1595),D(1596,1,zi,Qx),l.Kf=function(e,n){l7n(u(e,36),n)},I(Yn,"InLayerConstraintProcessor",1596),D(1597,1,zi,wQ),l.Kf=function(e,n){rpn(u(e,36),n)},I(Yn,"InnermostNodeMarginCalculator",1597),D(1598,1,zi,jB),l.Kf=function(e,n){pCn(this,u(e,36))},l.a=Vs,l.b=Vs,l.c=Zi,l.d=Zi;var l_n=I(Yn,"InteractiveExternalPortPositioner",1598);D(1599,1,{},$B),l.Kb=function(e){return u(e,18).d.i},l.Fb=function(e){return this===e},I(Yn,"InteractiveExternalPortPositioner/lambda$0$Type",1599),D(1600,1,{},IVt),l.Kb=function(e){return Tsn(this.a,Ht(e))},l.Fb=function(e){return this===e},I(Yn,"InteractiveExternalPortPositioner/lambda$1$Type",1600),D(1601,1,{},mQ),l.Kb=function(e){return u(e,18).c.i},l.Fb=function(e){return this===e},I(Yn,"InteractiveExternalPortPositioner/lambda$2$Type",1601),D(1602,1,{},OVt),l.Kb=function(e){return Csn(this.a,Ht(e))},l.Fb=function(e){return this===e},I(Yn,"InteractiveExternalPortPositioner/lambda$3$Type",1602),D(1603,1,{},NVt),l.Kb=function(e){return kan(this.a,Ht(e))},l.Fb=function(e){return this===e},I(Yn,"InteractiveExternalPortPositioner/lambda$4$Type",1603),D(1604,1,{},PVt),l.Kb=function(e){return Ean(this.a,Ht(e))},l.Fb=function(e){return this===e},I(Yn,"InteractiveExternalPortPositioner/lambda$5$Type",1604),D(81,22,{3:1,34:1,22:1,81:1,196:1},Ns),l.dg=function(){switch(this.g){case 15:return new pR;case 22:return new MJ;case 47:return new NJ;case 28:case 35:return new CQ;case 32:return new N8;case 42:return new YX;case 1:return new XX;case 41:return new QX;case 56:return new I2t((r7(),KN));case 0:return new I2t((r7(),dft));case 2:return new JX;case 54:return new ZX;case 33:return new rQ;case 51:return new uQ;case 55:return new m4;case 13:return new hQ;case 38:return new Xx;case 44:return new fQ;case 40:return new dQ;case 9:return new om;case 49:return new PJt;case 37:return new bQ;case 43:return new $D;case 27:return new Qx;case 30:return new wQ;case 3:return new jB;case 18:return new yQ;case 29:return new xQ;case 5:return new nE;case 50:return new vQ;case 34:return new Lj;case 36:return new v4;case 52:return new Uet;case 11:return new F8;case 7:return new Get;case 39:return new zD;case 45:return new uy;case 16:return new B8;case 10:return new _Xt;case 48:return new zB;case 21:return new qD;case 23:return new Xnt((Hm(),UA));case 8:return new HD;case 12:return new _Q;case 4:return new VD;case 19:return new Ij;case 17:return new IQ;case 53:return new OQ;case 6:return new WB;case 25:return new AKt;case 46:return new BQ;case 31:return new EZt;case 14:return new UQ;case 26:return new BJ;case 20:return new JB;case 24:return new Xnt((Hm(),eK));default:throw at(new zn(jut+(this.f!=null?this.f:""+this.g)))}};var RCt,jCt,$Ct,zCt,qCt,HCt,VCt,UCt,GCt,KCt,B5,JU,ZU,WCt,YCt,XCt,QCt,JCt,ZCt,tSt,CA,eSt,nSt,rSt,iSt,sSt,gft,tG,eG,aSt,nG,rG,iG,vT,k3,E3,oSt,sG,aG,cSt,oG,cG,uSt,lSt,hSt,fSt,uG,pft,WN,lG,hG,fG,dG,dSt,gSt,pSt,bSt,h_n=Lr(Yn,$ut,81,Pr,Bde,lon),k4e;D(1605,1,zi,yQ),l.Kf=function(e,n){dCn(u(e,36),n)},I(Yn,"InvertedPortProcessor",1605),D(1606,1,zi,xQ),l.Kf=function(e,n){uEn(u(e,36),n)},I(Yn,"LabelAndNodeSizeProcessor",1606),D(1607,1,Kr,kQ),l.Mb=function(e){return u(e,10).k==(Un(),xs)},I(Yn,"LabelAndNodeSizeProcessor/lambda$0$Type",1607),D(1608,1,Kr,EQ),l.Mb=function(e){return u(e,10).k==(Un(),Ms)},I(Yn,"LabelAndNodeSizeProcessor/lambda$1$Type",1608),D(1609,1,ir,QZt),l.Cd=function(e){Urn(this.b,this.a,this.c,u(e,10))},l.a=!1,l.c=!1,I(Yn,"LabelAndNodeSizeProcessor/lambda$2$Type",1609),D(1610,1,zi,nE),l.Kf=function(e,n){j9n(u(e,36),n)};var E4e;I(Yn,"LabelDummyInserter",1610),D(1611,1,t0,y0),l.Lb=function(e){return $t(X(u(e,72),(De(),l0)))===$t((cd(),GT))},l.Fb=function(e){return this===e},l.Mb=function(e){return $t(X(u(e,72),(De(),l0)))===$t((cd(),GT))},I(Yn,"LabelDummyInserter/1",1611),D(1612,1,zi,vQ),l.Kf=function(e,n){_9n(u(e,36),n)},I(Yn,"LabelDummyRemover",1612),D(1613,1,Kr,sm),l.Mb=function(e){return Ie(Me(X(u(e,72),(De(),r1t))))},I(Yn,"LabelDummyRemover/lambda$0$Type",1613),D(1378,1,zi,Lj),l.Kf=function(e,n){v9n(this,u(e,36),n)},l.a=null;var bft;I(Yn,"LabelDummySwitcher",1378),D(292,1,{292:1},F0e),l.c=0,l.d=null,l.f=0,I(Yn,"LabelDummySwitcher/LabelDummyInfo",292),D(1379,1,{},TQ),l.Kb=function(e){return ok(),new ln(null,new gn(u(e,30).a,16))},I(Yn,"LabelDummySwitcher/lambda$0$Type",1379),D(1380,1,Kr,J9),l.Mb=function(e){return ok(),u(e,10).k==(Un(),Vc)},I(Yn,"LabelDummySwitcher/lambda$1$Type",1380),D(1381,1,{},FVt),l.Kb=function(e){return aan(this.a,u(e,10))},I(Yn,"LabelDummySwitcher/lambda$2$Type",1381),D(1382,1,ir,BVt),l.Cd=function(e){Sln(this.a,u(e,292))},I(Yn,"LabelDummySwitcher/lambda$3$Type",1382),D(1383,1,Xr,Z9),l.Ne=function(e,n){return Xun(u(e,292),u(n,292))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"LabelDummySwitcher/lambda$4$Type",1383),D(802,1,zi,CQ),l.Kf=function(e,n){c0n(u(e,36),n)},I(Yn,"LabelManagementProcessor",802),D(1614,1,zi,v4),l.Kf=function(e,n){jkn(u(e,36),n)},I(Yn,"LabelSideSelector",1614),D(1622,1,zi,F8),l.Kf=function(e,n){S7n(u(e,36),n)},I(Yn,"LayerConstraintPostprocessor",1622),D(1623,1,zi,Get),l.Kf=function(e,n){xxn(u(e,36),n)};var wSt;I(Yn,"LayerConstraintPreprocessor",1623),D(371,22,{3:1,34:1,22:1,371:1},R$);var YN,gG,pG,wft,T4e=Lr(Yn,"LayerConstraintPreprocessor/HiddenNodeConnections",371,Pr,$1n,hon),C4e;D(1624,1,zi,zD),l.Kf=function(e,n){HTn(u(e,36),n)},I(Yn,"LayerSizeAndGraphHeightCalculator",1624),D(1625,1,zi,uy),l.Kf=function(e,n){T6n(u(e,36),n)},I(Yn,"LongEdgeJoiner",1625),D(1626,1,zi,B8),l.Kf=function(e,n){vTn(u(e,36),n)},I(Yn,"LongEdgeSplitter",1626),D(1627,1,zi,_Xt),l.Kf=function(e,n){tCn(this,u(e,36),n)},l.e=0,l.f=0,l.j=0,l.k=0,l.n=0,l.o=0;var S4e,_4e;I(Yn,"NodePromotion",1627),D(1628,1,Xr,SQ),l.Ne=function(e,n){return dbn(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"NodePromotion/1",1628),D(1629,1,Xr,tC),l.Ne=function(e,n){return gbn(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"NodePromotion/2",1629),D(1630,1,{},Fd),l.Kb=function(e){return u(e,42),vz(),Pn(),!0},l.Fb=function(e){return this===e},I(Yn,"NodePromotion/lambda$0$Type",1630),D(1631,1,{},zVt),l.Kb=function(e){return ufn(this.a,u(e,42))},l.Fb=function(e){return this===e},l.a=0,I(Yn,"NodePromotion/lambda$1$Type",1631),D(1632,1,{},qVt),l.Kb=function(e){return cfn(this.a,u(e,42))},l.Fb=function(e){return this===e},l.a=0,I(Yn,"NodePromotion/lambda$2$Type",1632),D(1633,1,zi,zB),l.Kf=function(e,n){WCn(u(e,36),n)},I(Yn,"NorthSouthPortPostprocessor",1633),D(1634,1,zi,qD),l.Kf=function(e,n){ACn(u(e,36),n)},I(Yn,"NorthSouthPortPreprocessor",1634),D(1635,1,Xr,R8),l.Ne=function(e,n){return Apn(u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"NorthSouthPortPreprocessor/lambda$0$Type",1635),D(1636,1,zi,HD),l.Kf=function(e,n){VEn(u(e,36),n)},I(Yn,"PartitionMidprocessor",1636),D(1637,1,Kr,qB),l.Mb=function(e){return qi(u(e,10),(De(),OT))},I(Yn,"PartitionMidprocessor/lambda$0$Type",1637),D(1638,1,ir,HVt),l.Cd=function(e){uhn(this.a,u(e,10))},I(Yn,"PartitionMidprocessor/lambda$1$Type",1638),D(1639,1,zi,_Q),l.Kf=function(e,n){U6n(u(e,36),n)},I(Yn,"PartitionPostprocessor",1639),D(1640,1,zi,VD),l.Kf=function(e,n){sxn(u(e,36),n)},I(Yn,"PartitionPreprocessor",1640),D(1641,1,Kr,AQ),l.Mb=function(e){return qi(u(e,10),(De(),OT))},I(Yn,"PartitionPreprocessor/lambda$0$Type",1641),D(1642,1,{},LQ),l.Kb=function(e){return new ln(null,new Lm(new rr(sr(_s(u(e,10)).a.Kc(),new z))))},I(Yn,"PartitionPreprocessor/lambda$1$Type",1642),D(1643,1,Kr,HB),l.Mb=function(e){return Ywn(u(e,18))},I(Yn,"PartitionPreprocessor/lambda$2$Type",1643),D(1644,1,ir,Jx),l.Cd=function(e){Upn(u(e,18))},I(Yn,"PartitionPreprocessor/lambda$3$Type",1644),D(1645,1,zi,Ij),l.Kf=function(e,n){TEn(u(e,36),n)};var mSt,A4e,L4e,D4e,vSt,ySt;I(Yn,"PortListSorter",1645),D(1648,1,Xr,VB),l.Ne=function(e,n){return Sie(u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"PortListSorter/lambda$0$Type",1648),D(1650,1,Xr,Zx),l.Ne=function(e,n){return age(u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"PortListSorter/lambda$1$Type",1650),D(1646,1,{},DQ),l.Kb=function(e){return g7(),u(e,12).e},I(Yn,"PortListSorter/lambda$2$Type",1646),D(1647,1,{},UD),l.Kb=function(e){return g7(),u(e,12).g},I(Yn,"PortListSorter/lambda$3$Type",1647),D(1649,1,Xr,MQ),l.Ne=function(e,n){return vvn(u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"PortListSorter/lambda$4$Type",1649),D(1651,1,zi,IQ),l.Kf=function(e,n){Nxn(u(e,36),n)},I(Yn,"PortSideProcessor",1651),D(1652,1,zi,OQ),l.Kf=function(e,n){P8n(u(e,36),n)},I(Yn,"ReversedEdgeRestorer",1652),D(1657,1,zi,AKt),l.Kf=function(e,n){evn(this,u(e,36),n)},I(Yn,"SelfLoopPortRestorer",1657),D(1658,1,{},NQ),l.Kb=function(e){return new ln(null,new gn(u(e,30).a,16))},I(Yn,"SelfLoopPortRestorer/lambda$0$Type",1658),D(1659,1,Kr,UB),l.Mb=function(e){return u(e,10).k==(Un(),xs)},I(Yn,"SelfLoopPortRestorer/lambda$1$Type",1659),D(1660,1,Kr,PQ),l.Mb=function(e){return qi(u(e,10),(oe(),kv))},I(Yn,"SelfLoopPortRestorer/lambda$2$Type",1660),D(1661,1,{},FQ),l.Kb=function(e){return u(X(u(e,10),(oe(),kv)),337)},I(Yn,"SelfLoopPortRestorer/lambda$3$Type",1661),D(1662,1,ir,jVt),l.Cd=function(e){b4n(this.a,u(e,337))},I(Yn,"SelfLoopPortRestorer/lambda$4$Type",1662),D(805,1,ir,GB),l.Cd=function(e){L4n(u(e,105))},I(Yn,"SelfLoopPortRestorer/lambda$5$Type",805),D(1663,1,zi,BQ),l.Kf=function(e,n){omn(u(e,36),n)},I(Yn,"SelfLoopPostProcessor",1663),D(1664,1,{},RQ),l.Kb=function(e){return new ln(null,new gn(u(e,30).a,16))},I(Yn,"SelfLoopPostProcessor/lambda$0$Type",1664),D(1665,1,Kr,jQ),l.Mb=function(e){return u(e,10).k==(Un(),xs)},I(Yn,"SelfLoopPostProcessor/lambda$1$Type",1665),D(1666,1,Kr,$Q),l.Mb=function(e){return qi(u(e,10),(oe(),kv))},I(Yn,"SelfLoopPostProcessor/lambda$2$Type",1666),D(1667,1,ir,KB),l.Cd=function(e){myn(u(e,10))},I(Yn,"SelfLoopPostProcessor/lambda$3$Type",1667),D(1668,1,{},zQ),l.Kb=function(e){return new ln(null,new gn(u(e,105).f,1))},I(Yn,"SelfLoopPostProcessor/lambda$4$Type",1668),D(1669,1,ir,RVt),l.Cd=function(e){V1n(this.a,u(e,340))},I(Yn,"SelfLoopPostProcessor/lambda$5$Type",1669),D(1670,1,Kr,qQ),l.Mb=function(e){return!!u(e,105).i},I(Yn,"SelfLoopPostProcessor/lambda$6$Type",1670),D(1671,1,ir,$Vt),l.Cd=function(e){Vnn(this.a,u(e,105))},I(Yn,"SelfLoopPostProcessor/lambda$7$Type",1671),D(1653,1,zi,WB),l.Kf=function(e,n){u6n(u(e,36),n)},I(Yn,"SelfLoopPreProcessor",1653),D(1654,1,{},YB),l.Kb=function(e){return new ln(null,new gn(u(e,105).f,1))},I(Yn,"SelfLoopPreProcessor/lambda$0$Type",1654),D(1655,1,{},XB),l.Kb=function(e){return u(e,340).a},I(Yn,"SelfLoopPreProcessor/lambda$1$Type",1655),D(1656,1,ir,HQ),l.Cd=function(e){Kin(u(e,18))},I(Yn,"SelfLoopPreProcessor/lambda$2$Type",1656),D(1672,1,zi,EZt),l.Kf=function(e,n){Q3n(this,u(e,36),n)},I(Yn,"SelfLoopRouter",1672),D(1673,1,{},VQ),l.Kb=function(e){return new ln(null,new gn(u(e,30).a,16))},I(Yn,"SelfLoopRouter/lambda$0$Type",1673),D(1674,1,Kr,j8),l.Mb=function(e){return u(e,10).k==(Un(),xs)},I(Yn,"SelfLoopRouter/lambda$1$Type",1674),D(1675,1,Kr,t6),l.Mb=function(e){return qi(u(e,10),(oe(),kv))},I(Yn,"SelfLoopRouter/lambda$2$Type",1675),D(1676,1,{},eC),l.Kb=function(e){return u(X(u(e,10),(oe(),kv)),337)},I(Yn,"SelfLoopRouter/lambda$3$Type",1676),D(1677,1,ir,oXt),l.Cd=function(e){rhn(this.a,this.b,u(e,337))},I(Yn,"SelfLoopRouter/lambda$4$Type",1677),D(1678,1,zi,UQ),l.Kf=function(e,n){_kn(u(e,36),n)},I(Yn,"SemiInteractiveCrossMinProcessor",1678),D(1679,1,Kr,GD),l.Mb=function(e){return u(e,10).k==(Un(),xs)},I(Yn,"SemiInteractiveCrossMinProcessor/lambda$0$Type",1679),D(1680,1,Kr,nC),l.Mb=function(e){return $te(u(e,10))._b((De(),I3))},I(Yn,"SemiInteractiveCrossMinProcessor/lambda$1$Type",1680),D(1681,1,Xr,KD),l.Ne=function(e,n){return Vgn(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Yn,"SemiInteractiveCrossMinProcessor/lambda$2$Type",1681),D(1682,1,{},QB),l.Ve=function(e,n){return lhn(u(e,10),u(n,10))},I(Yn,"SemiInteractiveCrossMinProcessor/lambda$3$Type",1682),D(1684,1,zi,JB),l.Kf=function(e,n){Q7n(u(e,36),n)},I(Yn,"SortByInputModelProcessor",1684),D(1685,1,Kr,GQ),l.Mb=function(e){return u(e,12).g.c.length!=0},I(Yn,"SortByInputModelProcessor/lambda$0$Type",1685),D(1686,1,ir,VVt),l.Cd=function(e){N4n(this.a,u(e,12))},I(Yn,"SortByInputModelProcessor/lambda$1$Type",1686),D(1759,817,{},Xoe),l.df=function(e){var n,r,s,o;switch(this.c=e,this.a.g){case 2:n=new fe,ms(_i(new ln(null,new gn(this.c.a.b,16)),new rJ),new bXt(this,n)),OO(this,new WQ),Cu(n,new ZB),n.c.length=0,ms(_i(new ln(null,new gn(this.c.a.b,16)),new tR),new GVt(n)),OO(this,new YQ),Cu(n,new XQ),n.c.length=0,r=QQt(hat(Ny(new ln(null,new gn(this.c.a.b,16)),new KVt(this))),new QQ),ms(new ln(null,new gn(this.c.a.a,16)),new lXt(r,n)),OO(this,new ZQ),Cu(n,new eR),n.c.length=0;break;case 3:s=new fe,OO(this,new KQ),o=QQt(hat(Ny(new ln(null,new gn(this.c.a.b,16)),new UVt(this))),new JQ),ms(_i(new ln(null,new gn(this.c.a.b,16)),new tJ),new fXt(o,s)),OO(this,new eJ),Cu(s,new nJ),s.c.length=0;break;default:throw at(new pKt)}},l.b=0,I(Gs,"EdgeAwareScanlineConstraintCalculation",1759),D(1760,1,t0,KQ),l.Lb=function(e){return Lt(u(e,60).g,154)},l.Fb=function(e){return this===e},l.Mb=function(e){return Lt(u(e,60).g,154)},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$0$Type",1760),D(1761,1,{},UVt),l.Ye=function(e){return w5n(this.a,u(e,60))},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$1$Type",1761),D(1769,1,kV,cXt),l.de=function(){x_(this.a,this.b,-1)},l.b=0,I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$10$Type",1769),D(1771,1,t0,WQ),l.Lb=function(e){return Lt(u(e,60).g,154)},l.Fb=function(e){return this===e},l.Mb=function(e){return Lt(u(e,60).g,154)},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$11$Type",1771),D(1772,1,ir,ZB),l.Cd=function(e){u(e,380).de()},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$12$Type",1772),D(1773,1,Kr,tR),l.Mb=function(e){return Lt(u(e,60).g,10)},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$13$Type",1773),D(1775,1,ir,GVt),l.Cd=function(e){B2n(this.a,u(e,60))},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$14$Type",1775),D(1774,1,kV,dXt),l.de=function(){x_(this.b,this.a,-1)},l.a=0,I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$15$Type",1774),D(1776,1,t0,YQ),l.Lb=function(e){return Lt(u(e,60).g,10)},l.Fb=function(e){return this===e},l.Mb=function(e){return Lt(u(e,60).g,10)},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$16$Type",1776),D(1777,1,ir,XQ),l.Cd=function(e){u(e,380).de()},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$17$Type",1777),D(1778,1,{},KVt),l.Ye=function(e){return m5n(this.a,u(e,60))},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$18$Type",1778),D(1779,1,{},QQ),l.We=function(){return 0},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$19$Type",1779),D(1762,1,{},JQ),l.We=function(){return 0},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$2$Type",1762),D(1781,1,ir,lXt),l.Cd=function(e){qun(this.a,this.b,u(e,316))},l.a=0,I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$20$Type",1781),D(1780,1,kV,hXt),l.de=function(){fde(this.a,this.b,-1)},l.b=0,I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$21$Type",1780),D(1782,1,t0,ZQ),l.Lb=function(e){return u(e,60),!0},l.Fb=function(e){return this===e},l.Mb=function(e){return u(e,60),!0},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$22$Type",1782),D(1783,1,ir,eR),l.Cd=function(e){u(e,380).de()},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$23$Type",1783),D(1763,1,Kr,tJ),l.Mb=function(e){return Lt(u(e,60).g,10)},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$3$Type",1763),D(1765,1,ir,fXt),l.Cd=function(e){Hun(this.a,this.b,u(e,60))},l.a=0,I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$4$Type",1765),D(1764,1,kV,gXt),l.de=function(){x_(this.b,this.a,-1)},l.a=0,I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$5$Type",1764),D(1766,1,t0,eJ),l.Lb=function(e){return u(e,60),!0},l.Fb=function(e){return this===e},l.Mb=function(e){return u(e,60),!0},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$6$Type",1766),D(1767,1,ir,nJ),l.Cd=function(e){u(e,380).de()},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$7$Type",1767),D(1768,1,Kr,rJ),l.Mb=function(e){return Lt(u(e,60).g,154)},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$8$Type",1768),D(1770,1,ir,bXt),l.Cd=function(e){ogn(this.a,this.b,u(e,60))},I(Gs,"EdgeAwareScanlineConstraintCalculation/lambda$9$Type",1770),D(1586,1,zi,PJt),l.Kf=function(e,n){CTn(this,u(e,36),n)};var M4e;I(Gs,"HorizontalGraphCompactor",1586),D(1587,1,{},WVt),l.ff=function(e,n){var r,s,o;return e4t(e,n)||(r=J4(e),s=J4(n),r&&r.k==(Un(),Ms)||s&&s.k==(Un(),Ms))?0:(o=u(X(this.a.a,(oe(),G5)),312),Lsn(o,r?r.k:(Un(),fa),s?s.k:(Un(),fa)))},l.gf=function(e,n){var r,s,o;return e4t(e,n)?1:(r=J4(e),s=J4(n),o=u(X(this.a.a,(oe(),G5)),312),Gmt(o,r?r.k:(Un(),fa),s?s.k:(Un(),fa)))},I(Gs,"HorizontalGraphCompactor/1",1587),D(1588,1,{},nR),l.ef=function(e,n){return ZC(),e.a.i==0},I(Gs,"HorizontalGraphCompactor/lambda$0$Type",1588),D(1589,1,{},YVt),l.ef=function(e,n){return dhn(this.a,e,n)},I(Gs,"HorizontalGraphCompactor/lambda$1$Type",1589),D(1730,1,{},Cae);var I4e,O4e;I(Gs,"LGraphToCGraphTransformer",1730),D(1738,1,Kr,rC),l.Mb=function(e){return e!=null},I(Gs,"LGraphToCGraphTransformer/0methodref$nonNull$Type",1738),D(1731,1,{},iJ),l.Kb=function(e){return Bf(),rc(X(u(u(e,60).g,10),(oe(),Li)))},I(Gs,"LGraphToCGraphTransformer/lambda$0$Type",1731),D(1732,1,{},sJ),l.Kb=function(e){return Bf(),Fue(u(u(e,60).g,154))},I(Gs,"LGraphToCGraphTransformer/lambda$1$Type",1732),D(1741,1,Kr,rR),l.Mb=function(e){return Bf(),Lt(u(e,60).g,10)},I(Gs,"LGraphToCGraphTransformer/lambda$10$Type",1741),D(1742,1,ir,aJ),l.Cd=function(e){mhn(u(e,60))},I(Gs,"LGraphToCGraphTransformer/lambda$11$Type",1742),D(1743,1,Kr,oJ),l.Mb=function(e){return Bf(),Lt(u(e,60).g,154)},I(Gs,"LGraphToCGraphTransformer/lambda$12$Type",1743),D(1747,1,ir,cJ),l.Cd=function(e){Ybn(u(e,60))},I(Gs,"LGraphToCGraphTransformer/lambda$13$Type",1747),D(1744,1,ir,XVt),l.Cd=function(e){kin(this.a,u(e,8))},l.a=0,I(Gs,"LGraphToCGraphTransformer/lambda$14$Type",1744),D(1745,1,ir,QVt),l.Cd=function(e){Tin(this.a,u(e,116))},l.a=0,I(Gs,"LGraphToCGraphTransformer/lambda$15$Type",1745),D(1746,1,ir,JVt),l.Cd=function(e){Ein(this.a,u(e,8))},l.a=0,I(Gs,"LGraphToCGraphTransformer/lambda$16$Type",1746),D(1748,1,{},uJ),l.Kb=function(e){return Bf(),new ln(null,new Lm(new rr(sr(_s(u(e,10)).a.Kc(),new z))))},I(Gs,"LGraphToCGraphTransformer/lambda$17$Type",1748),D(1749,1,Kr,lJ),l.Mb=function(e){return Bf(),go(u(e,18))},I(Gs,"LGraphToCGraphTransformer/lambda$18$Type",1749),D(1750,1,ir,ZVt),l.Cd=function(e){j0n(this.a,u(e,18))},I(Gs,"LGraphToCGraphTransformer/lambda$19$Type",1750),D(1734,1,ir,tUt),l.Cd=function(e){f1n(this.a,u(e,154))},I(Gs,"LGraphToCGraphTransformer/lambda$2$Type",1734),D(1751,1,{},hJ),l.Kb=function(e){return Bf(),new ln(null,new gn(u(e,30).a,16))},I(Gs,"LGraphToCGraphTransformer/lambda$20$Type",1751),D(1752,1,{},iR),l.Kb=function(e){return Bf(),new ln(null,new Lm(new rr(sr(_s(u(e,10)).a.Kc(),new z))))},I(Gs,"LGraphToCGraphTransformer/lambda$21$Type",1752),D(1753,1,{},fJ),l.Kb=function(e){return Bf(),u(X(u(e,18),(oe(),Lw)),15)},I(Gs,"LGraphToCGraphTransformer/lambda$22$Type",1753),D(1754,1,Kr,sR),l.Mb=function(e){return Dsn(u(e,15))},I(Gs,"LGraphToCGraphTransformer/lambda$23$Type",1754),D(1755,1,ir,eUt),l.Cd=function(e){a5n(this.a,u(e,15))},I(Gs,"LGraphToCGraphTransformer/lambda$24$Type",1755),D(1733,1,ir,wXt),l.Cd=function(e){udn(this.a,this.b,u(e,154))},I(Gs,"LGraphToCGraphTransformer/lambda$3$Type",1733),D(1735,1,{},dJ),l.Kb=function(e){return Bf(),new ln(null,new gn(u(e,30).a,16))},I(Gs,"LGraphToCGraphTransformer/lambda$4$Type",1735),D(1736,1,{},gJ),l.Kb=function(e){return Bf(),new ln(null,new Lm(new rr(sr(_s(u(e,10)).a.Kc(),new z))))},I(Gs,"LGraphToCGraphTransformer/lambda$5$Type",1736),D(1737,1,{},pJ),l.Kb=function(e){return Bf(),u(X(u(e,18),(oe(),Lw)),15)},I(Gs,"LGraphToCGraphTransformer/lambda$6$Type",1737),D(1739,1,ir,nUt),l.Cd=function(e){v5n(this.a,u(e,15))},I(Gs,"LGraphToCGraphTransformer/lambda$8$Type",1739),D(1740,1,ir,mXt),l.Cd=function(e){Win(this.a,this.b,u(e,154))},I(Gs,"LGraphToCGraphTransformer/lambda$9$Type",1740),D(1729,1,{},iC),l.cf=function(e){var n,r,s,o,h;for(this.a=e,this.d=new znt,this.c=Vt(Z9t,Ln,125,this.a.a.a.c.length,0,1),this.b=0,r=new G(this.a.a.a);r.a=tt&&(ge(h,he(A)),At=b.Math.max(At,Bt[A-1]-P),m+=J,ht+=Bt[A-1]-ht,P=Bt[A-1],J=k[A]),J=b.Math.max(J,k[A]),++A;m+=J}U=b.Math.min(1/At,1/n.b/m),U>s&&(s=U,r=h)}return r},l.pg=function(){return!1},I(i0,"MSDCutIndexHeuristic",816),D(1683,1,zi,BJ),l.Kf=function(e,n){A7n(u(e,36),n)},I(i0,"SingleEdgeGraphWrapper",1683),D(232,22,{3:1,34:1,22:1,232:1},oS);var j5,kT,ET,T3,SA,$5,TT=Lr(Hc,"CenterEdgeLabelPlacementStrategy",232,Pr,d0n,pon),U4e;D(431,22,{3:1,34:1,22:1,431:1},Kwt);var kSt,Aft,ESt=Lr(Hc,"ConstraintCalculationStrategy",431,Pr,Ohn,bon),G4e;D(322,22,{3:1,34:1,22:1,322:1,188:1,196:1},xrt),l.dg=function(){return y1e(this)},l.qg=function(){return y1e(this)};var QN,_A,TSt,CSt=Lr(Hc,"CrossingMinimizationStrategy",322,Pr,_fn,won),K4e;D(351,22,{3:1,34:1,22:1,351:1},krt);var SSt,Lft,yG,_St=Lr(Hc,"CuttingStrategy",351,Pr,Afn,mon),W4e;D(348,22,{3:1,34:1,22:1,348:1,188:1,196:1},VM),l.dg=function(){return lde(this)},l.qg=function(){return lde(this)};var ASt,Dft,CT,Mft,ST,LSt=Lr(Hc,"CycleBreakingStrategy",348,Pr,Mdn,von),Y4e;D(428,22,{3:1,34:1,22:1,428:1},Wwt);var xG,DSt,MSt=Lr(Hc,"DirectionCongruency",428,Pr,Ihn,yon),X4e;D(459,22,{3:1,34:1,22:1,459:1},Ert);var _T,Ift,z5,Q4e=Lr(Hc,"EdgeConstraint",459,Pr,Lfn,_on),J4e;D(283,22,{3:1,34:1,22:1,283:1},cS);var Oft,Nft,Pft,Fft,kG,Bft,ISt=Lr(Hc,"EdgeLabelSideSelection",283,Pr,l0n,Aon),Z4e;D(487,22,{3:1,34:1,22:1,487:1},Ywt);var EG,OSt,NSt=Lr(Hc,"EdgeStraighteningStrategy",487,Pr,Mhn,Lon),t5e;D(281,22,{3:1,34:1,22:1,281:1},uS);var Rft,PSt,FSt,TG,BSt,RSt,jSt=Lr(Hc,"FixedAlignment",281,Pr,h0n,Son),e5e;D(282,22,{3:1,34:1,22:1,282:1},lS);var $St,zSt,qSt,HSt,AA,VSt,USt=Lr(Hc,"GraphCompactionStrategy",282,Pr,f0n,xon),n5e;D(259,22,{3:1,34:1,22:1,259:1},ky);var AT,CG,LT,Uh,LA,SG,DT,q5,_G,DA,jft=Lr(Hc,"GraphProperties",259,Pr,Xgn,kon),r5e;D(298,22,{3:1,34:1,22:1,298:1},Trt);var JN,$ft,zft,qft=Lr(Hc,"GreedySwitchType",298,Pr,Dfn,Eon),i5e;D(311,22,{3:1,34:1,22:1,311:1},Crt);var qk,ZN,H5,s5e=Lr(Hc,"InLayerConstraint",311,Pr,Mfn,Ton),a5e;D(429,22,{3:1,34:1,22:1,429:1},Xwt);var Hft,GSt,KSt=Lr(Hc,"InteractiveReferencePoint",429,Pr,jhn,Con),o5e,WSt,Hk,vv,AG,YSt,XSt,LG,QSt,tP,DG,MA,Vk,$g,Vft,MG,Dc,JSt,i2,lu,Uft,Gft,eP,Aw,yv,Uk,ZSt,Gk,nP,C3,N1,gf,Kft,V5,Pi,Li,t_t,e_t,n_t,r_t,i_t,Wft,IG,ml,xv,Yft,Kk,IA,vd,U5,kv,G5,K5,MT,Lw,s_t,Xft,Qft,Wk;D(171,22,{3:1,34:1,22:1,171:1},UM);var OA,s2,NA,S3,rP,a_t=Lr(Hc,"LayerConstraint",171,Pr,Odn,Don),c5e;D(859,1,uf,Qet),l.hf=function(e){Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,nEt),""),"Direction Congruency"),"Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other."),b_t),(Fp(),ts)),MSt),en((D1(),_n))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,rEt),""),"Feedback Edges"),"Whether feedback edges should be highlighted by routing around the nodes."),(Pn(),!1)),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,BV),""),"Interactive Reference Point"),"Determines which point of a node is considered by interactive layout phases."),k_t),ts),KSt),en(_n)))),Bs(e,BV,Hut,nxe),Bs(e,BV,Z_,exe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,iEt),""),"Merge Edges"),"Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,sEt),""),"Merge Hierarchy-Crossing Edges"),"If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port."),!0),oa),ys),en(_n)))),Qe(e,new He(krn(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,aEt),""),"Allow Non-Flow Ports To Switch Sides"),"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed."),!1),oa),ys),en(Bw)),lt(ut(Pe,1),ue,2,6,["org.eclipse.elk.layered.northOrSouthPort"])))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,oEt),""),"Port Sorting Strategy"),"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes."),D_t),ts),jAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,cEt),""),"Thoroughness"),"How much effort should be spent to produce a nice layout."),he(7)),ac),Ra),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,uEt),""),"Add Unnecessary Bendpoints"),"Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,lEt),""),"Generate Position and Layer IDs"),"If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Hut),"cycleBreaking"),"Cycle Breaking Strategy"),"Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right)."),p_t),ts),LSt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,kN),dlt),"Node Layering Strategy"),"Strategy for node layering."),C_t),ts),_At),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,hEt),dlt),"Layer Constraint"),"Determines a constraint on the placement of the node regarding the layering."),E_t),ts),a_t),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,fEt),dlt),"Layer Choice Constraint"),"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),null),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,dEt),dlt),"Layer ID"),"Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),he(-1)),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Vut),I2e),"Upper Bound On Width [MinWidth Layerer]"),"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected."),he(4)),ac),Ra),en(_n)))),Bs(e,Vut,kN,uxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Uut),I2e),"Upper Layer Estimation Scaling Factor [MinWidth Layerer]"),"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected."),he(2)),ac),Ra),en(_n)))),Bs(e,Uut,kN,hxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Gut),O2e),"Node Promotion Strategy"),"Reduces number of dummy nodes after layering phase (if possible)."),T_t),ts),FAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Kut),O2e),"Max Node Promotion Iterations"),"Limits the number of iterations for node promotion."),he(0)),ac),Ra),en(_n)))),Bs(e,Kut,Gut,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Wut),"layering.coffmanGraham"),"Layer Bound"),"The maximum number of nodes allowed per layer."),he(xi)),ac),Ra),en(_n)))),Bs(e,Wut,kN,ixe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Z_),iT),"Crossing Minimization Strategy"),"Strategy for crossing minimization."),g_t),ts),CSt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,gEt),iT),"Force Node Model Order"),"The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Yut),iT),"Hierarchical Sweepiness"),"How likely it is to use cross-hierarchy (1) vs bottom-up (-1)."),.1),Wa),zs),en(_n)))),Bs(e,Yut,XV,A5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Xut),iT),"Semi-Interactive Crossing Minimization"),"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints."),!1),oa),ys),en(_n)))),Bs(e,Xut,Z_,N5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,pEt),iT),"In Layer Predecessor of"),"Allows to set a constraint which specifies of which node the current node is the predecessor. If set to 's' then the node is the predecessor of 's' and is in the same layer"),null),ix),Pe),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,bEt),iT),"In Layer Successor of"),"Allows to set a constraint which specifies of which node the current node is the successor. If set to 's' then the node is the successor of 's' and is in the same layer"),null),ix),Pe),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,wEt),iT),"Position Choice Constraint"),"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),null),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,mEt),iT),"Position ID"),"Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),he(-1)),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,vEt),N2e),"Greedy Switch Activation Threshold"),"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation."),he(40)),ac),Ra),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Qut),N2e),"Greedy Switch Crossing Minimization"),"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used."),d_t),ts),qft),en(_n)))),Bs(e,Qut,Z_,S5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,RV),"crossingMinimization.greedySwitchHierarchical"),"Greedy Switch Crossing Minimization (hierarchical)"),"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges."),f_t),ts),qft),en(_n)))),Bs(e,RV,Z_,E5e),Bs(e,RV,XV,T5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,A5),P2e),"Node Placement Strategy"),"Strategy for node placement."),L_t),ts),MAt),en(_n)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,jV),P2e),"Favor Straight Edges Over Balancing"),"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false."),oa),ys),en(_n)))),Bs(e,jV,A5,kxe),Bs(e,jV,A5,Exe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Jut),F2e),"BK Edge Straightening"),"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments."),S_t),ts),NSt),en(_n)))),Bs(e,Jut,A5,mxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Zut),F2e),"BK Fixed Alignment"),"Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four."),__t),ts),jSt),en(_n)))),Bs(e,Zut,A5,yxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,tlt),"nodePlacement.linearSegments"),"Linear Segments Deflection Dampening"),"Dampens the movement of nodes to keep the diagram from getting too large."),.3),Wa),zs),en(_n)))),Bs(e,tlt,A5,Cxe),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,elt),"nodePlacement.networkSimplex"),"Node Flexibility"),"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent."),ts),v1t),en(Qs)))),Bs(e,elt,A5,Lxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,nlt),"nodePlacement.networkSimplex.nodeFlexibility"),"Node Flexibility Default"),"Default value of the 'nodeFlexibility' option for the children of a hierarchical node."),A_t),ts),v1t),en(_n)))),Bs(e,nlt,A5,Axe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,yEt),B2e),"Self-Loop Distribution"),"Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE."),v_t),ts),qAt),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,xEt),B2e),"Self-Loop Ordering"),"Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE."),y_t),ts),HAt),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,$V),"edgeRouting.splines"),"Spline Routing Mode"),"Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes."),x_t),ts),UAt),en(_n)))),Bs(e,$V,EN,U5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,zV),"edgeRouting.splines.sloppy"),"Sloppy Spline Layer Spacing Factor"),"Spacing factor for routing area between layers when using sloppy spline routing."),.2),Wa),zs),en(_n)))),Bs(e,zV,EN,K5e),Bs(e,zV,$V,W5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,rlt),"edgeRouting.polyline"),"Sloped Edge Zone Width"),"Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer."),2),Wa),zs),en(_n)))),Bs(e,rlt,EN,z5e),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,kEt),bd),"Spacing Base Value"),"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node."),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,EEt),bd),"Edge Node Between Layers Spacing"),"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used."),10),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,TEt),bd),"Edge Edge Between Layer Spacing"),"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer."),10),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,CEt),bd),"Node Node Between Layers Spacing"),"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself."),20),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,SEt),FEt),"Direction Priority"),"Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase."),he(0)),ac),Ra),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,_Et),FEt),"Shortness Priority"),"Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase."),he(0)),ac),Ra),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,AEt),FEt),"Straightness Priority"),"Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement."),he(0)),ac),Ra),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,ilt),BEt),Zbe),"Tries to further compact components (disconnected sub-graphs)."),!1),oa),ys),en(_n)))),Bs(e,ilt,W_,!0),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,LEt),R2e),"Post Compaction Strategy"),j2e),c_t),ts),USt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,DEt),R2e),"Post Compaction Constraint Calculation"),j2e),o_t),ts),ESt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,qV),REt),"High Degree Node Treatment"),"Makes room around high degree nodes to place leafs and trees."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,slt),REt),"High Degree Node Threshold"),"Whether a node is considered to have a high degree."),he(16)),ac),Ra),en(_n)))),Bs(e,slt,qV,!0),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,alt),REt),"High Degree Node Maximum Tree Height"),"Maximum height of a subtree connected to a high degree node to be moved to separate layers."),he(5)),ac),Ra),en(_n)))),Bs(e,alt,qV,!0),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Bg),jEt),"Graph Wrapping Strategy"),"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'."),O_t),ts),YAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,HV),jEt),"Additional Wrapped Edges Spacing"),"To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing."),10),Wa),zs),en(_n)))),Bs(e,HV,Bg,qxe),Bs(e,HV,Bg,Hxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,VV),jEt),"Correction Factor for Wrapping"),"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option."),1),Wa),zs),en(_n)))),Bs(e,VV,Bg,Uxe),Bs(e,VV,Bg,Gxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,tA),$2e),"Cutting Strategy"),"The strategy by which the layer indexes are determined at which the layering crumbles into chunks."),I_t),ts),_St),en(_n)))),Bs(e,tA,Bg,Jxe),Bs(e,tA,Bg,Zxe),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,olt),$2e),"Manually Specified Cuts"),"Allows the user to specify her own cuts for a certain graph."),xd),Vh),en(_n)))),Bs(e,olt,tA,Wxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,clt),"wrapping.cutting.msd"),"MSD Freedom"),"The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts."),M_t),ac),Ra),en(_n)))),Bs(e,clt,tA,Xxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,UV),z2e),"Validification Strategy"),"When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed."),N_t),ts),WAt),en(_n)))),Bs(e,UV,Bg,h6e),Bs(e,UV,Bg,f6e),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,GV),z2e),"Valid Indices for Wrapping"),null),xd),Vh),en(_n)))),Bs(e,GV,Bg,c6e),Bs(e,GV,Bg,u6e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,KV),$Et),"Improve Cuts"),"For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought."),!0),oa),ys),en(_n)))),Bs(e,KV,Bg,r6e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,WV),$Et),"Distance Penalty When Improving Cuts"),null),2),Wa),zs),en(_n)))),Bs(e,WV,Bg,e6e),Bs(e,WV,KV,!0),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,ult),$Et),"Improve Wrapped Edges"),"The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges."),!0),oa),ys),en(_n)))),Bs(e,ult,Bg,s6e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,MEt),glt),"Edge Label Side Selection"),"Method to decide on edge label sides."),m_t),ts),ISt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,IEt),glt),"Edge Center Label Placement Strategy"),"Determines in which layer center labels of long edges should be placed."),w_t),ts),TT),Hi(_n,lt(ut(G0,1),te,170,0,[Wp]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,YV),eA),"Consider Model Order"),"Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting."),h_t),ts),RAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,OEt),eA),"Consider Port Order"),"If disabled the port order of output ports is derived from the edge order and input ports are ordered by their incoming connections. If enabled all ports are ordered by the port model order."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,NEt),eA),"No Model Order"),"Set on a node to not set a model order for this node even though it is a real node."),!1),oa),ys),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,llt),eA),"Consider Model Order for Components"),"If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected."),u_t),ts),LCt),en(_n)))),Bs(e,llt,W_,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,PEt),eA),"Long Edge Ordering Strategy"),"Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout."),l_t),ts),LAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,hlt),eA),"Crossing Counter Node Order Influence"),"Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0)."),0),Wa),zs),en(_n)))),Bs(e,hlt,YV,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,flt),eA),"Crossing Counter Port Order Influence"),"Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0)."),0),Wa),zs),en(_n)))),Bs(e,flt,YV,null),ibe((new Jet,e))};var u5e,l5e,h5e,o_t,f5e,c_t,d5e,u_t,g5e,p5e,b5e,l_t,w5e,m5e,v5e,h_t,y5e,x5e,k5e,f_t,E5e,T5e,C5e,d_t,S5e,_5e,A5e,L5e,D5e,M5e,I5e,O5e,N5e,P5e,g_t,F5e,p_t,B5e,b_t,R5e,w_t,j5e,m_t,$5e,z5e,q5e,v_t,H5e,y_t,V5e,x_t,U5e,G5e,K5e,W5e,Y5e,X5e,Q5e,J5e,Z5e,txe,k_t,exe,nxe,rxe,ixe,sxe,axe,E_t,oxe,cxe,uxe,lxe,hxe,fxe,dxe,T_t,gxe,C_t,pxe,bxe,wxe,S_t,mxe,vxe,__t,yxe,xxe,kxe,Exe,Txe,Cxe,Sxe,_xe,A_t,Axe,Lxe,Dxe,L_t,Mxe,D_t,Ixe,Oxe,Nxe,Pxe,Fxe,Bxe,Rxe,jxe,$xe,zxe,qxe,Hxe,Vxe,Uxe,Gxe,Kxe,Wxe,Yxe,M_t,Xxe,Qxe,I_t,Jxe,Zxe,t6e,e6e,n6e,r6e,i6e,s6e,a6e,O_t,o6e,c6e,u6e,l6e,N_t,h6e,f6e;I(Hc,"LayeredMetaDataProvider",859),D(998,1,uf,Jet),l.hf=function(e){ibe(e)};var u0,Jft,OG,PA,NG,P_t,PG,_3,FG,F_t,B_t,BG,Zft,U0,t1t,Ev,R_t,iP,e1t,j_t,d6e,g6e,p6e,RG,n1t,FA,Dw,b6e,ph,$_t,z_t,jG,r1t,l0,$G,zg,q_t,H_t,V_t,i1t,s1t,U_t,Hp,a1t,G_t,A3,K_t,W_t,Y_t,zG,L3,Mw,X_t,Q_t,Vo,J_t,w6e,Iu,qG,Z_t,tAt,eAt,a2,Iw,HG,nAt,rAt,VG,Tv,iAt,o1t,BA,sAt,Cv,RA,UG,Ow,c1t,IT,GG,Nw,aAt,oAt,cAt,OT,uAt,m6e,v6e,y6e,x6e,Sv,D3,bs,Vp,k6e,M3,lAt,NT,hAt,I3,E6e,PT,fAt,Yk,T6e,C6e,sP,u1t,dAt,aP,Yf,W5,Y5,_v,Pw,KG,O3,l1t,FT,BT,Av,X5,h1t,oP,jA,$A,S6e,_6e,A6e,gAt,L6e,f1t,pAt,bAt,wAt,mAt,d1t,vAt,yAt,xAt,kAt,g1t,WG;I(Hc,"LayeredOptions",998),D(999,1,{},RJ),l.sf=function(){var e;return e=new EKt,e},l.tf=function(e){},I(Hc,"LayeredOptions/LayeredFactory",999),D(1391,1,{}),l.a=0;var D6e;I(_c,"ElkSpacings/AbstractSpacingsBuilder",1391),D(792,1391,{},V5t);var YG,M6e;I(Hc,"LayeredSpacings/LayeredSpacingsBuilder",792),D(265,22,{3:1,34:1,22:1,265:1,188:1,196:1},F4),l.dg=function(){return v0e(this)},l.qg=function(){return v0e(this)};var RT,p1t,jT,EAt,TAt,CAt,XG,b1t,SAt,_At=Lr(Hc,"LayeringStrategy",265,Pr,Sgn,Mon),I6e;D(390,22,{3:1,34:1,22:1,390:1},Srt);var w1t,AAt,QG,LAt=Lr(Hc,"LongEdgeOrderingStrategy",390,Pr,Ifn,Ion),O6e;D(203,22,{3:1,34:1,22:1,203:1},$$);var Q5,J5,JG,m1t,v1t=Lr(Hc,"NodeFlexibility",203,Pr,z1n,Oon),N6e;D(323,22,{3:1,34:1,22:1,323:1,188:1,196:1},GM),l.dg=function(){return ude(this)},l.qg=function(){return ude(this)};var zA,y1t,x1t,qA,DAt,MAt=Lr(Hc,"NodePlacementStrategy",323,Pr,Idn,Non),P6e;D(243,22,{3:1,34:1,22:1,243:1},Ey);var IAt,Lv,N3,cP,OAt,NAt,uP,PAt,ZG,tK,FAt=Lr(Hc,"NodePromotionStrategy",243,Pr,Qgn,Pon),F6e;D(284,22,{3:1,34:1,22:1,284:1},z$);var BAt,Up,k1t,E1t,RAt=Lr(Hc,"OrderingStrategy",284,Pr,q1n,Fon),B6e;D(430,22,{3:1,34:1,22:1,430:1},Qwt);var T1t,C1t,jAt=Lr(Hc,"PortSortingStrategy",430,Pr,Nhn,Bon),R6e;D(462,22,{3:1,34:1,22:1,462:1},_rt);var vl,ku,HA,j6e=Lr(Hc,"PortType",462,Pr,Ofn,Ron),$6e;D(387,22,{3:1,34:1,22:1,387:1},Art);var $At,S1t,zAt,qAt=Lr(Hc,"SelfLoopDistributionStrategy",387,Pr,Nfn,jon),z6e;D(349,22,{3:1,34:1,22:1,349:1},Lrt);var _1t,lP,A1t,HAt=Lr(Hc,"SelfLoopOrderingStrategy",349,Pr,Pfn,$on),q6e;D(312,1,{312:1},epe),I(Hc,"Spacings",312),D(350,22,{3:1,34:1,22:1,350:1},Drt);var L1t,VAt,VA,UAt=Lr(Hc,"SplineRoutingMode",350,Pr,Ffn,zon),H6e;D(352,22,{3:1,34:1,22:1,352:1},Mrt);var D1t,GAt,KAt,WAt=Lr(Hc,"ValidifyStrategy",352,Pr,Bfn,qon),V6e;D(388,22,{3:1,34:1,22:1,388:1},Irt);var P3,M1t,$T,YAt=Lr(Hc,"WrappingStrategy",388,Pr,Rfn,Hon),U6e;D(1398,1,_o,Ket),l.rg=function(e){return u(e,36),G6e},l.Kf=function(e,n){kTn(this,u(e,36),n)};var G6e;I(tU,"DepthFirstCycleBreaker",1398),D(793,1,_o,lyt),l.rg=function(e){return u(e,36),K6e},l.Kf=function(e,n){CSn(this,u(e,36),n)},l.sg=function(e){return u(Oe(e,MH(this.d,e.c.length)),10)};var K6e;I(tU,"GreedyCycleBreaker",793),D(1401,793,_o,vQt),l.sg=function(e){var n,r,s,o;for(o=null,n=xi,s=new G(e);s.a1&&(Ie(Me(X(Pa((vn(0,e.c.length),u(e.c[0],10))),(De(),Ev))))?kde(e,this.d,u(this,669)):(mn(),Ds(e,this.d)),kce(this.e,e))},l.lg=function(e,n,r,s){var o,h,d,m,k,T,A;for(n!=jte(r,e.length)&&(h=e[n-(r?1:-1)],j3t(this.f,h,r?(To(),ku):(To(),vl))),o=e[n][0],A=!s||o.k==(Un(),Ms),T=id(e[n]),this.vg(T,A,!1,r),d=0,k=new G(T);k.a"),e0?fst(this.a,e[n-1],e[n]):!r&&n1&&(Ie(Me(X(Pa((vn(0,e.c.length),u(e.c[0],10))),(De(),Ev))))?kde(e,this.d,this):(mn(),Ds(e,this.d)),Ie(Me(X(Pa((vn(0,e.c.length),u(e.c[0],10))),Ev)))||kce(this.e,e))},I(al,"ModelOrderBarycenterHeuristic",669),D(1866,1,Xr,kUt),l.Ne=function(e,n){return x4n(this.a,u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(al,"ModelOrderBarycenterHeuristic/lambda$0$Type",1866),D(1423,1,_o,tnt),l.rg=function(e){var n;return u(e,36),n=rz(uke),ri(n,(Ua(),Qc),(Za(),uG)),n},l.Kf=function(e,n){ihn((u(e,36),n))};var uke;I(al,"NoCrossingMinimizer",1423),D(809,413,x7t,ywt),l.tg=function(e,n,r){var s,o,h,d,m,k,T,A,P,$,U;switch(P=this.g,r.g){case 1:{for(o=0,h=0,A=new G(e.j);A.a1&&(o.j==(ve(),Jn)?this.b[e]=!0:o.j==Gn&&e>0&&(this.b[e-1]=!0))},l.f=0,I(z0,"AllCrossingsCounter",1861),D(595,1,{},Yq),l.b=0,l.d=0,I(z0,"BinaryIndexedTree",595),D(532,1,{},dI);var JAt,nK;I(z0,"CrossingsCounter",532),D(1950,1,Xr,EUt),l.Ne=function(e,n){return Dun(this.a,u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(z0,"CrossingsCounter/lambda$0$Type",1950),D(1951,1,Xr,TUt),l.Ne=function(e,n){return Mun(this.a,u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(z0,"CrossingsCounter/lambda$1$Type",1951),D(1952,1,Xr,CUt),l.Ne=function(e,n){return Iun(this.a,u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(z0,"CrossingsCounter/lambda$2$Type",1952),D(1953,1,Xr,SUt),l.Ne=function(e,n){return Oun(this.a,u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(z0,"CrossingsCounter/lambda$3$Type",1953),D(1954,1,ir,_Ut),l.Cd=function(e){O0n(this.a,u(e,12))},I(z0,"CrossingsCounter/lambda$4$Type",1954),D(1955,1,Kr,AUt),l.Mb=function(e){return iin(this.a,u(e,12))},I(z0,"CrossingsCounter/lambda$5$Type",1955),D(1956,1,ir,LUt),l.Cd=function(e){lQt(this,e)},I(z0,"CrossingsCounter/lambda$6$Type",1956),D(1957,1,ir,xXt),l.Cd=function(e){var n;LE(),Ob(this.b,(n=this.a,u(e,12),n))},I(z0,"CrossingsCounter/lambda$7$Type",1957),D(839,1,t0,yR),l.Lb=function(e){return LE(),qi(u(e,12),(oe(),ml))},l.Fb=function(e){return this===e},l.Mb=function(e){return LE(),qi(u(e,12),(oe(),ml))},I(z0,"CrossingsCounter/lambda$8$Type",839),D(1949,1,{},DUt),I(z0,"HyperedgeCrossingsCounter",1949),D(477,1,{34:1,477:1},TZt),l.Fd=function(e){return Iwn(this,u(e,477))},l.b=0,l.c=0,l.e=0,l.f=0;var f_n=I(z0,"HyperedgeCrossingsCounter/Hyperedge",477);D(374,1,{34:1,374:1},Yz),l.Fd=function(e){return Gxn(this,u(e,374))},l.b=0,l.c=0;var lke=I(z0,"HyperedgeCrossingsCounter/HyperedgeCorner",374);D(531,22,{3:1,34:1,22:1,531:1},Jwt);var GA,KA,hke=Lr(z0,"HyperedgeCrossingsCounter/HyperedgeCorner/Type",531,Pr,Phn,Uon),fke;D(1425,1,_o,ent),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?dke:null},l.Kf=function(e,n){ryn(this,u(e,36),n)};var dke;I(Ao,"InteractiveNodePlacer",1425),D(1426,1,_o,nnt),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?gke:null},l.Kf=function(e,n){zmn(this,u(e,36),n)};var gke,rK,iK;I(Ao,"LinearSegmentsNodePlacer",1426),D(261,1,{34:1,261:1},W2t),l.Fd=function(e){return brn(this,u(e,261))},l.Fb=function(e){var n;return Lt(e,261)?(n=u(e,261),this.b==n.b):!1},l.Hb=function(){return this.b},l.Ib=function(){return"ls"+Hb(this.e)},l.a=0,l.b=0,l.c=-1,l.d=-1,l.g=0;var pke=I(Ao,"LinearSegmentsNodePlacer/LinearSegment",261);D(1428,1,_o,Yte),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?bke:null},l.Kf=function(e,n){bSn(this,u(e,36),n)},l.b=0,l.g=0;var bke;I(Ao,"NetworkSimplexPlacer",1428),D(1447,1,Xr,GJ),l.Ne=function(e,n){return jc(u(e,17).a,u(n,17).a)},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Ao,"NetworkSimplexPlacer/0methodref$compare$Type",1447),D(1449,1,Xr,KJ),l.Ne=function(e,n){return jc(u(e,17).a,u(n,17).a)},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Ao,"NetworkSimplexPlacer/1methodref$compare$Type",1449),D(655,1,{655:1},kXt);var d_n=I(Ao,"NetworkSimplexPlacer/EdgeRep",655);D(412,1,{412:1},Vyt),l.b=!1;var g_n=I(Ao,"NetworkSimplexPlacer/NodeRep",412);D(515,13,{3:1,4:1,20:1,31:1,56:1,13:1,16:1,15:1,59:1,515:1},IKt),I(Ao,"NetworkSimplexPlacer/Path",515),D(1429,1,{},WJ),l.Kb=function(e){return u(e,18).d.i.k},I(Ao,"NetworkSimplexPlacer/Path/lambda$0$Type",1429),D(1430,1,Kr,YJ),l.Mb=function(e){return u(e,273)==(Un(),fa)},I(Ao,"NetworkSimplexPlacer/Path/lambda$1$Type",1430),D(1431,1,{},XJ),l.Kb=function(e){return u(e,18).d.i},I(Ao,"NetworkSimplexPlacer/Path/lambda$2$Type",1431),D(1432,1,Kr,MUt),l.Mb=function(e){return cZt(hle(u(e,10)))},I(Ao,"NetworkSimplexPlacer/Path/lambda$3$Type",1432),D(1433,1,Kr,QJ),l.Mb=function(e){return gun(u(e,12))},I(Ao,"NetworkSimplexPlacer/lambda$0$Type",1433),D(1434,1,ir,EXt),l.Cd=function(e){Yin(this.a,this.b,u(e,12))},I(Ao,"NetworkSimplexPlacer/lambda$1$Type",1434),D(1443,1,ir,IUt),l.Cd=function(e){x5n(this.a,u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$10$Type",1443),D(1444,1,{},JJ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$11$Type",1444),D(1445,1,ir,OUt),l.Cd=function(e){p8n(this.a,u(e,10))},I(Ao,"NetworkSimplexPlacer/lambda$12$Type",1445),D(1446,1,{},ZJ),l.Kb=function(e){return rh(),he(u(e,125).e)},I(Ao,"NetworkSimplexPlacer/lambda$13$Type",1446),D(1448,1,{},tZ),l.Kb=function(e){return rh(),he(u(e,125).e)},I(Ao,"NetworkSimplexPlacer/lambda$15$Type",1448),D(1450,1,Kr,eZ),l.Mb=function(e){return rh(),u(e,412).c.k==(Un(),xs)},I(Ao,"NetworkSimplexPlacer/lambda$17$Type",1450),D(1451,1,Kr,nZ),l.Mb=function(e){return rh(),u(e,412).c.j.c.length>1},I(Ao,"NetworkSimplexPlacer/lambda$18$Type",1451),D(1452,1,ir,rne),l.Cd=function(e){twn(this.c,this.b,this.d,this.a,u(e,412))},l.c=0,l.d=0,I(Ao,"NetworkSimplexPlacer/lambda$19$Type",1452),D(1435,1,{},rZ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$2$Type",1435),D(1453,1,ir,NUt),l.Cd=function(e){Qin(this.a,u(e,12))},l.a=0,I(Ao,"NetworkSimplexPlacer/lambda$20$Type",1453),D(1454,1,{},iZ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$21$Type",1454),D(1455,1,ir,PUt),l.Cd=function(e){usn(this.a,u(e,10))},I(Ao,"NetworkSimplexPlacer/lambda$22$Type",1455),D(1456,1,Kr,sZ),l.Mb=function(e){return cZt(e)},I(Ao,"NetworkSimplexPlacer/lambda$23$Type",1456),D(1457,1,{},aZ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$24$Type",1457),D(1458,1,Kr,FUt),l.Mb=function(e){return min(this.a,u(e,10))},I(Ao,"NetworkSimplexPlacer/lambda$25$Type",1458),D(1459,1,ir,TXt),l.Cd=function(e){C4n(this.a,this.b,u(e,10))},I(Ao,"NetworkSimplexPlacer/lambda$26$Type",1459),D(1460,1,Kr,n6),l.Mb=function(e){return rh(),!go(u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$27$Type",1460),D(1461,1,Kr,xR),l.Mb=function(e){return rh(),!go(u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$28$Type",1461),D(1462,1,{},BUt),l.Ve=function(e,n){return Xin(this.a,u(e,30),u(n,30))},I(Ao,"NetworkSimplexPlacer/lambda$29$Type",1462),D(1436,1,{},oZ),l.Kb=function(e){return rh(),new ln(null,new Lm(new rr(sr(_s(u(e,10)).a.Kc(),new z))))},I(Ao,"NetworkSimplexPlacer/lambda$3$Type",1436),D(1437,1,Kr,cZ),l.Mb=function(e){return rh(),S1n(u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$4$Type",1437),D(1438,1,ir,RUt),l.Cd=function(e){T7n(this.a,u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$5$Type",1438),D(1439,1,{},uZ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$6$Type",1439),D(1440,1,Kr,kR),l.Mb=function(e){return rh(),u(e,10).k==(Un(),xs)},I(Ao,"NetworkSimplexPlacer/lambda$7$Type",1440),D(1441,1,{},lZ),l.Kb=function(e){return rh(),new ln(null,new Lm(new rr(sr(Dg(u(e,10)).a.Kc(),new z))))},I(Ao,"NetworkSimplexPlacer/lambda$8$Type",1441),D(1442,1,Kr,cC),l.Mb=function(e){return rh(),dun(u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$9$Type",1442),D(1424,1,_o,rnt),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?wke:null},l.Kf=function(e,n){iTn(u(e,36),n)};var wke;I(Ao,"SimpleNodePlacer",1424),D(185,1,{185:1},m5),l.Ib=function(){var e;return e="",this.c==(Gd(),Dv)?e+=Ak:this.c==Gp&&(e+=_k),this.o==(nd(),Fw)?e+=xut:this.o==yd?e+="UP":e+="BALANCED",e},I(Qb,"BKAlignedLayout",185),D(523,22,{3:1,34:1,22:1,523:1},Zwt);var Gp,Dv,mke=Lr(Qb,"BKAlignedLayout/HDirection",523,Pr,Fhn,Gon),vke;D(522,22,{3:1,34:1,22:1,522:1},tmt);var Fw,yd,yke=Lr(Qb,"BKAlignedLayout/VDirection",522,Pr,Bhn,Kon),xke;D(1699,1,{},CXt),I(Qb,"BKAligner",1699),D(1702,1,{},Fhe),I(Qb,"BKCompactor",1702),D(663,1,{663:1},hZ),l.a=0,I(Qb,"BKCompactor/ClassEdge",663),D(466,1,{466:1},LKt),l.a=null,l.b=0,I(Qb,"BKCompactor/ClassNode",466),D(1427,1,_o,LXt),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?kke:null},l.Kf=function(e,n){NSn(this,u(e,36),n)},l.d=!1;var kke;I(Qb,"BKNodePlacer",1427),D(1700,1,{},fZ),l.d=0,I(Qb,"NeighborhoodInformation",1700),D(1701,1,Xr,jUt),l.Ne=function(e,n){return cgn(this,u(e,42),u(n,42))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Qb,"NeighborhoodInformation/NeighborComparator",1701),D(823,1,{}),I(Qb,"ThresholdStrategy",823),D(1825,823,{},DKt),l.wg=function(e,n,r){return this.a.o==(nd(),yd)?Zi:Vs},l.xg=function(){},I(Qb,"ThresholdStrategy/NullThresholdStrategy",1825),D(587,1,{587:1},DXt),l.c=!1,l.d=!1,I(Qb,"ThresholdStrategy/Postprocessable",587),D(1826,823,{},MKt),l.wg=function(e,n,r){var s,o,h;return o=n==r,s=this.a.a[r.p]==n,o||s?(h=e,this.a.c==(Gd(),Dv)?(o&&(h=yct(this,n,!0)),!isNaN(h)&&!isFinite(h)&&s&&(h=yct(this,r,!1))):(o&&(h=yct(this,n,!0)),!isNaN(h)&&!isFinite(h)&&s&&(h=yct(this,r,!1))),h):e},l.xg=function(){for(var e,n,r,s,o;this.d.b!=0;)o=u(Zhn(this.d),587),s=uge(this,o),s.a&&(e=s.a,r=Ie(this.a.f[this.a.g[o.b.p].p]),!(!r&&!go(e)&&e.c.i.c==e.d.i.c)&&(n=gde(this,o),n||xin(this.e,o)));for(;this.e.a.c.length!=0;)gde(this,u(gue(this.e),587))},I(Qb,"ThresholdStrategy/SimpleThresholdStrategy",1826),D(645,1,{645:1,188:1,196:1},dZ),l.dg=function(){return Ece(this)},l.qg=function(){return Ece(this)};var I1t;I(vlt,"EdgeRouterFactory",645),D(1485,1,_o,int),l.rg=function(e){return Ukn(u(e,36))},l.Kf=function(e,n){hTn(u(e,36),n)};var Eke,Tke,Cke,Ske,_ke,ZAt,Ake,Lke;I(vlt,"OrthogonalEdgeRouter",1485),D(1478,1,_o,AXt),l.rg=function(e){return dyn(u(e,36))},l.Kf=function(e,n){NCn(this,u(e,36),n)};var Dke,Mke,Ike,Oke,fP,Nke;I(vlt,"PolylineEdgeRouter",1478),D(1479,1,t0,pZ),l.Lb=function(e){return z4t(u(e,10))},l.Fb=function(e){return this===e},l.Mb=function(e){return z4t(u(e,10))},I(vlt,"PolylineEdgeRouter/1",1479),D(1872,1,Kr,bZ),l.Mb=function(e){return u(e,132).c==(C1(),o2)},I(M1,"HyperEdgeCycleDetector/lambda$0$Type",1872),D(1873,1,{},wZ),l.Ze=function(e){return u(e,132).d},I(M1,"HyperEdgeCycleDetector/lambda$1$Type",1873),D(1874,1,Kr,mZ),l.Mb=function(e){return u(e,132).c==(C1(),o2)},I(M1,"HyperEdgeCycleDetector/lambda$2$Type",1874),D(1875,1,{},vZ),l.Ze=function(e){return u(e,132).d},I(M1,"HyperEdgeCycleDetector/lambda$3$Type",1875),D(1876,1,{},yZ),l.Ze=function(e){return u(e,132).d},I(M1,"HyperEdgeCycleDetector/lambda$4$Type",1876),D(1877,1,{},gZ),l.Ze=function(e){return u(e,132).d},I(M1,"HyperEdgeCycleDetector/lambda$5$Type",1877),D(118,1,{34:1,118:1},eO),l.Fd=function(e){return wrn(this,u(e,118))},l.Fb=function(e){var n;return Lt(e,118)?(n=u(e,118),this.g==n.g):!1},l.Hb=function(){return this.g},l.Ib=function(){var e,n,r,s;for(e=new eh("{"),s=new G(this.n);s.a"+this.b+" ("+Fsn(this.c)+")"},l.d=0,I(M1,"HyperEdgeSegmentDependency",132),D(528,22,{3:1,34:1,22:1,528:1},emt);var o2,F3,Pke=Lr(M1,"HyperEdgeSegmentDependency/DependencyType",528,Pr,Rhn,Won),Fke;D(1878,1,{},$Ut),I(M1,"HyperEdgeSegmentSplitter",1878),D(1879,1,{},IWt),l.a=0,l.b=0,I(M1,"HyperEdgeSegmentSplitter/AreaRating",1879),D(339,1,{339:1},yit),l.a=0,l.b=0,l.c=0,I(M1,"HyperEdgeSegmentSplitter/FreeArea",339),D(1880,1,Xr,r6),l.Ne=function(e,n){return Fan(u(e,118),u(n,118))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(M1,"HyperEdgeSegmentSplitter/lambda$0$Type",1880),D(1881,1,ir,ine),l.Cd=function(e){ldn(this.a,this.d,this.c,this.b,u(e,118))},l.b=0,I(M1,"HyperEdgeSegmentSplitter/lambda$1$Type",1881),D(1882,1,{},xZ),l.Kb=function(e){return new ln(null,new gn(u(e,118).e,16))},I(M1,"HyperEdgeSegmentSplitter/lambda$2$Type",1882),D(1883,1,{},kZ),l.Kb=function(e){return new ln(null,new gn(u(e,118).j,16))},I(M1,"HyperEdgeSegmentSplitter/lambda$3$Type",1883),D(1884,1,{},EZ),l.Ye=function(e){return Rt(Ht(e))},I(M1,"HyperEdgeSegmentSplitter/lambda$4$Type",1884),D(664,1,{},Uit),l.a=0,l.b=0,l.c=0,I(M1,"OrthogonalRoutingGenerator",664),D(1703,1,{},TZ),l.Kb=function(e){return new ln(null,new gn(u(e,118).e,16))},I(M1,"OrthogonalRoutingGenerator/lambda$0$Type",1703),D(1704,1,{},CZ),l.Kb=function(e){return new ln(null,new gn(u(e,118).j,16))},I(M1,"OrthogonalRoutingGenerator/lambda$1$Type",1704),D(670,1,{}),I(ylt,"BaseRoutingDirectionStrategy",670),D(1870,670,{},PKt),l.yg=function(e,n,r){var s,o,h,d,m,k,T,A,P,$,U,J,tt;if(!(e.r&&!e.q))for(A=n+e.o*r,T=new G(e.n);T.an0&&(h=A,o=e,s=new ae(P,h),Zr(d.a,s),ev(this,d,o,s,!1),$=e.r,$&&(U=Rt(Ht(jh($.e,0))),s=new ae(U,h),Zr(d.a,s),ev(this,d,o,s,!1),h=n+$.o*r,o=$,s=new ae(U,h),Zr(d.a,s),ev(this,d,o,s,!1)),s=new ae(tt,h),Zr(d.a,s),ev(this,d,o,s,!1)))},l.zg=function(e){return e.i.n.a+e.n.a+e.a.a},l.Ag=function(){return ve(),Er},l.Bg=function(){return ve(),Hn},I(ylt,"NorthToSouthRoutingStrategy",1870),D(1871,670,{},FKt),l.yg=function(e,n,r){var s,o,h,d,m,k,T,A,P,$,U,J,tt;if(!(e.r&&!e.q))for(A=n-e.o*r,T=new G(e.n);T.an0&&(h=A,o=e,s=new ae(P,h),Zr(d.a,s),ev(this,d,o,s,!1),$=e.r,$&&(U=Rt(Ht(jh($.e,0))),s=new ae(U,h),Zr(d.a,s),ev(this,d,o,s,!1),h=n-$.o*r,o=$,s=new ae(U,h),Zr(d.a,s),ev(this,d,o,s,!1)),s=new ae(tt,h),Zr(d.a,s),ev(this,d,o,s,!1)))},l.zg=function(e){return e.i.n.a+e.n.a+e.a.a},l.Ag=function(){return ve(),Hn},l.Bg=function(){return ve(),Er},I(ylt,"SouthToNorthRoutingStrategy",1871),D(1869,670,{},BKt),l.yg=function(e,n,r){var s,o,h,d,m,k,T,A,P,$,U,J,tt;if(!(e.r&&!e.q))for(A=n+e.o*r,T=new G(e.n);T.an0&&(h=A,o=e,s=new ae(h,P),Zr(d.a,s),ev(this,d,o,s,!0),$=e.r,$&&(U=Rt(Ht(jh($.e,0))),s=new ae(h,U),Zr(d.a,s),ev(this,d,o,s,!0),h=n+$.o*r,o=$,s=new ae(h,U),Zr(d.a,s),ev(this,d,o,s,!0)),s=new ae(h,tt),Zr(d.a,s),ev(this,d,o,s,!0)))},l.zg=function(e){return e.i.n.b+e.n.b+e.a.b},l.Ag=function(){return ve(),Jn},l.Bg=function(){return ve(),Gn},I(ylt,"WestToEastRoutingStrategy",1869),D(828,1,{},Rkt),l.Ib=function(){return Hb(this.a)},l.b=0,l.c=!1,l.d=!1,l.f=0,I(f3,"NubSpline",828),D(418,1,{418:1},Kde,Fne),I(f3,"NubSpline/PolarCP",418),D(1480,1,_o,Ahe),l.rg=function(e){return n3n(u(e,36))},l.Kf=function(e,n){ZCn(this,u(e,36),n)};var Bke,Rke,jke,$ke,zke;I(f3,"SplineEdgeRouter",1480),D(274,1,{274:1},vq),l.Ib=function(){return this.a+" ->("+this.c+") "+this.b},l.c=0,I(f3,"SplineEdgeRouter/Dependency",274),D(464,22,{3:1,34:1,22:1,464:1},nmt);var c2,Z5,qke=Lr(f3,"SplineEdgeRouter/SideToProcess",464,Pr,Vhn,Yon),Hke;D(1481,1,Kr,SZ),l.Mb=function(e){return D_(),!u(e,131).o},I(f3,"SplineEdgeRouter/lambda$0$Type",1481),D(1482,1,{},_Z),l.Ze=function(e){return D_(),u(e,131).v+1},I(f3,"SplineEdgeRouter/lambda$1$Type",1482),D(1483,1,ir,MXt),l.Cd=function(e){wun(this.a,this.b,u(e,42))},I(f3,"SplineEdgeRouter/lambda$2$Type",1483),D(1484,1,ir,IXt),l.Cd=function(e){mun(this.a,this.b,u(e,42))},I(f3,"SplineEdgeRouter/lambda$3$Type",1484),D(131,1,{34:1,131:1},a1e,Vkt),l.Fd=function(e){return yrn(this,u(e,131))},l.b=0,l.e=!1,l.f=0,l.g=0,l.j=!1,l.k=!1,l.n=0,l.o=!1,l.p=!1,l.q=!1,l.s=0,l.u=0,l.v=0,l.F=0,I(f3,"SplineSegment",131),D(467,1,{467:1},AZ),l.a=0,l.b=!1,l.c=!1,l.d=!1,l.e=!1,l.f=0,I(f3,"SplineSegment/EdgeInformation",467),D(1198,1,{},uC),I(jg,z8t,1198),D(1199,1,Xr,LZ),l.Ne=function(e,n){return R5n(u(e,121),u(n,121))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(jg,r2e,1199),D(1197,1,{},WWt),I(jg,"MrTree",1197),D(405,22,{3:1,34:1,22:1,405:1,188:1,196:1},q$),l.dg=function(){return A1e(this)},l.qg=function(){return A1e(this)};var sK,WA,YA,XA,tLt=Lr(jg,"TreeLayoutPhases",405,Pr,K1n,Xon),Vke;D(1112,205,mw,kZt),l.rf=function(e,n){var r,s,o,h,d,m,k,T;for(Ie(Me(ne(e,(Cc(),CLt))))||sq((r=new by((xy(),new my(e))),r)),d=n.eh(Elt),d.Ug("build tGraph",1),m=(k=new FI,Qo(k,e),Zt(k,(ji(),JA),e),T=new _r,MEn(e,k,T),XEn(e,k,T),k),d.Vg(),d=n.eh(Elt),d.Ug("Split graph",1),h=BEn(this.a,m),d.Vg(),o=new G(h);o.a"+Z2(this.c):"e_"+$i(this)},I(nA,"TEdge",65),D(121,137,{3:1,121:1,96:1,137:1},FI),l.Ib=function(){var e,n,r,s,o;for(o=null,s=Dr(this.b,0);s.b!=s.d.c;)r=u(Ar(s),39),o+=(r.c==null||r.c.length==0?"n_"+r.g:"n_"+r.c)+` +`;for(n=Dr(this.a,0);n.b!=n.d.c;)e=u(Ar(n),65),o+=(e.b&&e.c?Z2(e.b)+"->"+Z2(e.c):"e_"+$i(e))+` +`;return o};var p_n=I(nA,"TGraph",121);D(643,508,{3:1,508:1,643:1,96:1,137:1}),I(nA,"TShape",643),D(39,643,{3:1,508:1,39:1,643:1,96:1,137:1},Eat),l.Ib=function(){return Z2(this)};var aK=I(nA,"TNode",39);D(236,1,F0,gg),l.Jc=function(e){Fa(this,e)},l.Kc=function(){var e;return e=Dr(this.a.d,0),new M4(e)},I(nA,"TNode/2",236),D(329,1,wa,M4),l.Nb=function(e){Na(this,e)},l.Pb=function(){return u(Ar(this.a),65).c},l.Ob=function(){return IM(this.a)},l.Qb=function(){Qst(this.a)},I(nA,"TNode/2/1",329),D(1923,1,zi,FZ),l.Kf=function(e,n){LSn(this,u(e,121),n)},I(ou,"CompactionProcessor",1923),D(1924,1,Xr,UUt),l.Ne=function(e,n){return bpn(this.a,u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$0$Type",1924),D(1925,1,Kr,NXt),l.Mb=function(e){return khn(this.b,this.a,u(e,42))},l.a=0,l.b=0,I(ou,"CompactionProcessor/lambda$1$Type",1925),D(1934,1,Xr,i6),l.Ne=function(e,n){return dln(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$10$Type",1934),D(1935,1,Xr,ER),l.Ne=function(e,n){return _sn(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$11$Type",1935),D(1936,1,Xr,BZ),l.Ne=function(e,n){return gln(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$12$Type",1936),D(1926,1,Kr,GUt),l.Mb=function(e){return lsn(this.a,u(e,42))},l.a=0,I(ou,"CompactionProcessor/lambda$2$Type",1926),D(1927,1,Kr,KUt),l.Mb=function(e){return hsn(this.a,u(e,42))},l.a=0,I(ou,"CompactionProcessor/lambda$3$Type",1927),D(1928,1,Kr,XD),l.Mb=function(e){return u(e,39).c.indexOf(nU)==-1},I(ou,"CompactionProcessor/lambda$4$Type",1928),D(1929,1,{},WUt),l.Kb=function(e){return T1n(this.a,u(e,39))},l.a=0,I(ou,"CompactionProcessor/lambda$5$Type",1929),D(1930,1,{},YUt),l.Kb=function(e){return I0n(this.a,u(e,39))},l.a=0,I(ou,"CompactionProcessor/lambda$6$Type",1930),D(1931,1,Xr,XUt),l.Ne=function(e,n){return Hdn(this.a,u(e,240),u(n,240))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$7$Type",1931),D(1932,1,Xr,QUt),l.Ne=function(e,n){return Vdn(this.a,u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$8$Type",1932),D(1933,1,Xr,RZ),l.Ne=function(e,n){return Asn(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$9$Type",1933),D(1921,1,zi,jZ),l.Kf=function(e,n){C8n(u(e,121),n)},I(ou,"DirectionProcessor",1921),D(1913,1,zi,xZt),l.Kf=function(e,n){WEn(this,u(e,121),n)},I(ou,"FanProcessor",1913),D(1937,1,zi,$Z),l.Kf=function(e,n){d8n(u(e,121),n)},I(ou,"GraphBoundsProcessor",1937),D(1938,1,{},zZ),l.Ye=function(e){return u(e,39).e.a},I(ou,"GraphBoundsProcessor/lambda$0$Type",1938),D(1939,1,{},qZ),l.Ye=function(e){return u(e,39).e.b},I(ou,"GraphBoundsProcessor/lambda$1$Type",1939),D(1940,1,{},HZ),l.Ye=function(e){return Krn(u(e,39))},I(ou,"GraphBoundsProcessor/lambda$2$Type",1940),D(1941,1,{},VZ),l.Ye=function(e){return Grn(u(e,39))},I(ou,"GraphBoundsProcessor/lambda$3$Type",1941),D(262,22,{3:1,34:1,22:1,262:1,196:1},mm),l.dg=function(){switch(this.g){case 0:return new QKt;case 1:return new xZt;case 2:return new XKt;case 3:return new SR;case 4:return new UZ;case 8:return new TR;case 5:return new jZ;case 6:return new AR;case 7:return new FZ;case 9:return new $Z;case 10:return new KZ;default:throw at(new zn(jut+(this.f!=null?this.f:""+this.g)))}};var eLt,nLt,rLt,iLt,sLt,aLt,oLt,cLt,uLt,lLt,O1t,b_n=Lr(ou,$ut,262,Pr,pce,Qon),Uke;D(1920,1,zi,TR),l.Kf=function(e,n){SCn(u(e,121),n)},I(ou,"LevelCoordinatesProcessor",1920),D(1918,1,zi,UZ),l.Kf=function(e,n){K6n(this,u(e,121),n)},l.a=0,I(ou,"LevelHeightProcessor",1918),D(1919,1,F0,CR),l.Jc=function(e){Fa(this,e)},l.Kc=function(){return mn(),yE(),mT},I(ou,"LevelHeightProcessor/1",1919),D(1914,1,zi,XKt),l.Kf=function(e,n){o8n(this,u(e,121),n)},I(ou,"LevelProcessor",1914),D(1915,1,Kr,GZ),l.Mb=function(e){return Ie(Me(X(u(e,39),(ji(),u2))))},I(ou,"LevelProcessor/lambda$0$Type",1915),D(1916,1,zi,SR),l.Kf=function(e,n){V4n(this,u(e,121),n)},l.a=0,I(ou,"NeighborsProcessor",1916),D(1917,1,F0,_R),l.Jc=function(e){Fa(this,e)},l.Kc=function(){return mn(),yE(),mT},I(ou,"NeighborsProcessor/1",1917),D(1922,1,zi,AR),l.Kf=function(e,n){KEn(this,u(e,121),n)},l.a=0,I(ou,"NodePositionProcessor",1922),D(1912,1,zi,QKt),l.Kf=function(e,n){ATn(this,u(e,121),n)},I(ou,"RootProcessor",1912),D(1942,1,zi,KZ),l.Kf=function(e,n){Tmn(u(e,121),n)},I(ou,"Untreeifyer",1942),D(392,22,{3:1,34:1,22:1,392:1},Prt);var dP,N1t,hLt,fLt=Lr(CN,"EdgeRoutingMode",392,Pr,$fn,Jon),Gke,gP,zT,P1t,dLt,gLt,F1t,B1t,pLt,R1t,bLt,j1t,QA,$1t,oK,cK,Xf,P1,qT,JA,ZA,Kp,wLt,Kke,z1t,u2,pP,bP;D(862,1,uf,snt),l.hf=function(e){Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,T7t),""),Y2e),"Turns on Tree compaction which decreases the size of the whole tree by placing nodes of multiple levels in one large level"),(Pn(),!1)),(Fp(),oa)),ys),en((D1(),_n))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,C7t),""),"Edge End Texture Length"),"Should be set to the length of the texture at the end of an edge. This value can be used to improve the Edge Routing."),7),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,S7t),""),"Tree Level"),"The index for the tree level the node is in"),he(0)),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,_7t),""),Y2e),"When set to a positive number this option will force the algorithm to place the node to the specified position within the trees layer if weighting is set to constraint"),he(-1)),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,A7t),""),"Weighting of Nodes"),"Which weighting to use when computing a node order."),yLt),ts),ILt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,L7t),""),"Edge Routing Mode"),"Chooses an Edge Routing algorithm."),mLt),ts),fLt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,D7t),""),"Search Order"),"Which search order to use when computing a spanning tree."),vLt),ts),NLt),en(_n)))),Rpe((new p6,e))};var Wke,Yke,Xke,mLt,Qke,Jke,vLt,Zke,t8e,yLt;I(CN,"MrTreeMetaDataProvider",862),D(1006,1,uf,p6),l.hf=function(e){Rpe(e)};var e8e,xLt,kLt,Mv,ELt,TLt,q1t,n8e,r8e,i8e,s8e,a8e,o8e,c8e,CLt,SLt,_Lt,u8e,tx,uK,ALt,l8e,LLt,H1t,h8e,f8e,d8e,DLt,g8e,h0,MLt;I(CN,"MrTreeOptions",1006),D(1007,1,{},WZ),l.sf=function(){var e;return e=new kZt,e},l.tf=function(e){},I(CN,"MrTreeOptions/MrtreeFactory",1007),D(353,22,{3:1,34:1,22:1,353:1},H$);var V1t,lK,U1t,G1t,ILt=Lr(CN,"OrderWeighting",353,Pr,W1n,Zon),p8e;D(433,22,{3:1,34:1,22:1,433:1},rmt);var OLt,K1t,NLt=Lr(CN,"TreeifyingOrder",433,Pr,qhn,tcn),b8e;D(1486,1,_o,cnt),l.rg=function(e){return u(e,121),w8e},l.Kf=function(e,n){ipn(this,u(e,121),n)};var w8e;I("org.eclipse.elk.alg.mrtree.p1treeify","DFSTreeifyer",1486),D(1487,1,_o,rE),l.rg=function(e){return u(e,121),m8e},l.Kf=function(e,n){h8n(this,u(e,121),n)};var m8e;I(sT,"NodeOrderer",1487),D(1494,1,{},A2t),l.td=function(e){return Ate(e)},I(sT,"NodeOrderer/0methodref$lambda$6$Type",1494),D(1488,1,Kr,att),l.Mb=function(e){return ak(),Ie(Me(X(u(e,39),(ji(),u2))))},I(sT,"NodeOrderer/lambda$0$Type",1488),D(1489,1,Kr,ott),l.Mb=function(e){return ak(),u(X(u(e,39),(Cc(),tx)),17).a<0},I(sT,"NodeOrderer/lambda$1$Type",1489),D(1490,1,Kr,ZUt),l.Mb=function(e){return Ogn(this.a,u(e,39))},I(sT,"NodeOrderer/lambda$2$Type",1490),D(1491,1,Kr,JUt),l.Mb=function(e){return _1n(this.a,u(e,39))},I(sT,"NodeOrderer/lambda$3$Type",1491),D(1492,1,Xr,ctt),l.Ne=function(e,n){return ngn(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(sT,"NodeOrderer/lambda$4$Type",1492),D(1493,1,Kr,utt),l.Mb=function(e){return ak(),u(X(u(e,39),(ji(),B1t)),17).a!=0},I(sT,"NodeOrderer/lambda$5$Type",1493),D(1495,1,_o,ont),l.rg=function(e){return u(e,121),v8e},l.Kf=function(e,n){yEn(this,u(e,121),n)},l.b=0;var v8e;I("org.eclipse.elk.alg.mrtree.p3place","NodePlacer",1495),D(1496,1,_o,ant),l.rg=function(e){return u(e,121),y8e},l.Kf=function(e,n){eEn(u(e,121),n)};var y8e,w_n=I(Xl,"EdgeRouter",1496);D(1498,1,Xr,stt),l.Ne=function(e,n){return jc(u(e,17).a,u(n,17).a)},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/0methodref$compare$Type",1498),D(1503,1,{},YZ),l.Ye=function(e){return Rt(Ht(e))},I(Xl,"EdgeRouter/1methodref$doubleValue$Type",1503),D(1505,1,Xr,DR),l.Ne=function(e,n){return Bi(Rt(Ht(e)),Rt(Ht(n)))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/2methodref$compare$Type",1505),D(1507,1,Xr,XZ),l.Ne=function(e,n){return Bi(Rt(Ht(e)),Rt(Ht(n)))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/3methodref$compare$Type",1507),D(1509,1,{},LR),l.Ye=function(e){return Rt(Ht(e))},I(Xl,"EdgeRouter/4methodref$doubleValue$Type",1509),D(1511,1,Xr,QZ),l.Ne=function(e,n){return Bi(Rt(Ht(e)),Rt(Ht(n)))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/5methodref$compare$Type",1511),D(1513,1,Xr,QD),l.Ne=function(e,n){return Bi(Rt(Ht(e)),Rt(Ht(n)))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/6methodref$compare$Type",1513),D(1497,1,{},JZ),l.Kb=function(e){return Sg(),u(X(u(e,39),(Cc(),h0)),17)},I(Xl,"EdgeRouter/lambda$0$Type",1497),D(1508,1,{},ZZ),l.Kb=function(e){return zsn(u(e,39))},I(Xl,"EdgeRouter/lambda$11$Type",1508),D(1510,1,{},PXt),l.Kb=function(e){return pun(this.b,this.a,u(e,39))},l.a=0,l.b=0,I(Xl,"EdgeRouter/lambda$13$Type",1510),D(1512,1,{},FXt),l.Kb=function(e){return qsn(this.b,this.a,u(e,39))},l.a=0,l.b=0,I(Xl,"EdgeRouter/lambda$15$Type",1512),D(1514,1,Xr,ttt),l.Ne=function(e,n){return tmn(u(e,65),u(n,65))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/lambda$17$Type",1514),D(1515,1,Xr,ett),l.Ne=function(e,n){return emn(u(e,65),u(n,65))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/lambda$18$Type",1515),D(1516,1,Xr,ntt),l.Ne=function(e,n){return rmn(u(e,65),u(n,65))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/lambda$19$Type",1516),D(1499,1,Kr,tGt),l.Mb=function(e){return ifn(this.a,u(e,39))},l.a=0,I(Xl,"EdgeRouter/lambda$2$Type",1499),D(1517,1,Xr,MR),l.Ne=function(e,n){return nmn(u(e,65),u(n,65))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/lambda$20$Type",1517),D(1500,1,Xr,rtt),l.Ne=function(e,n){return eun(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/lambda$3$Type",1500),D(1501,1,Xr,itt),l.Ne=function(e,n){return nun(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"EdgeRouter/lambda$4$Type",1501),D(1502,1,{},ltt),l.Kb=function(e){return Hsn(u(e,39))},I(Xl,"EdgeRouter/lambda$5$Type",1502),D(1504,1,{},BXt),l.Kb=function(e){return bun(this.b,this.a,u(e,39))},l.a=0,l.b=0,I(Xl,"EdgeRouter/lambda$7$Type",1504),D(1506,1,{},RXt),l.Kb=function(e){return Vsn(this.b,this.a,u(e,39))},l.a=0,l.b=0,I(Xl,"EdgeRouter/lambda$9$Type",1506),D(675,1,{675:1},bhe),l.e=0,l.f=!1,l.g=!1,I(Xl,"MultiLevelEdgeNodeNodeGap",675),D(1943,1,Xr,htt),l.Ne=function(e,n){return gfn(u(e,240),u(n,240))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"MultiLevelEdgeNodeNodeGap/lambda$0$Type",1943),D(1944,1,Xr,ftt),l.Ne=function(e,n){return pfn(u(e,240),u(n,240))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Xl,"MultiLevelEdgeNodeNodeGap/lambda$1$Type",1944);var ex;D(500,22,{3:1,34:1,22:1,500:1,188:1,196:1},imt),l.dg=function(){return nle(this)},l.qg=function(){return nle(this)};var hK,nx,PLt=Lr(M7t,"RadialLayoutPhases",500,Pr,Uhn,ecn),x8e;D(1113,205,mw,KWt),l.rf=function(e,n){var r,s,o,h,d,m;if(r=qde(this,e),n.Ug("Radial layout",r.c.length),Ie(Me(ne(e,(Ub(),GLt))))||sq((s=new by((xy(),new my(e))),s)),m=s3n(e),Mi(e,(Y4(),ex),m),!m)throw at(new zn("The given graph is not a tree!"));for(o=Rt(Ht(ne(e,gK))),o==0&&(o=k1e(e)),Mi(e,gK,o),d=new G(qde(this,e));d.a=3)for(ht=u(Dt(J,0),27),Tt=u(Dt(J,1),27),o=0;o+2=ht.f+Tt.f+T||Tt.f>=tt.f+ht.f+T){At=!0;break}else++o;else At=!0;if(!At){for(P=J.i,d=new Zn(J);d.e!=d.i.gc();)h=u(ar(d),27),Mi(h,(ai(),DP),he(P)),--P;mge(e,new S6),n.Vg();return}for(r=(EI(this.a),E1(this.a,(vH(),mP),u(ne(e,kDt),188)),E1(this.a,pK,u(ne(e,bDt),188)),E1(this.a,sdt,u(ne(e,vDt),188)),kmt(this.a,(Wt=new Fs,ri(Wt,mP,(DH(),cdt)),ri(Wt,pK,odt),Ie(Me(ne(e,dDt)))&&ri(Wt,mP,adt),Wt)),XO(this.a,e)),k=1/r.c.length,U=new G(r);U.a0&&Sue((qn(n-1,e.length),e.charCodeAt(n-1)),g2e);)--n;if(s>=n)throw at(new zn("The given string does not contain any numbers."));if(o=s3((Da(s,n,e.length),e.substr(s,n-s)),`,|;|\r| +`),o.length!=2)throw at(new zn("Exactly two numbers are expected, "+o.length+" were found."));try{this.a=Jy(Zy(o[0])),this.b=Jy(Zy(o[1]))}catch(h){throw h=es(h),Lt(h,130)?(r=h,at(new zn(p2e+r))):at(h)}},l.Ib=function(){return"("+this.a+","+this.b+")"},l.a=0,l.b=0;var la=I(yN,"KVector",8);D(75,67,{3:1,4:1,20:1,31:1,56:1,16:1,67:1,15:1,75:1,423:1},Qu,b$,UJt),l.Pc=function(){return xbn(this)},l.cg=function(e){var n,r,s,o,h,d;s=s3(e,`,|;|\\(|\\)|\\[|\\]|\\{|\\}| | | +`),nh(this);try{for(r=0,h=0,o=0,d=0;r0&&(h%2==0?o=Jy(s[r]):d=Jy(s[r]),h>0&&h%2!=0&&Zr(this,new ae(o,d)),++h),++r}catch(m){throw m=es(m),Lt(m,130)?(n=m,at(new zn("The given string does not match the expected format for vectors."+n))):at(m)}},l.Ib=function(){var e,n,r;for(e=new eh("("),n=Dr(this,0);n.b!=n.d.c;)r=u(Ar(n),8),ni(e,r.a+","+r.b),n.b!=n.d.c&&(e.a+="; ");return(e.a+=")",e).a};var sMt=I(yN,"KVectorChain",75);D(255,22,{3:1,34:1,22:1,255:1},hS);var _dt,CK,SK,EP,TP,_K,aMt=Lr(Nl,"Alignment",255,Pr,m0n,Ccn),e7e;D(991,1,uf,gnt),l.hf=function(e){ege(e)};var oMt,Adt,n7e,cMt,uMt,r7e,lMt,i7e,s7e,hMt,fMt,a7e;I(Nl,"BoxLayouterOptions",991),D(992,1,{},V8),l.sf=function(){var e;return e=new jtt,e},l.tf=function(e){},I(Nl,"BoxLayouterOptions/BoxFactory",992),D(297,22,{3:1,34:1,22:1,297:1},fS);var cL,Ldt,uL,lL,hL,Ddt,Mdt=Lr(Nl,"ContentAlignment",297,Pr,v0n,Scn),o7e;D(699,1,uf,Oj),l.hf=function(e){Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,bwe),""),"Layout Algorithm"),"Select a specific layout algorithm."),(Fp(),ix)),Pe),en((D1(),_n))))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,wwe),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),xd),y_n),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,t7t),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),dMt),ts),aMt),en(Qs)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,Dk),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,dTt),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),xd),sMt),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,QV),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),pMt),Qk),Mdt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,TN),""),"Debug Mode"),"Whether additional debug information shall be generated."),(Pn(),!1)),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,blt),""),N8t),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),bMt),ts),gL),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,EN),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),vMt),ts),Udt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,hTt),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,XV),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),kMt),ts),cIt),Hi(_n,lt(ut(G0,1),te,170,0,[Qs]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,ov),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output option of a layout algorithm if node size calculation is setup appropriately."),MMt),xd),MCt),Hi(_n,lt(ut(G0,1),te,170,0,[Qs]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Y_),""),"Interactive"),"Whether the algorithm should be run in interactive mode for the content of a parent node. What this means exactly depends on how the specific algorithm interprets this option. Usually in the interactive mode algorithms try to modify the current layout as little as possible."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,ZV),""),"interactive Layout"),"Whether the graph should be changeable interactively and by setting constraints"),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,X_),""),"Omit Node Micro Layout"),"Node micro layout comprises the computation of node dimensions (if requested), the placement of ports and their labels, and the placement of node labels. The functionality is implemented independent of any specific layout algorithm and shouldn't have any negative impact on the layout algorithm's performance itself. Yet, if any unforeseen behavior occurs, this option allows to deactivate the micro layout."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Fut),""),"Port Constraints"),"Defines constraints of the position of the ports of a node."),FMt),ts),hIt),en(Qs)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,JV),""),"Position"),"The position of a node, port, or label. This is used by the 'Fixed Layout' algorithm to specify a pre-defined position."),xd),la),Hi(Qs,lt(ut(G0,1),te,170,0,[Bw,Wp]))))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,gN),""),"Priority"),"Defines the priority of an object; its meaning depends on the specific layout algorithm and the context where it is used."),ac),Ra),Hi(Qs,lt(ut(G0,1),te,170,0,[f0]))))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,IV),""),"Randomization Seed"),"Seed used for pseudo-random number generators to control the layout algorithm. If the value is 0, the seed shall be determined pseudo-randomly (e.g. from the system time)."),ac),Ra),en(_n)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,W_),""),"Separate Connected Components"),"Whether each connected component should be processed separately."),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,h7t),""),"Junction Points"),"This option is not used as option, but as output of the layout algorithms. It is attached to edges and determines the points where junction symbols should be drawn in order to represent hyperedges with orthogonal routing. Whether such points are computed depends on the chosen layout algorithm and edge routing style. The points are put into the vector chain with no specific order."),EMt),xd),sMt),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,g7t),""),"Comment Box"),"Whether the node should be regarded as a comment box instead of a regular node. In that case its placement should be similar to how labels are handled. Any edges incident to a comment box specify to which graph elements the comment is related."),!1),oa),ys),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,p7t),""),"Hypernode"),"Whether the node should be handled as a hypernode."),!1),oa),ys),en(Qs)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,KSn),""),"Label Manager"),"Label managers can shorten labels upon a layout algorithm's request."),xd),C_n),Hi(_n,lt(ut(G0,1),te,170,0,[Wp]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,w7t),""),"Margins"),"Margins define additional space around the actual bounds of a graph element. For instance, ports or labels being placed on the outside of a node's border might introduce such a margin. The margin is used to guarantee non-overlap of other graph elements with those ports or labels."),TMt),xd),DCt),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,JEt),""),"No Layout"),"No layout is done for the associated element. This is used to mark parts of a diagram to avoid their inclusion in the layout graph, or to mark parts of the layout graph to prevent layout engines from processing them. If you wish to exclude the contents of a compound node from automatic layout, while the node itself is still considered on its own layer, use the 'Fixed Layout' algorithm for that node."),!1),oa),ys),Hi(Qs,lt(ut(G0,1),te,170,0,[f0,Bw,Wp]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,mwe),""),"Scale Factor"),"The scaling factor to be applied to the corresponding node in recursive layout. It causes the corresponding node's size to be adjusted, and its ports and labels to be sized and placed accordingly after the layout of that node has been determined (and before the node itself and its siblings are arranged). The scaling is not reverted afterwards, so the resulting layout graph contains the adjusted size and position data. This option is currently not supported if 'Layout Hierarchy' is set."),1),Wa),zs),en(Qs)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,vwe),""),"Child Area Width"),"The width of the area occupied by the laid out children of a node."),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,ywe),""),"Child Area Height"),"The height of the area occupied by the laid out children of a node."),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,pN),""),hwe),"Turns topdown layout on and off. If this option is enabled, hierarchical layout will be computed first for the root node and then for its children recursively. Layouts are then scaled down to fit the area provided by their parents. Graphs must follow a certain structure for topdown layout to work properly. {@link TopdownNodeTypes.PARALLEL_NODE} nodes must have children of type {@link TopdownNodeTypes.HIERARCHICAL_NODE} and must define {@link topdown.hierarchicalNodeWidth} and {@link topdown.hierarchicalNodeAspectRatio} for their children. Furthermore they need to be laid out using an algorithm that is a {@link TopdownLayoutProvider}. Hierarchical nodes can also be parents of other hierarchical nodes and can optionally use a {@link TopdownSizeApproximator} to dynamically set sizes during topdown layout. In this case {@link topdown.hierarchicalNodeWidth} and {@link topdown.hierarchicalNodeAspectRatio} should be set on the node itself rather than the parent. The values are then used by the size approximator as base values. Hierarchical nodes require the layout option {@link nodeSize.fixedGraphSize} to be true to prevent the algorithm used there from resizing the hierarchical node. This option is not supported if 'Hierarchy Handling' is set to 'INCLUDE_CHILDREN'"),!1),oa),ys),en(_n)))),Bs(e,pN,cv,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,xwe),""),"Animate"),"Whether the shift from the old layout to the new computed layout shall be animated."),!0),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,kwe),""),"Animation Time Factor"),"Factor for computation of animation time. The higher the value, the longer the animation time. If the value is 0, the resulting time is always equal to the minimum defined by 'Minimal Animation Time'."),he(100)),ac),Ra),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Ewe),""),"Layout Ancestors"),"Whether the hierarchy levels on the path from the selected element to the root of the diagram shall be included in the layout process."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Twe),""),"Maximal Animation Time"),"The maximal time for animations, in milliseconds."),he(4e3)),ac),Ra),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Cwe),""),"Minimal Animation Time"),"The minimal time for animations, in milliseconds."),he(400)),ac),Ra),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Swe),""),"Progress Bar"),"Whether a progress bar shall be displayed during layout computations."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,_we),""),"Validate Graph"),"Whether the graph shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Awe),""),"Validate Options"),"Whether layout options shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!0),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Lwe),""),"Zoom to Fit"),"Whether the zoom level shall be set to view the whole diagram after layout."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,fTt),"box"),"Box Layout Mode"),"Configures the packing mode used by the {@link BoxLayoutProvider}. If SIMPLE is not required (neither priorities are used nor the interactive mode), GROUP_DEC can improve the packing and decrease the area. GROUP_MIXED and GROUP_INC may, in very specific scenarios, work better."),gMt),ts),xIt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,zEt),bd),"Comment Comment Spacing"),"Spacing to be preserved between a comment box and other comment boxes connected to the same node. The space left between comment boxes of different nodes is controlled by the node-node spacing."),10),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,qEt),bd),"Comment Node Spacing"),"Spacing to be preserved between a node and its connected comment boxes. The space left between a node and the comments of another node is controlled by the node-node spacing."),10),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Lut),bd),"Components Spacing"),"Spacing to be preserved between pairs of connected components. This option is only relevant if 'separateConnectedComponents' is activated."),20),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,HEt),bd),"Edge Spacing"),"Spacing to be preserved between any two edges. Note that while this can somewhat easily be satisfied for the segments of orthogonally drawn edges, it is harder for general polylines or splines."),10),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Put),bd),"Edge Label Spacing"),"The minimal distance to be preserved between a label and the edge it is associated with. Note that the placement of a label is influenced by the 'edgelabels.placement' option."),2),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,plt),bd),"Edge Node Spacing"),"Spacing to be preserved between nodes and edges."),10),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,VEt),bd),"Label Spacing"),"Determines the amount of space to be left between two labels of the same graph element."),0),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,KEt),bd),"Label Node Spacing"),"Spacing to be preserved between labels and the border of node they are associated with. Note that the placement of a label is influenced by the 'nodelabels.placement' option."),5),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,UEt),bd),"Horizontal spacing between Label and Port"),"Horizontal spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,GEt),bd),"Vertical spacing between Label and Port"),"Vertical spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,h3),bd),"Node Spacing"),"The minimal distance to be preserved between each two nodes."),20),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,WEt),bd),"Node Self Loop Spacing"),"Spacing to be preserved between a node and its self loops."),10),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,YEt),bd),"Port Spacing"),"Spacing between pairs of ports of the same node."),10),Wa),zs),Hi(_n,lt(ut(G0,1),te,170,0,[Qs]))))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,XEt),bd),"Individual Spacing"),"Allows to specify individual spacing values for graph elements that shall be different from the value specified for the element's parent."),xd),W7e),Hi(Qs,lt(ut(G0,1),te,170,0,[f0,Bw,Wp]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,m7t),bd),"Additional Port Space"),"Additional space around the sets of ports on each node side. For each side of a node, this option can reserve additional space before and after the ports on each side. For example, a top spacing of 20 makes sure that the first port on the western and eastern side is 20 units away from the northern border."),KMt),xd),DCt),en(_n)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,mlt),Iwe),"Layout Partition"),"Partition to which the node belongs. This requires Layout Partitioning to be active. Nodes with lower partition IDs will appear to the left of nodes with higher partition IDs (assuming a left-to-right layout direction)."),ac),Ra),Hi(_n,lt(ut(G0,1),te,170,0,[Qs]))))),Bs(e,mlt,wlt,b7e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,wlt),Iwe),"Layout Partitioning"),"Whether to activate partitioned layout. This will allow to group nodes through the Layout Partition option. a pair of nodes with different partition indices is then placed such that the node with lower index is placed to the left of the other node (with left-to-right layout direction). Depending on the layout algorithm, this may only be guaranteed to work if all nodes have a layout partition configured, or at least if edges that cross partitions are not part of a partition-crossing cycle."),IMt),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,r7t),Owe),"Node Label Padding"),"Define padding for node labels that are placed inside of a node."),SMt),xd),MCt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,nT),Owe),"Node Label Placement"),"Hints for where node labels are to be placed; if empty, the node label's position is not modified."),_Mt),Qk),Lo),Hi(Qs,lt(ut(G0,1),te,170,0,[Wp]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,a7t),uU),"Port Alignment"),"Defines the default port distribution for a node. May be overridden for each side individually."),NMt),ts),mL),en(Qs)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,o7t),uU),"Port Alignment (North)"),"Defines how ports on the northern side are placed, overriding the node's general port alignment."),ts),mL),en(Qs)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,c7t),uU),"Port Alignment (South)"),"Defines how ports on the southern side are placed, overriding the node's general port alignment."),ts),mL),en(Qs)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,u7t),uU),"Port Alignment (West)"),"Defines how ports on the western side are placed, overriding the node's general port alignment."),ts),mL),en(Qs)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,l7t),uU),"Port Alignment (East)"),"Defines how ports on the eastern side are placed, overriding the node's general port alignment."),ts),mL),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,_5),$lt),"Node Size Constraints"),"What should be taken into account when calculating a node's size. Empty size constraints specify that a node's size is already fixed and should not be changed."),AMt),Qk),xL),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Mk),$lt),"Node Size Options"),"Options modifying the behavior of the size constraints set on a node. Each member of the set specifies something that should be taken into account when calculating node sizes. The empty set corresponds to no further modifications."),DMt),Qk),dIt),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Ik),$lt),"Node Size Minimum"),"The minimal size to which a node can be reduced."),LMt),xd),la),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,eT),$lt),"Fixed Graph Size"),"By default, the fixed layout provider will enlarge a graph until it is large enough to contain its children. If this option is set, it won't do so."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,f7t),glt),"Edge Label Placement"),"Gives a hint on where to put edge labels."),wMt),ts),XMt),en(Wp)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,OV),glt),"Inline Edge Labels"),"If true, an edge label is placed directly on its edge. May only apply to center edge labels. This kind of label placement is only advisable if the label's rendering is such that it is not crossed by its edge and thus stays legible."),!1),oa),ys),en(Wp)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,WSn),"font"),"Font Name"),"Font name used for a label."),ix),Pe),en(Wp)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,Dwe),"font"),"Font Size"),"Font size used for a label."),ac),Ra),en(Wp)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,b7t),zlt),"Port Anchor Offset"),"The offset to the port position where connections shall be attached."),xd),la),en(Bw)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,d7t),zlt),"Port Index"),"The index of a port in the fixed order around a node. The order is assumed as clockwise, starting with the leftmost port on the top side. This option must be set if 'Port Constraints' is set to FIXED_ORDER and no specific positions are given for the ports. Additionally, the option 'Port Side' must be defined in this case."),ac),Ra),en(Bw)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,ZEt),zlt),"Port Side"),"The side of a node on which a port is situated. This option must be set if 'Port Constraints' is set to FIXED_SIDE or FIXED_ORDER and no specific positions are given for the ports."),jMt),ts),bo),en(Bw)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,QEt),zlt),"Port Border Offset"),"The offset of ports on the node border. With a positive offset the port is moved outside of the node, while with a negative offset the port is moved towards the inside. An offset of 0 means that the port is placed directly on the node border, i.e. if the port side is north, the port's south border touches the nodes's north border; if the port side is east, the port's west border touches the nodes's east border; if the port side is south, the port's north border touches the node's south border; if the port side is west, the port's east border touches the node's west border."),Wa),zs),en(Bw)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,rT),bTt),"Port Label Placement"),"Decides on a placement method for port labels; if empty, the node label's position is not modified."),BMt),Qk),OK),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,i7t),bTt),"Port Labels Next to Port"),"Use 'portLabels.placement': NEXT_TO_PORT_OF_POSSIBLE."),!1),oa),ys),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,s7t),bTt),"Treat Port Labels as Group"),"If this option is true (default), the labels of a port will be treated as a group when it comes to centering them next to their port. If this option is false, only the first label will be centered next to the port, with the others being placed below. This only applies to labels of eastern and western ports and will have no effect if labels are not placed next to their port."),!0),oa),ys),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,bN),_N),"Topdown Scale Factor"),"The scaling factor to be applied to the nodes laid out within the node in recursive topdown layout. The difference to 'Scale Factor' is that the node itself is not scaled. This value has to be set on hierarchical nodes."),1),Wa),zs),en(_n)))),Bs(e,bN,cv,T7e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,gTt),_N),"Topdown Size Approximator"),"The size approximator to be used to set sizes of hierarchical nodes during topdown layout. The default value is null, which results in nodes keeping whatever size is defined for them e.g. through parent parallel node or by manually setting the size."),null),ts),jK),en(Qs)))),Bs(e,gTt,cv,C7e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,wN),_N),"Topdown Hierarchical Node Width"),"The fixed size of a hierarchical node when using topdown layout. If this value is set on a parallel node it applies to its children, when set on a hierarchical node it applies to the node itself."),150),Wa),zs),Hi(_n,lt(ut(G0,1),te,170,0,[Qs]))))),Bs(e,wN,cv,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,mN),_N),"Topdown Hierarchical Node Aspect Ratio"),"The fixed aspect ratio of a hierarchical node when using topdown layout. Default is 1/sqrt(2). If this value is set on a parallel node it applies to its children, when set on a hierarchical node it applies to the node itself."),1.414),Wa),zs),Hi(_n,lt(ut(G0,1),te,170,0,[Qs]))))),Bs(e,mN,cv,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,cv),_N),"Topdown Node Type"),"The different node types used for topdown layout. If the node type is set to {@link TopdownNodeTypes.PARALLEL_NODE} the algorithm must be set to a {@link TopdownLayoutProvider} such as {@link TopdownPacking}. The {@link nodeSize.fixedGraphSize} option is technically only required for hierarchical nodes."),null),ts),pIt),en(Qs)))),Bs(e,cv,eT,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,pTt),_N),"Topdown Scale Cap"),"Determines the upper limit for the topdown scale factor. The default value is 1.0 which ensures that nested children never end up appearing larger than their parents in terms of unit sizes such as the font size. If the limit is larger, nodes will fully utilize the available space, but it is counteriniuitive for inner nodes to have a larger scale than outer nodes."),1),Wa),zs),en(_n)))),Bs(e,pTt,cv,E7e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,e7t),Nwe),"Activate Inside Self Loops"),"Whether this node allows to route self loops inside of it instead of around it. If set to true, this will make the node a compound node if it isn't already, and will require the layout algorithm to support compound nodes with hierarchical ports."),!1),oa),ys),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,n7t),Nwe),"Inside Self Loop"),"Whether a self loop should be routed inside a node instead of around that node."),!1),oa),ys),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Dut),"edge"),"Edge Thickness"),"The thickness of an edge. This is a hint on the line width used to draw an edge, possibly requiring more space to be reserved for it."),1),Wa),zs),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Mwe),"edge"),"Edge Type"),"The type of an edge. This is usually used for UML class diagrams, where associations must be handled differently from generalizations."),xMt),ts),nIt),en(f0)))),eS(e,new Z6(XC(pE(gE(new fy,Qn),"Layered"),'The layer-based method was introduced by Sugiyama, Tagawa and Toda in 1981. It emphasizes the direction of edges by pointing as many edges as possible into the same direction. The nodes are arranged in layers, which are sometimes called "hierarchies", and then reordered such that the number of edge crossings is minimized. Afterwards, concrete coordinates are computed for the nodes and edge bend points.'))),eS(e,new Z6(XC(pE(gE(new fy,"org.eclipse.elk.orthogonal"),"Orthogonal"),`Orthogonal methods that follow the "topology-shape-metrics" approach by Batini, Nardelli and Tamassia '86. The first phase determines the topology of the drawing by applying a planarization technique, which results in a planar representation of the graph. The orthogonal shape is computed in the second phase, which aims at minimizing the number of edge bends, and is called orthogonalization. The third phase leads to concrete coordinates for nodes and edge bend points by applying a compaction method, thus defining the metrics.`))),eS(e,new Z6(XC(pE(gE(new fy,Du),"Force"),"Layout algorithms that follow physical analogies by simulating a system of attractive and repulsive forces. The first successful method of this kind was proposed by Eades in 1984."))),eS(e,new Z6(XC(pE(gE(new fy,"org.eclipse.elk.circle"),"Circle"),"Circular layout algorithms emphasize cycles or biconnected components of a graph by arranging them in circles. This is useful if a drawing is desired where such components are clearly grouped, or where cycles are shown as prominent OPTIONS of the graph."))),eS(e,new Z6(XC(pE(gE(new fy,X2e),"Tree"),"Specialized layout methods for trees, i.e. acyclic graphs. The regular structure of graphs that have no undirected cycles can be emphasized using an algorithm of this type."))),eS(e,new Z6(XC(pE(gE(new fy,"org.eclipse.elk.planar"),"Planar"),"Algorithms that require a planar or upward planar graph. Most of these algorithms are theoretically interesting, but not practically usable."))),eS(e,new Z6(XC(pE(gE(new fy,zh),"Radial"),"Radial layout algorithms usually position the nodes of the graph on concentric circles."))),$0e((new pnt,e)),ege((new gnt,e)),g0e((new Nj,e))};var VT,c7e,dMt,sx,u7e,l7e,gMt,ax,ox,h7e,CP,pMt,SP,Rw,bMt,Idt,Odt,wMt,mMt,vMt,yMt,xMt,f7e,cx,kMt,d7e,_P,Ndt,AP,Pdt,Iv,EMt,UT,TMt,CMt,SMt,ux,_Mt,jw,AMt,R3,lx,LMt,l2,DMt,AK,LP,Yp,MMt,g7e,IMt,p7e,b7e,OMt,NMt,Fdt,Bdt,Rdt,jdt,PMt,Pl,fL,FMt,$dt,zdt,j3,BMt,RMt,hx,jMt,Jk,DP,qdt,fx,w7e,Hdt,m7e,v7e,$Mt,y7e,zMt,qMt,Zk,HMt,LK,VMt,UMt,$w,x7e,GMt,KMt,WMt,DK,MP,dL,t8,k7e,E7e,MK,T7e,YMt,C7e;I(Nl,"CoreOptions",699),D(88,22,{3:1,34:1,22:1,88:1},JM);var kd,Uo,tc,Ed,Gh,gL=Lr(Nl,N8t,88,Pr,Edn,_cn),S7e;D(278,22,{3:1,34:1,22:1,278:1},Hrt);var GT,$3,KT,XMt=Lr(Nl,"EdgeLabelPlacement",278,Pr,Xfn,Acn),_7e;D(223,22,{3:1,34:1,22:1,223:1},U$);var WT,IP,e8,Vdt,Udt=Lr(Nl,"EdgeRouting",223,Pr,J1n,Lcn),A7e;D(321,22,{3:1,34:1,22:1,321:1},dS);var QMt,JMt,ZMt,tIt,Gdt,eIt,nIt=Lr(Nl,"EdgeType",321,Pr,w0n,Dcn),L7e;D(989,1,uf,pnt),l.hf=function(e){$0e(e)};var rIt,iIt,sIt,aIt,D7e,oIt,pL;I(Nl,"FixedLayouterOptions",989),D(990,1,{},qR),l.sf=function(){var e;return e=new Utt,e},l.tf=function(e){},I(Nl,"FixedLayouterOptions/FixedFactory",990),D(346,22,{3:1,34:1,22:1,346:1},Vrt);var Xp,IK,bL,cIt=Lr(Nl,"HierarchyHandling",346,Pr,Jfn,Mcn),M7e;D(290,22,{3:1,34:1,22:1,290:1},G$);var K0,h2,OP,NP,I7e=Lr(Nl,"LabelSide",290,Pr,Q1n,Icn),O7e;D(95,22,{3:1,34:1,22:1,95:1},B4);var qg,Qf,pf,Jf,bh,Zf,bf,W0,t1,Lo=Lr(Nl,"NodeLabelPlacement",95,Pr,mgn,Ocn),N7e;D(256,22,{3:1,34:1,22:1,256:1},ZM);var uIt,wL,f2,lIt,PP,mL=Lr(Nl,"PortAlignment",256,Pr,Rdn,Ncn),P7e;D(101,22,{3:1,34:1,22:1,101:1},gS);var zw,hu,Y0,YT,Td,d2,hIt=Lr(Nl,"PortConstraints",101,Pr,b0n,Pcn),F7e;D(279,22,{3:1,34:1,22:1,279:1},pS);var vL,yL,Hg,FP,g2,n8,OK=Lr(Nl,"PortLabelPlacement",279,Pr,p0n,Fcn),B7e;D(64,22,{3:1,34:1,22:1,64:1},tI);var Jn,Hn,Kh,Wh,Uu,Ou,Cd,e1,yl,cl,fu,xl,Gu,Ku,n1,wh,mh,wf,Er,bc,Gn,bo=Lr(Nl,"PortSide",64,Pr,Tdn,Bcn),R7e;D(993,1,uf,Nj),l.hf=function(e){g0e(e)};var j7e,$7e,fIt,z7e,q7e;I(Nl,"RandomLayouterOptions",993),D(994,1,{},HR),l.sf=function(){var e;return e=new qtt,e},l.tf=function(e){},I(Nl,"RandomLayouterOptions/RandomFactory",994),D(386,22,{3:1,34:1,22:1,386:1},K$);var z3,BP,RP,qw,xL=Lr(Nl,"SizeConstraint",386,Pr,X1n,Rcn),H7e;D(264,22,{3:1,34:1,22:1,264:1},R4);var jP,NK,XT,Kdt,$P,kL,PK,FK,BK,dIt=Lr(Nl,"SizeOptions",264,Pr,Dgn,jcn),V7e;D(280,22,{3:1,34:1,22:1,280:1},Urt);var q3,gIt,RK,pIt=Lr(Nl,"TopdownNodeTypes",280,Pr,Qfn,$cn),U7e;D(347,22,wTt);var bIt,wIt,jK=Lr(Nl,"TopdownSizeApproximator",347,Pr,Whn,qcn);D(987,347,wTt,_te),l.Tg=function(e){return rhe(e)},Lr(Nl,"TopdownSizeApproximator/1",987,jK,null,null),D(988,347,wTt,fee),l.Tg=function(e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze,On;for(n=u(ne(e,(ai(),fx)),143),Ce=(kb(),U=new VC,U),$O(Ce,e),rn=new _r,h=new Zn((!e.a&&(e.a=new Jt(bi,e,10,11)),e.a));h.e!=h.i.gc();)s=u(ar(h),27),At=($=new VC,$),tV(At,Ce),$O(At,s),On=rhe(s),H4(At,b.Math.max(s.g,On.a),b.Math.max(s.f,On.b)),yu(rn.f,s,At);for(o=new Zn((!e.a&&(e.a=new Jt(bi,e,10,11)),e.a));o.e!=o.i.gc();)for(s=u(ar(o),27),A=new Zn((!s.e&&(s.e=new kn(Ts,s,7,4)),s.e));A.e!=A.i.gc();)T=u(ar(A),74),Wt=u(Ko(Eo(rn.f,s)),27),se=u(tr(rn,Dt((!T.c&&(T.c=new kn(vr,T,5,8)),T.c),0)),27),Bt=(P=new sM,P),Or((!Bt.b&&(Bt.b=new kn(vr,Bt,4,7)),Bt.b),Wt),Or((!Bt.c&&(Bt.c=new kn(vr,Bt,5,8)),Bt.c),se),ZH(Bt,Ji(Wt)),$O(Bt,T);tt=u(_I(n.f),205);try{tt.rf(Ce,new UR),Hee(n.f,tt)}catch(Dn){throw Dn=es(Dn),Lt(Dn,103)?(J=Dn,at(J)):at(Dn)}return ad(Ce,ox)||ad(Ce,ax)||r8t(Ce),k=Rt(Ht(ne(Ce,ox))),m=Rt(Ht(ne(Ce,ax))),d=k/m,r=Rt(Ht(ne(Ce,MP)))*b.Math.sqrt((!Ce.a&&(Ce.a=new Jt(bi,Ce,10,11)),Ce.a).i),Ze=u(ne(Ce,Yp),107),Tt=Ze.b+Ze.c+1,ht=Ze.d+Ze.a+1,new ae(b.Math.max(Tt,r),b.Math.max(ht,r/d))},Lr(Nl,"TopdownSizeApproximator/2",988,jK,null,null);var G7e;D(344,1,{871:1},S6),l.Ug=function(e,n){return bfe(this,e,n)},l.Vg=function(){jfe(this)},l.Wg=function(){return this.q},l.Xg=function(){return this.f?ast(this.f):null},l.Yg=function(){return ast(this.a)},l.Zg=function(){return this.p},l.$g=function(){return!1},l._g=function(){return this.n},l.ah=function(){return this.p!=null&&!this.b},l.bh=function(e){var n;this.n&&(n=e,ge(this.f,n))},l.dh=function(e,n){var r,s;this.n&&e&&g1n(this,(r=new Tee,s=lct(r,e),Y9n(r),s),(sH(),Ydt))},l.eh=function(e){var n;return this.b?null:(n=Z0n(this,this.g),Zr(this.a,n),n.i=this,this.d=e,n)},l.fh=function(e){e>0&&!this.b&&x4t(this,e)},l.b=!1,l.c=0,l.d=-1,l.e=null,l.f=null,l.g=-1,l.j=!1,l.k=!1,l.n=!1,l.o=0,l.q=0,l.r=0,I(_c,"BasicProgressMonitor",344),D(717,205,mw,jtt),l.rf=function(e,n){mge(e,n)},I(_c,"BoxLayoutProvider",717),D(983,1,Xr,fGt),l.Ne=function(e,n){return Y6n(this,u(e,27),u(n,27))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},l.a=!1,I(_c,"BoxLayoutProvider/1",983),D(163,1,{163:1},Fq,QJt),l.Ib=function(){return this.c?vkt(this.c):Hb(this.b)},I(_c,"BoxLayoutProvider/Group",163),D(320,22,{3:1,34:1,22:1,320:1},W$);var mIt,vIt,yIt,Wdt,xIt=Lr(_c,"BoxLayoutProvider/PackingMode",320,Pr,Z1n,Hcn),K7e;D(984,1,Xr,U8),l.Ne=function(e,n){return ghn(u(e,163),u(n,163))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(_c,"BoxLayoutProvider/lambda$0$Type",984),D(985,1,Xr,G8),l.Ne=function(e,n){return ahn(u(e,163),u(n,163))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(_c,"BoxLayoutProvider/lambda$1$Type",985),D(986,1,Xr,VR),l.Ne=function(e,n){return ohn(u(e,163),u(n,163))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(_c,"BoxLayoutProvider/lambda$2$Type",986),D(1384,1,{845:1},$tt),l.Mg=function(e,n){return C$(),!Lt(n,167)||JWt((ck(),u(e,167)),n)},I(_c,"ElkSpacings/AbstractSpacingsBuilder/lambda$0$Type",1384),D(1385,1,ir,dGt),l.Cd=function(e){Tbn(this.a,u(e,149))},I(_c,"ElkSpacings/AbstractSpacingsBuilder/lambda$1$Type",1385),D(1386,1,ir,Htt),l.Cd=function(e){u(e,96),C$()},I(_c,"ElkSpacings/AbstractSpacingsBuilder/lambda$2$Type",1386),D(1390,1,ir,gGt),l.Cd=function(e){Ggn(this.a,u(e,96))},I(_c,"ElkSpacings/AbstractSpacingsBuilder/lambda$3$Type",1390),D(1388,1,Kr,qXt),l.Mb=function(e){return sbn(this.a,this.b,u(e,149))},I(_c,"ElkSpacings/AbstractSpacingsBuilder/lambda$4$Type",1388),D(1387,1,Kr,HXt),l.Mb=function(e){return $sn(this.a,this.b,u(e,845))},I(_c,"ElkSpacings/AbstractSpacingsBuilder/lambda$5$Type",1387),D(1389,1,ir,VXt),l.Cd=function(e){Zun(this.a,this.b,u(e,149))},I(_c,"ElkSpacings/AbstractSpacingsBuilder/lambda$6$Type",1389),D(947,1,{},Vtt),l.Kb=function(e){return jQt(e)},l.Fb=function(e){return this===e},I(_c,"ElkUtil/lambda$0$Type",947),D(948,1,ir,UXt),l.Cd=function(e){J5n(this.a,this.b,u(e,74))},l.a=0,l.b=0,I(_c,"ElkUtil/lambda$1$Type",948),D(949,1,ir,GXt),l.Cd=function(e){Hnn(this.a,this.b,u(e,166))},l.a=0,l.b=0,I(_c,"ElkUtil/lambda$2$Type",949),D(950,1,ir,KXt),l.Cd=function(e){Rin(this.a,this.b,u(e,135))},l.a=0,l.b=0,I(_c,"ElkUtil/lambda$3$Type",950),D(951,1,ir,pGt),l.Cd=function(e){yun(this.a,u(e,377))},I(_c,"ElkUtil/lambda$4$Type",951),D(325,1,{34:1,325:1},vnn),l.Fd=function(e){return dsn(this,u(e,242))},l.Fb=function(e){var n;return Lt(e,325)?(n=u(e,325),this.a==n.a):!1},l.Hb=function(){return Ys(this.a)},l.Ib=function(){return this.a+" (exclusive)"},l.a=0,I(_c,"ExclusiveBounds/ExclusiveLowerBound",325),D(1119,205,mw,Utt),l.rf=function(e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt,se,Ce,rn,Ze;for(n.Ug("Fixed Layout",1),h=u(ne(e,(ai(),mMt)),223),P=0,$=0,At=new Zn((!e.a&&(e.a=new Jt(bi,e,10,11)),e.a));At.e!=At.i.gc();){for(ht=u(ar(At),27),Ze=u(ne(ht,(aH(),pL)),8),Ze&&(Ch(ht,Ze.a,Ze.b),u(ne(ht,iIt),181).Hc((Yl(),z3))&&(U=u(ne(ht,aIt),8),U.a>0&&U.b>0&&rv(ht,U.a,U.b,!0,!0))),P=b.Math.max(P,ht.i+ht.g),$=b.Math.max($,ht.j+ht.f),T=new Zn((!ht.n&&(ht.n=new Jt(Po,ht,1,7)),ht.n));T.e!=T.i.gc();)m=u(ar(T),135),Ze=u(ne(m,pL),8),Ze&&Ch(m,Ze.a,Ze.b),P=b.Math.max(P,ht.i+m.i+m.g),$=b.Math.max($,ht.j+m.j+m.f);for(se=new Zn((!ht.c&&(ht.c=new Jt(kl,ht,9,9)),ht.c));se.e!=se.i.gc();)for(Wt=u(ar(se),123),Ze=u(ne(Wt,pL),8),Ze&&Ch(Wt,Ze.a,Ze.b),Ce=ht.i+Wt.i,rn=ht.j+Wt.j,P=b.Math.max(P,Ce+Wt.g),$=b.Math.max($,rn+Wt.f),k=new Zn((!Wt.n&&(Wt.n=new Jt(Po,Wt,1,7)),Wt.n));k.e!=k.i.gc();)m=u(ar(k),135),Ze=u(ne(m,pL),8),Ze&&Ch(m,Ze.a,Ze.b),P=b.Math.max(P,Ce+m.i+m.g),$=b.Math.max($,rn+m.j+m.f);for(o=new rr(sr(Og(ht).a.Kc(),new z));Mr(o);)r=u(dr(o),74),A=Ipe(r),P=b.Math.max(P,A.a),$=b.Math.max($,A.b);for(s=new rr(sr(jO(ht).a.Kc(),new z));Mr(s);)r=u(dr(s),74),Ji(O0(r))!=e&&(A=Ipe(r),P=b.Math.max(P,A.a),$=b.Math.max($,A.b))}if(h==(Lg(),WT))for(Tt=new Zn((!e.a&&(e.a=new Jt(bi,e,10,11)),e.a));Tt.e!=Tt.i.gc();)for(ht=u(ar(Tt),27),s=new rr(sr(Og(ht).a.Kc(),new z));Mr(s);)r=u(dr(s),74),d=t7n(r),d.b==0?Mi(r,Iv,null):Mi(r,Iv,d);Ie(Me(ne(e,(aH(),sIt))))||(Bt=u(ne(e,D7e),107),tt=P+Bt.b+Bt.c,J=$+Bt.d+Bt.a,rv(e,tt,J,!0,!0)),n.Vg()},I(_c,"FixedLayoutProvider",1119),D(385,137,{3:1,423:1,385:1,96:1,137:1},iM,Lae),l.cg=function(e){var n,r,s,o,h,d,m,k,T;if(e)try{for(k=s3(e,";,;"),h=k,d=0,m=h.length;d>16&js|n^s<<16},l.Kc=function(){return new bGt(this)},l.Ib=function(){return this.a==null&&this.b==null?"pair(null,null)":this.a==null?"pair(null,"+rc(this.b)+")":this.b==null?"pair("+rc(this.a)+",null)":"pair("+rc(this.a)+","+rc(this.b)+")"},I(_c,"Pair",42),D(995,1,wa,bGt),l.Nb=function(e){Na(this,e)},l.Ob=function(){return!this.c&&(!this.b&&this.a.a!=null||this.a.b!=null)},l.Pb=function(){if(!this.c&&!this.b&&this.a.a!=null)return this.b=!0,this.a.a;if(!this.c&&this.a.b!=null)return this.c=!0,this.a.b;throw at(new cc)},l.Qb=function(){throw this.c&&this.a.b!=null?this.a.b=null:this.b&&this.a.a!=null&&(this.a.a=null),at(new Xu)},l.b=!1,l.c=!1,I(_c,"Pair/1",995),D(454,1,{454:1},sne),l.Fb=function(e){return Nc(this.a,u(e,454).a)&&Nc(this.c,u(e,454).c)&&Nc(this.d,u(e,454).d)&&Nc(this.b,u(e,454).b)},l.Hb=function(){return lO(lt(ut(aa,1),Ln,1,5,[this.a,this.c,this.d,this.b]))},l.Ib=function(){return"("+this.a+ao+this.c+ao+this.d+ao+this.b+")"},I(_c,"Quadruple",454),D(1108,205,mw,qtt),l.rf=function(e,n){var r,s,o,h,d;if(n.Ug("Random Layout",1),(!e.a&&(e.a=new Jt(bi,e,10,11)),e.a).i==0){n.Vg();return}h=u(ne(e,(Y5t(),z7e)),17),h&&h.a!=0?o=new pq(h.a):o=new Kat,r=MM(Ht(ne(e,j7e))),d=MM(Ht(ne(e,q7e))),s=u(ne(e,$7e),107),mCn(e,o,r,d,s),n.Vg()},I(_c,"RandomLayoutProvider",1108),D(240,1,{240:1},xit),l.Fb=function(e){return Nc(this.a,u(e,240).a)&&Nc(this.b,u(e,240).b)&&Nc(this.c,u(e,240).c)},l.Hb=function(){return lO(lt(ut(aa,1),Ln,1,5,[this.a,this.b,this.c]))},l.Ib=function(){return"("+this.a+ao+this.b+ao+this.c+")"},I(_c,"Triple",240);var Q7e;D(562,1,{}),l.Lf=function(){return new ae(this.f.i,this.f.j)},l.of=function(e){return One(e,(ai(),Pl))?ne(this.f,J7e):ne(this.f,e)},l.Mf=function(){return new ae(this.f.g,this.f.f)},l.Nf=function(){return this.g},l.pf=function(e){return ad(this.f,e)},l.Of=function(e){Su(this.f,e.a),_u(this.f,e.b)},l.Pf=function(e){qm(this.f,e.a),zm(this.f,e.b)},l.Qf=function(e){this.g=e},l.g=0;var J7e;I(sA,"ElkGraphAdapters/AbstractElkGraphElementAdapter",562),D(563,1,{853:1},r$),l.Rf=function(){var e,n;if(!this.b)for(this.b=hq(Kz(this.a).i),n=new Zn(Kz(this.a));n.e!=n.i.gc();)e=u(ar(n),135),ge(this.b,new Qnt(e));return this.b},l.b=null,I(sA,"ElkGraphAdapters/ElkEdgeAdapter",563),D(308,562,{},my),l.Sf=function(){return Che(this)},l.a=null,I(sA,"ElkGraphAdapters/ElkGraphAdapter",308),D(640,562,{187:1},Qnt),I(sA,"ElkGraphAdapters/ElkLabelAdapter",640),D(639,562,{695:1},sit),l.Rf=function(){return svn(this)},l.Vf=function(){var e;return e=u(ne(this.f,(ai(),UT)),140),!e&&(e=new HC),e},l.Xf=function(){return avn(this)},l.Zf=function(e){var n;n=new Eit(e),Mi(this.f,(ai(),UT),n)},l.$f=function(e){Mi(this.f,(ai(),Yp),new jvt(e))},l.Tf=function(){return this.d},l.Uf=function(){var e,n;if(!this.a)for(this.a=new fe,n=new rr(sr(jO(u(this.f,27)).a.Kc(),new z));Mr(n);)e=u(dr(n),74),ge(this.a,new r$(e));return this.a},l.Wf=function(){var e,n;if(!this.c)for(this.c=new fe,n=new rr(sr(Og(u(this.f,27)).a.Kc(),new z));Mr(n);)e=u(dr(n),74),ge(this.c,new r$(e));return this.c},l.Yf=function(){return Jz(u(this.f,27)).i!=0||Ie(Me(u(this.f,27).of((ai(),_P))))},l._f=function(){R0n(this,(xy(),Q7e))},l.a=null,l.b=null,l.c=null,l.d=null,l.e=null,I(sA,"ElkGraphAdapters/ElkNodeAdapter",639),D(1284,562,{852:1},wGt),l.Rf=function(){return gvn(this)},l.Uf=function(){var e,n;if(!this.a)for(this.a=C0(u(this.f,123).hh().i),n=new Zn(u(this.f,123).hh());n.e!=n.i.gc();)e=u(ar(n),74),ge(this.a,new r$(e));return this.a},l.Wf=function(){var e,n;if(!this.c)for(this.c=C0(u(this.f,123).ih().i),n=new Zn(u(this.f,123).ih());n.e!=n.i.gc();)e=u(ar(n),74),ge(this.c,new r$(e));return this.c},l.ag=function(){return u(u(this.f,123).of((ai(),hx)),64)},l.bg=function(){var e,n,r,s,o,h,d,m;for(s=ed(u(this.f,123)),r=new Zn(u(this.f,123).ih());r.e!=r.i.gc();)for(e=u(ar(r),74),m=new Zn((!e.c&&(e.c=new kn(vr,e,5,8)),e.c));m.e!=m.i.gc();){if(d=u(ar(m),84),qy(Jo(d),s))return!0;if(Jo(d)==s&&Ie(Me(ne(e,(ai(),Ndt)))))return!0}for(n=new Zn(u(this.f,123).hh());n.e!=n.i.gc();)for(e=u(ar(n),74),h=new Zn((!e.b&&(e.b=new kn(vr,e,4,7)),e.b));h.e!=h.i.gc();)if(o=u(ar(h),84),qy(Jo(o),s))return!0;return!1},l.a=null,l.b=null,l.c=null,I(sA,"ElkGraphAdapters/ElkPortAdapter",1284),D(1285,1,Xr,ztt),l.Ne=function(e,n){return G8n(u(e,123),u(n,123))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(sA,"ElkGraphAdapters/PortComparator",1285);var p2=os(qh,"EObject"),QT=os(D5,Bwe),vh=os(D5,Rwe),zP=os(D5,jwe),qP=os(D5,"ElkShape"),vr=os(D5,$we),Ts=os(D5,mTt),Wi=os(D5,zwe),HP=os(qh,qwe),EL=os(qh,"EFactory"),Z7e,Xdt=os(qh,Hwe),F1=os(qh,"EPackage"),da,tTe,eTe,CIt,$K,nTe,SIt,_It,AIt,X0,rTe,iTe,Po=os(D5,vTt),bi=os(D5,yTt),kl=os(D5,xTt);D(93,1,Vwe),l.th=function(){return this.uh(),null},l.uh=function(){return null},l.vh=function(){return this.uh(),!1},l.wh=function(){return!1},l.xh=function(e){Ei(this,e)},I(Pk,"BasicNotifierImpl",93),D(99,93,Wwe),l.Yh=function(){return Hl(this)},l.yh=function(e,n){return e},l.zh=function(){throw at(new Vr)},l.Ah=function(e){var n;return n=yo(u(En(this.Dh(),this.Fh()),19)),this.Ph().Th(this,n.n,n.f,e)},l.Bh=function(e,n){throw at(new Vr)},l.Ch=function(e,n,r){return hh(this,e,n,r)},l.Dh=function(){var e;return this.zh()&&(e=this.zh().Nk(),e)?e:this.ii()},l.Eh=function(){return Kot(this)},l.Fh=function(){throw at(new Vr)},l.Gh=function(){var e,n;return n=this.$h().Ok(),!n&&this.zh().Tk(n=(rS(),e=Jyt(Qd(this.Dh())),e==null?i0t:new sI(this,e))),n},l.Hh=function(e,n){return e},l.Ih=function(e){var n;return n=e.pk(),n?e.Lj():ns(this.Dh(),e)},l.Jh=function(){var e;return e=this.zh(),e?e.Qk():null},l.Kh=function(){return this.zh()?this.zh().Nk():null},l.Lh=function(e,n,r){return AH(this,e,n,r)},l.Mh=function(e){return UE(this,e)},l.Nh=function(e,n){return Ist(this,e,n)},l.Oh=function(){var e;return e=this.zh(),!!e&&e.Rk()},l.Ph=function(){throw at(new Vr)},l.Qh=function(){return xH(this)},l.Rh=function(e,n,r,s){return gk(this,e,n,s)},l.Sh=function(e,n,r){var s;return s=u(En(this.Dh(),n),69),s.wk().zk(this,this.hi(),n-this.ji(),e,r)},l.Th=function(e,n,r,s){return nq(this,e,n,s)},l.Uh=function(e,n,r){var s;return s=u(En(this.Dh(),n),69),s.wk().Ak(this,this.hi(),n-this.ji(),e,r)},l.Vh=function(){return!!this.zh()&&!!this.zh().Pk()},l.Wh=function(e){return iot(this,e)},l.Xh=function(e){return Kne(this,e)},l.Zh=function(e){return bpe(this,e)},l.$h=function(){throw at(new Vr)},l._h=function(){return this.zh()?this.zh().Pk():null},l.ai=function(){return xH(this)},l.bi=function(e,n){qot(this,e,n)},l.ci=function(e){this.$h().Sk(e)},l.di=function(e){this.$h().Vk(e)},l.ei=function(e){this.$h().Uk(e)},l.fi=function(e,n){var r,s,o,h;return h=this.Jh(),h&&e&&(n=so(h.El(),this,n),h.Il(this)),s=this.Ph(),s&&(oct(this,this.Ph(),this.Fh()).Bb&po?(o=s.Qh(),o&&(e?!h&&o.Il(this):o.Hl(this))):(n=(r=this.Fh(),r>=0?this.Ah(n):this.Ph().Th(this,-1-r,null,n)),n=this.Ch(null,-1,n))),this.di(e),n},l.gi=function(e){var n,r,s,o,h,d,m,k;if(r=this.Dh(),h=ns(r,e),n=this.ji(),h>=n)return u(e,69).wk().Dk(this,this.hi(),h-n);if(h<=-1)if(d=y5((il(),ja),r,e),d){if(vo(),u(d,69).xk()||(d=tk($o(ja,d))),o=(s=this.Ih(d),u(s>=0?this.Lh(s,!0,!0):tv(this,d,!0),160)),k=d.Ik(),k>1||k==-1)return u(u(o,220).Sl(e,!1),79)}else throw at(new zn(Jb+e.xe()+qlt));else if(e.Jk())return s=this.Ih(e),u(s>=0?this.Lh(s,!1,!0):tv(this,e,!1),79);return m=new hQt(this,e),m},l.hi=function(){return r4t(this)},l.ii=function(){return(Lb(),Fn).S},l.ji=function(){return fr(this.ii())},l.ki=function(e){jot(this,e)},l.Ib=function(){return qf(this)},I(Rn,"BasicEObjectImpl",99);var sTe;D(119,99,{110:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1}),l.li=function(e){var n;return n=n4t(this),n[e]},l.mi=function(e,n){var r;r=n4t(this),ls(r,e,n)},l.ni=function(e){var n;n=n4t(this),ls(n,e,null)},l.th=function(){return u(jn(this,4),129)},l.uh=function(){throw at(new Vr)},l.vh=function(){return(this.Db&4)!=0},l.zh=function(){throw at(new Vr)},l.oi=function(e){fk(this,2,e)},l.Bh=function(e,n){this.Db=n<<16|this.Db&255,this.oi(e)},l.Dh=function(){return $u(this)},l.Fh=function(){return this.Db>>16},l.Gh=function(){var e,n;return rS(),n=Jyt(Qd((e=u(jn(this,16),29),e||this.ii()))),n==null?i0t:new sI(this,n)},l.wh=function(){return(this.Db&1)==0},l.Jh=function(){return u(jn(this,128),2034)},l.Kh=function(){return u(jn(this,16),29)},l.Oh=function(){return(this.Db&32)!=0},l.Ph=function(){return u(jn(this,2),54)},l.Vh=function(){return(this.Db&64)!=0},l.$h=function(){throw at(new Vr)},l._h=function(){return u(jn(this,64),288)},l.ci=function(e){fk(this,16,e)},l.di=function(e){fk(this,128,e)},l.ei=function(e){fk(this,64,e)},l.hi=function(){return Au(this)},l.Db=0,I(Rn,"MinimalEObjectImpl",119),D(120,119,{110:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1}),l.oi=function(e){this.Cb=e},l.Ph=function(){return this.Cb},I(Rn,"MinimalEObjectImpl/Container",120),D(2083,120,{110:1,342:1,96:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1}),l.Lh=function(e,n,r){return mxt(this,e,n,r)},l.Uh=function(e,n,r){return o6t(this,e,n,r)},l.Wh=function(e){return f3t(this,e)},l.bi=function(e,n){r5t(this,e,n)},l.ii=function(){return zc(),iTe},l.ki=function(e){G4t(this,e)},l.nf=function(){return Ule(this)},l.gh=function(){return!this.o&&(this.o=new nl((zc(),X0),Qp,this,0)),this.o},l.of=function(e){return ne(this,e)},l.pf=function(e){return ad(this,e)},l.qf=function(e,n){return Mi(this,e,n)},I(kw,"EMapPropertyHolderImpl",2083),D(572,120,{110:1,377:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1},fC),l.Lh=function(e,n,r){switch(e){case 0:return this.a;case 1:return this.b}return AH(this,e,n,r)},l.Wh=function(e){switch(e){case 0:return this.a!=0;case 1:return this.b!=0}return iot(this,e)},l.bi=function(e,n){switch(e){case 0:Rq(this,Rt(Ht(n)));return;case 1:Bq(this,Rt(Ht(n)));return}qot(this,e,n)},l.ii=function(){return zc(),tTe},l.ki=function(e){switch(e){case 0:Rq(this,0);return;case 1:Bq(this,0);return}jot(this,e)},l.Ib=function(){var e;return this.Db&64?qf(this):(e=new ef(qf(this)),e.a+=" (x: ",O4(e,this.a),e.a+=", y: ",O4(e,this.b),e.a+=")",e.a)},l.a=0,l.b=0,I(kw,"ElkBendPointImpl",572),D(739,2083,{110:1,342:1,167:1,96:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1}),l.Lh=function(e,n,r){return S5t(this,e,n,r)},l.Sh=function(e,n,r){return Iot(this,e,n,r)},l.Uh=function(e,n,r){return pat(this,e,n,r)},l.Wh=function(e){return $4t(this,e)},l.bi=function(e,n){Bxt(this,e,n)},l.ii=function(){return zc(),nTe},l.ki=function(e){w5t(this,e)},l.jh=function(){return this.k},l.kh=function(){return Kz(this)},l.Ib=function(){return zat(this)},l.k=null,I(kw,"ElkGraphElementImpl",739),D(740,739,{110:1,342:1,167:1,422:1,96:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1}),l.Lh=function(e,n,r){return N5t(this,e,n,r)},l.Wh=function(e){return $5t(this,e)},l.bi=function(e,n){Rxt(this,e,n)},l.ii=function(){return zc(),rTe},l.ki=function(e){K5t(this,e)},l.lh=function(){return this.f},l.mh=function(){return this.g},l.nh=function(){return this.i},l.oh=function(){return this.j},l.ph=function(e,n){H4(this,e,n)},l.qh=function(e,n){Ch(this,e,n)},l.rh=function(e){Su(this,e)},l.sh=function(e){_u(this,e)},l.Ib=function(){return Bot(this)},l.f=0,l.g=0,l.i=0,l.j=0,I(kw,"ElkShapeImpl",740),D(741,740,{110:1,342:1,84:1,167:1,422:1,96:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1}),l.Lh=function(e,n,r){return hxt(this,e,n,r)},l.Sh=function(e,n,r){return Mxt(this,e,n,r)},l.Uh=function(e,n,r){return Ixt(this,e,n,r)},l.Wh=function(e){return n5t(this,e)},l.bi=function(e,n){V6t(this,e,n)},l.ii=function(){return zc(),eTe},l.ki=function(e){axt(this,e)},l.hh=function(){return!this.d&&(this.d=new kn(Ts,this,8,5)),this.d},l.ih=function(){return!this.e&&(this.e=new kn(Ts,this,7,4)),this.e},I(kw,"ElkConnectableShapeImpl",741),D(326,739,{110:1,342:1,74:1,167:1,326:1,96:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1},sM),l.Ah=function(e){return _xt(this,e)},l.Lh=function(e,n,r){switch(e){case 3:return AI(this);case 4:return!this.b&&(this.b=new kn(vr,this,4,7)),this.b;case 5:return!this.c&&(this.c=new kn(vr,this,5,8)),this.c;case 6:return!this.a&&(this.a=new Jt(Wi,this,6,6)),this.a;case 7:return Pn(),!this.b&&(this.b=new kn(vr,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new kn(vr,this,5,8)),this.c.i<=1));case 8:return Pn(),!!S_(this);case 9:return Pn(),!!Zm(this);case 10:return Pn(),!this.b&&(this.b=new kn(vr,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new kn(vr,this,5,8)),this.c.i!=0)}return S5t(this,e,n,r)},l.Sh=function(e,n,r){var s;switch(n){case 3:return this.Cb&&(r=(s=this.Db>>16,s>=0?_xt(this,r):this.Cb.Th(this,-1-s,null,r))),cvt(this,u(e,27),r);case 4:return!this.b&&(this.b=new kn(vr,this,4,7)),vu(this.b,e,r);case 5:return!this.c&&(this.c=new kn(vr,this,5,8)),vu(this.c,e,r);case 6:return!this.a&&(this.a=new Jt(Wi,this,6,6)),vu(this.a,e,r)}return Iot(this,e,n,r)},l.Uh=function(e,n,r){switch(n){case 3:return cvt(this,null,r);case 4:return!this.b&&(this.b=new kn(vr,this,4,7)),so(this.b,e,r);case 5:return!this.c&&(this.c=new kn(vr,this,5,8)),so(this.c,e,r);case 6:return!this.a&&(this.a=new Jt(Wi,this,6,6)),so(this.a,e,r)}return pat(this,e,n,r)},l.Wh=function(e){switch(e){case 3:return!!AI(this);case 4:return!!this.b&&this.b.i!=0;case 5:return!!this.c&&this.c.i!=0;case 6:return!!this.a&&this.a.i!=0;case 7:return!this.b&&(this.b=new kn(vr,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new kn(vr,this,5,8)),this.c.i<=1));case 8:return S_(this);case 9:return Zm(this);case 10:return!this.b&&(this.b=new kn(vr,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new kn(vr,this,5,8)),this.c.i!=0)}return $4t(this,e)},l.bi=function(e,n){switch(e){case 3:ZH(this,u(n,27));return;case 4:!this.b&&(this.b=new kn(vr,this,4,7)),Ir(this.b),!this.b&&(this.b=new kn(vr,this,4,7)),gs(this.b,u(n,16));return;case 5:!this.c&&(this.c=new kn(vr,this,5,8)),Ir(this.c),!this.c&&(this.c=new kn(vr,this,5,8)),gs(this.c,u(n,16));return;case 6:!this.a&&(this.a=new Jt(Wi,this,6,6)),Ir(this.a),!this.a&&(this.a=new Jt(Wi,this,6,6)),gs(this.a,u(n,16));return}Bxt(this,e,n)},l.ii=function(){return zc(),CIt},l.ki=function(e){switch(e){case 3:ZH(this,null);return;case 4:!this.b&&(this.b=new kn(vr,this,4,7)),Ir(this.b);return;case 5:!this.c&&(this.c=new kn(vr,this,5,8)),Ir(this.c);return;case 6:!this.a&&(this.a=new Jt(Wi,this,6,6)),Ir(this.a);return}w5t(this,e)},l.Ib=function(){return Nge(this)},I(kw,"ElkEdgeImpl",326),D(451,2083,{110:1,342:1,166:1,451:1,96:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1},K8),l.Ah=function(e){return Ext(this,e)},l.Lh=function(e,n,r){switch(e){case 1:return this.j;case 2:return this.k;case 3:return this.b;case 4:return this.c;case 5:return!this.a&&(this.a=new Ps(vh,this,5)),this.a;case 6:return Hne(this);case 7:return n?uot(this):this.i;case 8:return n?cot(this):this.f;case 9:return!this.g&&(this.g=new kn(Wi,this,9,10)),this.g;case 10:return!this.e&&(this.e=new kn(Wi,this,10,9)),this.e;case 11:return this.d}return mxt(this,e,n,r)},l.Sh=function(e,n,r){var s,o,h;switch(n){case 6:return this.Cb&&(r=(o=this.Db>>16,o>=0?Ext(this,r):this.Cb.Th(this,-1-o,null,r))),ovt(this,u(e,74),r);case 9:return!this.g&&(this.g=new kn(Wi,this,9,10)),vu(this.g,e,r);case 10:return!this.e&&(this.e=new kn(Wi,this,10,9)),vu(this.e,e,r)}return h=u(En((s=u(jn(this,16),29),s||(zc(),$K)),n),69),h.wk().zk(this,Au(this),n-fr((zc(),$K)),e,r)},l.Uh=function(e,n,r){switch(n){case 5:return!this.a&&(this.a=new Ps(vh,this,5)),so(this.a,e,r);case 6:return ovt(this,null,r);case 9:return!this.g&&(this.g=new kn(Wi,this,9,10)),so(this.g,e,r);case 10:return!this.e&&(this.e=new kn(Wi,this,10,9)),so(this.e,e,r)}return o6t(this,e,n,r)},l.Wh=function(e){switch(e){case 1:return this.j!=0;case 2:return this.k!=0;case 3:return this.b!=0;case 4:return this.c!=0;case 5:return!!this.a&&this.a.i!=0;case 6:return!!Hne(this);case 7:return!!this.i;case 8:return!!this.f;case 9:return!!this.g&&this.g.i!=0;case 10:return!!this.e&&this.e.i!=0;case 11:return this.d!=null}return f3t(this,e)},l.bi=function(e,n){switch(e){case 1:QE(this,Rt(Ht(n)));return;case 2:ZE(this,Rt(Ht(n)));return;case 3:XE(this,Rt(Ht(n)));return;case 4:JE(this,Rt(Ht(n)));return;case 5:!this.a&&(this.a=new Ps(vh,this,5)),Ir(this.a),!this.a&&(this.a=new Ps(vh,this,5)),gs(this.a,u(n,16));return;case 6:Ode(this,u(n,74));return;case 7:Uq(this,u(n,84));return;case 8:Vq(this,u(n,84));return;case 9:!this.g&&(this.g=new kn(Wi,this,9,10)),Ir(this.g),!this.g&&(this.g=new kn(Wi,this,9,10)),gs(this.g,u(n,16));return;case 10:!this.e&&(this.e=new kn(Wi,this,10,9)),Ir(this.e),!this.e&&(this.e=new kn(Wi,this,10,9)),gs(this.e,u(n,16));return;case 11:A4t(this,Gr(n));return}r5t(this,e,n)},l.ii=function(){return zc(),$K},l.ki=function(e){switch(e){case 1:QE(this,0);return;case 2:ZE(this,0);return;case 3:XE(this,0);return;case 4:JE(this,0);return;case 5:!this.a&&(this.a=new Ps(vh,this,5)),Ir(this.a);return;case 6:Ode(this,null);return;case 7:Uq(this,null);return;case 8:Vq(this,null);return;case 9:!this.g&&(this.g=new kn(Wi,this,9,10)),Ir(this.g);return;case 10:!this.e&&(this.e=new kn(Wi,this,10,9)),Ir(this.e);return;case 11:A4t(this,null);return}G4t(this,e)},l.Ib=function(){return K1e(this)},l.b=0,l.c=0,l.d=null,l.j=0,l.k=0,I(kw,"ElkEdgeSectionImpl",451),D(158,120,{110:1,94:1,93:1,155:1,58:1,114:1,54:1,99:1,158:1,119:1,120:1}),l.Lh=function(e,n,r){var s;return e==0?(!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab):Ih(this,e-fr(this.ii()),En((s=u(jn(this,16),29),s||this.ii()),e),n,r)},l.Sh=function(e,n,r){var s,o;return n==0?(!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r)):(o=u(En((s=u(jn(this,16),29),s||this.ii()),n),69),o.wk().zk(this,Au(this),n-fr(this.ii()),e,r))},l.Uh=function(e,n,r){var s,o;return n==0?(!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r)):(o=u(En((s=u(jn(this,16),29),s||this.ii()),n),69),o.wk().Ak(this,Au(this),n-fr(this.ii()),e,r))},l.Wh=function(e){var n;return e==0?!!this.Ab&&this.Ab.i!=0:Dh(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.Zh=function(e){return e8t(this,e)},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return}Fh(this,e-fr(this.ii()),En((r=u(jn(this,16),29),r||this.ii()),e),n)},l.di=function(e){fk(this,128,e)},l.ii=function(){return wn(),ETe},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return}Ph(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.pi=function(){this.Bb|=1},l.qi=function(e){return O_(this,e)},l.Bb=0,I(Rn,"EModelElementImpl",158),D(720,158,{110:1,94:1,93:1,479:1,155:1,58:1,114:1,54:1,99:1,158:1,119:1,120:1},Fj),l.ri=function(e,n){return upe(this,e,n)},l.si=function(e){var n,r,s,o,h;if(this.a!=sh(e)||e.Bb&256)throw at(new zn(Vlt+e.zb+fv));for(s=Yo(e);Wc(s.a).i!=0;){if(r=u(QO(s,0,(n=u(Dt(Wc(s.a),0),89),h=n.c,Lt(h,90)?u(h,29):(wn(),xf))),29),Jm(r))return o=sh(r).wi().si(r),u(o,54).ci(e),o;s=Yo(r)}return(e.D!=null?e.D:e.B)=="java.util.Map$Entry"?new Cte(e):new Xvt(e)},l.ti=function(e,n){return iv(this,e,n)},l.Lh=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.a}return Ih(this,e-fr((wn(),v2)),En((s=u(jn(this,16),29),s||v2),e),n,r)},l.Sh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r);case 1:return this.a&&(r=u(this.a,54).Th(this,4,F1,r)),b5t(this,u(e,241),r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),v2)),n),69),o.wk().zk(this,Au(this),n-fr((wn(),v2)),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 1:return b5t(this,null,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),v2)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),v2)),e,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return!!this.a}return Dh(this,e-fr((wn(),v2)),En((n=u(jn(this,16),29),n||v2),e))},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:Lfe(this,u(n,241));return}Fh(this,e-fr((wn(),v2)),En((r=u(jn(this,16),29),r||v2),e),n)},l.ii=function(){return wn(),v2},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:Lfe(this,null);return}Ph(this,e-fr((wn(),v2)),En((n=u(jn(this,16),29),n||v2),e))};var TL,LIt,aTe;I(Rn,"EFactoryImpl",720),D(1037,720,{110:1,2113:1,94:1,93:1,479:1,155:1,58:1,114:1,54:1,99:1,158:1,119:1,120:1},W8),l.ri=function(e,n){switch(e.hk()){case 12:return u(n,149).Pg();case 13:return rc(n);default:throw at(new zn(lT+e.xe()+fv))}},l.si=function(e){var n,r,s,o,h,d,m,k;switch(e.G==-1&&(e.G=(n=sh(e),n?Np(n.vi(),e):-1)),e.G){case 4:return h=new Y8,h;case 6:return d=new VC,d;case 7:return m=new J2t,m;case 8:return s=new sM,s;case 9:return r=new fC,r;case 10:return o=new K8,o;case 11:return k=new GR,k;default:throw at(new zn(Vlt+e.zb+fv))}},l.ti=function(e,n){switch(e.hk()){case 13:case 12:return null;default:throw at(new zn(lT+e.xe()+fv))}},I(kw,"ElkGraphFactoryImpl",1037),D(448,158,{110:1,94:1,93:1,155:1,197:1,58:1,114:1,54:1,99:1,158:1,119:1,120:1}),l.Gh=function(){var e,n;return n=(e=u(jn(this,16),29),Jyt(Qd(e||this.ii()))),n==null?(rS(),rS(),i0t):new WJt(this,n)},l.Lh=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.xe()}return Ih(this,e-fr(this.ii()),En((s=u(jn(this,16),29),s||this.ii()),e),n,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null}return Dh(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:this.ui(Gr(n));return}Fh(this,e-fr(this.ii()),En((r=u(jn(this,16),29),r||this.ii()),e),n)},l.ii=function(){return wn(),TTe},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:this.ui(null);return}Ph(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.xe=function(){return this.zb},l.ui=function(e){mu(this,e)},l.Ib=function(){return u_(this)},l.zb=null,I(Rn,"ENamedElementImpl",448),D(184,448,{110:1,94:1,93:1,155:1,197:1,58:1,241:1,114:1,54:1,99:1,158:1,184:1,119:1,120:1,690:1},xne),l.Ah=function(e){return $he(this,e)},l.Lh=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.yb;case 3:return this.xb;case 4:return this.sb;case 5:return!this.rb&&(this.rb=new Iy(this,B1,this)),this.rb;case 6:return!this.vb&&(this.vb=new z6(F1,this,6,7)),this.vb;case 7:return n?this.Db>>16==7?u(this.Cb,241):null:Xne(this)}return Ih(this,e-fr((wn(),eb)),En((s=u(jn(this,16),29),s||eb),e),n,r)},l.Sh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r);case 4:return this.sb&&(r=u(this.sb,54).Th(this,1,EL,r)),v5t(this,u(e,479),r);case 5:return!this.rb&&(this.rb=new Iy(this,B1,this)),vu(this.rb,e,r);case 6:return!this.vb&&(this.vb=new z6(F1,this,6,7)),vu(this.vb,e,r);case 7:return this.Cb&&(r=(o=this.Db>>16,o>=0?$he(this,r):this.Cb.Th(this,-1-o,null,r))),hh(this,e,7,r)}return h=u(En((s=u(jn(this,16),29),s||(wn(),eb)),n),69),h.wk().zk(this,Au(this),n-fr((wn(),eb)),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 4:return v5t(this,null,r);case 5:return!this.rb&&(this.rb=new Iy(this,B1,this)),so(this.rb,e,r);case 6:return!this.vb&&(this.vb=new z6(F1,this,6,7)),so(this.vb,e,r);case 7:return hh(this,null,7,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),eb)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),eb)),e,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.yb!=null;case 3:return this.xb!=null;case 4:return!!this.sb;case 5:return!!this.rb&&this.rb.i!=0;case 6:return!!this.vb&&this.vb.i!=0;case 7:return!!Xne(this)}return Dh(this,e-fr((wn(),eb)),En((n=u(jn(this,16),29),n||eb),e))},l.Zh=function(e){var n;return n=okn(this,e),n||e8t(this,e)},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:mu(this,Gr(n));return;case 2:Qq(this,Gr(n));return;case 3:Xq(this,Gr(n));return;case 4:Fot(this,u(n,479));return;case 5:!this.rb&&(this.rb=new Iy(this,B1,this)),Ir(this.rb),!this.rb&&(this.rb=new Iy(this,B1,this)),gs(this.rb,u(n,16));return;case 6:!this.vb&&(this.vb=new z6(F1,this,6,7)),Ir(this.vb),!this.vb&&(this.vb=new z6(F1,this,6,7)),gs(this.vb,u(n,16));return}Fh(this,e-fr((wn(),eb)),En((r=u(jn(this,16),29),r||eb),e),n)},l.ei=function(e){var n,r;if(e&&this.rb)for(r=new Zn(this.rb);r.e!=r.i.gc();)n=ar(r),Lt(n,364)&&(u(n,364).w=null);fk(this,64,e)},l.ii=function(){return wn(),eb},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:mu(this,null);return;case 2:Qq(this,null);return;case 3:Xq(this,null);return;case 4:Fot(this,null);return;case 5:!this.rb&&(this.rb=new Iy(this,B1,this)),Ir(this.rb);return;case 6:!this.vb&&(this.vb=new z6(F1,this,6,7)),Ir(this.vb);return}Ph(this,e-fr((wn(),eb)),En((n=u(jn(this,16),29),n||eb),e))},l.pi=function(){kot(this)},l.vi=function(){return!this.rb&&(this.rb=new Iy(this,B1,this)),this.rb},l.wi=function(){return this.sb},l.xi=function(){return this.ub},l.yi=function(){return this.xb},l.zi=function(){return this.yb},l.Ai=function(e){this.ub=e},l.Ib=function(){var e;return this.Db&64?u_(this):(e=new ef(u_(this)),e.a+=" (nsURI: ",Mo(e,this.yb),e.a+=", nsPrefix: ",Mo(e,this.xb),e.a+=")",e.a)},l.xb=null,l.yb=null,I(Rn,"EPackageImpl",184),D(569,184,{110:1,2115:1,569:1,94:1,93:1,155:1,197:1,58:1,241:1,114:1,54:1,99:1,158:1,184:1,119:1,120:1,690:1},nde),l.q=!1,l.r=!1;var oTe=!1;I(kw,"ElkGraphPackageImpl",569),D(366,740,{110:1,342:1,167:1,135:1,422:1,366:1,96:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1},Y8),l.Ah=function(e){return Txt(this,e)},l.Lh=function(e,n,r){switch(e){case 7:return Qne(this);case 8:return this.a}return N5t(this,e,n,r)},l.Sh=function(e,n,r){var s;switch(n){case 7:return this.Cb&&(r=(s=this.Db>>16,s>=0?Txt(this,r):this.Cb.Th(this,-1-s,null,r))),hyt(this,u(e,167),r)}return Iot(this,e,n,r)},l.Uh=function(e,n,r){return n==7?hyt(this,null,r):pat(this,e,n,r)},l.Wh=function(e){switch(e){case 7:return!!Qne(this);case 8:return!hn("",this.a)}return $5t(this,e)},l.bi=function(e,n){switch(e){case 7:rkt(this,u(n,167));return;case 8:E4t(this,Gr(n));return}Rxt(this,e,n)},l.ii=function(){return zc(),SIt},l.ki=function(e){switch(e){case 7:rkt(this,null);return;case 8:E4t(this,"");return}K5t(this,e)},l.Ib=function(){return Hfe(this)},l.a="",I(kw,"ElkLabelImpl",366),D(207,741,{110:1,342:1,84:1,167:1,27:1,422:1,207:1,96:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1},VC),l.Ah=function(e){return Axt(this,e)},l.Lh=function(e,n,r){switch(e){case 9:return!this.c&&(this.c=new Jt(kl,this,9,9)),this.c;case 10:return!this.a&&(this.a=new Jt(bi,this,10,11)),this.a;case 11:return Ji(this);case 12:return!this.b&&(this.b=new Jt(Ts,this,12,3)),this.b;case 13:return Pn(),!this.a&&(this.a=new Jt(bi,this,10,11)),this.a.i>0}return hxt(this,e,n,r)},l.Sh=function(e,n,r){var s;switch(n){case 9:return!this.c&&(this.c=new Jt(kl,this,9,9)),vu(this.c,e,r);case 10:return!this.a&&(this.a=new Jt(bi,this,10,11)),vu(this.a,e,r);case 11:return this.Cb&&(r=(s=this.Db>>16,s>=0?Axt(this,r):this.Cb.Th(this,-1-s,null,r))),mvt(this,u(e,27),r);case 12:return!this.b&&(this.b=new Jt(Ts,this,12,3)),vu(this.b,e,r)}return Mxt(this,e,n,r)},l.Uh=function(e,n,r){switch(n){case 9:return!this.c&&(this.c=new Jt(kl,this,9,9)),so(this.c,e,r);case 10:return!this.a&&(this.a=new Jt(bi,this,10,11)),so(this.a,e,r);case 11:return mvt(this,null,r);case 12:return!this.b&&(this.b=new Jt(Ts,this,12,3)),so(this.b,e,r)}return Ixt(this,e,n,r)},l.Wh=function(e){switch(e){case 9:return!!this.c&&this.c.i!=0;case 10:return!!this.a&&this.a.i!=0;case 11:return!!Ji(this);case 12:return!!this.b&&this.b.i!=0;case 13:return!this.a&&(this.a=new Jt(bi,this,10,11)),this.a.i>0}return n5t(this,e)},l.bi=function(e,n){switch(e){case 9:!this.c&&(this.c=new Jt(kl,this,9,9)),Ir(this.c),!this.c&&(this.c=new Jt(kl,this,9,9)),gs(this.c,u(n,16));return;case 10:!this.a&&(this.a=new Jt(bi,this,10,11)),Ir(this.a),!this.a&&(this.a=new Jt(bi,this,10,11)),gs(this.a,u(n,16));return;case 11:tV(this,u(n,27));return;case 12:!this.b&&(this.b=new Jt(Ts,this,12,3)),Ir(this.b),!this.b&&(this.b=new Jt(Ts,this,12,3)),gs(this.b,u(n,16));return}V6t(this,e,n)},l.ii=function(){return zc(),_It},l.ki=function(e){switch(e){case 9:!this.c&&(this.c=new Jt(kl,this,9,9)),Ir(this.c);return;case 10:!this.a&&(this.a=new Jt(bi,this,10,11)),Ir(this.a);return;case 11:tV(this,null);return;case 12:!this.b&&(this.b=new Jt(Ts,this,12,3)),Ir(this.b);return}axt(this,e)},l.Ib=function(){return vkt(this)},I(kw,"ElkNodeImpl",207),D(193,741,{110:1,342:1,84:1,167:1,123:1,422:1,193:1,96:1,94:1,93:1,58:1,114:1,54:1,99:1,119:1,120:1},J2t),l.Ah=function(e){return Cxt(this,e)},l.Lh=function(e,n,r){return e==9?ed(this):hxt(this,e,n,r)},l.Sh=function(e,n,r){var s;switch(n){case 9:return this.Cb&&(r=(s=this.Db>>16,s>=0?Cxt(this,r):this.Cb.Th(this,-1-s,null,r))),uvt(this,u(e,27),r)}return Mxt(this,e,n,r)},l.Uh=function(e,n,r){return n==9?uvt(this,null,r):Ixt(this,e,n,r)},l.Wh=function(e){return e==9?!!ed(this):n5t(this,e)},l.bi=function(e,n){switch(e){case 9:Z6t(this,u(n,27));return}V6t(this,e,n)},l.ii=function(){return zc(),AIt},l.ki=function(e){switch(e){case 9:Z6t(this,null);return}axt(this,e)},l.Ib=function(){return I0e(this)},I(kw,"ElkPortImpl",193);var cTe=os(oo,"BasicEMap/Entry");D(1122,120,{110:1,44:1,94:1,93:1,136:1,58:1,114:1,54:1,99:1,119:1,120:1},GR),l.Fb=function(e){return this===e},l.ld=function(){return this.b},l.Hb=function(){return Em(this)},l.Di=function(e){T4t(this,u(e,149))},l.Lh=function(e,n,r){switch(e){case 0:return this.b;case 1:return this.c}return AH(this,e,n,r)},l.Wh=function(e){switch(e){case 0:return!!this.b;case 1:return this.c!=null}return iot(this,e)},l.bi=function(e,n){switch(e){case 0:T4t(this,u(n,149));return;case 1:k4t(this,n);return}qot(this,e,n)},l.ii=function(){return zc(),X0},l.ki=function(e){switch(e){case 0:T4t(this,null);return;case 1:k4t(this,null);return}jot(this,e)},l.Bi=function(){var e;return this.a==-1&&(e=this.b,this.a=e?$i(e):0),this.a},l.md=function(){return this.c},l.Ci=function(e){this.a=e},l.nd=function(e){var n;return n=this.c,k4t(this,e),n},l.Ib=function(){var e;return this.Db&64?qf(this):(e=new yb,ni(ni(ni(e,this.b?this.b.Pg():Vu),But),ES(this.c)),e.a)},l.a=-1,l.c=null;var Qp=I(kw,"ElkPropertyToValueMapEntryImpl",1122);D(996,1,{},WR),I(Ba,"JsonAdapter",996),D(216,63,Pg,Rd),I(Ba,"JsonImportException",216),D(868,1,{},zhe),I(Ba,"JsonImporter",868),D(903,1,{},WXt),I(Ba,"JsonImporter/lambda$0$Type",903),D(904,1,{},YXt),I(Ba,"JsonImporter/lambda$1$Type",904),D(912,1,{},mGt),I(Ba,"JsonImporter/lambda$10$Type",912),D(914,1,{},XXt),I(Ba,"JsonImporter/lambda$11$Type",914),D(915,1,{},QXt),I(Ba,"JsonImporter/lambda$12$Type",915),D(921,1,{},une),I(Ba,"JsonImporter/lambda$13$Type",921),D(920,1,{},lne),I(Ba,"JsonImporter/lambda$14$Type",920),D(916,1,{},JXt),I(Ba,"JsonImporter/lambda$15$Type",916),D(917,1,{},ZXt),I(Ba,"JsonImporter/lambda$16$Type",917),D(918,1,{},tQt),I(Ba,"JsonImporter/lambda$17$Type",918),D(919,1,{},eQt),I(Ba,"JsonImporter/lambda$18$Type",919),D(924,1,{},vGt),I(Ba,"JsonImporter/lambda$19$Type",924),D(905,1,{},yGt),I(Ba,"JsonImporter/lambda$2$Type",905),D(922,1,{},xGt),I(Ba,"JsonImporter/lambda$20$Type",922),D(923,1,{},kGt),I(Ba,"JsonImporter/lambda$21$Type",923),D(927,1,{},EGt),I(Ba,"JsonImporter/lambda$22$Type",927),D(925,1,{},TGt),I(Ba,"JsonImporter/lambda$23$Type",925),D(926,1,{},CGt),I(Ba,"JsonImporter/lambda$24$Type",926),D(929,1,{},SGt),I(Ba,"JsonImporter/lambda$25$Type",929),D(928,1,{},_Gt),I(Ba,"JsonImporter/lambda$26$Type",928),D(930,1,ir,nQt),l.Cd=function(e){x0n(this.b,this.a,Gr(e))},I(Ba,"JsonImporter/lambda$27$Type",930),D(931,1,ir,rQt),l.Cd=function(e){k0n(this.b,this.a,Gr(e))},I(Ba,"JsonImporter/lambda$28$Type",931),D(932,1,{},iQt),I(Ba,"JsonImporter/lambda$29$Type",932),D(908,1,{},AGt),I(Ba,"JsonImporter/lambda$3$Type",908),D(933,1,{},sQt),I(Ba,"JsonImporter/lambda$30$Type",933),D(934,1,{},LGt),I(Ba,"JsonImporter/lambda$31$Type",934),D(935,1,{},DGt),I(Ba,"JsonImporter/lambda$32$Type",935),D(936,1,{},MGt),I(Ba,"JsonImporter/lambda$33$Type",936),D(937,1,{},IGt),I(Ba,"JsonImporter/lambda$34$Type",937),D(870,1,{},OGt),I(Ba,"JsonImporter/lambda$35$Type",870),D(941,1,{},ZZt),I(Ba,"JsonImporter/lambda$36$Type",941),D(938,1,ir,NGt),l.Cd=function(e){_dn(this.a,u(e,377))},I(Ba,"JsonImporter/lambda$37$Type",938),D(939,1,ir,aQt),l.Cd=function(e){cin(this.a,this.b,u(e,166))},I(Ba,"JsonImporter/lambda$38$Type",939),D(940,1,ir,oQt),l.Cd=function(e){uin(this.a,this.b,u(e,166))},I(Ba,"JsonImporter/lambda$39$Type",940),D(906,1,{},PGt),I(Ba,"JsonImporter/lambda$4$Type",906),D(942,1,ir,FGt),l.Cd=function(e){Adn(this.a,u(e,8))},I(Ba,"JsonImporter/lambda$40$Type",942),D(907,1,{},BGt),I(Ba,"JsonImporter/lambda$5$Type",907),D(911,1,{},RGt),I(Ba,"JsonImporter/lambda$6$Type",911),D(909,1,{},jGt),I(Ba,"JsonImporter/lambda$7$Type",909),D(910,1,{},$Gt),I(Ba,"JsonImporter/lambda$8$Type",910),D(913,1,{},zGt),I(Ba,"JsonImporter/lambda$9$Type",913),D(961,1,ir,qGt),l.Cd=function(e){Y6(this.a,new Oy(Gr(e)))},I(Ba,"JsonMetaDataConverter/lambda$0$Type",961),D(962,1,ir,HGt),l.Cd=function(e){vln(this.a,u(e,245))},I(Ba,"JsonMetaDataConverter/lambda$1$Type",962),D(963,1,ir,VGt),l.Cd=function(e){mfn(this.a,u(e,143))},I(Ba,"JsonMetaDataConverter/lambda$2$Type",963),D(964,1,ir,UGt),l.Cd=function(e){yln(this.a,u(e,170))},I(Ba,"JsonMetaDataConverter/lambda$3$Type",964),D(245,22,{3:1,34:1,22:1,245:1},P6);var zK,qK,Qdt,HK,VK,UK,Jdt,Zdt,GK=Lr(fN,"GraphFeature",245,Pr,rgn,Gcn),uTe;D(11,1,{34:1,149:1},Oi,rs,un,_a),l.Fd=function(e){return gsn(this,u(e,149))},l.Fb=function(e){return One(this,e)},l.Sg=function(){return Se(this)},l.Pg=function(){return this.b},l.Hb=function(){return _p(this.b)},l.Ib=function(){return this.b},I(fN,"Property",11),D(671,1,Xr,Fnt),l.Ne=function(e,n){return T2n(this,u(e,96),u(n,96))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(fN,"PropertyHolderComparator",671),D(709,1,wa,O2t),l.Nb=function(e){Na(this,e)},l.Pb=function(){return C0n(this)},l.Qb=function(){zWt()},l.Ob=function(){return!!this.a},I(dU,"ElkGraphUtil/AncestorIterator",709);var DIt=os(oo,"EList");D(70,56,{20:1,31:1,56:1,16:1,15:1,70:1,61:1}),l.bd=function(e,n){h_(this,e,n)},l.Fc=function(e){return Or(this,e)},l.cd=function(e,n){return K4t(this,e,n)},l.Gc=function(e){return gs(this,e)},l.Ii=function(){return new $6(this)},l.Ji=function(){return new aI(this)},l.Ki=function(e){return QI(this,e)},l.Li=function(){return!0},l.Mi=function(e,n){},l.Ni=function(){},l.Oi=function(e,n){Fst(this,e,n)},l.Pi=function(e,n,r){},l.Qi=function(e,n){},l.Ri=function(e,n,r){},l.Fb=function(e){return b0e(this,e)},l.Hb=function(){return H4t(this)},l.Si=function(){return!1},l.Kc=function(){return new Zn(this)},l.ed=function(){return new j6(this)},l.fd=function(e){var n;if(n=this.gc(),e<0||e>n)throw at(new Dy(e,n));return new zit(this,e)},l.Ui=function(e,n){this.Ti(e,this.dd(n))},l.Mc=function(e){return Dq(this,e)},l.Wi=function(e,n){return n},l.hd=function(e,n){return c5(this,e,n)},l.Ib=function(){return B5t(this)},l.Yi=function(){return!0},l.Zi=function(e,n){return d7(this,n)},I(oo,"AbstractEList",70),D(66,70,o0,pb,$m,B4t),l.Ei=function(e,n){return Oot(this,e,n)},l.Fi=function(e){return fhe(this,e)},l.Gi=function(e,n){fO(this,e,n)},l.Hi=function(e){PI(this,e)},l.$i=function(e){return Q3t(this,e)},l.$b=function(){KS(this)},l.Hc=function(e){return L7(this,e)},l.Xb=function(e){return Dt(this,e)},l._i=function(e){var n,r,s;++this.j,r=this.g==null?0:this.g.length,e>r&&(s=this.g,n=r+(r/2|0)+4,n=0?(this.gd(n),!0):!1},l.Xi=function(e,n){return this.Dj(e,this.Zi(e,n))},l.gc=function(){return this.Ej()},l.Pc=function(){return this.Fj()},l.Qc=function(e){return this.Gj(e)},l.Ib=function(){return this.Hj()},I(oo,"DelegatingEList",2093),D(2094,2093,Ime),l.Ei=function(e,n){return Mkt(this,e,n)},l.Fi=function(e){return this.Ei(this.Ej(),e)},l.Gi=function(e,n){rde(this,e,n)},l.Hi=function(e){U1e(this,e)},l.Li=function(){return!this.Mj()},l.$b=function(){j_(this)},l.Ij=function(e,n,r,s,o){return new Ine(this,e,n,r,s,o)},l.Jj=function(e){Ei(this.jj(),e)},l.Kj=function(){return null},l.Lj=function(){return-1},l.jj=function(){return null},l.Mj=function(){return!1},l.Nj=function(e,n){return n},l.Oj=function(e,n){return n},l.Pj=function(){return!1},l.Qj=function(){return!this.Aj()},l.Ti=function(e,n){var r,s;return this.Pj()?(s=this.Qj(),r=i6t(this,e,n),this.Jj(this.Ij(7,he(n),r,e,s)),r):i6t(this,e,n)},l.gd=function(e){var n,r,s,o;return this.Pj()?(r=null,s=this.Qj(),n=this.Ij(4,o=_z(this,e),null,e,s),this.Mj()&&o?(r=this.Oj(o,r),r?(r.nj(n),r.oj()):this.Jj(n)):r?(r.nj(n),r.oj()):this.Jj(n),o):(o=_z(this,e),this.Mj()&&o&&(r=this.Oj(o,null),r&&r.oj()),o)},l.Xi=function(e,n){return lge(this,e,n)},I(Pk,"DelegatingNotifyingListImpl",2094),D(152,1,LN),l.nj=function(e){return Hxt(this,e)},l.oj=function(){Vst(this)},l.gj=function(){return this.d},l.Kj=function(){return null},l.Rj=function(){return null},l.hj=function(e){return-1},l.ij=function(){return Qde(this)},l.jj=function(){return null},l.kj=function(){return ckt(this)},l.lj=function(){return this.o<0?this.o<-2?-2-this.o-1:-1:this.o},l.Sj=function(){return!1},l.mj=function(e){var n,r,s,o,h,d,m,k,T,A,P;switch(this.d){case 1:case 2:switch(o=e.gj(),o){case 1:case 2:if(h=e.jj(),$t(h)===$t(this.jj())&&this.hj(null)==e.hj(null))return this.g=e.ij(),e.gj()==1&&(this.d=1),!0}case 4:{switch(o=e.gj(),o){case 4:{if(h=e.jj(),$t(h)===$t(this.jj())&&this.hj(null)==e.hj(null))return T=Wkt(this),k=this.o<0?this.o<-2?-2-this.o-1:-1:this.o,d=e.lj(),this.d=6,P=new $m(2),k<=d?(Or(P,this.n),Or(P,e.kj()),this.g=lt(ut(Fr,1),ii,28,15,[this.o=k,d+1])):(Or(P,e.kj()),Or(P,this.n),this.g=lt(ut(Fr,1),ii,28,15,[this.o=d,k])),this.n=P,T||(this.o=-2-this.o-1),!0;break}}break}case 6:{switch(o=e.gj(),o){case 4:{if(h=e.jj(),$t(h)===$t(this.jj())&&this.hj(null)==e.hj(null)){for(T=Wkt(this),d=e.lj(),A=u(this.g,53),s=Vt(Fr,ii,28,A.length+1,15,1),n=0;n>>0,n.toString(16))),s.a+=" (eventType: ",this.d){case 1:{s.a+="SET";break}case 2:{s.a+="UNSET";break}case 3:{s.a+="ADD";break}case 5:{s.a+="ADD_MANY";break}case 4:{s.a+="REMOVE";break}case 6:{s.a+="REMOVE_MANY";break}case 7:{s.a+="MOVE";break}case 8:{s.a+="REMOVING_ADAPTER";break}case 9:{s.a+="RESOLVE";break}default:{art(s,this.d);break}}if(R0e(this)&&(s.a+=", touch: true"),s.a+=", position: ",art(s,this.o<0?this.o<-2?-2-this.o-1:-1:this.o),s.a+=", notifier: ",wS(s,this.jj()),s.a+=", feature: ",wS(s,this.Kj()),s.a+=", oldValue: ",wS(s,ckt(this)),s.a+=", newValue: ",this.d==6&&Lt(this.g,53)){for(r=u(this.g,53),s.a+="[",e=0;e10?((!this.b||this.c.j!=this.a)&&(this.b=new LS(this),this.a=this.j),x1(this.b,e)):L7(this,e)},l.Yi=function(){return!0},l.a=0,I(oo,"AbstractEList/1",966),D(301,77,out,Dy),I(oo,"AbstractEList/BasicIndexOutOfBoundsException",301),D(40,1,wa,Zn),l.Nb=function(e){Na(this,e)},l.Xj=function(){if(this.i.j!=this.f)throw at(new Th)},l.Yj=function(){return ar(this)},l.Ob=function(){return this.e!=this.i.gc()},l.Pb=function(){return this.Yj()},l.Qb=function(){E_(this)},l.e=0,l.f=0,l.g=-1,I(oo,"AbstractEList/EIterator",40),D(286,40,P0,j6,zit),l.Qb=function(){E_(this)},l.Rb=function(e){lle(this,e)},l.Zj=function(){var e;try{return e=this.d.Xb(--this.e),this.Xj(),this.g=this.e,e}catch(n){throw n=es(n),Lt(n,77)?(this.Xj(),at(new cc)):at(n)}},l.$j=function(e){phe(this,e)},l.Sb=function(){return this.e!=0},l.Tb=function(){return this.e},l.Ub=function(){return this.Zj()},l.Vb=function(){return this.e-1},l.Wb=function(e){this.$j(e)},I(oo,"AbstractEList/EListIterator",286),D(355,40,wa,$6),l.Yj=function(){return sot(this)},l.Qb=function(){throw at(new Vr)},I(oo,"AbstractEList/NonResolvingEIterator",355),D(398,286,P0,aI,Cvt),l.Rb=function(e){throw at(new Vr)},l.Yj=function(){var e;try{return e=this.c.Vi(this.e),this.Xj(),this.g=this.e++,e}catch(n){throw n=es(n),Lt(n,77)?(this.Xj(),at(new cc)):at(n)}},l.Zj=function(){var e;try{return e=this.c.Vi(--this.e),this.Xj(),this.g=this.e,e}catch(n){throw n=es(n),Lt(n,77)?(this.Xj(),at(new cc)):at(n)}},l.Qb=function(){throw at(new Vr)},l.Wb=function(e){throw at(new Vr)},I(oo,"AbstractEList/NonResolvingEListIterator",398),D(2080,70,Ome),l.Ei=function(e,n){var r,s,o,h,d,m,k,T,A,P,$;if(o=n.gc(),o!=0){for(T=u(jn(this.a,4),129),A=T==null?0:T.length,$=A+o,s=Aat(this,$),P=A-e,P>0&&Xc(T,e,s,e+o,P),k=n.Kc(),d=0;dr)throw at(new Dy(e,r));return new tne(this,e)},l.$b=function(){var e,n;++this.j,e=u(jn(this.a,4),129),n=e==null?0:e.length,C7(this,null),Fst(this,n,e)},l.Hc=function(e){var n,r,s,o,h;if(n=u(jn(this.a,4),129),n!=null){if(e!=null){for(s=n,o=0,h=s.length;o=r)throw at(new Dy(e,r));return n[e]},l.dd=function(e){var n,r,s;if(n=u(jn(this.a,4),129),n!=null){if(e!=null){for(r=0,s=n.length;rr)throw at(new Dy(e,r));return new Zee(this,e)},l.Ti=function(e,n){var r,s,o;if(r=yle(this),o=r==null?0:r.length,e>=o)throw at(new Bo(Zlt+e+Ew+o));if(n>=o)throw at(new Bo(tht+n+Ew+o));return s=r[n],e!=n&&(e0&&Xc(e,0,n,0,r),n},l.Qc=function(e){var n,r,s;return n=u(jn(this.a,4),129),s=n==null?0:n.length,s>0&&(e.lengths&&ls(e,s,null),e};var lTe;I(oo,"ArrayDelegatingEList",2080),D(1051,40,wa,ese),l.Xj=function(){if(this.b.j!=this.f||$t(u(jn(this.b.a,4),129))!==$t(this.a))throw at(new Th)},l.Qb=function(){E_(this),this.a=u(jn(this.b.a,4),129)},I(oo,"ArrayDelegatingEList/EIterator",1051),D(722,286,P0,dee,Zee),l.Xj=function(){if(this.b.j!=this.f||$t(u(jn(this.b.a,4),129))!==$t(this.a))throw at(new Th)},l.$j=function(e){phe(this,e),this.a=u(jn(this.b.a,4),129)},l.Qb=function(){E_(this),this.a=u(jn(this.b.a,4),129)},I(oo,"ArrayDelegatingEList/EListIterator",722),D(1052,355,wa,nse),l.Xj=function(){if(this.b.j!=this.f||$t(u(jn(this.b.a,4),129))!==$t(this.a))throw at(new Th)},I(oo,"ArrayDelegatingEList/NonResolvingEIterator",1052),D(723,398,P0,gee,tne),l.Xj=function(){if(this.b.j!=this.f||$t(u(jn(this.b.a,4),129))!==$t(this.a))throw at(new Th)},I(oo,"ArrayDelegatingEList/NonResolvingEListIterator",723),D(615,301,out,Grt),I(oo,"BasicEList/BasicIndexOutOfBoundsException",615),D(710,66,o0,dmt),l.bd=function(e,n){throw at(new Vr)},l.Fc=function(e){throw at(new Vr)},l.cd=function(e,n){throw at(new Vr)},l.Gc=function(e){throw at(new Vr)},l.$b=function(){throw at(new Vr)},l._i=function(e){throw at(new Vr)},l.Kc=function(){return this.Ii()},l.ed=function(){return this.Ji()},l.fd=function(e){return this.Ki(e)},l.Ti=function(e,n){throw at(new Vr)},l.Ui=function(e,n){throw at(new Vr)},l.gd=function(e){throw at(new Vr)},l.Mc=function(e){throw at(new Vr)},l.hd=function(e,n){throw at(new Vr)},I(oo,"BasicEList/UnmodifiableEList",710),D(721,1,{3:1,20:1,16:1,15:1,61:1,597:1}),l.bd=function(e,n){nsn(this,e,u(n,44))},l.Fc=function(e){return Ysn(this,u(e,44))},l.Jc=function(e){Fa(this,e)},l.Xb=function(e){return u(Dt(this.c,e),136)},l.Ti=function(e,n){return u(this.c.Ti(e,n),44)},l.Ui=function(e,n){rsn(this,e,u(n,44))},l.Lc=function(){return new ln(null,new gn(this,16))},l.gd=function(e){return u(this.c.gd(e),44)},l.hd=function(e,n){return mln(this,e,u(n,44))},l.jd=function(e){rw(this,e)},l.Nc=function(){return new gn(this,16)},l.Oc=function(){return new ln(null,new gn(this,16))},l.cd=function(e,n){return this.c.cd(e,n)},l.Gc=function(e){return this.c.Gc(e)},l.$b=function(){this.c.$b()},l.Hc=function(e){return this.c.Hc(e)},l.Ic=function(e){return rO(this.c,e)},l._j=function(){var e,n,r;if(this.d==null){for(this.d=Vt(MIt,jTt,66,2*this.f+1,0,1),r=this.e,this.f=0,n=this.c.Kc();n.e!=n.i.gc();)e=u(n.Yj(),136),IH(this,e);this.e=r}},l.Fb=function(e){return zZt(this,e)},l.Hb=function(){return H4t(this.c)},l.dd=function(e){return this.c.dd(e)},l.ak=function(){this.c=new GGt(this)},l.dc=function(){return this.f==0},l.Kc=function(){return this.c.Kc()},l.ed=function(){return this.c.ed()},l.fd=function(e){return this.c.fd(e)},l.bk=function(){return RI(this)},l.ck=function(e,n,r){return new tte(e,n,r)},l.dk=function(){return new XR},l.Mc=function(e){return _oe(this,e)},l.gc=function(){return this.f},l.kd=function(e,n){return new xp(this.c,e,n)},l.Pc=function(){return this.c.Pc()},l.Qc=function(e){return this.c.Qc(e)},l.Ib=function(){return B5t(this.c)},l.e=0,l.f=0,I(oo,"BasicEMap",721),D(1046,66,o0,GGt),l.Mi=function(e,n){Nnn(this,u(n,136))},l.Pi=function(e,n,r){var s;++(s=this,u(n,136),s).a.e},l.Qi=function(e,n){Pnn(this,u(n,136))},l.Ri=function(e,n,r){Nsn(this,u(n,136),u(r,136))},l.Oi=function(e,n){yce(this.a)},I(oo,"BasicEMap/1",1046),D(1047,66,o0,XR),l.aj=function(e){return Vt(k_n,Nme,621,e,0,1)},I(oo,"BasicEMap/2",1047),D(1048,dd,sl,KGt),l.$b=function(){this.a.c.$b()},l.Hc=function(e){return Yat(this.a,e)},l.Kc=function(){return this.a.f==0?(_E(),GP.a):new LWt(this.a)},l.Mc=function(e){var n;return n=this.a.f,yH(this.a,e),this.a.f!=n},l.gc=function(){return this.a.f},I(oo,"BasicEMap/3",1048),D(1049,31,o3,WGt),l.$b=function(){this.a.c.$b()},l.Hc=function(e){return w0e(this.a,e)},l.Kc=function(){return this.a.f==0?(_E(),GP.a):new DWt(this.a)},l.gc=function(){return this.a.f},I(oo,"BasicEMap/4",1049),D(1050,dd,sl,YGt),l.$b=function(){this.a.c.$b()},l.Hc=function(e){var n,r,s,o,h,d,m,k,T;if(this.a.f>0&&Lt(e,44)&&(this.a._j(),k=u(e,44),m=k.ld(),o=m==null?0:$i(m),h=lvt(this.a,o),n=this.a.d[h],n)){for(r=u(n.g,379),T=n.i,d=0;d"+this.c},l.a=0;var k_n=I(oo,"BasicEMap/EntryImpl",621);D(546,1,{},gC),I(oo,"BasicEMap/View",546);var GP;D(783,1,{}),l.Fb=function(e){return U6t((mn(),co),e)},l.Hb=function(){return e5t((mn(),co))},l.Ib=function(){return Hb((mn(),co))},I(oo,"ECollections/BasicEmptyUnmodifiableEList",783),D(1348,1,P0,Qtt),l.Nb=function(e){Na(this,e)},l.Rb=function(e){throw at(new Vr)},l.Ob=function(){return!1},l.Sb=function(){return!1},l.Pb=function(){throw at(new cc)},l.Tb=function(){return 0},l.Ub=function(){throw at(new cc)},l.Vb=function(){return-1},l.Qb=function(){throw at(new Vr)},l.Wb=function(e){throw at(new Vr)},I(oo,"ECollections/BasicEmptyUnmodifiableEList/1",1348),D(1346,783,{20:1,16:1,15:1,61:1},jKt),l.bd=function(e,n){tYt()},l.Fc=function(e){return eYt()},l.cd=function(e,n){return nYt()},l.Gc=function(e){return rYt()},l.$b=function(){iYt()},l.Hc=function(e){return!1},l.Ic=function(e){return!1},l.Jc=function(e){Fa(this,e)},l.Xb=function(e){return bmt((mn(),e)),null},l.dd=function(e){return-1},l.dc=function(){return!0},l.Kc=function(){return this.a},l.ed=function(){return this.a},l.fd=function(e){return this.a},l.Ti=function(e,n){return sYt()},l.Ui=function(e,n){aYt()},l.Lc=function(){return new ln(null,new gn(this,16))},l.gd=function(e){return oYt()},l.Mc=function(e){return cYt()},l.hd=function(e,n){return uYt()},l.gc=function(){return 0},l.jd=function(e){rw(this,e)},l.Nc=function(){return new gn(this,16)},l.Oc=function(){return new ln(null,new gn(this,16))},l.kd=function(e,n){return mn(),new xp(co,e,n)},l.Pc=function(){return dyt((mn(),co))},l.Qc=function(e){return mn(),v_(co,e)},I(oo,"ECollections/EmptyUnmodifiableEList",1346),D(1347,783,{20:1,16:1,15:1,61:1,597:1},$Kt),l.bd=function(e,n){tYt()},l.Fc=function(e){return eYt()},l.cd=function(e,n){return nYt()},l.Gc=function(e){return rYt()},l.$b=function(){iYt()},l.Hc=function(e){return!1},l.Ic=function(e){return!1},l.Jc=function(e){Fa(this,e)},l.Xb=function(e){return bmt((mn(),e)),null},l.dd=function(e){return-1},l.dc=function(){return!0},l.Kc=function(){return this.a},l.ed=function(){return this.a},l.fd=function(e){return this.a},l.Ti=function(e,n){return sYt()},l.Ui=function(e,n){aYt()},l.Lc=function(){return new ln(null,new gn(this,16))},l.gd=function(e){return oYt()},l.Mc=function(e){return cYt()},l.hd=function(e,n){return uYt()},l.gc=function(){return 0},l.jd=function(e){rw(this,e)},l.Nc=function(){return new gn(this,16)},l.Oc=function(){return new ln(null,new gn(this,16))},l.kd=function(e,n){return mn(),new xp(co,e,n)},l.Pc=function(){return dyt((mn(),co))},l.Qc=function(e){return mn(),v_(co,e)},l.bk=function(){return mn(),mn(),q0},I(oo,"ECollections/EmptyUnmodifiableEMap",1347);var OIt=os(oo,"Enumerator"),KK;D(288,1,{288:1},nct),l.Fb=function(e){var n;return this===e?!0:Lt(e,288)?(n=u(e,288),this.f==n.f&&Nun(this.i,n.i)&&Lit(this.a,this.f&256?n.f&256?n.a:null:n.f&256?null:n.a)&&Lit(this.d,n.d)&&Lit(this.g,n.g)&&Lit(this.e,n.e)&&imn(this,n)):!1},l.Hb=function(){return this.f},l.Ib=function(){return X0e(this)},l.f=0;var hTe=0,fTe=0,dTe=0,gTe=0,NIt=0,PIt=0,FIt=0,BIt=0,RIt=0,pTe,CL=0,SL=0,bTe=0,wTe=0,WK,jIt;I(oo,"URI",288),D(1121,45,E5,zKt),l.zc=function(e,n){return u(jo(this,Gr(e),u(n,288)),288)},I(oo,"URI/URICache",1121),D(505,66,o0,KR,Oz),l.Si=function(){return!0},I(oo,"UniqueEList",505),D(590,63,Pg,_q),I(oo,"WrappedException",590);var ci=os(qh,Bme),H3=os(qh,Rme),Wu=os(qh,jme),V3=os(qh,$me),B1=os(qh,zme),mf=os(qh,"EClass"),n0t=os(qh,"EDataType"),mTe;D(1233,45,E5,qKt),l.xc=function(e){return ba(e)?nu(this,e):Ko(Eo(this.f,e))},I(qh,"EDataType/Internal/ConversionDelegate/Factory/Registry/Impl",1233);var YK=os(qh,"EEnum"),Vg=os(qh,qme),Do=os(qh,Hme),vf=os(qh,Vme),yf,Ov=os(qh,Ume),U3=os(qh,Gme);D(1042,1,{},Ytt),l.Ib=function(){return"NIL"},I(qh,"EStructuralFeature/Internal/DynamicValueHolder/1",1042);var vTe;D(1041,45,E5,HKt),l.xc=function(e){return ba(e)?nu(this,e):Ko(Eo(this.f,e))},I(qh,"EStructuralFeature/Internal/SettingDelegate/Factory/Registry/Impl",1041);var Nu=os(qh,Kme),r8=os(qh,"EValidator/PatternMatcher"),$It,zIt,Fn,Jp,G3,w2,yTe,xTe,kTe,m2,Zp,v2,Nv,Sd,ETe,TTe,xf,tb,CTe,eb,K3,dx,wo,STe,_Te,Pv,XK=os(Yi,"FeatureMap/Entry");D(545,1,{76:1},X$),l.Lk=function(){return this.a},l.md=function(){return this.b},I(Rn,"BasicEObjectImpl/1",545),D(1040,1,aht,hQt),l.Fk=function(e){return Ist(this.a,this.b,e)},l.Qj=function(){return Kne(this.a,this.b)},l.Wb=function(e){e3t(this.a,this.b,e)},l.Gk=function(){Mln(this.a,this.b)},I(Rn,"BasicEObjectImpl/4",1040),D(2081,1,{114:1}),l.Mk=function(e){this.e=e==0?ATe:Vt(aa,Ln,1,e,5,1)},l.li=function(e){return this.e[e]},l.mi=function(e,n){this.e[e]=n},l.ni=function(e){this.e[e]=null},l.Nk=function(){return this.c},l.Ok=function(){throw at(new Vr)},l.Pk=function(){throw at(new Vr)},l.Qk=function(){return this.d},l.Rk=function(){return this.e!=null},l.Sk=function(e){this.c=e},l.Tk=function(e){throw at(new Vr)},l.Uk=function(e){throw at(new Vr)},l.Vk=function(e){this.d=e};var ATe;I(Rn,"BasicEObjectImpl/EPropertiesHolderBaseImpl",2081),D(192,2081,{114:1},Zh),l.Ok=function(){return this.a},l.Pk=function(){return this.b},l.Tk=function(e){this.a=e},l.Uk=function(e){this.b=e},I(Rn,"BasicEObjectImpl/EPropertiesHolderImpl",192),D(516,99,Wwe,E4),l.uh=function(){return this.f},l.zh=function(){return this.k},l.Bh=function(e,n){this.g=e,this.i=n},l.Dh=function(){return this.j&2?this.$h().Nk():this.ii()},l.Fh=function(){return this.i},l.wh=function(){return(this.j&1)!=0},l.Ph=function(){return this.g},l.Vh=function(){return(this.j&4)!=0},l.$h=function(){return!this.k&&(this.k=new Zh),this.k},l.ci=function(e){this.$h().Sk(e),e?this.j|=2:this.j&=-3},l.ei=function(e){this.$h().Uk(e),e?this.j|=4:this.j&=-5},l.ii=function(){return(Lb(),Fn).S},l.i=0,l.j=1,I(Rn,"EObjectImpl",516),D(798,516,{110:1,94:1,93:1,58:1,114:1,54:1,99:1},Xvt),l.li=function(e){return this.e[e]},l.mi=function(e,n){this.e[e]=n},l.ni=function(e){this.e[e]=null},l.Dh=function(){return this.d},l.Ih=function(e){return ns(this.d,e)},l.Kh=function(){return this.d},l.Oh=function(){return this.e!=null},l.$h=function(){return!this.k&&(this.k=new QR),this.k},l.ci=function(e){this.d=e},l.hi=function(){var e;return this.e==null&&(e=fr(this.d),this.e=e==0?LTe:Vt(aa,Ln,1,e,5,1)),this},l.ji=function(){return 0};var LTe;I(Rn,"DynamicEObjectImpl",798),D(1522,798,{110:1,44:1,94:1,93:1,136:1,58:1,114:1,54:1,99:1},Cte),l.Fb=function(e){return this===e},l.Hb=function(){return Em(this)},l.ci=function(e){this.d=e,this.b=zO(e,"key"),this.c=zO(e,cA)},l.Bi=function(){var e;return this.a==-1&&(e=Ust(this,this.b),this.a=e==null?0:$i(e)),this.a},l.ld=function(){return Ust(this,this.b)},l.md=function(){return Ust(this,this.c)},l.Ci=function(e){this.a=e},l.Di=function(e){e3t(this,this.b,e)},l.nd=function(e){var n;return n=Ust(this,this.c),e3t(this,this.c,e),n},l.a=0,I(Rn,"DynamicEObjectImpl/BasicEMapEntry",1522),D(1523,1,{114:1},QR),l.Mk=function(e){throw at(new Vr)},l.li=function(e){throw at(new Vr)},l.mi=function(e,n){throw at(new Vr)},l.ni=function(e){throw at(new Vr)},l.Nk=function(){throw at(new Vr)},l.Ok=function(){return this.a},l.Pk=function(){return this.b},l.Qk=function(){return this.c},l.Rk=function(){throw at(new Vr)},l.Sk=function(e){throw at(new Vr)},l.Tk=function(e){this.a=e},l.Uk=function(e){this.b=e},l.Vk=function(e){this.c=e},I(Rn,"DynamicEObjectImpl/DynamicEPropertiesHolderImpl",1523),D(519,158,{110:1,94:1,93:1,598:1,155:1,58:1,114:1,54:1,99:1,519:1,158:1,119:1,120:1},aM),l.Ah=function(e){return Sxt(this,e)},l.Lh=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.d;case 2:return r?(!this.b&&(this.b=new Ul((wn(),wo),Mc,this)),this.b):(!this.b&&(this.b=new Ul((wn(),wo),Mc,this)),RI(this.b));case 3:return Jne(this);case 4:return!this.a&&(this.a=new Ps(p2,this,4)),this.a;case 5:return!this.c&&(this.c=new G4(p2,this,5)),this.c}return Ih(this,e-fr((wn(),Jp)),En((s=u(jn(this,16),29),s||Jp),e),n,r)},l.Sh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r);case 3:return this.Cb&&(r=(o=this.Db>>16,o>=0?Sxt(this,r):this.Cb.Th(this,-1-o,null,r))),fyt(this,u(e,155),r)}return h=u(En((s=u(jn(this,16),29),s||(wn(),Jp)),n),69),h.wk().zk(this,Au(this),n-fr((wn(),Jp)),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 2:return!this.b&&(this.b=new Ul((wn(),wo),Mc,this)),pz(this.b,e,r);case 3:return fyt(this,null,r);case 4:return!this.a&&(this.a=new Ps(p2,this,4)),so(this.a,e,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),Jp)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),Jp)),e,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.d!=null;case 2:return!!this.b&&this.b.f!=0;case 3:return!!Jne(this);case 4:return!!this.a&&this.a.i!=0;case 5:return!!this.c&&this.c.i!=0}return Dh(this,e-fr((wn(),Jp)),En((n=u(jn(this,16),29),n||Jp),e))},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:xun(this,Gr(n));return;case 2:!this.b&&(this.b=new Ul((wn(),wo),Mc,this)),Jq(this.b,n);return;case 3:Rde(this,u(n,155));return;case 4:!this.a&&(this.a=new Ps(p2,this,4)),Ir(this.a),!this.a&&(this.a=new Ps(p2,this,4)),gs(this.a,u(n,16));return;case 5:!this.c&&(this.c=new G4(p2,this,5)),Ir(this.c),!this.c&&(this.c=new G4(p2,this,5)),gs(this.c,u(n,16));return}Fh(this,e-fr((wn(),Jp)),En((r=u(jn(this,16),29),r||Jp),e),n)},l.ii=function(){return wn(),Jp},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:_4t(this,null);return;case 2:!this.b&&(this.b=new Ul((wn(),wo),Mc,this)),this.b.c.$b();return;case 3:Rde(this,null);return;case 4:!this.a&&(this.a=new Ps(p2,this,4)),Ir(this.a);return;case 5:!this.c&&(this.c=new G4(p2,this,5)),Ir(this.c);return}Ph(this,e-fr((wn(),Jp)),En((n=u(jn(this,16),29),n||Jp),e))},l.Ib=function(){return zue(this)},l.d=null,I(Rn,"EAnnotationImpl",519),D(141,721,$Tt,nl),l.Gi=function(e,n){jin(this,e,u(n,44))},l.Wk=function(e,n){return zan(this,u(e,44),n)},l.$i=function(e){return u(u(this.c,71).$i(e),136)},l.Ii=function(){return u(this.c,71).Ii()},l.Ji=function(){return u(this.c,71).Ji()},l.Ki=function(e){return u(this.c,71).Ki(e)},l.Xk=function(e,n){return pz(this,e,n)},l.Fk=function(e){return u(this.c,79).Fk(e)},l.ak=function(){},l.Qj=function(){return u(this.c,79).Qj()},l.ck=function(e,n,r){var s;return s=u(sh(this.b).wi().si(this.b),136),s.Ci(e),s.Di(n),s.nd(r),s},l.dk=function(){return new P2t(this)},l.Wb=function(e){Jq(this,e)},l.Gk=function(){u(this.c,79).Gk()},I(Yi,"EcoreEMap",141),D(165,141,$Tt,Ul),l._j=function(){var e,n,r,s,o,h;if(this.d==null){for(h=Vt(MIt,jTt,66,2*this.f+1,0,1),r=this.c.Kc();r.e!=r.i.gc();)n=u(r.Yj(),136),s=n.Bi(),o=(s&xi)%h.length,e=h[o],!e&&(e=h[o]=new P2t(this)),e.Fc(n);this.d=h}},I(Rn,"EAnnotationImpl/1",165),D(291,448,{110:1,94:1,93:1,155:1,197:1,58:1,114:1,480:1,54:1,99:1,158:1,291:1,119:1,120:1}),l.Lh=function(e,n,r){var s,o;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pn(),!!(this.Bb&256);case 3:return Pn(),!!(this.Bb&512);case 4:return he(this.s);case 5:return he(this.t);case 6:return Pn(),!!this.Jk();case 7:return Pn(),o=this.s,o>=1;case 8:return n?of(this):this.r;case 9:return this.q}return Ih(this,e-fr(this.ii()),En((s=u(jn(this,16),29),s||this.ii()),e),n,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 9:return Vit(this,r)}return o=u(En((s=u(jn(this,16),29),s||this.ii()),n),69),o.wk().Ak(this,Au(this),n-fr(this.ii()),e,r)},l.Wh=function(e){var n,r;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.Jk();case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&Mm(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&Mm(this.q).i==0)}return Dh(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.bi=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:this.ui(Gr(n));return;case 2:Dp(this,Ie(Me(n)));return;case 3:Mp(this,Ie(Me(n)));return;case 4:Sp(this,u(n,17).a);return;case 5:this.Zk(u(n,17).a);return;case 8:uw(this,u(n,142));return;case 9:s=hd(this,u(n,89),null),s&&s.oj();return}Fh(this,e-fr(this.ii()),En((r=u(jn(this,16),29),r||this.ii()),e),n)},l.ii=function(){return wn(),_Te},l.ki=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:this.ui(null);return;case 2:Dp(this,!0);return;case 3:Mp(this,!0);return;case 4:Sp(this,0);return;case 5:this.Zk(1);return;case 8:uw(this,null);return;case 9:r=hd(this,null,null),r&&r.oj();return}Ph(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.pi=function(){of(this),this.Bb|=1},l.Hk=function(){return of(this)},l.Ik=function(){return this.t},l.Jk=function(){var e;return e=this.t,e>1||e==-1},l.Si=function(){return(this.Bb&512)!=0},l.Yk=function(e,n){return y5t(this,e,n)},l.Zk=function(e){Hy(this,e)},l.Ib=function(){return F6t(this)},l.s=0,l.t=1,I(Rn,"ETypedElementImpl",291),D(461,291,{110:1,94:1,93:1,155:1,197:1,58:1,179:1,69:1,114:1,480:1,54:1,99:1,158:1,461:1,291:1,119:1,120:1,692:1}),l.Ah=function(e){return Dhe(this,e)},l.Lh=function(e,n,r){var s,o;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pn(),!!(this.Bb&256);case 3:return Pn(),!!(this.Bb&512);case 4:return he(this.s);case 5:return he(this.t);case 6:return Pn(),!!this.Jk();case 7:return Pn(),o=this.s,o>=1;case 8:return n?of(this):this.r;case 9:return this.q;case 10:return Pn(),!!(this.Bb&Uf);case 11:return Pn(),!!(this.Bb&b3);case 12:return Pn(),!!(this.Bb&u3);case 13:return this.j;case 14:return P7(this);case 15:return Pn(),!!(this.Bb&ol);case 16:return Pn(),!!(this.Bb&Jd);case 17:return Py(this)}return Ih(this,e-fr(this.ii()),En((s=u(jn(this,16),29),s||this.ii()),e),n,r)},l.Sh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r);case 17:return this.Cb&&(r=(o=this.Db>>16,o>=0?Dhe(this,r):this.Cb.Th(this,-1-o,null,r))),hh(this,e,17,r)}return h=u(En((s=u(jn(this,16),29),s||this.ii()),n),69),h.wk().zk(this,Au(this),n-fr(this.ii()),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 9:return Vit(this,r);case 17:return hh(this,null,17,r)}return o=u(En((s=u(jn(this,16),29),s||this.ii()),n),69),o.wk().Ak(this,Au(this),n-fr(this.ii()),e,r)},l.Wh=function(e){var n,r;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.Jk();case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&Mm(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&Mm(this.q).i==0);case 10:return(this.Bb&Uf)==0;case 11:return(this.Bb&b3)!=0;case 12:return(this.Bb&u3)!=0;case 13:return this.j!=null;case 14:return P7(this)!=null;case 15:return(this.Bb&ol)!=0;case 16:return(this.Bb&Jd)!=0;case 17:return!!Py(this)}return Dh(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.bi=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:wst(this,Gr(n));return;case 2:Dp(this,Ie(Me(n)));return;case 3:Mp(this,Ie(Me(n)));return;case 4:Sp(this,u(n,17).a);return;case 5:this.Zk(u(n,17).a);return;case 8:uw(this,u(n,142));return;case 9:s=hd(this,u(n,89),null),s&&s.oj();return;case 10:m7(this,Ie(Me(n)));return;case 11:x7(this,Ie(Me(n)));return;case 12:v7(this,Ie(Me(n)));return;case 13:fmt(this,Gr(n));return;case 15:y7(this,Ie(Me(n)));return;case 16:k7(this,Ie(Me(n)));return}Fh(this,e-fr(this.ii()),En((r=u(jn(this,16),29),r||this.ii()),e),n)},l.ii=function(){return wn(),STe},l.ki=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:Lt(this.Cb,90)&&t3(_l(u(this.Cb,90)),4),mu(this,null);return;case 2:Dp(this,!0);return;case 3:Mp(this,!0);return;case 4:Sp(this,0);return;case 5:this.Zk(1);return;case 8:uw(this,null);return;case 9:r=hd(this,null,null),r&&r.oj();return;case 10:m7(this,!0);return;case 11:x7(this,!1);return;case 12:v7(this,!1);return;case 13:this.i=null,Gq(this,null);return;case 15:y7(this,!1);return;case 16:k7(this,!1);return}Ph(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.pi=function(){RE($o((il(),ja),this)),of(this),this.Bb|=1},l.pk=function(){return this.f},l.ik=function(){return P7(this)},l.qk=function(){return Py(this)},l.uk=function(){return null},l.$k=function(){return this.k},l.Lj=function(){return this.n},l.vk=function(){return $H(this)},l.wk=function(){var e,n,r,s,o,h,d,m,k;return this.p||(r=Py(this),(r.i==null&&Qd(r),r.i).length,s=this.uk(),s&&fr(Py(s)),o=of(this),d=o.kk(),e=d?d.i&1?d==Fl?ys:d==Fr?Ra:d==Y3?wT:d==ma?zs:d==x2?gv:d==wx?pv:d==ul?Fk:vA:d:null,n=P7(this),m=o.ik(),P2n(this),this.Bb&Jd&&((h=Oxt((il(),ja),r))&&h!=this||(h=tk($o(ja,this))))?this.p=new dQt(this,h):this.Jk()?this.al()?s?this.Bb&ol?e?this.bl()?this.p=new X2(47,e,this,s):this.p=new X2(5,e,this,s):this.bl()?this.p=new ew(46,this,s):this.p=new ew(4,this,s):e?this.bl()?this.p=new X2(49,e,this,s):this.p=new X2(7,e,this,s):this.bl()?this.p=new ew(48,this,s):this.p=new ew(6,this,s):this.Bb&ol?e?e==Sw?this.p=new mp(50,cTe,this):this.bl()?this.p=new mp(43,e,this):this.p=new mp(1,e,this):this.bl()?this.p=new yp(42,this):this.p=new yp(0,this):e?e==Sw?this.p=new mp(41,cTe,this):this.bl()?this.p=new mp(45,e,this):this.p=new mp(3,e,this):this.bl()?this.p=new yp(44,this):this.p=new yp(2,this):Lt(o,156)?e==XK?this.p=new yp(40,this):this.Bb&512?this.Bb&ol?e?this.p=new mp(9,e,this):this.p=new yp(8,this):e?this.p=new mp(11,e,this):this.p=new yp(10,this):this.Bb&ol?e?this.p=new mp(13,e,this):this.p=new yp(12,this):e?this.p=new mp(15,e,this):this.p=new yp(14,this):s?(k=s.t,k>1||k==-1?this.bl()?this.Bb&ol?e?this.p=new X2(25,e,this,s):this.p=new ew(24,this,s):e?this.p=new X2(27,e,this,s):this.p=new ew(26,this,s):this.Bb&ol?e?this.p=new X2(29,e,this,s):this.p=new ew(28,this,s):e?this.p=new X2(31,e,this,s):this.p=new ew(30,this,s):this.bl()?this.Bb&ol?e?this.p=new X2(33,e,this,s):this.p=new ew(32,this,s):e?this.p=new X2(35,e,this,s):this.p=new ew(34,this,s):this.Bb&ol?e?this.p=new X2(37,e,this,s):this.p=new ew(36,this,s):e?this.p=new X2(39,e,this,s):this.p=new ew(38,this,s)):this.bl()?this.Bb&ol?e?this.p=new mp(17,e,this):this.p=new yp(16,this):e?this.p=new mp(19,e,this):this.p=new yp(18,this):this.Bb&ol?e?this.p=new mp(21,e,this):this.p=new yp(20,this):e?this.p=new mp(23,e,this):this.p=new yp(22,this):this._k()?this.bl()?this.p=new ete(u(o,29),this,s):this.p=new Zyt(u(o,29),this,s):Lt(o,156)?e==XK?this.p=new yp(40,this):this.Bb&ol?e?this.p=new tee(n,m,this,(Xat(),d==Fr?WIt:d==Fl?HIt:d==x2?YIt:d==Y3?KIt:d==ma?GIt:d==wx?XIt:d==ul?VIt:d==Yh?UIt:s0t)):this.p=new dne(u(o,156),n,m,this):e?this.p=new Zte(n,m,this,(Xat(),d==Fr?WIt:d==Fl?HIt:d==x2?YIt:d==Y3?KIt:d==ma?GIt:d==wx?XIt:d==ul?VIt:d==Yh?UIt:s0t)):this.p=new fne(u(o,156),n,m,this):this.al()?s?this.Bb&ol?this.bl()?this.p=new rte(u(o,29),this,s):this.p=new Rvt(u(o,29),this,s):this.bl()?this.p=new nte(u(o,29),this,s):this.p=new kit(u(o,29),this,s):this.Bb&ol?this.bl()?this.p=new ZJt(u(o,29),this):this.p=new Jmt(u(o,29),this):this.bl()?this.p=new JJt(u(o,29),this):this.p=new uit(u(o,29),this):this.bl()?s?this.Bb&ol?this.p=new ite(u(o,29),this,s):this.p=new Fvt(u(o,29),this,s):this.Bb&ol?this.p=new tZt(u(o,29),this):this.p=new Zmt(u(o,29),this):s?this.Bb&ol?this.p=new ste(u(o,29),this,s):this.p=new Bvt(u(o,29),this,s):this.Bb&ol?this.p=new eZt(u(o,29),this):this.p=new Iz(u(o,29),this)),this.p},l.rk=function(){return(this.Bb&Uf)!=0},l._k=function(){return!1},l.al=function(){return!1},l.sk=function(){return(this.Bb&Jd)!=0},l.xk=function(){return Gst(this)},l.bl=function(){return!1},l.tk=function(){return(this.Bb&ol)!=0},l.cl=function(e){this.k=e},l.ui=function(e){wst(this,e)},l.Ib=function(){return oV(this)},l.e=!1,l.n=0,I(Rn,"EStructuralFeatureImpl",461),D(331,461,{110:1,94:1,93:1,35:1,155:1,197:1,58:1,179:1,69:1,114:1,480:1,54:1,99:1,331:1,158:1,461:1,291:1,119:1,120:1,692:1},Hnt),l.Lh=function(e,n,r){var s,o;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pn(),!!(this.Bb&256);case 3:return Pn(),!!(this.Bb&512);case 4:return he(this.s);case 5:return he(this.t);case 6:return Pn(),!!D6t(this);case 7:return Pn(),o=this.s,o>=1;case 8:return n?of(this):this.r;case 9:return this.q;case 10:return Pn(),!!(this.Bb&Uf);case 11:return Pn(),!!(this.Bb&b3);case 12:return Pn(),!!(this.Bb&u3);case 13:return this.j;case 14:return P7(this);case 15:return Pn(),!!(this.Bb&ol);case 16:return Pn(),!!(this.Bb&Jd);case 17:return Py(this);case 18:return Pn(),!!(this.Bb&Fc);case 19:return n?bat(this):bse(this)}return Ih(this,e-fr((wn(),G3)),En((s=u(jn(this,16),29),s||G3),e),n,r)},l.Wh=function(e){var n,r;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return D6t(this);case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&Mm(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&Mm(this.q).i==0);case 10:return(this.Bb&Uf)==0;case 11:return(this.Bb&b3)!=0;case 12:return(this.Bb&u3)!=0;case 13:return this.j!=null;case 14:return P7(this)!=null;case 15:return(this.Bb&ol)!=0;case 16:return(this.Bb&Jd)!=0;case 17:return!!Py(this);case 18:return(this.Bb&Fc)!=0;case 19:return!!bse(this)}return Dh(this,e-fr((wn(),G3)),En((n=u(jn(this,16),29),n||G3),e))},l.bi=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:wst(this,Gr(n));return;case 2:Dp(this,Ie(Me(n)));return;case 3:Mp(this,Ie(Me(n)));return;case 4:Sp(this,u(n,17).a);return;case 5:OWt(this,u(n,17).a);return;case 8:uw(this,u(n,142));return;case 9:s=hd(this,u(n,89),null),s&&s.oj();return;case 10:m7(this,Ie(Me(n)));return;case 11:x7(this,Ie(Me(n)));return;case 12:v7(this,Ie(Me(n)));return;case 13:fmt(this,Gr(n));return;case 15:y7(this,Ie(Me(n)));return;case 16:k7(this,Ie(Me(n)));return;case 18:qat(this,Ie(Me(n)));return}Fh(this,e-fr((wn(),G3)),En((r=u(jn(this,16),29),r||G3),e),n)},l.ii=function(){return wn(),G3},l.ki=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:Lt(this.Cb,90)&&t3(_l(u(this.Cb,90)),4),mu(this,null);return;case 2:Dp(this,!0);return;case 3:Mp(this,!0);return;case 4:Sp(this,0);return;case 5:this.b=0,Hy(this,1);return;case 8:uw(this,null);return;case 9:r=hd(this,null,null),r&&r.oj();return;case 10:m7(this,!0);return;case 11:x7(this,!1);return;case 12:v7(this,!1);return;case 13:this.i=null,Gq(this,null);return;case 15:y7(this,!1);return;case 16:k7(this,!1);return;case 18:qat(this,!1);return}Ph(this,e-fr((wn(),G3)),En((n=u(jn(this,16),29),n||G3),e))},l.pi=function(){bat(this),RE($o((il(),ja),this)),of(this),this.Bb|=1},l.Jk=function(){return D6t(this)},l.Yk=function(e,n){return this.b=0,this.a=null,y5t(this,e,n)},l.Zk=function(e){OWt(this,e)},l.Ib=function(){var e;return this.Db&64?oV(this):(e=new ef(oV(this)),e.a+=" (iD: ",gp(e,(this.Bb&Fc)!=0),e.a+=")",e.a)},l.b=0,I(Rn,"EAttributeImpl",331),D(364,448,{110:1,94:1,93:1,142:1,155:1,197:1,58:1,114:1,54:1,99:1,364:1,158:1,119:1,120:1,691:1}),l.dl=function(e){return e.Dh()==this},l.Ah=function(e){return xot(this,e)},l.Bh=function(e,n){this.w=null,this.Db=n<<16|this.Db&255,this.Cb=e},l.Lh=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return Jm(this);case 4:return this.ik();case 5:return this.F;case 6:return n?sh(this):zE(this);case 7:return!this.A&&(this.A=new Ju(Nu,this,7)),this.A}return Ih(this,e-fr(this.ii()),En((s=u(jn(this,16),29),s||this.ii()),e),n,r)},l.Sh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r);case 6:return this.Cb&&(r=(o=this.Db>>16,o>=0?xot(this,r):this.Cb.Th(this,-1-o,null,r))),hh(this,e,6,r)}return h=u(En((s=u(jn(this,16),29),s||this.ii()),n),69),h.wk().zk(this,Au(this),n-fr(this.ii()),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 6:return hh(this,null,6,r);case 7:return!this.A&&(this.A=new Ju(Nu,this,7)),so(this.A,e,r)}return o=u(En((s=u(jn(this,16),29),s||this.ii()),n),69),o.wk().Ak(this,Au(this),n-fr(this.ii()),e,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!Jm(this);case 4:return this.ik()!=null;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!zE(this);case 7:return!!this.A&&this.A.i!=0}return Dh(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:cq(this,Gr(n));return;case 2:Yrt(this,Gr(n));return;case 5:q7(this,Gr(n));return;case 7:!this.A&&(this.A=new Ju(Nu,this,7)),Ir(this.A),!this.A&&(this.A=new Ju(Nu,this,7)),gs(this.A,u(n,16));return}Fh(this,e-fr(this.ii()),En((r=u(jn(this,16),29),r||this.ii()),e),n)},l.ii=function(){return wn(),yTe},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:Lt(this.Cb,184)&&(u(this.Cb,184).tb=null),mu(this,null);return;case 2:p7(this,null),t7(this,this.D);return;case 5:q7(this,null);return;case 7:!this.A&&(this.A=new Ju(Nu,this,7)),Ir(this.A);return}Ph(this,e-fr(this.ii()),En((n=u(jn(this,16),29),n||this.ii()),e))},l.hk=function(){var e;return this.G==-1&&(this.G=(e=sh(this),e?Np(e.vi(),this):-1)),this.G},l.ik=function(){return null},l.jk=function(){return sh(this)},l.el=function(){return this.v},l.kk=function(){return Jm(this)},l.lk=function(){return this.D!=null?this.D:this.B},l.mk=function(){return this.F},l.fk=function(e){return hct(this,e)},l.fl=function(e){this.v=e},l.gl=function(e){tce(this,e)},l.hl=function(e){this.C=e},l.ui=function(e){cq(this,e)},l.Ib=function(){return bH(this)},l.C=null,l.D=null,l.G=-1,I(Rn,"EClassifierImpl",364),D(90,364,{110:1,94:1,93:1,29:1,142:1,155:1,197:1,58:1,114:1,54:1,99:1,90:1,364:1,158:1,481:1,119:1,120:1,691:1},Pj),l.dl=function(e){return Tan(this,e.Dh())},l.Lh=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return Jm(this);case 4:return null;case 5:return this.F;case 6:return n?sh(this):zE(this);case 7:return!this.A&&(this.A=new Ju(Nu,this,7)),this.A;case 8:return Pn(),!!(this.Bb&256);case 9:return Pn(),!!(this.Bb&512);case 10:return Yo(this);case 11:return!this.q&&(this.q=new Jt(vf,this,11,10)),this.q;case 12:return v5(this);case 13:return F_(this);case 14:return F_(this),this.r;case 15:return v5(this),this.k;case 16:return y6t(this);case 17:return pct(this);case 18:return Qd(this);case 19:return JH(this);case 20:return v5(this),this.o;case 21:return!this.s&&(this.s=new Jt(Wu,this,21,17)),this.s;case 22:return Wc(this);case 23:return ect(this)}return Ih(this,e-fr((wn(),w2)),En((s=u(jn(this,16),29),s||w2),e),n,r)},l.Sh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r);case 6:return this.Cb&&(r=(o=this.Db>>16,o>=0?xot(this,r):this.Cb.Th(this,-1-o,null,r))),hh(this,e,6,r);case 11:return!this.q&&(this.q=new Jt(vf,this,11,10)),vu(this.q,e,r);case 21:return!this.s&&(this.s=new Jt(Wu,this,21,17)),vu(this.s,e,r)}return h=u(En((s=u(jn(this,16),29),s||(wn(),w2)),n),69),h.wk().zk(this,Au(this),n-fr((wn(),w2)),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 6:return hh(this,null,6,r);case 7:return!this.A&&(this.A=new Ju(Nu,this,7)),so(this.A,e,r);case 11:return!this.q&&(this.q=new Jt(vf,this,11,10)),so(this.q,e,r);case 21:return!this.s&&(this.s=new Jt(Wu,this,21,17)),so(this.s,e,r);case 22:return so(Wc(this),e,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),w2)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),w2)),e,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!Jm(this);case 4:return!1;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!zE(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)!=0;case 9:return(this.Bb&512)!=0;case 10:return!!this.u&&Wc(this.u.a).i!=0&&!(this.n&&lot(this.n));case 11:return!!this.q&&this.q.i!=0;case 12:return v5(this).i!=0;case 13:return F_(this).i!=0;case 14:return F_(this),this.r.i!=0;case 15:return v5(this),this.k.i!=0;case 16:return y6t(this).i!=0;case 17:return pct(this).i!=0;case 18:return Qd(this).i!=0;case 19:return JH(this).i!=0;case 20:return v5(this),!!this.o;case 21:return!!this.s&&this.s.i!=0;case 22:return!!this.n&&lot(this.n);case 23:return ect(this).i!=0}return Dh(this,e-fr((wn(),w2)),En((n=u(jn(this,16),29),n||w2),e))},l.Zh=function(e){var n;return n=this.i==null||this.q&&this.q.i!=0?null:zO(this,e),n||e8t(this,e)},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:cq(this,Gr(n));return;case 2:Yrt(this,Gr(n));return;case 5:q7(this,Gr(n));return;case 7:!this.A&&(this.A=new Ju(Nu,this,7)),Ir(this.A),!this.A&&(this.A=new Ju(Nu,this,7)),gs(this.A,u(n,16));return;case 8:x5t(this,Ie(Me(n)));return;case 9:k5t(this,Ie(Me(n)));return;case 10:j_(Yo(this)),gs(Yo(this),u(n,16));return;case 11:!this.q&&(this.q=new Jt(vf,this,11,10)),Ir(this.q),!this.q&&(this.q=new Jt(vf,this,11,10)),gs(this.q,u(n,16));return;case 21:!this.s&&(this.s=new Jt(Wu,this,21,17)),Ir(this.s),!this.s&&(this.s=new Jt(Wu,this,21,17)),gs(this.s,u(n,16));return;case 22:Ir(Wc(this)),gs(Wc(this),u(n,16));return}Fh(this,e-fr((wn(),w2)),En((r=u(jn(this,16),29),r||w2),e),n)},l.ii=function(){return wn(),w2},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:Lt(this.Cb,184)&&(u(this.Cb,184).tb=null),mu(this,null);return;case 2:p7(this,null),t7(this,this.D);return;case 5:q7(this,null);return;case 7:!this.A&&(this.A=new Ju(Nu,this,7)),Ir(this.A);return;case 8:x5t(this,!1);return;case 9:k5t(this,!1);return;case 10:this.u&&j_(this.u);return;case 11:!this.q&&(this.q=new Jt(vf,this,11,10)),Ir(this.q);return;case 21:!this.s&&(this.s=new Jt(Wu,this,21,17)),Ir(this.s);return;case 22:this.n&&Ir(this.n);return}Ph(this,e-fr((wn(),w2)),En((n=u(jn(this,16),29),n||w2),e))},l.pi=function(){var e,n;if(v5(this),F_(this),y6t(this),pct(this),Qd(this),JH(this),ect(this),KS(Xcn(_l(this))),this.s)for(e=0,n=this.s.i;e=0;--n)Dt(this,n);return G5t(this,e)},l.Gk=function(){Ir(this)},l.Zi=function(e,n){return koe(this,e,n)},I(Yi,"EcoreEList",632),D(504,632,ic,mI),l.Li=function(){return!1},l.Lj=function(){return this.c},l.Mj=function(){return!1},l.ol=function(){return!0},l.Si=function(){return!0},l.Wi=function(e,n){return n},l.Yi=function(){return!1},l.c=0,I(Yi,"EObjectEList",504),D(83,504,ic,Ps),l.Mj=function(){return!0},l.ml=function(){return!1},l.al=function(){return!0},I(Yi,"EObjectContainmentEList",83),D(555,83,ic,az),l.Ni=function(){this.b=!0},l.Qj=function(){return this.b},l.Gk=function(){var e;Ir(this),Hl(this.e)?(e=this.b,this.b=!1,Ei(this.e,new jf(this.e,2,this.c,e,!1))):this.b=!1},l.b=!1,I(Yi,"EObjectContainmentEList/Unsettable",555),D(1161,555,ic,Qte),l.Ti=function(e,n){var r,s;return r=u(f_(this,e,n),89),Hl(this.e)&&hE(this,new jI(this.a,7,(wn(),xTe),he(n),(s=r.c,Lt(s,90)?u(s,29):xf),e)),r},l.Uj=function(e,n){return wwn(this,u(e,89),n)},l.Vj=function(e,n){return bwn(this,u(e,89),n)},l.Wj=function(e,n,r){return yyn(this,u(e,89),u(n,89),r)},l.Ij=function(e,n,r,s,o){switch(e){case 3:return zS(this,e,n,r,s,this.i>1);case 5:return zS(this,e,n,r,s,this.i-u(r,15).gc()>0);default:return new Tg(this.e,e,this.c,n,r,s,!0)}},l.Tj=function(){return!0},l.Qj=function(){return lot(this)},l.Gk=function(){Ir(this)},I(Rn,"EClassImpl/1",1161),D(1175,1174,RTt),l.dj=function(e){var n,r,s,o,h,d,m;if(r=e.gj(),r!=8){if(s=Jwn(e),s==0)switch(r){case 1:case 9:{m=e.kj(),m!=null&&(n=_l(u(m,481)),!n.c&&(n.c=new x0),Dq(n.c,e.jj())),d=e.ij(),d!=null&&(o=u(d,481),o.Bb&1||(n=_l(o),!n.c&&(n.c=new x0),Or(n.c,u(e.jj(),29))));break}case 3:{d=e.ij(),d!=null&&(o=u(d,481),o.Bb&1||(n=_l(o),!n.c&&(n.c=new x0),Or(n.c,u(e.jj(),29))));break}case 5:{if(d=e.ij(),d!=null)for(h=u(d,16).Kc();h.Ob();)o=u(h.Pb(),481),o.Bb&1||(n=_l(o),!n.c&&(n.c=new x0),Or(n.c,u(e.jj(),29)));break}case 4:{m=e.kj(),m!=null&&(o=u(m,481),o.Bb&1||(n=_l(o),!n.c&&(n.c=new x0),Dq(n.c,e.jj())));break}case 6:{if(m=e.kj(),m!=null)for(h=u(m,16).Kc();h.Ob();)o=u(h.Pb(),481),o.Bb&1||(n=_l(o),!n.c&&(n.c=new x0),Dq(n.c,e.jj()));break}}this.ql(s)}},l.ql=function(e){T0e(this,e)},l.b=63,I(Rn,"ESuperAdapter",1175),D(1176,1175,RTt,QGt),l.ql=function(e){t3(this,e)},I(Rn,"EClassImpl/10",1176),D(1165,710,ic),l.Ei=function(e,n){return Oot(this,e,n)},l.Fi=function(e){return fhe(this,e)},l.Gi=function(e,n){fO(this,e,n)},l.Hi=function(e){PI(this,e)},l.$i=function(e){return Q3t(this,e)},l.Xi=function(e,n){return Kst(this,e,n)},l.Wk=function(e,n){throw at(new Vr)},l.Ii=function(){return new $6(this)},l.Ji=function(){return new aI(this)},l.Ki=function(e){return QI(this,e)},l.Xk=function(e,n){throw at(new Vr)},l.Fk=function(e){return this},l.Qj=function(){return this.i!=0},l.Wb=function(e){throw at(new Vr)},l.Gk=function(){throw at(new Vr)},I(Yi,"EcoreEList/UnmodifiableEList",1165),D(328,1165,ic,$4),l.Yi=function(){return!1},I(Yi,"EcoreEList/UnmodifiableEList/FastCompare",328),D(1168,328,ic,Kce),l.dd=function(e){var n,r,s;if(Lt(e,179)&&(n=u(e,179),r=n.Lj(),r!=-1)){for(s=this.i;r4)if(this.fk(e)){if(this.al()){if(s=u(e,54),r=s.Eh(),m=r==this.b&&(this.ml()?s.yh(s.Fh(),u(En($u(this.b),this.Lj()).Hk(),29).kk())==yo(u(En($u(this.b),this.Lj()),19)).n:-1-s.Fh()==this.Lj()),this.nl()&&!m&&!r&&s.Jh()){for(o=0;o1||s==-1)):!1},l.ml=function(){var e,n,r;return n=En($u(this.b),this.Lj()),Lt(n,102)?(e=u(n,19),r=yo(e),!!r):!1},l.nl=function(){var e,n;return n=En($u(this.b),this.Lj()),Lt(n,102)?(e=u(n,19),(e.Bb&po)!=0):!1},l.dd=function(e){var n,r,s,o;if(s=this.zj(e),s>=0)return s;if(this.ol()){for(r=0,o=this.Ej();r=0;--e)QO(this,e,this.xj(e));return this.Fj()},l.Qc=function(e){var n;if(this.nl())for(n=this.Ej()-1;n>=0;--n)QO(this,n,this.xj(n));return this.Gj(e)},l.Gk=function(){j_(this)},l.Zi=function(e,n){return Zse(this,e,n)},I(Yi,"DelegatingEcoreEList",756),D(1171,756,qTt,dZt),l.qj=function(e,n){Wsn(this,e,u(n,29))},l.rj=function(e){Fin(this,u(e,29))},l.xj=function(e){var n,r;return n=u(Dt(Wc(this.a),e),89),r=n.c,Lt(r,90)?u(r,29):(wn(),xf)},l.Cj=function(e){var n,r;return n=u(r3(Wc(this.a),e),89),r=n.c,Lt(r,90)?u(r,29):(wn(),xf)},l.Dj=function(e,n){return Umn(this,e,u(n,29))},l.Li=function(){return!1},l.Ij=function(e,n,r,s,o){return null},l.sj=function(){return new tKt(this)},l.tj=function(){Ir(Wc(this.a))},l.uj=function(e){return Hue(this,e)},l.vj=function(e){var n,r;for(r=e.Kc();r.Ob();)if(n=r.Pb(),!Hue(this,n))return!1;return!0},l.wj=function(e){var n,r,s;if(Lt(e,15)&&(s=u(e,15),s.gc()==Wc(this.a).i)){for(n=s.Kc(),r=new Zn(this);n.Ob();)if($t(n.Pb())!==$t(ar(r)))return!1;return!0}return!1},l.yj=function(){var e,n,r,s,o;for(r=1,n=new Zn(Wc(this.a));n.e!=n.i.gc();)e=u(ar(n),89),s=(o=e.c,Lt(o,90)?u(o,29):(wn(),xf)),r=31*r+(s?Em(s):0);return r},l.zj=function(e){var n,r,s,o;for(s=0,r=new Zn(Wc(this.a));r.e!=r.i.gc();){if(n=u(ar(r),89),$t(e)===$t((o=n.c,Lt(o,90)?u(o,29):(wn(),xf))))return s;++s}return-1},l.Aj=function(){return Wc(this.a).i==0},l.Bj=function(){return null},l.Ej=function(){return Wc(this.a).i},l.Fj=function(){var e,n,r,s,o,h;for(h=Wc(this.a).i,o=Vt(aa,Ln,1,h,5,1),r=0,n=new Zn(Wc(this.a));n.e!=n.i.gc();)e=u(ar(n),89),o[r++]=(s=e.c,Lt(s,90)?u(s,29):(wn(),xf));return o},l.Gj=function(e){var n,r,s,o,h,d,m;for(m=Wc(this.a).i,e.lengthm&&ls(e,m,null),s=0,r=new Zn(Wc(this.a));r.e!=r.i.gc();)n=u(ar(r),89),h=(d=n.c,Lt(d,90)?u(d,29):(wn(),xf)),ls(e,s++,h);return e},l.Hj=function(){var e,n,r,s,o;for(o=new dp,o.a+="[",e=Wc(this.a),n=0,s=Wc(this.a).i;n>16,o>=0?xot(this,r):this.Cb.Th(this,-1-o,null,r))),hh(this,e,6,r);case 9:return!this.a&&(this.a=new Jt(Vg,this,9,5)),vu(this.a,e,r)}return h=u(En((s=u(jn(this,16),29),s||(wn(),m2)),n),69),h.wk().zk(this,Au(this),n-fr((wn(),m2)),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 6:return hh(this,null,6,r);case 7:return!this.A&&(this.A=new Ju(Nu,this,7)),so(this.A,e,r);case 9:return!this.a&&(this.a=new Jt(Vg,this,9,5)),so(this.a,e,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),m2)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),m2)),e,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!Jm(this);case 4:return!!u5t(this);case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!zE(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)==0;case 9:return!!this.a&&this.a.i!=0}return Dh(this,e-fr((wn(),m2)),En((n=u(jn(this,16),29),n||m2),e))},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:cq(this,Gr(n));return;case 2:Yrt(this,Gr(n));return;case 5:q7(this,Gr(n));return;case 7:!this.A&&(this.A=new Ju(Nu,this,7)),Ir(this.A),!this.A&&(this.A=new Ju(Nu,this,7)),gs(this.A,u(n,16));return;case 8:lH(this,Ie(Me(n)));return;case 9:!this.a&&(this.a=new Jt(Vg,this,9,5)),Ir(this.a),!this.a&&(this.a=new Jt(Vg,this,9,5)),gs(this.a,u(n,16));return}Fh(this,e-fr((wn(),m2)),En((r=u(jn(this,16),29),r||m2),e),n)},l.ii=function(){return wn(),m2},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:Lt(this.Cb,184)&&(u(this.Cb,184).tb=null),mu(this,null);return;case 2:p7(this,null),t7(this,this.D);return;case 5:q7(this,null);return;case 7:!this.A&&(this.A=new Ju(Nu,this,7)),Ir(this.A);return;case 8:lH(this,!0);return;case 9:!this.a&&(this.a=new Jt(Vg,this,9,5)),Ir(this.a);return}Ph(this,e-fr((wn(),m2)),En((n=u(jn(this,16),29),n||m2),e))},l.pi=function(){var e,n;if(this.a)for(e=0,n=this.a.i;e>16==5?u(this.Cb,685):null}return Ih(this,e-fr((wn(),Zp)),En((s=u(jn(this,16),29),s||Zp),e),n,r)},l.Sh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r);case 5:return this.Cb&&(r=(o=this.Db>>16,o>=0?jhe(this,r):this.Cb.Th(this,-1-o,null,r))),hh(this,e,5,r)}return h=u(En((s=u(jn(this,16),29),s||(wn(),Zp)),n),69),h.wk().zk(this,Au(this),n-fr((wn(),Zp)),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 5:return hh(this,null,5,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),Zp)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),Zp)),e,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.d!=0;case 3:return!!this.b;case 4:return this.c!=null;case 5:return!!(this.Db>>16==5&&u(this.Cb,685))}return Dh(this,e-fr((wn(),Zp)),En((n=u(jn(this,16),29),n||Zp),e))},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:mu(this,Gr(n));return;case 2:Zst(this,u(n,17).a);return;case 3:B1e(this,u(n,2039));return;case 4:eat(this,Gr(n));return}Fh(this,e-fr((wn(),Zp)),En((r=u(jn(this,16),29),r||Zp),e),n)},l.ii=function(){return wn(),Zp},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:mu(this,null);return;case 2:Zst(this,0);return;case 3:B1e(this,null);return;case 4:eat(this,null);return}Ph(this,e-fr((wn(),Zp)),En((n=u(jn(this,16),29),n||Zp),e))},l.Ib=function(){var e;return e=this.c,e??this.zb},l.b=null,l.c=null,l.d=0,I(Rn,"EEnumLiteralImpl",582);var E_n=os(Rn,"EFactoryImpl/InternalEDateTimeFormat");D(498,1,{2114:1},AM),I(Rn,"EFactoryImpl/1ClientInternalEDateTimeFormat",498),D(248,120,{110:1,94:1,93:1,89:1,58:1,114:1,54:1,99:1,248:1,119:1,120:1},lm),l.Ch=function(e,n,r){var s;return r=hh(this,e,n,r),this.e&&Lt(e,179)&&(s=QH(this,this.e),s!=this.c&&(r=H7(this,s,r))),r},l.Lh=function(e,n,r){var s;switch(e){case 0:return this.f;case 1:return!this.d&&(this.d=new Ps(Do,this,1)),this.d;case 2:return n?lV(this):this.c;case 3:return this.b;case 4:return this.e;case 5:return n?dot(this):this.a}return Ih(this,e-fr((wn(),Nv)),En((s=u(jn(this,16),29),s||Nv),e),n,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return Due(this,null,r);case 1:return!this.d&&(this.d=new Ps(Do,this,1)),so(this.d,e,r);case 3:return Mue(this,null,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),Nv)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),Nv)),e,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.f;case 1:return!!this.d&&this.d.i!=0;case 2:return!!this.c;case 3:return!!this.b;case 4:return!!this.e;case 5:return!!this.a}return Dh(this,e-fr((wn(),Nv)),En((n=u(jn(this,16),29),n||Nv),e))},l.bi=function(e,n){var r;switch(e){case 0:ife(this,u(n,89));return;case 1:!this.d&&(this.d=new Ps(Do,this,1)),Ir(this.d),!this.d&&(this.d=new Ps(Do,this,1)),gs(this.d,u(n,16));return;case 3:zxt(this,u(n,89));return;case 4:a6t(this,u(n,850));return;case 5:YE(this,u(n,142));return}Fh(this,e-fr((wn(),Nv)),En((r=u(jn(this,16),29),r||Nv),e),n)},l.ii=function(){return wn(),Nv},l.ki=function(e){var n;switch(e){case 0:ife(this,null);return;case 1:!this.d&&(this.d=new Ps(Do,this,1)),Ir(this.d);return;case 3:zxt(this,null);return;case 4:a6t(this,null);return;case 5:YE(this,null);return}Ph(this,e-fr((wn(),Nv)),En((n=u(jn(this,16),29),n||Nv),e))},l.Ib=function(){var e;return e=new eh(qf(this)),e.a+=" (expression: ",xct(this,e),e.a+=")",e.a};var qIt;I(Rn,"EGenericTypeImpl",248),D(2067,2062,mU),l.Gi=function(e,n){lZt(this,e,n)},l.Wk=function(e,n){return lZt(this,this.gc(),e),n},l.$i=function(e){return jh(this.pj(),e)},l.Ii=function(){return this.Ji()},l.pj=function(){return new iKt(this)},l.Ji=function(){return this.Ki(0)},l.Ki=function(e){return this.pj().fd(e)},l.Xk=function(e,n){return Ky(this,e,!0),n},l.Ti=function(e,n){var r,s;return s=Tot(this,n),r=this.fd(e),r.Rb(s),s},l.Ui=function(e,n){var r;Ky(this,n,!0),r=this.fd(e),r.Rb(n)},I(Yi,"AbstractSequentialInternalEList",2067),D(495,2067,mU,sI),l.$i=function(e){return jh(this.pj(),e)},l.Ii=function(){return this.b==null?(bp(),bp(),KP):this.sl()},l.pj=function(){return new LQt(this.a,this.b)},l.Ji=function(){return this.b==null?(bp(),bp(),KP):this.sl()},l.Ki=function(e){var n,r;if(this.b==null){if(e<0||e>1)throw at(new Bo(uA+e+", size=0"));return bp(),bp(),KP}for(r=this.sl(),n=0;n0;)if(n=this.c[--this.d],(!this.e||n.pk()!=QT||n.Lj()!=0)&&(!this.vl()||this.b.Xh(n))){if(h=this.b.Nh(n,this.ul()),this.f=(vo(),u(n,69).xk()),this.f||n.Jk()){if(this.ul()?(s=u(h,15),this.k=s):(s=u(h,71),this.k=this.j=s),Lt(this.k,59)?(this.o=this.k.gc(),this.n=this.o):this.p=this.j?this.j.Ki(this.k.gc()):this.k.fd(this.k.gc()),this.p?Jfe(this,this.p):l1e(this))return o=this.p?this.p.Ub():this.j?this.j.$i(--this.n):this.k.Xb(--this.n),this.f?(e=u(o,76),e.Lk(),r=e.md(),this.i=r):(r=o,this.i=r),this.g=-3,!0}else if(h!=null)return this.k=null,this.p=null,r=h,this.i=r,this.g=-2,!0}return this.k=null,this.p=null,this.g=-1,!1}else return o=this.p?this.p.Ub():this.j?this.j.$i(--this.n):this.k.Xb(--this.n),this.f?(e=u(o,76),e.Lk(),r=e.md(),this.i=r):(r=o,this.i=r),this.g=-3,!0}},l.Pb=function(){return eH(this)},l.Tb=function(){return this.a},l.Ub=function(){var e;if(this.g<-1||this.Sb())return--this.a,this.g=0,e=this.i,this.Sb(),e;throw at(new cc)},l.Vb=function(){return this.a-1},l.Qb=function(){throw at(new Vr)},l.ul=function(){return!1},l.Wb=function(e){throw at(new Vr)},l.vl=function(){return!0},l.a=0,l.d=0,l.f=!1,l.g=0,l.n=0,l.o=0;var KP;I(Yi,"EContentsEList/FeatureIteratorImpl",287),D(711,287,vU,Qmt),l.ul=function(){return!0},I(Yi,"EContentsEList/ResolvingFeatureIteratorImpl",711),D(1178,711,vU,YJt),l.vl=function(){return!1},I(Rn,"ENamedElementImpl/1/1",1178),D(1179,287,vU,XJt),l.vl=function(){return!1},I(Rn,"ENamedElementImpl/1/2",1179),D(38,152,LN,Ry,Tst,ha,jst,Tg,jf,l4t,Lre,h4t,Dre,A3t,Mre,g4t,Ire,L3t,Ore,f4t,Nre,NS,jI,sst,d4t,Pre,D3t,Fre),l.Kj=function(){return K3t(this)},l.Rj=function(){var e;return e=K3t(this),e?e.ik():null},l.hj=function(e){return this.b==-1&&this.a&&(this.b=this.c.Hh(this.a.Lj(),this.a.pk())),this.c.yh(this.b,e)},l.jj=function(){return this.c},l.Sj=function(){var e;return e=K3t(this),e?e.tk():!1},l.b=-1,I(Rn,"ENotificationImpl",38),D(411,291,{110:1,94:1,93:1,155:1,197:1,58:1,62:1,114:1,480:1,54:1,99:1,158:1,411:1,291:1,119:1,120:1},Vnt),l.Ah=function(e){return qhe(this,e)},l.Lh=function(e,n,r){var s,o,h;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pn(),!!(this.Bb&256);case 3:return Pn(),!!(this.Bb&512);case 4:return he(this.s);case 5:return he(this.t);case 6:return Pn(),h=this.t,h>1||h==-1;case 7:return Pn(),o=this.s,o>=1;case 8:return n?of(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?u(this.Cb,29):null;case 11:return!this.d&&(this.d=new Ju(Nu,this,11)),this.d;case 12:return!this.c&&(this.c=new Jt(Ov,this,12,10)),this.c;case 13:return!this.a&&(this.a=new lI(this,this)),this.a;case 14:return Al(this)}return Ih(this,e-fr((wn(),tb)),En((s=u(jn(this,16),29),s||tb),e),n,r)},l.Sh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r);case 10:return this.Cb&&(r=(o=this.Db>>16,o>=0?qhe(this,r):this.Cb.Th(this,-1-o,null,r))),hh(this,e,10,r);case 12:return!this.c&&(this.c=new Jt(Ov,this,12,10)),vu(this.c,e,r)}return h=u(En((s=u(jn(this,16),29),s||(wn(),tb)),n),69),h.wk().zk(this,Au(this),n-fr((wn(),tb)),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 9:return Vit(this,r);case 10:return hh(this,null,10,r);case 11:return!this.d&&(this.d=new Ju(Nu,this,11)),so(this.d,e,r);case 12:return!this.c&&(this.c=new Jt(Ov,this,12,10)),so(this.c,e,r);case 14:return so(Al(this),e,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),tb)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),tb)),e,r)},l.Wh=function(e){var n,r,s;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return s=this.t,s>1||s==-1;case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&Mm(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&Mm(this.q).i==0);case 10:return!!(this.Db>>16==10&&u(this.Cb,29));case 11:return!!this.d&&this.d.i!=0;case 12:return!!this.c&&this.c.i!=0;case 13:return!!this.a&&Al(this.a.a).i!=0&&!(this.b&&hot(this.b));case 14:return!!this.b&&hot(this.b)}return Dh(this,e-fr((wn(),tb)),En((n=u(jn(this,16),29),n||tb),e))},l.bi=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:mu(this,Gr(n));return;case 2:Dp(this,Ie(Me(n)));return;case 3:Mp(this,Ie(Me(n)));return;case 4:Sp(this,u(n,17).a);return;case 5:Hy(this,u(n,17).a);return;case 8:uw(this,u(n,142));return;case 9:s=hd(this,u(n,89),null),s&&s.oj();return;case 11:!this.d&&(this.d=new Ju(Nu,this,11)),Ir(this.d),!this.d&&(this.d=new Ju(Nu,this,11)),gs(this.d,u(n,16));return;case 12:!this.c&&(this.c=new Jt(Ov,this,12,10)),Ir(this.c),!this.c&&(this.c=new Jt(Ov,this,12,10)),gs(this.c,u(n,16));return;case 13:!this.a&&(this.a=new lI(this,this)),j_(this.a),!this.a&&(this.a=new lI(this,this)),gs(this.a,u(n,16));return;case 14:Ir(Al(this)),gs(Al(this),u(n,16));return}Fh(this,e-fr((wn(),tb)),En((r=u(jn(this,16),29),r||tb),e),n)},l.ii=function(){return wn(),tb},l.ki=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:mu(this,null);return;case 2:Dp(this,!0);return;case 3:Mp(this,!0);return;case 4:Sp(this,0);return;case 5:Hy(this,1);return;case 8:uw(this,null);return;case 9:r=hd(this,null,null),r&&r.oj();return;case 11:!this.d&&(this.d=new Ju(Nu,this,11)),Ir(this.d);return;case 12:!this.c&&(this.c=new Jt(Ov,this,12,10)),Ir(this.c);return;case 13:this.a&&j_(this.a);return;case 14:this.b&&Ir(this.b);return}Ph(this,e-fr((wn(),tb)),En((n=u(jn(this,16),29),n||tb),e))},l.pi=function(){var e,n;if(this.c)for(e=0,n=this.c.i;em&&ls(e,m,null),s=0,r=new Zn(Al(this.a));r.e!=r.i.gc();)n=u(ar(r),89),h=(d=n.c,d||(wn(),Sd)),ls(e,s++,h);return e},l.Hj=function(){var e,n,r,s,o;for(o=new dp,o.a+="[",e=Al(this.a),n=0,s=Al(this.a).i;n1);case 5:return zS(this,e,n,r,s,this.i-u(r,15).gc()>0);default:return new Tg(this.e,e,this.c,n,r,s,!0)}},l.Tj=function(){return!0},l.Qj=function(){return hot(this)},l.Gk=function(){Ir(this)},I(Rn,"EOperationImpl/2",1377),D(507,1,{2037:1,507:1},fQt),I(Rn,"EPackageImpl/1",507),D(14,83,ic,Jt),l.il=function(){return this.d},l.jl=function(){return this.b},l.ml=function(){return!0},l.b=0,I(Yi,"EObjectContainmentWithInverseEList",14),D(365,14,ic,z6),l.nl=function(){return!0},l.Wi=function(e,n){return yk(this,e,u(n,58))},I(Yi,"EObjectContainmentWithInverseEList/Resolving",365),D(307,365,ic,Iy),l.Ni=function(){this.a.tb=null},I(Rn,"EPackageImpl/2",307),D(1278,1,{},tet),I(Rn,"EPackageImpl/3",1278),D(733,45,E5,Z2t),l._b=function(e){return ba(e)?ost(this,e):!!Eo(this.f,e)},I(Rn,"EPackageRegistryImpl",733),D(518,291,{110:1,94:1,93:1,155:1,197:1,58:1,2116:1,114:1,480:1,54:1,99:1,158:1,518:1,291:1,119:1,120:1},Unt),l.Ah=function(e){return Hhe(this,e)},l.Lh=function(e,n,r){var s,o,h;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pn(),!!(this.Bb&256);case 3:return Pn(),!!(this.Bb&512);case 4:return he(this.s);case 5:return he(this.t);case 6:return Pn(),h=this.t,h>1||h==-1;case 7:return Pn(),o=this.s,o>=1;case 8:return n?of(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?u(this.Cb,62):null}return Ih(this,e-fr((wn(),K3)),En((s=u(jn(this,16),29),s||K3),e),n,r)},l.Sh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),vu(this.Ab,e,r);case 10:return this.Cb&&(r=(o=this.Db>>16,o>=0?Hhe(this,r):this.Cb.Th(this,-1-o,null,r))),hh(this,e,10,r)}return h=u(En((s=u(jn(this,16),29),s||(wn(),K3)),n),69),h.wk().zk(this,Au(this),n-fr((wn(),K3)),e,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 9:return Vit(this,r);case 10:return hh(this,null,10,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),K3)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),K3)),e,r)},l.Wh=function(e){var n,r,s;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return s=this.t,s>1||s==-1;case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&Mm(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&Mm(this.q).i==0);case 10:return!!(this.Db>>16==10&&u(this.Cb,62))}return Dh(this,e-fr((wn(),K3)),En((n=u(jn(this,16),29),n||K3),e))},l.ii=function(){return wn(),K3},I(Rn,"EParameterImpl",518),D(102,461,{110:1,94:1,93:1,155:1,197:1,58:1,19:1,179:1,69:1,114:1,480:1,54:1,99:1,158:1,102:1,461:1,291:1,119:1,120:1,692:1},nvt),l.Lh=function(e,n,r){var s,o,h,d;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pn(),!!(this.Bb&256);case 3:return Pn(),!!(this.Bb&512);case 4:return he(this.s);case 5:return he(this.t);case 6:return Pn(),d=this.t,d>1||d==-1;case 7:return Pn(),o=this.s,o>=1;case 8:return n?of(this):this.r;case 9:return this.q;case 10:return Pn(),!!(this.Bb&Uf);case 11:return Pn(),!!(this.Bb&b3);case 12:return Pn(),!!(this.Bb&u3);case 13:return this.j;case 14:return P7(this);case 15:return Pn(),!!(this.Bb&ol);case 16:return Pn(),!!(this.Bb&Jd);case 17:return Py(this);case 18:return Pn(),!!(this.Bb&Fc);case 19:return Pn(),h=yo(this),!!(h&&h.Bb&Fc);case 20:return Pn(),!!(this.Bb&po);case 21:return n?yo(this):this.b;case 22:return n?Z4t(this):ase(this);case 23:return!this.a&&(this.a=new G4(V3,this,23)),this.a}return Ih(this,e-fr((wn(),dx)),En((s=u(jn(this,16),29),s||dx),e),n,r)},l.Wh=function(e){var n,r,s,o;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return o=this.t,o>1||o==-1;case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&Mm(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&Mm(this.q).i==0);case 10:return(this.Bb&Uf)==0;case 11:return(this.Bb&b3)!=0;case 12:return(this.Bb&u3)!=0;case 13:return this.j!=null;case 14:return P7(this)!=null;case 15:return(this.Bb&ol)!=0;case 16:return(this.Bb&Jd)!=0;case 17:return!!Py(this);case 18:return(this.Bb&Fc)!=0;case 19:return s=yo(this),!!s&&(s.Bb&Fc)!=0;case 20:return(this.Bb&po)==0;case 21:return!!this.b;case 22:return!!ase(this);case 23:return!!this.a&&this.a.i!=0}return Dh(this,e-fr((wn(),dx)),En((n=u(jn(this,16),29),n||dx),e))},l.bi=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:wst(this,Gr(n));return;case 2:Dp(this,Ie(Me(n)));return;case 3:Mp(this,Ie(Me(n)));return;case 4:Sp(this,u(n,17).a);return;case 5:Hy(this,u(n,17).a);return;case 8:uw(this,u(n,142));return;case 9:s=hd(this,u(n,89),null),s&&s.oj();return;case 10:m7(this,Ie(Me(n)));return;case 11:x7(this,Ie(Me(n)));return;case 12:v7(this,Ie(Me(n)));return;case 13:fmt(this,Gr(n));return;case 15:y7(this,Ie(Me(n)));return;case 16:k7(this,Ie(Me(n)));return;case 18:wfn(this,Ie(Me(n)));return;case 20:M5t(this,Ie(Me(n)));return;case 21:L4t(this,u(n,19));return;case 23:!this.a&&(this.a=new G4(V3,this,23)),Ir(this.a),!this.a&&(this.a=new G4(V3,this,23)),gs(this.a,u(n,16));return}Fh(this,e-fr((wn(),dx)),En((r=u(jn(this,16),29),r||dx),e),n)},l.ii=function(){return wn(),dx},l.ki=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:Lt(this.Cb,90)&&t3(_l(u(this.Cb,90)),4),mu(this,null);return;case 2:Dp(this,!0);return;case 3:Mp(this,!0);return;case 4:Sp(this,0);return;case 5:Hy(this,1);return;case 8:uw(this,null);return;case 9:r=hd(this,null,null),r&&r.oj();return;case 10:m7(this,!0);return;case 11:x7(this,!1);return;case 12:v7(this,!1);return;case 13:this.i=null,Gq(this,null);return;case 15:y7(this,!1);return;case 16:k7(this,!1);return;case 18:D5t(this,!1),Lt(this.Cb,90)&&t3(_l(u(this.Cb,90)),2);return;case 20:M5t(this,!0);return;case 21:L4t(this,null);return;case 23:!this.a&&(this.a=new G4(V3,this,23)),Ir(this.a);return}Ph(this,e-fr((wn(),dx)),En((n=u(jn(this,16),29),n||dx),e))},l.pi=function(){Z4t(this),RE($o((il(),ja),this)),of(this),this.Bb|=1},l.uk=function(){return yo(this)},l._k=function(){var e;return e=yo(this),!!e&&(e.Bb&Fc)!=0},l.al=function(){return(this.Bb&Fc)!=0},l.bl=function(){return(this.Bb&po)!=0},l.Yk=function(e,n){return this.c=null,y5t(this,e,n)},l.Ib=function(){var e;return this.Db&64?oV(this):(e=new ef(oV(this)),e.a+=" (containment: ",gp(e,(this.Bb&Fc)!=0),e.a+=", resolveProxies: ",gp(e,(this.Bb&po)!=0),e.a+=")",e.a)},I(Rn,"EReferenceImpl",102),D(561,120,{110:1,44:1,94:1,93:1,136:1,58:1,114:1,54:1,99:1,561:1,119:1,120:1},wC),l.Fb=function(e){return this===e},l.ld=function(){return this.b},l.md=function(){return this.c},l.Hb=function(){return Em(this)},l.Di=function(e){kun(this,Gr(e))},l.nd=function(e){return oun(this,Gr(e))},l.Lh=function(e,n,r){var s;switch(e){case 0:return this.b;case 1:return this.c}return Ih(this,e-fr((wn(),wo)),En((s=u(jn(this,16),29),s||wo),e),n,r)},l.Wh=function(e){var n;switch(e){case 0:return this.b!=null;case 1:return this.c!=null}return Dh(this,e-fr((wn(),wo)),En((n=u(jn(this,16),29),n||wo),e))},l.bi=function(e,n){var r;switch(e){case 0:Eun(this,Gr(n));return;case 1:S4t(this,Gr(n));return}Fh(this,e-fr((wn(),wo)),En((r=u(jn(this,16),29),r||wo),e),n)},l.ii=function(){return wn(),wo},l.ki=function(e){var n;switch(e){case 0:C4t(this,null);return;case 1:S4t(this,null);return}Ph(this,e-fr((wn(),wo)),En((n=u(jn(this,16),29),n||wo),e))},l.Bi=function(){var e;return this.a==-1&&(e=this.b,this.a=e==null?0:_p(e)),this.a},l.Ci=function(e){this.a=e},l.Ib=function(){var e;return this.Db&64?qf(this):(e=new ef(qf(this)),e.a+=" (key: ",Mo(e,this.b),e.a+=", value: ",Mo(e,this.c),e.a+=")",e.a)},l.a=-1,l.b=null,l.c=null;var Mc=I(Rn,"EStringToStringMapEntryImpl",561),MTe=os(Yi,"FeatureMap/Entry/Internal");D(576,1,yU),l.xl=function(e){return this.yl(u(e,54))},l.yl=function(e){return this.xl(e)},l.Fb=function(e){var n,r;return this===e?!0:Lt(e,76)?(n=u(e,76),n.Lk()==this.c?(r=this.md(),r==null?n.md()==null:Ti(r,n.md())):!1):!1},l.Lk=function(){return this.c},l.Hb=function(){var e;return e=this.md(),$i(this.c)^(e==null?0:$i(e))},l.Ib=function(){var e,n;return e=this.c,n=sh(e.qk()).yi(),e.xe(),(n!=null&&n.length!=0?n+":"+e.xe():e.xe())+"="+this.md()},I(Rn,"EStructuralFeatureImpl/BasicFeatureMapEntry",576),D(791,576,yU,hvt),l.yl=function(e){return new hvt(this.c,e)},l.md=function(){return this.a},l.zl=function(e,n,r){return apn(this,e,this.a,n,r)},l.Al=function(e,n,r){return opn(this,e,this.a,n,r)},I(Rn,"EStructuralFeatureImpl/ContainmentUpdatingFeatureMapEntry",791),D(1350,1,{},dQt),l.yk=function(e,n,r,s,o){var h;return h=u(UE(e,this.b),220),h.Yl(this.a).Fk(s)},l.zk=function(e,n,r,s,o){var h;return h=u(UE(e,this.b),220),h.Pl(this.a,s,o)},l.Ak=function(e,n,r,s,o){var h;return h=u(UE(e,this.b),220),h.Ql(this.a,s,o)},l.Bk=function(e,n,r){var s;return s=u(UE(e,this.b),220),s.Yl(this.a).Qj()},l.Ck=function(e,n,r,s){var o;o=u(UE(e,this.b),220),o.Yl(this.a).Wb(s)},l.Dk=function(e,n,r){return u(UE(e,this.b),220).Yl(this.a)},l.Ek=function(e,n,r){var s;s=u(UE(e,this.b),220),s.Yl(this.a).Gk()},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateFeatureMapDelegator",1350),D(91,1,{},mp,X2,yp,ew),l.yk=function(e,n,r,s,o){var h;if(h=n.li(r),h==null&&n.mi(r,h=vV(this,e)),!o)switch(this.e){case 50:case 41:return u(h,597).bk();case 40:return u(h,220).Vl()}return h},l.zk=function(e,n,r,s,o){var h,d;return d=n.li(r),d==null&&n.mi(r,d=vV(this,e)),h=u(d,71).Wk(s,o),h},l.Ak=function(e,n,r,s,o){var h;return h=n.li(r),h!=null&&(o=u(h,71).Xk(s,o)),o},l.Bk=function(e,n,r){var s;return s=n.li(r),s!=null&&u(s,79).Qj()},l.Ck=function(e,n,r,s){var o;o=u(n.li(r),79),!o&&n.mi(r,o=vV(this,e)),o.Wb(s)},l.Dk=function(e,n,r){var s,o;return o=n.li(r),o==null&&n.mi(r,o=vV(this,e)),Lt(o,79)?u(o,79):(s=u(n.li(r),15),new nKt(s))},l.Ek=function(e,n,r){var s;s=u(n.li(r),79),!s&&n.mi(r,s=vV(this,e)),s.Gk()},l.b=0,l.e=0,I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateMany",91),D(512,1,{}),l.zk=function(e,n,r,s,o){throw at(new Vr)},l.Ak=function(e,n,r,s,o){throw at(new Vr)},l.Dk=function(e,n,r){return new hne(this,e,n,r)};var Q0;I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingle",512),D(1367,1,aht,hne),l.Fk=function(e){return this.a.yk(this.c,this.d,this.b,e,!0)},l.Qj=function(){return this.a.Bk(this.c,this.d,this.b)},l.Wb=function(e){this.a.Ck(this.c,this.d,this.b,e)},l.Gk=function(){this.a.Ek(this.c,this.d,this.b)},l.b=0,I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingle/1",1367),D(784,512,{},Zyt),l.yk=function(e,n,r,s,o){return oct(e,e.Ph(),e.Fh())==this.b?this.bl()&&s?Kot(e):e.Ph():null},l.zk=function(e,n,r,s,o){var h,d;return e.Ph()&&(o=(h=e.Fh(),h>=0?e.Ah(o):e.Ph().Th(e,-1-h,null,o))),d=ns(e.Dh(),this.e),e.Ch(s,d,o)},l.Ak=function(e,n,r,s,o){var h;return h=ns(e.Dh(),this.e),e.Ch(null,h,o)},l.Bk=function(e,n,r){var s;return s=ns(e.Dh(),this.e),!!e.Ph()&&e.Fh()==s},l.Ck=function(e,n,r,s){var o,h,d,m,k;if(s!=null&&!hct(this.a,s))throw at(new fE(xU+(Lt(s,58)?$xt(u(s,58).Dh()):a4t(Wl(s)))+kU+this.a+"'"));if(o=e.Ph(),d=ns(e.Dh(),this.e),$t(s)!==$t(o)||e.Fh()!=d&&s!=null){if(_7(e,u(s,58)))throw at(new zn(oA+e.Ib()));k=null,o&&(k=(h=e.Fh(),h>=0?e.Ah(k):e.Ph().Th(e,-1-h,null,k))),m=u(s,54),m&&(k=m.Rh(e,ns(m.Dh(),this.b),null,k)),k=e.Ch(m,d,k),k&&k.oj()}else e.vh()&&e.wh()&&Ei(e,new ha(e,1,d,s,s))},l.Ek=function(e,n,r){var s,o,h,d;s=e.Ph(),s?(d=(o=e.Fh(),o>=0?e.Ah(null):e.Ph().Th(e,-1-o,null,null)),h=ns(e.Dh(),this.e),d=e.Ch(null,h,d),d&&d.oj()):e.vh()&&e.wh()&&Ei(e,new NS(e,1,this.e,null,null))},l.bl=function(){return!1},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainer",784),D(1351,784,{},ete),l.bl=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainerResolving",1351),D(574,512,{}),l.yk=function(e,n,r,s,o){var h;return h=n.li(r),h==null?this.b:$t(h)===$t(Q0)?null:h},l.Bk=function(e,n,r){var s;return s=n.li(r),s!=null&&($t(s)===$t(Q0)||!Ti(s,this.b))},l.Ck=function(e,n,r,s){var o,h;e.vh()&&e.wh()?(o=(h=n.li(r),h==null?this.b:$t(h)===$t(Q0)?null:h),s==null?this.c!=null?(n.mi(r,null),s=this.b):this.b!=null?n.mi(r,Q0):n.mi(r,null):(this.Bl(s),n.mi(r,s)),Ei(e,this.d.Cl(e,1,this.e,o,s))):s==null?this.c!=null?n.mi(r,null):this.b!=null?n.mi(r,Q0):n.mi(r,null):(this.Bl(s),n.mi(r,s))},l.Ek=function(e,n,r){var s,o;e.vh()&&e.wh()?(s=(o=n.li(r),o==null?this.b:$t(o)===$t(Q0)?null:o),n.ni(r),Ei(e,this.d.Cl(e,1,this.e,s,this.b))):n.ni(r)},l.Bl=function(e){throw at(new dKt)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData",574),D(O5,1,{},mC),l.Cl=function(e,n,r,s,o){return new NS(e,n,r,s,o)},l.Dl=function(e,n,r,s,o,h){return new sst(e,n,r,s,o,h)};var HIt,VIt,UIt,GIt,KIt,WIt,YIt,s0t,XIt;I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator",O5),D(1368,O5,{},b1),l.Cl=function(e,n,r,s,o){return new D3t(e,n,r,Ie(Me(s)),Ie(Me(o)))},l.Dl=function(e,n,r,s,o,h){return new Fre(e,n,r,Ie(Me(s)),Ie(Me(o)),h)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/1",1368),D(1369,O5,{},uM),l.Cl=function(e,n,r,s,o){return new l4t(e,n,r,u(s,222).a,u(o,222).a)},l.Dl=function(e,n,r,s,o,h){return new Lre(e,n,r,u(s,222).a,u(o,222).a,h)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/2",1369),D(1370,O5,{},lM),l.Cl=function(e,n,r,s,o){return new h4t(e,n,r,u(s,180).a,u(o,180).a)},l.Dl=function(e,n,r,s,o,h){return new Dre(e,n,r,u(s,180).a,u(o,180).a,h)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/3",1370),D(1371,O5,{},u6),l.Cl=function(e,n,r,s,o){return new A3t(e,n,r,Rt(Ht(s)),Rt(Ht(o)))},l.Dl=function(e,n,r,s,o,h){return new Mre(e,n,r,Rt(Ht(s)),Rt(Ht(o)),h)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/4",1371),D(1372,O5,{},eet),l.Cl=function(e,n,r,s,o){return new g4t(e,n,r,u(s,161).a,u(o,161).a)},l.Dl=function(e,n,r,s,o,h){return new Ire(e,n,r,u(s,161).a,u(o,161).a,h)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/5",1372),D(1373,O5,{},net),l.Cl=function(e,n,r,s,o){return new L3t(e,n,r,u(s,17).a,u(o,17).a)},l.Dl=function(e,n,r,s,o,h){return new Ore(e,n,r,u(s,17).a,u(o,17).a,h)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/6",1373),D(1374,O5,{},ret),l.Cl=function(e,n,r,s,o){return new f4t(e,n,r,u(s,168).a,u(o,168).a)},l.Dl=function(e,n,r,s,o,h){return new Nre(e,n,r,u(s,168).a,u(o,168).a,h)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/7",1374),D(1375,O5,{},iet),l.Cl=function(e,n,r,s,o){return new d4t(e,n,r,u(s,191).a,u(o,191).a)},l.Dl=function(e,n,r,s,o,h){return new Pre(e,n,r,u(s,191).a,u(o,191).a,h)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/8",1375),D(1353,574,{},fne),l.Bl=function(e){if(!this.a.fk(e))throw at(new fE(xU+Wl(e)+kU+this.a+"'"))},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataDynamic",1353),D(1354,574,{},Zte),l.Bl=function(e){},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataStatic",1354),D(785,574,{}),l.Bk=function(e,n,r){var s;return s=n.li(r),s!=null},l.Ck=function(e,n,r,s){var o,h;e.vh()&&e.wh()?(o=!0,h=n.li(r),h==null?(o=!1,h=this.b):$t(h)===$t(Q0)&&(h=null),s==null?this.c!=null?(n.mi(r,null),s=this.b):n.mi(r,Q0):(this.Bl(s),n.mi(r,s)),Ei(e,this.d.Dl(e,1,this.e,h,s,!o))):s==null?this.c!=null?n.mi(r,null):n.mi(r,Q0):(this.Bl(s),n.mi(r,s))},l.Ek=function(e,n,r){var s,o;e.vh()&&e.wh()?(s=!0,o=n.li(r),o==null?(s=!1,o=this.b):$t(o)===$t(Q0)&&(o=null),n.ni(r),Ei(e,this.d.Dl(e,2,this.e,o,this.b,s))):n.ni(r)},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettable",785),D(1355,785,{},dne),l.Bl=function(e){if(!this.a.fk(e))throw at(new fE(xU+Wl(e)+kU+this.a+"'"))},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableDynamic",1355),D(1356,785,{},tee),l.Bl=function(e){},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableStatic",1356),D(410,512,{},Iz),l.yk=function(e,n,r,s,o){var h,d,m,k,T;if(T=n.li(r),this.tk()&&$t(T)===$t(Q0))return null;if(this.bl()&&s&&T!=null){if(m=u(T,54),m.Vh()&&(k=jb(e,m),m!=k)){if(!hct(this.a,k))throw at(new fE(xU+Wl(k)+kU+this.a+"'"));n.mi(r,T=k),this.al()&&(h=u(k,54),d=m.Th(e,this.b?ns(m.Dh(),this.b):-1-ns(e.Dh(),this.e),null,null),!h.Ph()&&(d=h.Rh(e,this.b?ns(h.Dh(),this.b):-1-ns(e.Dh(),this.e),null,d)),d&&d.oj()),e.vh()&&e.wh()&&Ei(e,new NS(e,9,this.e,m,k))}return T}else return T},l.zk=function(e,n,r,s,o){var h,d;return d=n.li(r),$t(d)===$t(Q0)&&(d=null),n.mi(r,s),this.Mj()?$t(d)!==$t(s)&&d!=null&&(h=u(d,54),o=h.Th(e,ns(h.Dh(),this.b),null,o)):this.al()&&d!=null&&(o=u(d,54).Th(e,-1-ns(e.Dh(),this.e),null,o)),e.vh()&&e.wh()&&(!o&&(o=new xb(4)),o.nj(new NS(e,1,this.e,d,s))),o},l.Ak=function(e,n,r,s,o){var h;return h=n.li(r),$t(h)===$t(Q0)&&(h=null),n.ni(r),e.vh()&&e.wh()&&(!o&&(o=new xb(4)),this.tk()?o.nj(new NS(e,2,this.e,h,null)):o.nj(new NS(e,1,this.e,h,null))),o},l.Bk=function(e,n,r){var s;return s=n.li(r),s!=null},l.Ck=function(e,n,r,s){var o,h,d,m,k;if(s!=null&&!hct(this.a,s))throw at(new fE(xU+(Lt(s,58)?$xt(u(s,58).Dh()):a4t(Wl(s)))+kU+this.a+"'"));k=n.li(r),m=k!=null,this.tk()&&$t(k)===$t(Q0)&&(k=null),d=null,this.Mj()?$t(k)!==$t(s)&&(k!=null&&(o=u(k,54),d=o.Th(e,ns(o.Dh(),this.b),null,d)),s!=null&&(o=u(s,54),d=o.Rh(e,ns(o.Dh(),this.b),null,d))):this.al()&&$t(k)!==$t(s)&&(k!=null&&(d=u(k,54).Th(e,-1-ns(e.Dh(),this.e),null,d)),s!=null&&(d=u(s,54).Rh(e,-1-ns(e.Dh(),this.e),null,d))),s==null&&this.tk()?n.mi(r,Q0):n.mi(r,s),e.vh()&&e.wh()?(h=new sst(e,1,this.e,k,s,this.tk()&&!m),d?(d.nj(h),d.oj()):Ei(e,h)):d&&d.oj()},l.Ek=function(e,n,r){var s,o,h,d,m;m=n.li(r),d=m!=null,this.tk()&&$t(m)===$t(Q0)&&(m=null),h=null,m!=null&&(this.Mj()?(s=u(m,54),h=s.Th(e,ns(s.Dh(),this.b),null,h)):this.al()&&(h=u(m,54).Th(e,-1-ns(e.Dh(),this.e),null,h))),n.ni(r),e.vh()&&e.wh()?(o=new sst(e,this.tk()?2:1,this.e,m,null,d),h?(h.nj(o),h.oj()):Ei(e,o)):h&&h.oj()},l.Mj=function(){return!1},l.al=function(){return!1},l.bl=function(){return!1},l.tk=function(){return!1},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObject",410),D(575,410,{},uit),l.al=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainment",575),D(1359,575,{},JJt),l.bl=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentResolving",1359),D(787,575,{},Jmt),l.tk=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettable",787),D(1361,787,{},ZJt),l.bl=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettableResolving",1361),D(650,575,{},kit),l.Mj=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverse",650),D(1360,650,{},nte),l.bl=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseResolving",1360),D(788,650,{},Rvt),l.tk=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable",788),D(1362,788,{},rte),l.bl=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving",1362),D(651,410,{},Zmt),l.bl=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolving",651),D(1363,651,{},tZt),l.tk=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingUnsettable",1363),D(789,651,{},Fvt),l.Mj=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverse",789),D(1364,789,{},ite),l.tk=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable",1364),D(1357,410,{},eZt),l.tk=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectUnsettable",1357),D(786,410,{},Bvt),l.Mj=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverse",786),D(1358,786,{},ste),l.tk=function(){return!0},I(Rn,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverseUnsettable",1358),D(790,576,yU,Nyt),l.yl=function(e){return new Nyt(this.a,this.c,e)},l.md=function(){return this.b},l.zl=function(e,n,r){return i0n(this,e,this.b,r)},l.Al=function(e,n,r){return s0n(this,e,this.b,r)},I(Rn,"EStructuralFeatureImpl/InverseUpdatingFeatureMapEntry",790),D(1365,1,aht,nKt),l.Fk=function(e){return this.a},l.Qj=function(){return Lt(this.a,97)?u(this.a,97).Qj():!this.a.dc()},l.Wb=function(e){this.a.$b(),this.a.Gc(u(e,15))},l.Gk=function(){Lt(this.a,97)?u(this.a,97).Gk():this.a.$b()},I(Rn,"EStructuralFeatureImpl/SettingMany",1365),D(1366,576,yU,_ie),l.xl=function(e){return new fit((Ni(),DL),this.b.ri(this.a,e))},l.md=function(){return null},l.zl=function(e,n,r){return r},l.Al=function(e,n,r){return r},I(Rn,"EStructuralFeatureImpl/SimpleContentFeatureMapEntry",1366),D(652,576,yU,fit),l.xl=function(e){return new fit(this.c,e)},l.md=function(){return this.a},l.zl=function(e,n,r){return r},l.Al=function(e,n,r){return r},I(Rn,"EStructuralFeatureImpl/SimpleFeatureMapEntry",652),D(403,505,o0,x0),l.aj=function(e){return Vt(mf,Ln,29,e,0,1)},l.Yi=function(){return!1},I(Rn,"ESuperAdapter/1",403),D(456,448,{110:1,94:1,93:1,155:1,197:1,58:1,114:1,850:1,54:1,99:1,158:1,456:1,119:1,120:1},vC),l.Lh=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),this.Ab;case 1:return this.zb;case 2:return!this.a&&(this.a=new DS(this,Do,this)),this.a}return Ih(this,e-fr((wn(),Pv)),En((s=u(jn(this,16),29),s||Pv),e),n,r)},l.Uh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),so(this.Ab,e,r);case 2:return!this.a&&(this.a=new DS(this,Do,this)),so(this.a,e,r)}return o=u(En((s=u(jn(this,16),29),s||(wn(),Pv)),n),69),o.wk().Ak(this,Au(this),n-fr((wn(),Pv)),e,r)},l.Wh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return!!this.a&&this.a.i!=0}return Dh(this,e-fr((wn(),Pv)),En((n=u(jn(this,16),29),n||Pv),e))},l.bi=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab),!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),gs(this.Ab,u(n,16));return;case 1:mu(this,Gr(n));return;case 2:!this.a&&(this.a=new DS(this,Do,this)),Ir(this.a),!this.a&&(this.a=new DS(this,Do,this)),gs(this.a,u(n,16));return}Fh(this,e-fr((wn(),Pv)),En((r=u(jn(this,16),29),r||Pv),e),n)},l.ii=function(){return wn(),Pv},l.ki=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new Jt(ci,this,0,3)),Ir(this.Ab);return;case 1:mu(this,null);return;case 2:!this.a&&(this.a=new DS(this,Do,this)),Ir(this.a);return}Ph(this,e-fr((wn(),Pv)),En((n=u(jn(this,16),29),n||Pv),e))},I(Rn,"ETypeParameterImpl",456),D(457,83,ic,DS),l.Nj=function(e,n){return v3n(this,u(e,89),n)},l.Oj=function(e,n){return y3n(this,u(e,89),n)},I(Rn,"ETypeParameterImpl/1",457),D(647,45,E5,Gnt),l.ec=function(){return new s$(this)},I(Rn,"ETypeParameterImpl/2",647),D(570,dd,sl,s$),l.Fc=function(e){return _Zt(this,u(e,89))},l.Gc=function(e){var n,r,s;for(s=!1,r=e.Kc();r.Ob();)n=u(r.Pb(),89),hi(this.a,n,"")==null&&(s=!0);return s},l.$b=function(){dl(this.a)},l.Hc=function(e){return Tu(this.a,e)},l.Kc=function(){var e;return e=new sw(new mr(this.a).a),new a$(e)},l.Mc=function(e){return wse(this,e)},l.gc=function(){return QC(this.a)},I(Rn,"ETypeParameterImpl/2/1",570),D(571,1,wa,a$),l.Nb=function(e){Na(this,e)},l.Pb=function(){return u(Um(this.a).ld(),89)},l.Ob=function(){return this.a.b},l.Qb=function(){Sae(this.a)},I(Rn,"ETypeParameterImpl/2/1/1",571),D(1329,45,E5,GKt),l._b=function(e){return ba(e)?ost(this,e):!!Eo(this.f,e)},l.xc=function(e){var n,r;return n=ba(e)?nu(this,e):Ko(Eo(this.f,e)),Lt(n,851)?(r=u(n,851),n=r.Kk(),hi(this,u(e,241),n),n):n??(e==null?(hrt(),OTe):null)},I(Rn,"EValidatorRegistryImpl",1329),D(1349,720,{110:1,94:1,93:1,479:1,155:1,58:1,114:1,2040:1,54:1,99:1,158:1,119:1,120:1},l6),l.ri=function(e,n){switch(e.hk()){case 21:case 22:case 23:case 24:case 26:case 31:case 32:case 37:case 38:case 39:case 40:case 43:case 44:case 48:case 49:case 20:return n==null?null:rc(n);case 25:return bgn(n);case 27:return D0n(n);case 28:return M0n(n);case 29:return n==null?null:iJt(TL[0],u(n,206));case 41:return n==null?"":V2(u(n,296));case 42:return rc(n);case 50:return Gr(n);default:throw at(new zn(lT+e.xe()+fv))}},l.si=function(e){var n,r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht;switch(e.G==-1&&(e.G=($=sh(e),$?Np($.vi(),e):-1)),e.G){case 0:return r=new Hnt,r;case 1:return n=new aM,n;case 2:return s=new Pj,s;case 4:return o=new o$,o;case 5:return h=new UKt,h;case 6:return d=new bKt,d;case 7:return m=new Fj,m;case 10:return T=new E4,T;case 11:return A=new Vnt,A;case 12:return P=new xne,P;case 13:return U=new Unt,U;case 14:return J=new nvt,J;case 17:return tt=new wC,tt;case 18:return k=new lm,k;case 19:return ht=new vC,ht;default:throw at(new zn(Vlt+e.zb+fv))}},l.ti=function(e,n){switch(e.hk()){case 20:return n==null?null:new Twt(n);case 21:return n==null?null:new Sb(n);case 23:case 22:return n==null?null:Lwn(n);case 26:case 24:return n==null?null:GI(lh(n,-128,127)<<24>>24);case 25:return Wxn(n);case 27:return bvn(n);case 28:return wvn(n);case 29:return $3n(n);case 32:case 31:return n==null?null:Jy(n);case 38:case 37:return n==null?null:new z2t(n);case 40:case 39:return n==null?null:he(lh(n,Ga,xi));case 41:return null;case 42:return n==null,null;case 44:case 43:return n==null?null:Mg(mV(n));case 49:case 48:return n==null?null:w7(lh(n,EU,32767)<<16>>16);case 50:return n;default:throw at(new zn(lT+e.xe()+fv))}},I(Rn,"EcoreFactoryImpl",1349),D(560,184,{110:1,94:1,93:1,155:1,197:1,58:1,241:1,114:1,2038:1,54:1,99:1,158:1,184:1,560:1,119:1,120:1,690:1},Uee),l.gb=!1,l.hb=!1;var QIt,ITe=!1;I(Rn,"EcorePackageImpl",560),D(1234,1,{851:1},K1),l.Kk=function(){return wJt(),NTe},I(Rn,"EcorePackageImpl/1",1234),D(1243,1,li,JR),l.fk=function(e){return Lt(e,155)},l.gk=function(e){return Vt(HP,Ln,155,e,0,1)},I(Rn,"EcorePackageImpl/10",1243),D(1244,1,li,ZR),l.fk=function(e){return Lt(e,197)},l.gk=function(e){return Vt(Xdt,Ln,197,e,0,1)},I(Rn,"EcorePackageImpl/11",1244),D(1245,1,li,tj),l.fk=function(e){return Lt(e,58)},l.gk=function(e){return Vt(p2,Ln,58,e,0,1)},I(Rn,"EcorePackageImpl/12",1245),D(1246,1,li,ej),l.fk=function(e){return Lt(e,411)},l.gk=function(e){return Vt(vf,zTt,62,e,0,1)},I(Rn,"EcorePackageImpl/13",1246),D(1247,1,li,nj),l.fk=function(e){return Lt(e,241)},l.gk=function(e){return Vt(F1,Ln,241,e,0,1)},I(Rn,"EcorePackageImpl/14",1247),D(1248,1,li,rj),l.fk=function(e){return Lt(e,518)},l.gk=function(e){return Vt(Ov,Ln,2116,e,0,1)},I(Rn,"EcorePackageImpl/15",1248),D(1249,1,li,w1),l.fk=function(e){return Lt(e,102)},l.gk=function(e){return Vt(U3,I5,19,e,0,1)},I(Rn,"EcorePackageImpl/16",1249),D(1250,1,li,Bu),l.fk=function(e){return Lt(e,179)},l.gk=function(e){return Vt(Wu,I5,179,e,0,1)},I(Rn,"EcorePackageImpl/17",1250),D(1251,1,li,set),l.fk=function(e){return Lt(e,480)},l.gk=function(e){return Vt(H3,Ln,480,e,0,1)},I(Rn,"EcorePackageImpl/18",1251),D(1252,1,li,aet),l.fk=function(e){return Lt(e,561)},l.gk=function(e){return Vt(Mc,Nme,561,e,0,1)},I(Rn,"EcorePackageImpl/19",1252),D(1235,1,li,oet),l.fk=function(e){return Lt(e,331)},l.gk=function(e){return Vt(V3,I5,35,e,0,1)},I(Rn,"EcorePackageImpl/2",1235),D(1253,1,li,Ru),l.fk=function(e){return Lt(e,248)},l.gk=function(e){return Vt(Do,Qme,89,e,0,1)},I(Rn,"EcorePackageImpl/20",1253),D(1254,1,li,yC),l.fk=function(e){return Lt(e,456)},l.gk=function(e){return Vt(Nu,Ln,850,e,0,1)},I(Rn,"EcorePackageImpl/21",1254),D(1255,1,li,ij),l.fk=function(e){return Ty(e)},l.gk=function(e){return Vt(ys,ue,484,e,8,1)},I(Rn,"EcorePackageImpl/22",1255),D(1256,1,li,sj),l.fk=function(e){return Lt(e,195)},l.gk=function(e){return Vt(ul,ue,195,e,0,2)},I(Rn,"EcorePackageImpl/23",1256),D(1257,1,li,h6),l.fk=function(e){return Lt(e,222)},l.gk=function(e){return Vt(Fk,ue,222,e,0,1)},I(Rn,"EcorePackageImpl/24",1257),D(1258,1,li,cet),l.fk=function(e){return Lt(e,180)},l.gk=function(e){return Vt(vA,ue,180,e,0,1)},I(Rn,"EcorePackageImpl/25",1258),D(1259,1,li,X8),l.fk=function(e){return Lt(e,206)},l.gk=function(e){return Vt(OU,ue,206,e,0,1)},I(Rn,"EcorePackageImpl/26",1259),D(1260,1,li,uet),l.fk=function(e){return!1},l.gk=function(e){return Vt(pOt,Ln,2215,e,0,1)},I(Rn,"EcorePackageImpl/27",1260),D(1261,1,li,aj),l.fk=function(e){return Cy(e)},l.gk=function(e){return Vt(zs,ue,345,e,7,1)},I(Rn,"EcorePackageImpl/28",1261),D(1262,1,li,het),l.fk=function(e){return Lt(e,61)},l.gk=function(e){return Vt(DIt,l3,61,e,0,1)},I(Rn,"EcorePackageImpl/29",1262),D(1236,1,li,fet),l.fk=function(e){return Lt(e,519)},l.gk=function(e){return Vt(ci,{3:1,4:1,5:1,2033:1},598,e,0,1)},I(Rn,"EcorePackageImpl/3",1236),D(1263,1,li,xC),l.fk=function(e){return Lt(e,582)},l.gk=function(e){return Vt(OIt,Ln,2039,e,0,1)},I(Rn,"EcorePackageImpl/30",1263),D(1264,1,li,oj),l.fk=function(e){return Lt(e,160)},l.gk=function(e){return Vt(nOt,l3,160,e,0,1)},I(Rn,"EcorePackageImpl/31",1264),D(1265,1,li,hM),l.fk=function(e){return Lt(e,76)},l.gk=function(e){return Vt(XK,ave,76,e,0,1)},I(Rn,"EcorePackageImpl/32",1265),D(1266,1,li,kC),l.fk=function(e){return Lt(e,161)},l.gk=function(e){return Vt(wT,ue,161,e,0,1)},I(Rn,"EcorePackageImpl/33",1266),D(1267,1,li,det),l.fk=function(e){return Lt(e,17)},l.gk=function(e){return Vt(Ra,ue,17,e,0,1)},I(Rn,"EcorePackageImpl/34",1267),D(1268,1,li,get),l.fk=function(e){return Lt(e,296)},l.gk=function(e){return Vt(t9t,Ln,296,e,0,1)},I(Rn,"EcorePackageImpl/35",1268),D(1269,1,li,fM),l.fk=function(e){return Lt(e,168)},l.gk=function(e){return Vt(gv,ue,168,e,0,1)},I(Rn,"EcorePackageImpl/36",1269),D(1270,1,li,EC),l.fk=function(e){return Lt(e,85)},l.gk=function(e){return Vt(e9t,Ln,85,e,0,1)},I(Rn,"EcorePackageImpl/37",1270),D(1271,1,li,W1),l.fk=function(e){return Lt(e,599)},l.gk=function(e){return Vt(JIt,Ln,599,e,0,1)},I(Rn,"EcorePackageImpl/38",1271),D(1272,1,li,Q8),l.fk=function(e){return!1},l.gk=function(e){return Vt(bOt,Ln,2216,e,0,1)},I(Rn,"EcorePackageImpl/39",1272),D(1237,1,li,pet),l.fk=function(e){return Lt(e,90)},l.gk=function(e){return Vt(mf,Ln,29,e,0,1)},I(Rn,"EcorePackageImpl/4",1237),D(1273,1,li,J8),l.fk=function(e){return Lt(e,191)},l.gk=function(e){return Vt(pv,ue,191,e,0,1)},I(Rn,"EcorePackageImpl/40",1273),D(1274,1,li,dM),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I(Rn,"EcorePackageImpl/41",1274),D(1275,1,li,R2),l.fk=function(e){return Lt(e,596)},l.gk=function(e){return Vt(IIt,Ln,596,e,0,1)},I(Rn,"EcorePackageImpl/42",1275),D(1276,1,li,TC),l.fk=function(e){return!1},l.gk=function(e){return Vt(wOt,ue,2217,e,0,1)},I(Rn,"EcorePackageImpl/43",1276),D(1277,1,li,gM),l.fk=function(e){return Lt(e,44)},l.gk=function(e){return Vt(Sw,xV,44,e,0,1)},I(Rn,"EcorePackageImpl/44",1277),D(1238,1,li,m1),l.fk=function(e){return Lt(e,142)},l.gk=function(e){return Vt(B1,Ln,142,e,0,1)},I(Rn,"EcorePackageImpl/5",1238),D(1239,1,li,CC),l.fk=function(e){return Lt(e,156)},l.gk=function(e){return Vt(n0t,Ln,156,e,0,1)},I(Rn,"EcorePackageImpl/6",1239),D(1240,1,li,Y1),l.fk=function(e){return Lt(e,468)},l.gk=function(e){return Vt(YK,Ln,685,e,0,1)},I(Rn,"EcorePackageImpl/7",1240),D(1241,1,li,X1),l.fk=function(e){return Lt(e,582)},l.gk=function(e){return Vt(Vg,Ln,694,e,0,1)},I(Rn,"EcorePackageImpl/8",1241),D(1242,1,li,bet),l.fk=function(e){return Lt(e,479)},l.gk=function(e){return Vt(EL,Ln,479,e,0,1)},I(Rn,"EcorePackageImpl/9",1242),D(1038,2080,Ome,dWt),l.Mi=function(e,n){i2n(this,u(n,424))},l.Qi=function(e,n){o1e(this,e,u(n,424))},I(Rn,"MinimalEObjectImpl/1ArrayDelegatingAdapterList",1038),D(1039,152,LN,Pee),l.jj=function(){return this.a.a},I(Rn,"MinimalEObjectImpl/1ArrayDelegatingAdapterList/1",1039),D(1067,1066,{},YQt),I("org.eclipse.emf.ecore.plugin","EcorePlugin",1067);var JIt=os(ove,"Resource");D(799,1524,cve),l.Hl=function(e){},l.Il=function(e){},l.El=function(){return!this.a&&(this.a=new Bnt(this)),this.a},l.Fl=function(e){var n,r,s,o,h;if(s=e.length,s>0)if(qn(0,e.length),e.charCodeAt(0)==47){for(h=new wu(4),o=1,n=1;n0&&(e=(Da(0,r,e.length),e.substr(0,r))));return O5n(this,e)},l.Gl=function(){return this.c},l.Ib=function(){var e;return V2(this.Rm)+"@"+(e=$i(this)>>>0,e.toString(16))+" uri='"+this.d+"'"},l.b=!1,I(oht,"ResourceImpl",799),D(1525,799,cve,rKt),I(oht,"BinaryResourceImpl",1525),D(1190,708,eht),l.bj=function(e){return Lt(e,58)?Thn(this,u(e,58)):Lt(e,599)?new Zn(u(e,599).El()):$t(e)===$t(this.f)?u(e,16).Kc():(_E(),GP.a)},l.Ob=function(){return O6t(this)},l.a=!1,I(Yi,"EcoreUtil/ContentTreeIterator",1190),D(1526,1190,eht,hee),l.bj=function(e){return $t(e)===$t(this.f)?u(e,15).Kc():new cie(u(e,58))},I(oht,"ResourceImpl/5",1526),D(658,2092,Xme,Bnt),l.Hc=function(e){return this.i<=4?L7(this,e):Lt(e,54)&&u(e,54).Jh()==this.a},l.Mi=function(e,n){e==this.i-1&&(this.a.b||(this.a.b=!0))},l.Oi=function(e,n){e==0?this.a.b||(this.a.b=!0):Fst(this,e,n)},l.Qi=function(e,n){},l.Ri=function(e,n,r){},l.Lj=function(){return 2},l.jj=function(){return this.a},l.Mj=function(){return!0},l.Nj=function(e,n){var r;return r=u(e,54),n=r.fi(this.a,n),n},l.Oj=function(e,n){var r;return r=u(e,54),r.fi(null,n)},l.Pj=function(){return!1},l.Si=function(){return!0},l.aj=function(e){return Vt(p2,Ln,58,e,0,1)},l.Yi=function(){return!1},I(oht,"ResourceImpl/ContentsEList",658),D(970,2062,W7,iKt),l.fd=function(e){return this.a.Ki(e)},l.gc=function(){return this.a.gc()},I(Yi,"AbstractSequentialInternalEList/1",970);var ZIt,tOt,ja,eOt;D(634,1,{},dte);var QK,JK;I(Yi,"BasicExtendedMetaData",634),D(1181,1,{},pQt),l.Jl=function(){return null},l.Kl=function(){return this.a==-2&&Ut(this,O3n(this.d,this.b)),this.a},l.Ll=function(){return null},l.Ml=function(){return mn(),mn(),co},l.xe=function(){return this.c==dT&&de(this,Mle(this.d,this.b)),this.c},l.Nl=function(){return 0},l.a=-2,l.c=dT,I(Yi,"BasicExtendedMetaData/EClassExtendedMetaDataImpl",1181),D(1182,1,{},Rre),l.Jl=function(){return this.a==(VE(),QK)&&Te(this,I8n(this.f,this.b)),this.a},l.Kl=function(){return 0},l.Ll=function(){return this.c==(VE(),QK)&&Yt(this,O8n(this.f,this.b)),this.c},l.Ml=function(){return!this.d&&ze(this,w7n(this.f,this.b)),this.d},l.xe=function(){return this.e==dT&&yn(this,Mle(this.f,this.b)),this.e},l.Nl=function(){return this.g==-2&&qe(this,Jyn(this.f,this.b)),this.g},l.e=dT,l.g=-2,I(Yi,"BasicExtendedMetaData/EDataTypeExtendedMetaDataImpl",1182),D(1180,1,{},bQt),l.b=!1,l.c=!1,I(Yi,"BasicExtendedMetaData/EPackageExtendedMetaDataImpl",1180),D(1183,1,{},jre),l.c=-2,l.e=dT,l.f=dT,I(Yi,"BasicExtendedMetaData/EStructuralFeatureExtendedMetaDataImpl",1183),D(593,632,ic,kz),l.Lj=function(){return this.c},l.ol=function(){return!1},l.Wi=function(e,n){return n},l.c=0,I(Yi,"EDataTypeEList",593);var nOt=os(Yi,"FeatureMap");D(78,593,{3:1,4:1,20:1,31:1,56:1,16:1,15:1,59:1,70:1,66:1,61:1,79:1,160:1,220:1,2036:1,71:1,97:1},ps),l.bd=function(e,n){Q6n(this,e,u(n,76))},l.Fc=function(e){return p6n(this,u(e,76))},l.Hi=function(e){xln(this,u(e,76))},l.Nj=function(e,n){return qan(this,u(e,76),n)},l.Oj=function(e,n){return Svt(this,u(e,76),n)},l.Ti=function(e,n){return EEn(this,e,n)},l.Wi=function(e,n){return u9n(this,e,u(n,76))},l.hd=function(e,n){return Rkn(this,e,u(n,76))},l.Uj=function(e,n){return Han(this,u(e,76),n)},l.Vj=function(e,n){return qZt(this,u(e,76),n)},l.Wj=function(e,n,r){return jyn(this,u(e,76),u(n,76),r)},l.Zi=function(e,n){return Dot(this,e,u(n,76))},l.Ol=function(e,n){return Tkt(this,e,n)},l.cd=function(e,n){var r,s,o,h,d,m,k,T,A;for(T=new $m(n.gc()),o=n.Kc();o.Ob();)if(s=u(o.Pb(),76),h=s.Lk(),Ng(this.e,h))(!h.Si()||!dq(this,h,s.md())&&!L7(T,s))&&Or(T,s);else{for(A=Lu(this.e.Dh(),h),r=u(this.g,124),d=!0,m=0;m=0;)if(n=e[this.c],this.k.am(n.Lk()))return this.j=this.f?n:n.md(),this.i=-2,!0;return this.i=-1,this.g=-1,!1},I(Yi,"BasicFeatureMap/FeatureEIterator",420),D(676,420,P0,Krt),l.ul=function(){return!0},I(Yi,"BasicFeatureMap/ResolvingFeatureEIterator",676),D(968,495,mU,sJt),l.pj=function(){return this},I(Yi,"EContentsEList/1",968),D(969,495,mU,LQt),l.ul=function(){return!1},I(Yi,"EContentsEList/2",969),D(967,287,vU,aJt),l.wl=function(e){},l.Ob=function(){return!1},l.Sb=function(){return!1},I(Yi,"EContentsEList/FeatureIteratorImpl/1",967),D(840,593,ic,Omt),l.Ni=function(){this.a=!0},l.Qj=function(){return this.a},l.Gk=function(){var e;Ir(this),Hl(this.e)?(e=this.a,this.a=!1,Ei(this.e,new jf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,I(Yi,"EDataTypeEList/Unsettable",840),D(1958,593,ic,dJt),l.Si=function(){return!0},I(Yi,"EDataTypeUniqueEList",1958),D(1959,840,ic,gJt),l.Si=function(){return!0},I(Yi,"EDataTypeUniqueEList/Unsettable",1959),D(147,83,ic,Ju),l.nl=function(){return!0},l.Wi=function(e,n){return yk(this,e,u(n,58))},I(Yi,"EObjectContainmentEList/Resolving",147),D(1184,555,ic,pJt),l.nl=function(){return!0},l.Wi=function(e,n){return yk(this,e,u(n,58))},I(Yi,"EObjectContainmentEList/Unsettable/Resolving",1184),D(766,14,ic,vvt),l.Ni=function(){this.a=!0},l.Qj=function(){return this.a},l.Gk=function(){var e;Ir(this),Hl(this.e)?(e=this.a,this.a=!1,Ei(this.e,new jf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,I(Yi,"EObjectContainmentWithInverseEList/Unsettable",766),D(1222,766,ic,AZt),l.nl=function(){return!0},l.Wi=function(e,n){return yk(this,e,u(n,58))},I(Yi,"EObjectContainmentWithInverseEList/Unsettable/Resolving",1222),D(757,504,ic,Nmt),l.Ni=function(){this.a=!0},l.Qj=function(){return this.a},l.Gk=function(){var e;Ir(this),Hl(this.e)?(e=this.a,this.a=!1,Ei(this.e,new jf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,I(Yi,"EObjectEList/Unsettable",757),D(338,504,ic,G4),l.nl=function(){return!0},l.Wi=function(e,n){return yk(this,e,u(n,58))},I(Yi,"EObjectResolvingEList",338),D(1844,757,ic,bJt),l.nl=function(){return!0},l.Wi=function(e,n){return yk(this,e,u(n,58))},I(Yi,"EObjectResolvingEList/Unsettable",1844),D(1527,1,{},wet);var OTe;I(Yi,"EObjectValidator",1527),D(559,504,ic,jz),l.il=function(){return this.d},l.jl=function(){return this.b},l.Mj=function(){return!0},l.ml=function(){return!0},l.b=0,I(Yi,"EObjectWithInverseEList",559),D(1225,559,ic,LZt),l.ll=function(){return!0},I(Yi,"EObjectWithInverseEList/ManyInverse",1225),D(635,559,ic,git),l.Ni=function(){this.a=!0},l.Qj=function(){return this.a},l.Gk=function(){var e;Ir(this),Hl(this.e)?(e=this.a,this.a=!1,Ei(this.e,new jf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,I(Yi,"EObjectWithInverseEList/Unsettable",635),D(1224,635,ic,DZt),l.ll=function(){return!0},I(Yi,"EObjectWithInverseEList/Unsettable/ManyInverse",1224),D(767,559,ic,yvt),l.nl=function(){return!0},l.Wi=function(e,n){return yk(this,e,u(n,58))},I(Yi,"EObjectWithInverseResolvingEList",767),D(32,767,ic,kn),l.ll=function(){return!0},I(Yi,"EObjectWithInverseResolvingEList/ManyInverse",32),D(768,635,ic,xvt),l.nl=function(){return!0},l.Wi=function(e,n){return yk(this,e,u(n,58))},I(Yi,"EObjectWithInverseResolvingEList/Unsettable",768),D(1223,768,ic,MZt),l.ll=function(){return!0},I(Yi,"EObjectWithInverseResolvingEList/Unsettable/ManyInverse",1223),D(1185,632,ic),l.Li=function(){return(this.b&1792)==0},l.Ni=function(){this.b|=1},l.kl=function(){return(this.b&4)!=0},l.Mj=function(){return(this.b&40)!=0},l.ll=function(){return(this.b&16)!=0},l.ml=function(){return(this.b&8)!=0},l.nl=function(){return(this.b&b3)!=0},l.al=function(){return(this.b&32)!=0},l.ol=function(){return(this.b&Uf)!=0},l.fk=function(e){return this.d?wie(this.d,e):this.Lk().Hk().fk(e)},l.Qj=function(){return this.b&2?(this.b&1)!=0:this.i!=0},l.Si=function(){return(this.b&128)!=0},l.Gk=function(){var e;Ir(this),this.b&2&&(Hl(this.e)?(e=(this.b&1)!=0,this.b&=-2,hE(this,new jf(this.e,2,ns(this.e.Dh(),this.Lk()),e,!1))):this.b&=-2)},l.Yi=function(){return(this.b&1536)==0},l.b=0,I(Yi,"EcoreEList/Generic",1185),D(1186,1185,ic,Ene),l.Lk=function(){return this.a},I(Yi,"EcoreEList/Dynamic",1186),D(765,66,o0,P2t),l.aj=function(e){return XI(this.a.a,e)},I(Yi,"EcoreEMap/1",765),D(764,83,ic,vyt),l.Mi=function(e,n){IH(this.b,u(n,136))},l.Oi=function(e,n){yce(this.b)},l.Pi=function(e,n,r){var s;++(s=this.b,u(n,136),s).e},l.Qi=function(e,n){jat(this.b,u(n,136))},l.Ri=function(e,n,r){jat(this.b,u(r,136)),$t(r)===$t(n)&&u(r,136).Ci($in(u(n,136).ld())),IH(this.b,u(n,136))},I(Yi,"EcoreEMap/DelegateEObjectContainmentEList",764),D(1220,141,$Tt,Boe),I(Yi,"EcoreEMap/Unsettable",1220),D(1221,764,ic,IZt),l.Ni=function(){this.a=!0},l.Qj=function(){return this.a},l.Gk=function(){var e;Ir(this),Hl(this.e)?(e=this.a,this.a=!1,Ei(this.e,new jf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,I(Yi,"EcoreEMap/Unsettable/UnsettableDelegateEObjectContainmentEList",1221),D(1189,215,E5,Tee),l.a=!1,l.b=!1,I(Yi,"EcoreUtil/Copier",1189),D(759,1,wa,cie),l.Nb=function(e){Na(this,e)},l.Ob=function(){return ble(this)},l.Pb=function(){var e;return ble(this),e=this.b,this.b=null,e},l.Qb=function(){this.a.Qb()},I(Yi,"EcoreUtil/ProperContentIterator",759),D(1528,1527,{},Bj);var NTe;I(Yi,"EcoreValidator",1528);var PTe;os(Yi,"FeatureMapUtil/Validator"),D(1295,1,{2041:1},T4),l.am=function(e){return!0},I(Yi,"FeatureMapUtil/1",1295),D(773,1,{2041:1},t8t),l.am=function(e){var n;return this.c==e?!0:(n=Me(tr(this.a,e)),n==null?j8n(this,e)?(cse(this.a,e,(Pn(),bT)),!0):(cse(this.a,e,(Pn(),t2)),!1):n==(Pn(),bT))},l.e=!1;var a0t;I(Yi,"FeatureMapUtil/BasicValidator",773),D(774,45,E5,Mmt),I(Yi,"FeatureMapUtil/BasicValidator/Cache",774),D(509,56,{20:1,31:1,56:1,16:1,15:1,61:1,79:1,71:1,97:1},eI),l.bd=function(e,n){Jde(this.c,this.b,e,n)},l.Fc=function(e){return Tkt(this.c,this.b,e)},l.cd=function(e,n){return aTn(this.c,this.b,e,n)},l.Gc=function(e){return xS(this,e)},l.Gi=function(e,n){egn(this.c,this.b,e,n)},l.Wk=function(e,n){return bkt(this.c,this.b,e,n)},l.$i=function(e){return dV(this.c,this.b,e,!1)},l.Ii=function(){return zQt(this.c,this.b)},l.Ji=function(){return _in(this.c,this.b)},l.Ki=function(e){return a0n(this.c,this.b,e)},l.Xk=function(e,n){return hZt(this,e,n)},l.$b=function(){T6(this)},l.Hc=function(e){return dq(this.c,this.b,e)},l.Ic=function(e){return spn(this.c,this.b,e)},l.Xb=function(e){return dV(this.c,this.b,e,!0)},l.Fk=function(e){return this},l.dd=function(e){return ddn(this.c,this.b,e)},l.dc=function(){return Q$(this)},l.Qj=function(){return!wO(this.c,this.b)},l.Kc=function(){return U0n(this.c,this.b)},l.ed=function(){return G0n(this.c,this.b)},l.fd=function(e){return E2n(this.c,this.b,e)},l.Ti=function(e,n){return dge(this.c,this.b,e,n)},l.Ui=function(e,n){u0n(this.c,this.b,e,n)},l.gd=function(e){return Vfe(this.c,this.b,e)},l.Mc=function(e){return cEn(this.c,this.b,e)},l.hd=function(e,n){return kge(this.c,this.b,e,n)},l.Wb=function(e){WH(this.c,this.b),xS(this,u(e,15))},l.gc=function(){return k2n(this.c,this.b)},l.Pc=function(){return p1n(this.c,this.b)},l.Qc=function(e){return gdn(this.c,this.b,e)},l.Ib=function(){var e,n;for(n=new dp,n.a+="[",e=zQt(this.c,this.b);Lat(e);)Mo(n,ES(LH(e))),Lat(e)&&(n.a+=ao);return n.a+="]",n.a},l.Gk=function(){WH(this.c,this.b)},I(Yi,"FeatureMapUtil/FeatureEList",509),D(644,38,LN,Cst),l.hj=function(e){return l_(this,e)},l.mj=function(e){var n,r,s,o,h,d,m;switch(this.d){case 1:case 2:{if(h=e.jj(),$t(h)===$t(this.c)&&l_(this,null)==e.hj(null))return this.g=e.ij(),e.gj()==1&&(this.d=1),!0;break}case 3:{switch(o=e.gj(),o){case 3:{if(h=e.jj(),$t(h)===$t(this.c)&&l_(this,null)==e.hj(null))return this.d=5,n=new $m(2),Or(n,this.g),Or(n,e.ij()),this.g=n,!0;break}}break}case 5:{switch(o=e.gj(),o){case 3:{if(h=e.jj(),$t(h)===$t(this.c)&&l_(this,null)==e.hj(null))return r=u(this.g,16),r.Fc(e.ij()),!0;break}}break}case 4:{switch(o=e.gj(),o){case 3:{if(h=e.jj(),$t(h)===$t(this.c)&&l_(this,null)==e.hj(null))return this.d=1,this.g=e.ij(),!0;break}case 4:{if(h=e.jj(),$t(h)===$t(this.c)&&l_(this,null)==e.hj(null))return this.d=6,m=new $m(2),Or(m,this.n),Or(m,e.kj()),this.n=m,d=lt(ut(Fr,1),ii,28,15,[this.o,e.lj()]),this.g=d,!0;break}}break}case 6:{switch(o=e.gj(),o){case 4:{if(h=e.jj(),$t(h)===$t(this.c)&&l_(this,null)==e.hj(null))return r=u(this.n,16),r.Fc(e.kj()),d=u(this.g,53),s=Vt(Fr,ii,28,d.length+1,15,1),Xc(d,0,s,0,d.length),s[d.length]=e.lj(),this.g=s,!0;break}}break}}return!1},I(Yi,"FeatureMapUtil/FeatureENotificationImpl",644),D(564,509,{20:1,31:1,56:1,16:1,15:1,61:1,79:1,160:1,220:1,2036:1,71:1,97:1},Sz),l.Ol=function(e,n){return Tkt(this.c,e,n)},l.Pl=function(e,n,r){return bkt(this.c,e,n,r)},l.Ql=function(e,n,r){return qkt(this.c,e,n,r)},l.Rl=function(){return this},l.Sl=function(e,n){return YO(this.c,e,n)},l.Tl=function(e){return u(dV(this.c,this.b,e,!1),76).Lk()},l.Ul=function(e){return u(dV(this.c,this.b,e,!1),76).md()},l.Vl=function(){return this.a},l.Wl=function(e){return!wO(this.c,e)},l.Xl=function(e,n){gV(this.c,e,n)},l.Yl=function(e){return $oe(this.c,e)},l.Zl=function(e){mhe(this.c,e)},I(Yi,"FeatureMapUtil/FeatureFeatureMap",564),D(1294,1,aht,gQt),l.Fk=function(e){return dV(this.b,this.a,-1,e)},l.Qj=function(){return!wO(this.b,this.a)},l.Wb=function(e){gV(this.b,this.a,e)},l.Gk=function(){WH(this.b,this.a)},I(Yi,"FeatureMapUtil/FeatureValue",1294);var i8,o0t,c0t,s8,FTe,WP=os(_U,"AnyType");D(680,63,Pg,trt),I(_U,"InvalidDatatypeValueException",680);var ZK=os(_U,lve),YP=os(_U,hve),rOt=os(_U,fve),BTe,Bc,iOt,Hw,RTe,jTe,$Te,zTe,qTe,HTe,VTe,UTe,GTe,KTe,WTe,gx,YTe,px,AL,XTe,Fv,XP,QP,QTe,LL,DL;D(844,516,{110:1,94:1,93:1,58:1,54:1,99:1,857:1},twt),l.Lh=function(e,n,r){switch(e){case 0:return r?(!this.c&&(this.c=new ps(this,0)),this.c):(!this.c&&(this.c=new ps(this,0)),this.c.b);case 1:return r?(!this.c&&(this.c=new ps(this,0)),u(ru(this.c,(Ni(),Hw)),160)):(!this.c&&(this.c=new ps(this,0)),u(u(ru(this.c,(Ni(),Hw)),160),220)).Vl();case 2:return r?(!this.b&&(this.b=new ps(this,2)),this.b):(!this.b&&(this.b=new ps(this,2)),this.b.b)}return Ih(this,e-fr(this.ii()),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():this.ii(),e),n,r)},l.Uh=function(e,n,r){var s;switch(n){case 0:return!this.c&&(this.c=new ps(this,0)),UO(this.c,e,r);case 1:return(!this.c&&(this.c=new ps(this,0)),u(u(ru(this.c,(Ni(),Hw)),160),71)).Xk(e,r);case 2:return!this.b&&(this.b=new ps(this,2)),UO(this.b,e,r)}return s=u(En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():this.ii(),n),69),s.wk().Ak(this,r4t(this),n-fr(this.ii()),e,r)},l.Wh=function(e){switch(e){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new ps(this,0)),u(ru(this.c,(Ni(),Hw)),160)).dc();case 2:return!!this.b&&this.b.i!=0}return Dh(this,e-fr(this.ii()),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():this.ii(),e))},l.bi=function(e,n){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),xI(this.c,n);return;case 1:(!this.c&&(this.c=new ps(this,0)),u(u(ru(this.c,(Ni(),Hw)),160),220)).Wb(n);return;case 2:!this.b&&(this.b=new ps(this,2)),xI(this.b,n);return}Fh(this,e-fr(this.ii()),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():this.ii(),e),n)},l.ii=function(){return Ni(),iOt},l.ki=function(e){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),Ir(this.c);return;case 1:(!this.c&&(this.c=new ps(this,0)),u(ru(this.c,(Ni(),Hw)),160)).$b();return;case 2:!this.b&&(this.b=new ps(this,2)),Ir(this.b);return}Ph(this,e-fr(this.ii()),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():this.ii(),e))},l.Ib=function(){var e;return this.j&4?qf(this):(e=new ef(qf(this)),e.a+=" (mixed: ",wS(e,this.c),e.a+=", anyAttribute: ",wS(e,this.b),e.a+=")",e.a)},I($s,"AnyTypeImpl",844),D(681,516,{110:1,94:1,93:1,58:1,54:1,99:1,2119:1,681:1},xet),l.Lh=function(e,n,r){switch(e){case 0:return this.a;case 1:return this.b}return Ih(this,e-fr((Ni(),gx)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():gx,e),n,r)},l.Wh=function(e){switch(e){case 0:return this.a!=null;case 1:return this.b!=null}return Dh(this,e-fr((Ni(),gx)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():gx,e))},l.bi=function(e,n){switch(e){case 0:lr(this,Gr(n));return;case 1:or(this,Gr(n));return}Fh(this,e-fr((Ni(),gx)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():gx,e),n)},l.ii=function(){return Ni(),gx},l.ki=function(e){switch(e){case 0:this.a=null;return;case 1:this.b=null;return}Ph(this,e-fr((Ni(),gx)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():gx,e))},l.Ib=function(){var e;return this.j&4?qf(this):(e=new ef(qf(this)),e.a+=" (data: ",Mo(e,this.a),e.a+=", target: ",Mo(e,this.b),e.a+=")",e.a)},l.a=null,l.b=null,I($s,"ProcessingInstructionImpl",681),D(682,844,{110:1,94:1,93:1,58:1,54:1,99:1,857:1,2120:1,682:1},KKt),l.Lh=function(e,n,r){switch(e){case 0:return r?(!this.c&&(this.c=new ps(this,0)),this.c):(!this.c&&(this.c=new ps(this,0)),this.c.b);case 1:return r?(!this.c&&(this.c=new ps(this,0)),u(ru(this.c,(Ni(),Hw)),160)):(!this.c&&(this.c=new ps(this,0)),u(u(ru(this.c,(Ni(),Hw)),160),220)).Vl();case 2:return r?(!this.b&&(this.b=new ps(this,2)),this.b):(!this.b&&(this.b=new ps(this,2)),this.b.b);case 3:return!this.c&&(this.c=new ps(this,0)),Gr(YO(this.c,(Ni(),AL),!0));case 4:return Evt(this.a,(!this.c&&(this.c=new ps(this,0)),Gr(YO(this.c,(Ni(),AL),!0))));case 5:return this.a}return Ih(this,e-fr((Ni(),px)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():px,e),n,r)},l.Wh=function(e){switch(e){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new ps(this,0)),u(ru(this.c,(Ni(),Hw)),160)).dc();case 2:return!!this.b&&this.b.i!=0;case 3:return!this.c&&(this.c=new ps(this,0)),Gr(YO(this.c,(Ni(),AL),!0))!=null;case 4:return Evt(this.a,(!this.c&&(this.c=new ps(this,0)),Gr(YO(this.c,(Ni(),AL),!0))))!=null;case 5:return!!this.a}return Dh(this,e-fr((Ni(),px)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():px,e))},l.bi=function(e,n){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),xI(this.c,n);return;case 1:(!this.c&&(this.c=new ps(this,0)),u(u(ru(this.c,(Ni(),Hw)),160),220)).Wb(n);return;case 2:!this.b&&(this.b=new ps(this,2)),xI(this.b,n);return;case 3:h3t(this,Gr(n));return;case 4:h3t(this,kvt(this.a,n));return;case 5:Sn(this,u(n,156));return}Fh(this,e-fr((Ni(),px)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():px,e),n)},l.ii=function(){return Ni(),px},l.ki=function(e){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),Ir(this.c);return;case 1:(!this.c&&(this.c=new ps(this,0)),u(ru(this.c,(Ni(),Hw)),160)).$b();return;case 2:!this.b&&(this.b=new ps(this,2)),Ir(this.b);return;case 3:!this.c&&(this.c=new ps(this,0)),gV(this.c,(Ni(),AL),null);return;case 4:h3t(this,kvt(this.a,null));return;case 5:this.a=null;return}Ph(this,e-fr((Ni(),px)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():px,e))},I($s,"SimpleAnyTypeImpl",682),D(683,516,{110:1,94:1,93:1,58:1,54:1,99:1,2121:1,683:1},WKt),l.Lh=function(e,n,r){switch(e){case 0:return r?(!this.a&&(this.a=new ps(this,0)),this.a):(!this.a&&(this.a=new ps(this,0)),this.a.b);case 1:return r?(!this.b&&(this.b=new nl((wn(),wo),Mc,this,1)),this.b):(!this.b&&(this.b=new nl((wn(),wo),Mc,this,1)),RI(this.b));case 2:return r?(!this.c&&(this.c=new nl((wn(),wo),Mc,this,2)),this.c):(!this.c&&(this.c=new nl((wn(),wo),Mc,this,2)),RI(this.c));case 3:return!this.a&&(this.a=new ps(this,0)),ru(this.a,(Ni(),XP));case 4:return!this.a&&(this.a=new ps(this,0)),ru(this.a,(Ni(),QP));case 5:return!this.a&&(this.a=new ps(this,0)),ru(this.a,(Ni(),LL));case 6:return!this.a&&(this.a=new ps(this,0)),ru(this.a,(Ni(),DL))}return Ih(this,e-fr((Ni(),Fv)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():Fv,e),n,r)},l.Uh=function(e,n,r){var s;switch(n){case 0:return!this.a&&(this.a=new ps(this,0)),UO(this.a,e,r);case 1:return!this.b&&(this.b=new nl((wn(),wo),Mc,this,1)),pz(this.b,e,r);case 2:return!this.c&&(this.c=new nl((wn(),wo),Mc,this,2)),pz(this.c,e,r);case 5:return!this.a&&(this.a=new ps(this,0)),hZt(ru(this.a,(Ni(),LL)),e,r)}return s=u(En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():(Ni(),Fv),n),69),s.wk().Ak(this,r4t(this),n-fr((Ni(),Fv)),e,r)},l.Wh=function(e){switch(e){case 0:return!!this.a&&this.a.i!=0;case 1:return!!this.b&&this.b.f!=0;case 2:return!!this.c&&this.c.f!=0;case 3:return!this.a&&(this.a=new ps(this,0)),!Q$(ru(this.a,(Ni(),XP)));case 4:return!this.a&&(this.a=new ps(this,0)),!Q$(ru(this.a,(Ni(),QP)));case 5:return!this.a&&(this.a=new ps(this,0)),!Q$(ru(this.a,(Ni(),LL)));case 6:return!this.a&&(this.a=new ps(this,0)),!Q$(ru(this.a,(Ni(),DL)))}return Dh(this,e-fr((Ni(),Fv)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():Fv,e))},l.bi=function(e,n){switch(e){case 0:!this.a&&(this.a=new ps(this,0)),xI(this.a,n);return;case 1:!this.b&&(this.b=new nl((wn(),wo),Mc,this,1)),Jq(this.b,n);return;case 2:!this.c&&(this.c=new nl((wn(),wo),Mc,this,2)),Jq(this.c,n);return;case 3:!this.a&&(this.a=new ps(this,0)),T6(ru(this.a,(Ni(),XP))),!this.a&&(this.a=new ps(this,0)),xS(ru(this.a,XP),u(n,16));return;case 4:!this.a&&(this.a=new ps(this,0)),T6(ru(this.a,(Ni(),QP))),!this.a&&(this.a=new ps(this,0)),xS(ru(this.a,QP),u(n,16));return;case 5:!this.a&&(this.a=new ps(this,0)),T6(ru(this.a,(Ni(),LL))),!this.a&&(this.a=new ps(this,0)),xS(ru(this.a,LL),u(n,16));return;case 6:!this.a&&(this.a=new ps(this,0)),T6(ru(this.a,(Ni(),DL))),!this.a&&(this.a=new ps(this,0)),xS(ru(this.a,DL),u(n,16));return}Fh(this,e-fr((Ni(),Fv)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():Fv,e),n)},l.ii=function(){return Ni(),Fv},l.ki=function(e){switch(e){case 0:!this.a&&(this.a=new ps(this,0)),Ir(this.a);return;case 1:!this.b&&(this.b=new nl((wn(),wo),Mc,this,1)),this.b.c.$b();return;case 2:!this.c&&(this.c=new nl((wn(),wo),Mc,this,2)),this.c.c.$b();return;case 3:!this.a&&(this.a=new ps(this,0)),T6(ru(this.a,(Ni(),XP)));return;case 4:!this.a&&(this.a=new ps(this,0)),T6(ru(this.a,(Ni(),QP)));return;case 5:!this.a&&(this.a=new ps(this,0)),T6(ru(this.a,(Ni(),LL)));return;case 6:!this.a&&(this.a=new ps(this,0)),T6(ru(this.a,(Ni(),DL)));return}Ph(this,e-fr((Ni(),Fv)),En(this.j&2?(!this.k&&(this.k=new Zh),this.k).Nk():Fv,e))},l.Ib=function(){var e;return this.j&4?qf(this):(e=new ef(qf(this)),e.a+=" (mixed: ",wS(e,this.a),e.a+=")",e.a)},I($s,"XMLTypeDocumentRootImpl",683),D(2028,720,{110:1,94:1,93:1,479:1,155:1,58:1,114:1,54:1,99:1,158:1,119:1,120:1,2122:1},Z8),l.ri=function(e,n){switch(e.hk()){case 7:case 8:case 9:case 10:case 16:case 22:case 23:case 24:case 25:case 26:case 32:case 33:case 34:case 36:case 37:case 44:case 45:case 50:case 51:case 53:case 55:case 56:case 57:case 58:case 60:case 61:case 4:return n==null?null:rc(n);case 19:case 28:case 29:case 35:case 38:case 39:case 41:case 46:case 52:case 54:case 5:return Gr(n);case 6:return Zsn(u(n,195));case 12:case 47:case 49:case 11:return upe(this,e,n);case 13:return n==null?null:lTn(u(n,247));case 15:case 14:return n==null?null:pln(Rt(Ht(n)));case 17:return sfe((Ni(),n));case 18:return sfe(n);case 21:case 20:return n==null?null:bln(u(n,161).a);case 27:return tan(u(n,195));case 30:return vhe((Ni(),u(n,15)));case 31:return vhe(u(n,15));case 40:return nan((Ni(),n));case 42:return afe((Ni(),n));case 43:return afe(n);case 59:case 48:return ean((Ni(),n));default:throw at(new zn(lT+e.xe()+fv))}},l.si=function(e){var n,r,s,o,h;switch(e.G==-1&&(e.G=(r=sh(e),r?Np(r.vi(),e):-1)),e.G){case 0:return n=new twt,n;case 1:return s=new xet,s;case 2:return o=new KKt,o;case 3:return h=new WKt,h;default:throw at(new zn(Vlt+e.zb+fv))}},l.ti=function(e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt;switch(e.hk()){case 5:case 52:case 4:return n;case 6:return cmn(n);case 8:case 7:return n==null?null:Wyn(n);case 9:return n==null?null:GI(lh((s=su(n,!0),s.length>0&&(qn(0,s.length),s.charCodeAt(0)==43)?(qn(1,s.length+1),s.substr(1)):s),-128,127)<<24>>24);case 10:return n==null?null:GI(lh((o=su(n,!0),o.length>0&&(qn(0,o.length),o.charCodeAt(0)==43)?(qn(1,o.length+1),o.substr(1)):o),-128,127)<<24>>24);case 11:return Gr(iv(this,(Ni(),$Te),n));case 12:return Gr(iv(this,(Ni(),zTe),n));case 13:return n==null?null:new Twt(su(n,!0));case 15:case 14:return w6n(n);case 16:return Gr(iv(this,(Ni(),qTe),n));case 17:return xle((Ni(),n));case 18:return xle(n);case 28:case 29:case 35:case 38:case 39:case 41:case 54:case 19:return su(n,!0);case 21:case 20:return _6n(n);case 22:return Gr(iv(this,(Ni(),HTe),n));case 23:return Gr(iv(this,(Ni(),VTe),n));case 24:return Gr(iv(this,(Ni(),UTe),n));case 25:return Gr(iv(this,(Ni(),GTe),n));case 26:return Gr(iv(this,(Ni(),KTe),n));case 27:return Xwn(n);case 30:return kle((Ni(),n));case 31:return kle(n);case 32:return n==null?null:he(lh((A=su(n,!0),A.length>0&&(qn(0,A.length),A.charCodeAt(0)==43)?(qn(1,A.length+1),A.substr(1)):A),Ga,xi));case 33:return n==null?null:new Sb((P=su(n,!0),P.length>0&&(qn(0,P.length),P.charCodeAt(0)==43)?(qn(1,P.length+1),P.substr(1)):P));case 34:return n==null?null:he(lh(($=su(n,!0),$.length>0&&(qn(0,$.length),$.charCodeAt(0)==43)?(qn(1,$.length+1),$.substr(1)):$),Ga,xi));case 36:return n==null?null:Mg(mV((U=su(n,!0),U.length>0&&(qn(0,U.length),U.charCodeAt(0)==43)?(qn(1,U.length+1),U.substr(1)):U)));case 37:return n==null?null:Mg(mV((J=su(n,!0),J.length>0&&(qn(0,J.length),J.charCodeAt(0)==43)?(qn(1,J.length+1),J.substr(1)):J)));case 40:return Kmn((Ni(),n));case 42:return Ele((Ni(),n));case 43:return Ele(n);case 44:return n==null?null:new Sb((tt=su(n,!0),tt.length>0&&(qn(0,tt.length),tt.charCodeAt(0)==43)?(qn(1,tt.length+1),tt.substr(1)):tt));case 45:return n==null?null:new Sb((ht=su(n,!0),ht.length>0&&(qn(0,ht.length),ht.charCodeAt(0)==43)?(qn(1,ht.length+1),ht.substr(1)):ht));case 46:return su(n,!1);case 47:return Gr(iv(this,(Ni(),WTe),n));case 59:case 48:return Gmn((Ni(),n));case 49:return Gr(iv(this,(Ni(),YTe),n));case 50:return n==null?null:w7(lh((Tt=su(n,!0),Tt.length>0&&(qn(0,Tt.length),Tt.charCodeAt(0)==43)?(qn(1,Tt.length+1),Tt.substr(1)):Tt),EU,32767)<<16>>16);case 51:return n==null?null:w7(lh((h=su(n,!0),h.length>0&&(qn(0,h.length),h.charCodeAt(0)==43)?(qn(1,h.length+1),h.substr(1)):h),EU,32767)<<16>>16);case 53:return Gr(iv(this,(Ni(),XTe),n));case 55:return n==null?null:w7(lh((d=su(n,!0),d.length>0&&(qn(0,d.length),d.charCodeAt(0)==43)?(qn(1,d.length+1),d.substr(1)):d),EU,32767)<<16>>16);case 56:return n==null?null:w7(lh((m=su(n,!0),m.length>0&&(qn(0,m.length),m.charCodeAt(0)==43)?(qn(1,m.length+1),m.substr(1)):m),EU,32767)<<16>>16);case 57:return n==null?null:Mg(mV((k=su(n,!0),k.length>0&&(qn(0,k.length),k.charCodeAt(0)==43)?(qn(1,k.length+1),k.substr(1)):k)));case 58:return n==null?null:Mg(mV((T=su(n,!0),T.length>0&&(qn(0,T.length),T.charCodeAt(0)==43)?(qn(1,T.length+1),T.substr(1)):T)));case 60:return n==null?null:he(lh((r=su(n,!0),r.length>0&&(qn(0,r.length),r.charCodeAt(0)==43)?(qn(1,r.length+1),r.substr(1)):r),Ga,xi));case 61:return n==null?null:he(lh(su(n,!0),Ga,xi));default:throw at(new zn(lT+e.xe()+fv))}};var JTe,sOt,ZTe,aOt;I($s,"XMLTypeFactoryImpl",2028),D(594,184,{110:1,94:1,93:1,155:1,197:1,58:1,241:1,114:1,54:1,99:1,158:1,184:1,119:1,120:1,690:1,2044:1,594:1},Gee),l.N=!1,l.O=!1;var t9e=!1;I($s,"XMLTypePackageImpl",594),D(1961,1,{851:1},tE),l.Kk=function(){return Okt(),u9e},I($s,"XMLTypePackageImpl/1",1961),D(1970,1,li,SC),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/10",1970),D(1971,1,li,met),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/11",1971),D(1972,1,li,vet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/12",1972),D(1973,1,li,f6),l.fk=function(e){return Cy(e)},l.gk=function(e){return Vt(zs,ue,345,e,7,1)},I($s,"XMLTypePackageImpl/13",1973),D(1974,1,li,cj),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/14",1974),D(1975,1,li,uj),l.fk=function(e){return Lt(e,15)},l.gk=function(e){return Vt(Vh,l3,15,e,0,1)},I($s,"XMLTypePackageImpl/15",1975),D(1976,1,li,yet),l.fk=function(e){return Lt(e,15)},l.gk=function(e){return Vt(Vh,l3,15,e,0,1)},I($s,"XMLTypePackageImpl/16",1976),D(1977,1,li,lj),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/17",1977),D(1978,1,li,hj),l.fk=function(e){return Lt(e,161)},l.gk=function(e){return Vt(wT,ue,161,e,0,1)},I($s,"XMLTypePackageImpl/18",1978),D(1979,1,li,pM),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/19",1979),D(1962,1,li,ket),l.fk=function(e){return Lt(e,857)},l.gk=function(e){return Vt(WP,Ln,857,e,0,1)},I($s,"XMLTypePackageImpl/2",1962),D(1980,1,li,_C),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/20",1980),D(1981,1,li,Eet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/21",1981),D(1982,1,li,Tet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/22",1982),D(1983,1,li,Cet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/23",1983),D(1984,1,li,_et),l.fk=function(e){return Lt(e,195)},l.gk=function(e){return Vt(ul,ue,195,e,0,2)},I($s,"XMLTypePackageImpl/24",1984),D(1985,1,li,Aet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/25",1985),D(1986,1,li,fj),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/26",1986),D(1987,1,li,Let),l.fk=function(e){return Lt(e,15)},l.gk=function(e){return Vt(Vh,l3,15,e,0,1)},I($s,"XMLTypePackageImpl/27",1987),D(1988,1,li,Det),l.fk=function(e){return Lt(e,15)},l.gk=function(e){return Vt(Vh,l3,15,e,0,1)},I($s,"XMLTypePackageImpl/28",1988),D(1989,1,li,Met),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/29",1989),D(1963,1,li,dj),l.fk=function(e){return Lt(e,681)},l.gk=function(e){return Vt(ZK,Ln,2119,e,0,1)},I($s,"XMLTypePackageImpl/3",1963),D(1990,1,li,Iet),l.fk=function(e){return Lt(e,17)},l.gk=function(e){return Vt(Ra,ue,17,e,0,1)},I($s,"XMLTypePackageImpl/30",1990),D(1991,1,li,Oet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/31",1991),D(1992,1,li,AC),l.fk=function(e){return Lt(e,168)},l.gk=function(e){return Vt(gv,ue,168,e,0,1)},I($s,"XMLTypePackageImpl/32",1992),D(1993,1,li,Net),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/33",1993),D(1994,1,li,Pet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/34",1994),D(1995,1,li,Fet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/35",1995),D(1996,1,li,Bet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/36",1996),D(1997,1,li,Ret),l.fk=function(e){return Lt(e,15)},l.gk=function(e){return Vt(Vh,l3,15,e,0,1)},I($s,"XMLTypePackageImpl/37",1997),D(1998,1,li,jet),l.fk=function(e){return Lt(e,15)},l.gk=function(e){return Vt(Vh,l3,15,e,0,1)},I($s,"XMLTypePackageImpl/38",1998),D(1999,1,li,gj),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/39",1999),D(1964,1,li,$et),l.fk=function(e){return Lt(e,682)},l.gk=function(e){return Vt(YP,Ln,2120,e,0,1)},I($s,"XMLTypePackageImpl/4",1964),D(2e3,1,li,pj),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/40",2e3),D(2001,1,li,zet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/41",2001),D(2002,1,li,bM),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/42",2002),D(2003,1,li,qet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/43",2003),D(2004,1,li,bj),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/44",2004),D(2005,1,li,Het),l.fk=function(e){return Lt(e,191)},l.gk=function(e){return Vt(pv,ue,191,e,0,1)},I($s,"XMLTypePackageImpl/45",2005),D(2006,1,li,wj),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/46",2006),D(2007,1,li,Vet),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/47",2007),D(2008,1,li,mj),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/48",2008),D(2009,1,li,vj),l.fk=function(e){return Lt(e,191)},l.gk=function(e){return Vt(pv,ue,191,e,0,1)},I($s,"XMLTypePackageImpl/49",2009),D(1965,1,li,yj),l.fk=function(e){return Lt(e,683)},l.gk=function(e){return Vt(rOt,Ln,2121,e,0,1)},I($s,"XMLTypePackageImpl/5",1965),D(2010,1,li,wM),l.fk=function(e){return Lt(e,168)},l.gk=function(e){return Vt(gv,ue,168,e,0,1)},I($s,"XMLTypePackageImpl/50",2010),D(2011,1,li,C4),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/51",2011),D(2012,1,li,LC),l.fk=function(e){return Lt(e,17)},l.gk=function(e){return Vt(Ra,ue,17,e,0,1)},I($s,"XMLTypePackageImpl/52",2012),D(1966,1,li,Q1),l.fk=function(e){return ba(e)},l.gk=function(e){return Vt(Pe,ue,2,e,6,1)},I($s,"XMLTypePackageImpl/6",1966),D(1967,1,li,xj),l.fk=function(e){return Lt(e,195)},l.gk=function(e){return Vt(ul,ue,195,e,0,2)},I($s,"XMLTypePackageImpl/7",1967),D(1968,1,li,eE),l.fk=function(e){return Ty(e)},l.gk=function(e){return Vt(ys,ue,484,e,8,1)},I($s,"XMLTypePackageImpl/8",1968),D(1969,1,li,mM),l.fk=function(e){return Lt(e,222)},l.gk=function(e){return Vt(Fk,ue,222,e,0,1)},I($s,"XMLTypePackageImpl/9",1969);var _d,nb,ML,tW,vt;D(55,63,Pg,Yr),I(qp,"RegEx/ParseException",55),D(836,1,{},kj),l.bm=function(e){return er*16)throw at(new Yr(Qr((Ur(),Eme))));r=r*16+o}while(!0);if(this.a!=125)throw at(new Yr(Qr((Ur(),Tme))));if(r>gT)throw at(new Yr(Qr((Ur(),Cme))));e=r}else{if(o=0,this.c!=0||(o=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(r=o,wi(this),this.c!=0||(o=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));r=r*16+o,e=r}break;case 117:if(s=0,wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(n=s,wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(n=n*16+s,wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(n=n*16+s,wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));n=n*16+s,e=n;break;case 118:if(wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(n=s,wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(n=n*16+s,wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(n=n*16+s,wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(n=n*16+s,wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(n=n*16+s,wi(this),this.c!=0||(s=hw(this.a))<0)throw at(new Yr(Qr((Ur(),zp))));if(n=n*16+s,n>gT)throw at(new Yr(Qr((Ur(),"parser.descappe.4"))));e=n;break;case 65:case 90:case 122:throw at(new Yr(Qr((Ur(),Sme))))}return e},l.dm=function(e){var n,r;switch(e){case 100:r=(this.e&32)==32?Gb("Nd",!0):(yi(),eW);break;case 68:r=(this.e&32)==32?Gb("Nd",!1):(yi(),fOt);break;case 119:r=(this.e&32)==32?Gb("IsWord",!0):(yi(),t9);break;case 87:r=(this.e&32)==32?Gb("IsWord",!1):(yi(),gOt);break;case 115:r=(this.e&32)==32?Gb("IsSpace",!0):(yi(),a8);break;case 83:r=(this.e&32)==32?Gb("IsSpace",!1):(yi(),dOt);break;default:throw at(new uc((n=e,Sve+n.toString(16))))}return r},l.em=function(e){var n,r,s,o,h,d,m,k,T,A,P,$;for(this.b=1,wi(this),n=null,this.c==0&&this.a==94?(wi(this),e?A=(yi(),yi(),new ih(5)):(n=(yi(),yi(),new ih(4)),iu(n,0,gT),A=new ih(4))):A=(yi(),yi(),new ih(4)),o=!0;($=this.c)!=1&&!($==0&&this.a==93&&!o);){if(o=!1,r=this.a,s=!1,$==10)switch(r){case 100:case 68:case 119:case 87:case 115:case 83:a3(A,this.dm(r)),s=!0;break;case 105:case 73:case 99:case 67:r=this.um(A,r),r<0&&(s=!0);break;case 112:case 80:if(P=M6t(this,r),!P)throw at(new Yr(Qr((Ur(),rht))));a3(A,P),s=!0;break;default:r=this.cm()}else if($==20){if(d=TE(this.i,58,this.d),d<0)throw at(new Yr(Qr((Ur(),NTt))));if(m=!0,Va(this.i,this.d)==94&&(++this.d,m=!1),h=Lh(this.i,this.d,d),k=Qse(h,m,(this.e&512)==512),!k)throw at(new Yr(Qr((Ur(),mme))));if(a3(A,k),s=!0,d+1>=this.j||Va(this.i,d+1)!=93)throw at(new Yr(Qr((Ur(),NTt))));this.d=d+2}if(wi(this),!s)if(this.c!=0||this.a!=45)iu(A,r,r);else{if(wi(this),($=this.c)==1)throw at(new Yr(Qr((Ur(),bU))));$==0&&this.a==93?(iu(A,r,r),iu(A,45,45)):(T=this.a,$==10&&(T=this.cm()),wi(this),iu(A,r,T))}(this.e&Uf)==Uf&&this.c==0&&this.a==44&&wi(this)}if(this.c==1)throw at(new Yr(Qr((Ur(),bU))));return n&&($_(n,A),A=n),g5(A),R_(A),this.b=0,wi(this),A},l.fm=function(){var e,n,r,s;for(r=this.em(!1);(s=this.c)!=7;)if(e=this.a,s==0&&(e==45||e==38)||s==4){if(wi(this),this.c!=9)throw at(new Yr(Qr((Ur(),yme))));if(n=this.em(!1),s==4)a3(r,n);else if(e==45)$_(r,n);else if(e==38)spe(r,n);else throw at(new uc("ASSERT"))}else throw at(new Yr(Qr((Ur(),xme))));return wi(this),r},l.gm=function(){var e,n;return e=this.a-48,n=(yi(),yi(),new lst(12,null,e)),!this.g&&(this.g=new u$),c$(this.g,new F2t(e)),wi(this),n},l.hm=function(){return wi(this),yi(),r9e},l.im=function(){return wi(this),yi(),n9e},l.jm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.km=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.lm=function(){return wi(this),hbn()},l.mm=function(){return wi(this),yi(),s9e},l.nm=function(){return wi(this),yi(),o9e},l.om=function(){var e;if(this.d>=this.j||((e=Va(this.i,this.d++))&65504)!=64)throw at(new Yr(Qr((Ur(),pme))));return wi(this),yi(),yi(),new _0(0,e-64)},l.pm=function(){return wi(this),g7n()},l.qm=function(){return wi(this),yi(),c9e},l.rm=function(){var e;return e=(yi(),yi(),new _0(0,105)),wi(this),e},l.sm=function(){return wi(this),yi(),a9e},l.tm=function(){return wi(this),yi(),i9e},l.um=function(e,n){return this.cm()},l.vm=function(){return wi(this),yi(),lOt},l.wm=function(){var e,n,r,s,o;if(this.d+1>=this.j)throw at(new Yr(Qr((Ur(),fme))));if(s=-1,n=null,e=Va(this.i,this.d),49<=e&&e<=57){if(s=e-48,!this.g&&(this.g=new u$),c$(this.g,new F2t(s)),++this.d,Va(this.i,this.d)!=41)throw at(new Yr(Qr((Ur(),Tw))));++this.d}else switch(e==63&&--this.d,wi(this),n=i8t(this),n.e){case 20:case 21:case 22:case 23:break;case 8:if(this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));break;default:throw at(new Yr(Qr((Ur(),dme))))}if(wi(this),o=Xm(this),r=null,o.e==2){if(o.Pm()!=2)throw at(new Yr(Qr((Ur(),gme))));r=o.Lm(1),o=o.Lm(0)}if(this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));return wi(this),yi(),yi(),new Iae(s,n,o,r)},l.xm=function(){return wi(this),yi(),hOt},l.ym=function(){var e;if(wi(this),e=$z(24,Xm(this)),this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));return wi(this),e},l.zm=function(){var e;if(wi(this),e=$z(20,Xm(this)),this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));return wi(this),e},l.Am=function(){var e;if(wi(this),e=$z(22,Xm(this)),this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));return wi(this),e},l.Bm=function(){var e,n,r,s,o;for(e=0,r=0,n=-1;this.d=this.j)throw at(new Yr(Qr((Ur(),ITt))));if(n==45){for(++this.d;this.d=this.j)throw at(new Yr(Qr((Ur(),ITt))))}if(n==58){if(++this.d,wi(this),s=_ee(Xm(this),e,r),this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));wi(this)}else if(n==41)++this.d,wi(this),s=_ee(Xm(this),e,r);else throw at(new Yr(Qr((Ur(),hme))));return s},l.Cm=function(){var e;if(wi(this),e=$z(21,Xm(this)),this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));return wi(this),e},l.Dm=function(){var e;if(wi(this),e=$z(23,Xm(this)),this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));return wi(this),e},l.Em=function(){var e,n;if(wi(this),e=this.f++,n=Rit(Xm(this),e),this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));return wi(this),n},l.Fm=function(){var e;if(wi(this),e=Rit(Xm(this),0),this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));return wi(this),e},l.Gm=function(e){return wi(this),this.c==5?(wi(this),Mz(e,(yi(),yi(),new By(9,e)))):Mz(e,(yi(),yi(),new By(3,e)))},l.Hm=function(e){var n;return wi(this),n=(yi(),yi(),new yS(2)),this.c==5?(wi(this),gw(n,OL),gw(n,e)):(gw(n,e),gw(n,OL)),n},l.Im=function(e){return wi(this),this.c==5?(wi(this),yi(),yi(),new By(9,e)):(yi(),yi(),new By(3,e))},l.a=0,l.b=0,l.c=0,l.d=0,l.e=0,l.f=1,l.g=null,l.j=0,I(qp,"RegEx/RegexParser",836),D(1947,836,{},YKt),l.bm=function(e){return!1},l.cm=function(){return fkt(this)},l.dm=function(e){return j7(e)},l.em=function(e){return tbe(this)},l.fm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.gm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.hm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.im=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.jm=function(){return wi(this),j7(67)},l.km=function(){return wi(this),j7(73)},l.lm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.mm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.nm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.om=function(){return wi(this),j7(99)},l.pm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.qm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.rm=function(){return wi(this),j7(105)},l.sm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.tm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.um=function(e,n){return a3(e,j7(n)),-1},l.vm=function(){return wi(this),yi(),yi(),new _0(0,94)},l.wm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.xm=function(){return wi(this),yi(),yi(),new _0(0,36)},l.ym=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.zm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.Am=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.Bm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.Cm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.Dm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.Em=function(){var e;if(wi(this),e=Rit(Xm(this),0),this.c!=7)throw at(new Yr(Qr((Ur(),Tw))));return wi(this),e},l.Fm=function(){throw at(new Yr(Qr((Ur(),Hh))))},l.Gm=function(e){return wi(this),Mz(e,(yi(),yi(),new By(3,e)))},l.Hm=function(e){var n;return wi(this),n=(yi(),yi(),new yS(2)),gw(n,e),gw(n,OL),n},l.Im=function(e){return wi(this),yi(),yi(),new By(3,e)};var bx=null,JT=null;I(qp,"RegEx/ParserForXMLSchema",1947),D(122,1,pT,um),l.Jm=function(e){throw at(new uc("Not supported."))},l.Km=function(){return-1},l.Lm=function(e){return null},l.Mm=function(){return null},l.Nm=function(e){},l.Om=function(e){},l.Pm=function(){return 0},l.Ib=function(){return this.Qm(0)},l.Qm=function(e){return this.e==11?".":""},l.e=0;var oOt,ZT,IL,e9e,cOt,W3=null,eW,u0t=null,uOt,OL,l0t=null,lOt,hOt,fOt,dOt,gOt,n9e,a8,r9e,i9e,s9e,a9e,t9,o9e,c9e,T_n=I(qp,"RegEx/Token",122);D(138,122,{3:1,138:1,122:1},ih),l.Qm=function(e){var n,r,s;if(this.e==4)if(this==uOt)r=".";else if(this==eW)r="\\d";else if(this==t9)r="\\w";else if(this==a8)r="\\s";else{for(s=new dp,s.a+="[",n=0;n0&&(s.a+=","),this.b[n]===this.b[n+1]?Mo(s,WO(this.b[n])):(Mo(s,WO(this.b[n])),s.a+="-",Mo(s,WO(this.b[n+1])));s.a+="]",r=s.a}else if(this==fOt)r="\\D";else if(this==gOt)r="\\W";else if(this==dOt)r="\\S";else{for(s=new dp,s.a+="[^",n=0;n0&&(s.a+=","),this.b[n]===this.b[n+1]?Mo(s,WO(this.b[n])):(Mo(s,WO(this.b[n])),s.a+="-",Mo(s,WO(this.b[n+1])));s.a+="]",r=s.a}return r},l.a=!1,l.c=!1,I(qp,"RegEx/RangeToken",138),D(592,1,{592:1},F2t),l.a=0,I(qp,"RegEx/RegexParser/ReferencePosition",592),D(591,1,{3:1,591:1},lYt),l.Fb=function(e){var n;return e==null||!Lt(e,591)?!1:(n=u(e,591),hn(this.b,n.b)&&this.a==n.a)},l.Hb=function(){return _p(this.b+"/"+skt(this.a))},l.Ib=function(){return this.c.Qm(this.a)},l.a=0,I(qp,"RegEx/RegularExpression",591),D(228,122,pT,_0),l.Km=function(){return this.a},l.Qm=function(e){var n,r,s;switch(this.e){case 0:switch(this.a){case 124:case 42:case 43:case 63:case 40:case 41:case 46:case 91:case 123:case 92:s="\\"+dit(this.a&js);break;case 12:s="\\f";break;case 10:s="\\n";break;case 13:s="\\r";break;case 9:s="\\t";break;case 27:s="\\e";break;default:this.a>=po?(r=(n=this.a>>>0,"0"+n.toString(16)),s="\\v"+Lh(r,r.length-6,r.length)):s=""+dit(this.a&js)}break;case 8:this==lOt||this==hOt?s=""+dit(this.a&js):s="\\"+dit(this.a&js);break;default:s=null}return s},l.a=0,I(qp,"RegEx/Token/CharToken",228),D(318,122,pT,By),l.Lm=function(e){return this.a},l.Nm=function(e){this.b=e},l.Om=function(e){this.c=e},l.Pm=function(){return 1},l.Qm=function(e){var n;if(this.e==3)if(this.c<0&&this.b<0)n=this.a.Qm(e)+"*";else if(this.c==this.b)n=this.a.Qm(e)+"{"+this.c+"}";else if(this.c>=0&&this.b>=0)n=this.a.Qm(e)+"{"+this.c+","+this.b+"}";else if(this.c>=0&&this.b<0)n=this.a.Qm(e)+"{"+this.c+",}";else throw at(new uc("Token#toString(): CLOSURE "+this.c+ao+this.b));else if(this.c<0&&this.b<0)n=this.a.Qm(e)+"*?";else if(this.c==this.b)n=this.a.Qm(e)+"{"+this.c+"}?";else if(this.c>=0&&this.b>=0)n=this.a.Qm(e)+"{"+this.c+","+this.b+"}?";else if(this.c>=0&&this.b<0)n=this.a.Qm(e)+"{"+this.c+",}?";else throw at(new uc("Token#toString(): NONGREEDYCLOSURE "+this.c+ao+this.b));return n},l.b=0,l.c=0,I(qp,"RegEx/Token/ClosureToken",318),D(837,122,pT,Cyt),l.Lm=function(e){return e==0?this.a:this.b},l.Pm=function(){return 2},l.Qm=function(e){var n;return this.b.e==3&&this.b.Lm(0)==this.a?n=this.a.Qm(e)+"+":this.b.e==9&&this.b.Lm(0)==this.a?n=this.a.Qm(e)+"+?":n=this.a.Qm(e)+(""+this.b.Qm(e)),n},I(qp,"RegEx/Token/ConcatToken",837),D(1945,122,pT,Iae),l.Lm=function(e){if(e==0)return this.d;if(e==1)return this.b;throw at(new uc("Internal Error: "+e))},l.Pm=function(){return this.b?2:1},l.Qm=function(e){var n;return this.c>0?n="(?("+this.c+")":this.a.e==8?n="(?("+this.a+")":n="(?"+this.a,this.b?n+=this.d+"|"+this.b+")":n+=this.d+")",n},l.c=0,I(qp,"RegEx/Token/ConditionToken",1945),D(1946,122,pT,kre),l.Lm=function(e){return this.b},l.Pm=function(){return 1},l.Qm=function(e){return"(?"+(this.a==0?"":skt(this.a))+(this.c==0?"":skt(this.c))+":"+this.b.Qm(e)+")"},l.a=0,l.c=0,I(qp,"RegEx/Token/ModifierToken",1946),D(838,122,pT,Pyt),l.Lm=function(e){return this.a},l.Pm=function(){return 1},l.Qm=function(e){var n;switch(n=null,this.e){case 6:this.b==0?n="(?:"+this.a.Qm(e)+")":n="("+this.a.Qm(e)+")";break;case 20:n="(?="+this.a.Qm(e)+")";break;case 21:n="(?!"+this.a.Qm(e)+")";break;case 22:n="(?<="+this.a.Qm(e)+")";break;case 23:n="(?"+this.a.Qm(e)+")"}return n},l.b=0,I(qp,"RegEx/Token/ParenToken",838),D(530,122,{3:1,122:1,530:1},lst),l.Mm=function(){return this.b},l.Qm=function(e){return this.e==12?"\\"+this.a:a6n(this.b)},l.a=0,I(qp,"RegEx/Token/StringToken",530),D(476,122,pT,yS),l.Jm=function(e){gw(this,e)},l.Lm=function(e){return u(Im(this.a,e),122)},l.Pm=function(){return this.a?this.a.a.c.length:0},l.Qm=function(e){var n,r,s,o,h;if(this.e==1){if(this.a.a.c.length==2)n=u(Im(this.a,0),122),r=u(Im(this.a,1),122),r.e==3&&r.Lm(0)==n?o=n.Qm(e)+"+":r.e==9&&r.Lm(0)==n?o=n.Qm(e)+"+?":o=n.Qm(e)+(""+r.Qm(e));else{for(h=new dp,s=0;s=this.c.b:this.a<=this.c.b},l.Sb=function(){return this.b>0},l.Tb=function(){return this.b},l.Vb=function(){return this.b-1},l.Qb=function(){throw at(new hp(Ove))},l.a=0,l.b=0,I(ZTt,"ExclusiveRange/RangeIterator",258);var Yh=FE(wU,"C"),Fr=FE(dA,"I"),Fl=FE(kk,"Z"),x2=FE(gA,"J"),ul=FE(lA,"B"),ma=FE(hA,"D"),Y3=FE(fA,"F"),wx=FE(pA,"S"),C_n=os("org.eclipse.elk.core.labels","ILabelManager"),pOt=os(oo,"DiagnosticChain"),bOt=os(ove,"ResourceSet"),wOt=I(oo,"InvocationTargetException",null),l9e=(d$(),jdn),h9e=h9e=Dyn;Ign(Ann),Agn("permProps",[[["locale","default"],[Nve,"gecko1_8"]],[["locale","default"],[Nve,"safari"]]]),h9e(null,"elk",null)}).call(this)}).call(this,typeof Z0<"u"?Z0:typeof self<"u"?self:typeof window<"u"?window:{})},{}],3:[function(f,g,w){function v(M,F){if(!(M instanceof F))throw new TypeError("Cannot call a class as a function")}function b(M,F){if(!M)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return F&&(typeof F=="object"||typeof F=="function")?F:M}function E(M,F){if(typeof F!="function"&&F!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof F);M.prototype=Object.create(F&&F.prototype,{constructor:{value:M,enumerable:!1,writable:!0,configurable:!0}}),F&&(Object.setPrototypeOf?Object.setPrototypeOf(M,F):M.__proto__=F)}var S=f("./elk-api.js").default,_=function(M){E(F,M);function F(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};v(this,F);var B=Object.assign({},R),z=!1;try{f.resolve("web-worker"),z=!0}catch{}if(R.workerUrl)if(z){var Y=f("web-worker");B.workerFactory=function(ft){return new Y(ft)}}else console.warn(`Web worker requested but 'web-worker' package not installed. +Consider installing the package or pass your own 'workerFactory' to ELK's constructor. +... Falling back to non-web worker version.`);if(!B.workerFactory){var nt=f("./elk-worker.min.js"),ot=nt.Worker;B.workerFactory=function(ft){return new ot(ft)}}return b(this,(F.__proto__||Object.getPrototypeOf(F)).call(this,B))}return F}(S);Object.defineProperty(g.exports,"__esModule",{value:!0}),g.exports=_,_.default=_},{"./elk-api.js":1,"./elk-worker.min.js":2,"web-worker":4}],4:[function(f,g,w){g.exports=Worker},{}]},{},[3])(3)})})(THt);var ptn=THt.exports;const btn=e9(ptn),CHt=new btn;let nm={};const wtn={};let Ux={};const mtn=async function(i,a,f,g,w,v,b){const S=f.select(`[id="${a}"]`).insert("g").attr("class","nodes"),_=Object.keys(i);return await Promise.all(_.map(async function(M){const F=i[M];let R="default";F.classes.length>0&&(R=F.classes.join(" ")),R=R+" flowchart-label";const B=C2(F.styles);let z=F.text!==void 0?F.text:F.id;const Y={width:0,height:0},nt=[{id:F.id+"-west",layoutOptions:{"port.side":"WEST"}},{id:F.id+"-east",layoutOptions:{"port.side":"EAST"}},{id:F.id+"-south",layoutOptions:{"port.side":"SOUTH"}},{id:F.id+"-north",layoutOptions:{"port.side":"NORTH"}}];let ot=0,ft="",wt={};switch(F.type){case"round":ot=5,ft="rect";break;case"square":ft="rect";break;case"diamond":ft="question",wt={portConstraints:"FIXED_SIDE"};break;case"hexagon":ft="hexagon";break;case"odd":ft="rect_left_inv_arrow";break;case"lean_right":ft="lean_right";break;case"lean_left":ft="lean_left";break;case"trapezoid":ft="trapezoid";break;case"inv_trapezoid":ft="inv_trapezoid";break;case"odd_right":ft="rect_left_inv_arrow";break;case"circle":ft="circle";break;case"ellipse":ft="ellipse";break;case"stadium":ft="stadium";break;case"subroutine":ft="subroutine";break;case"cylinder":ft="cylinder";break;case"group":ft="rect";break;case"doublecircle":ft="doublecircle";break;default:ft="rect"}const mt={labelStyle:B.labelStyle,shape:ft,labelText:z,labelType:F.labelType,rx:ot,ry:ot,class:R,style:B.style,id:F.id,link:F.link,linkTarget:F.linkTarget,tooltip:w.db.getTooltip(F.id)||"",domId:w.db.lookUpDomId(F.id),haveCallback:F.haveCallback,width:F.type==="group"?500:void 0,dir:F.dir,type:F.type,props:F.props,padding:o1().flowchart.padding};let ct,rt;if(mt.type!=="group")rt=await nX(S,mt,F.dir),ct=rt.node().getBBox();else{g.createElementNS("http://www.w3.org/2000/svg","text");const{shapeSvg:gt,bbox:Q}=await $1(S,mt,void 0,!0);Y.width=Q.width,Y.wrappingWidth=o1().flowchart.wrappingWidth,Y.height=Q.height,Y.labelNode=gt.node(),mt.labelData=Y}const it={id:F.id,ports:F.type==="diamond"?nt:[],layoutOptions:wt,labelText:z,labelData:Y,domId:w.db.lookUpDomId(F.id),width:ct==null?void 0:ct.width,height:ct==null?void 0:ct.height,type:F.type,el:rt,parent:v.parentById[F.id]};Ux[mt.id]=it})),b},SHt=(i,a,f)=>{const g={TB:{in:{north:"north"},out:{south:"west",west:"east",east:"south"}},LR:{in:{west:"west"},out:{east:"south",south:"north",north:"east"}},RL:{in:{east:"east"},out:{west:"north",north:"south",south:"west"}},BT:{in:{south:"south"},out:{north:"east",east:"west",west:"north"}}};return g.TD=g.TB,g[f][a][i]},_Ht=(i,a,f)=>{if(Kt.info("getNextPort",{node:i,edgeDirection:a,graphDirection:f}),!nm[i])switch(f){case"TB":case"TD":nm[i]={inPosition:"north",outPosition:"south"};break;case"BT":nm[i]={inPosition:"south",outPosition:"north"};break;case"RL":nm[i]={inPosition:"east",outPosition:"west"};break;case"LR":nm[i]={inPosition:"west",outPosition:"east"};break}const g=a==="in"?nm[i].inPosition:nm[i].outPosition;return a==="in"?nm[i].inPosition=SHt(nm[i].inPosition,a,f):nm[i].outPosition=SHt(nm[i].outPosition,a,f),g},vtn=(i,a)=>{let f=i.start,g=i.end;const w=f,v=g,b=Ux[f],E=Ux[g];return!b||!E?{source:f,target:g}:(b.type==="diamond"&&(f=`${f}-${_Ht(f,"out",a)}`),E.type==="diamond"&&(g=`${g}-${_Ht(g,"in",a)}`),{source:f,target:g,sourceId:w,targetId:v})},ytn=function(i,a,f,g){Kt.info("abc78 edges = ",i);const w=g.insert("g").attr("class","edgeLabels");let v={},b=a.db.getDirection(),E,S;if(i.defaultStyle!==void 0){const _=C2(i.defaultStyle);E=_.style,S=_.labelStyle}return i.forEach(function(_){const M="L-"+_.start+"-"+_.end;v[M]===void 0?(v[M]=0,Kt.info("abc78 new entry",M,v[M])):(v[M]++,Kt.info("abc78 new entry",M,v[M]));let F=M+"-"+v[M];Kt.info("abc78 new link id to be used is",M,F,v[M]);const R="LS-"+_.start,B="LE-"+_.end,z={style:"",labelStyle:""};switch(z.minlen=_.length||1,_.type==="arrow_open"?z.arrowhead="none":z.arrowhead="normal",z.arrowTypeStart="arrow_open",z.arrowTypeEnd="arrow_open",_.type){case"double_arrow_cross":z.arrowTypeStart="arrow_cross";case"arrow_cross":z.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":z.arrowTypeStart="arrow_point";case"arrow_point":z.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":z.arrowTypeStart="arrow_circle";case"arrow_circle":z.arrowTypeEnd="arrow_circle";break}let Y="",nt="";switch(_.stroke){case"normal":Y="fill:none;",E!==void 0&&(Y=E),S!==void 0&&(nt=S),z.thickness="normal",z.pattern="solid";break;case"dotted":z.thickness="normal",z.pattern="dotted",z.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":z.thickness="thick",z.pattern="solid",z.style="stroke-width: 3.5px;fill:none;";break}if(_.style!==void 0){const rt=C2(_.style);Y=rt.style,nt=rt.labelStyle}z.style=z.style+=Y,z.labelStyle=z.labelStyle+=nt,_.interpolate!==void 0?z.curve=Xw(_.interpolate,Kg):i.defaultInterpolate!==void 0?z.curve=Xw(i.defaultInterpolate,Kg):z.curve=Xw(wtn.curve,Kg),_.text===void 0?_.style!==void 0&&(z.arrowheadStyle="fill: #333"):(z.arrowheadStyle="fill: #333",z.labelpos="c"),z.labelType=_.labelType,z.label=_.text.replace(ei.lineBreakRegex,` +`),_.style===void 0&&(z.style=z.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),z.labelStyle=z.labelStyle.replace("color:","fill:"),z.id=F,z.classes="flowchart-link "+R+" "+B;const ot=tbt(w,z),{source:ft,target:wt,sourceId:mt,targetId:ct}=vtn(_,b);Kt.debug("abc78 source and target",ft,wt),f.edges.push({id:"e"+_.start+_.end,sources:[ft],targets:[wt],sourceId:mt,targetId:ct,labelEl:ot,labels:[{width:z.width,height:z.height,orgWidth:z.width,orgHeight:z.height,text:z.label,layoutOptions:{"edgeLabels.inline":"true","edgeLabels.placement":"CENTER"}}],edgeData:z})}),f},xtn=function(i,a,f,g,w){let v="";g&&(v=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,v=v.replace(/\(/g,"\\("),v=v.replace(/\)/g,"\\)")),uzt(i,a,v,w,f)},ktn=function(i,a){return Kt.info("Extracting classes"),a.db.getClasses()},Etn=function(i){const a={parentById:{},childrenById:{}},f=i.getSubGraphs();return Kt.info("Subgraphs - ",f),f.forEach(function(g){g.nodes.forEach(function(w){a.parentById[w]=g.id,a.childrenById[g.id]===void 0&&(a.childrenById[g.id]=[]),a.childrenById[g.id].push(w)})}),f.forEach(function(g){g.id,a.parentById[g.id]!==void 0&&a.parentById[g.id]}),a},Ttn=function(i,a,f){const g=gtn(i,a,f);if(g===void 0||g==="root")return{x:0,y:0};const w=Ux[g].offset;return{x:w.posX,y:w.posY}},Ctn=function(i,a,f,g,w,v){const b=Ttn(a.sourceId,a.targetId,w),E=a.sections[0].startPoint,S=a.sections[0].endPoint,M=(a.sections[0].bendPoints?a.sections[0].bendPoints:[]).map(wt=>[wt.x+b.x,wt.y+b.y]),F=[[E.x+b.x,E.y+b.y],...M,[S.x+b.x,S.y+b.y]],{x:R,y:B}=czt(a.edgeData),z=Ax().x(R).y(B).curve(Kg),Y=i.insert("path").attr("d",z(F)).attr("class","path "+f.classes).attr("fill","none"),nt=i.insert("g").attr("class","edgeLabel"),ot=Tr(nt.node().appendChild(a.labelEl)),ft=ot.node().firstChild.getBoundingClientRect();ot.attr("width",ft.width),ot.attr("height",ft.height),nt.attr("transform",`translate(${a.labels[0].x+b.x}, ${a.labels[0].y+b.y})`),xtn(Y,f,g.type,g.arrowMarkerAbsolute,v)},AHt=(i,a)=>{i.forEach(f=>{f.children||(f.children=[]);const g=a.childrenById[f.id];g&&g.forEach(w=>{f.children.push(Ux[w])}),AHt(f.children,a)})},Stn=async function(i,a,f,g){var it;g.db.clear(),Ux={},nm={},g.db.setGen("gen-2"),g.parser.parse(i);const w=Tr("body").append("div").attr("style","height:400px").attr("id","cy");let v={id:"root",layoutOptions:{"elk.hierarchyHandling":"INCLUDE_CHILDREN","org.eclipse.elk.padding":"[top=100, left=100, bottom=110, right=110]","elk.layered.spacing.edgeNodeBetweenLayers":"30","elk.direction":"DOWN"},children:[],edges:[]};switch(Kt.info("Drawing flowchart using v3 renderer",CHt),g.db.getDirection()){case"BT":v.layoutOptions["elk.direction"]="UP";break;case"TB":v.layoutOptions["elk.direction"]="DOWN";break;case"LR":v.layoutOptions["elk.direction"]="RIGHT";break;case"RL":v.layoutOptions["elk.direction"]="LEFT";break}const{securityLevel:E,flowchart:S}=o1();let _;E==="sandbox"&&(_=Tr("#i"+a));const M=Tr(E==="sandbox"?_.nodes()[0].contentDocument.body:"body"),F=E==="sandbox"?_.nodes()[0].contentDocument:document,R=M.select(`[id="${a}"]`);jpt(R,["point","circle","cross"],g.type,a);const z=g.db.getVertices();let Y;const nt=g.db.getSubGraphs();Kt.info("Subgraphs - ",nt);for(let gt=nt.length-1;gt>=0;gt--)Y=nt[gt],g.db.addVertex(Y.id,{text:Y.title,type:Y.labelType},"group",void 0,Y.classes,Y.dir);const ot=R.insert("g").attr("class","subgraphs"),ft=Etn(g.db);v=await mtn(z,a,M,F,g,ft,v);const wt=R.insert("g").attr("class","edges edgePath"),mt=g.db.getEdges();v=ytn(mt,g,v,R),Object.keys(Ux).forEach(gt=>{const Q=Ux[gt];Q.parent||v.children.push(Q),ft.childrenById[gt]!==void 0&&(Q.labels=[{text:Q.labelText,layoutOptions:{"nodeLabels.placement":"[H_CENTER, V_TOP, INSIDE]"},width:Q.labelData.width,height:Q.labelData.height}],delete Q.x,delete Q.y,delete Q.width,delete Q.height)}),AHt(v.children,ft),Kt.info("after layout",JSON.stringify(v,null,2));const rt=await CHt.layout(v);LHt(0,0,rt.children,R,ot,g,0),Kt.info("after layout",rt),(it=rt.edges)==null||it.map(gt=>{Ctn(wt,gt,gt.edgeData,g,ft,a)}),w8({},R,S.diagramPadding,S.useMaxWidth),w.remove()},LHt=(i,a,f,g,w,v,b)=>{f.forEach(function(E){if(E)if(Ux[E.id].offset={posX:E.x+i,posY:E.y+a,x:i,y:a,depth:b,width:E.width,height:E.height},E.type==="group"){const S=w.insert("g").attr("class","subgraph");S.insert("rect").attr("class","subgraph subgraph-lvl-"+b%5+" node").attr("x",E.x+i).attr("y",E.y+a).attr("width",E.width).attr("height",E.height);const _=S.insert("g").attr("class","label"),M=o1().flowchart.htmlLabels?E.labelData.width/2:0;_.attr("transform",`translate(${E.labels[0].x+i+E.x+M}, ${E.labels[0].y+a+E.y+3})`),_.node().appendChild(E.labelData.labelNode),Kt.info("Id (UGH)= ",E.type,E.labels)}else Kt.info("Id (UGH)= ",E.id),E.el.attr("transform",`translate(${E.x+i+E.width/2}, ${E.y+a+E.height/2})`)}),f.forEach(function(E){E&&E.type==="group"&&LHt(i+E.x,a+E.y,E.children,g,w,v,b+1)})},_tn={getClasses:ktn,draw:Stn},Atn=i=>{let a="";for(let f=0;f<5;f++)a+=` + .subgraph-lvl-${f} { + fill: ${i[`surface${f}`]}; + stroke: ${i[`surfacePeer${f}`]}; + } + `;return a},Ltn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{db:wje,renderer:_tn,parser:spt,styles:i=>`.label { + font-family: ${i.fontFamily}; + color: ${i.nodeTextColor||i.textColor}; + } + .cluster-label text { + fill: ${i.titleColor}; + } + .cluster-label span { + color: ${i.titleColor}; + } + + .label text,span { + fill: ${i.nodeTextColor||i.textColor}; + color: ${i.nodeTextColor||i.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.85; + background-color: ${i.edgeLabelBackground}; + fill: ${i.edgeLabelBackground}; + } + text-align: center; + } + + .cluster rect { + fill: ${i.clusterBkg}; + stroke: ${i.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${i.titleColor}; + } + + .cluster span { + color: ${i.titleColor}; + } + /* .cluster div { + color: ${i.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${i.fontFamily}; + font-size: 12px; + background: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } + .subgraph { + stroke-width:2; + rx:3; + } + // .subgraph-lvl-1 { + // fill:#ccc; + // // stroke:black; + // } + + .flowchart-label text { + text-anchor: middle; + } + + ${Atn(i)} +`}},Symbol.toStringTag,{value:"Module"}));var l2t=function(){var i=function(R,B,z,Y){for(z=z||{},Y=R.length;Y--;z[R[Y]]=B);return z},a=[6,8,10,11,12,14,16,17,20,21],f=[1,9],g=[1,10],w=[1,11],v=[1,12],b=[1,13],E=[1,16],S=[1,17],_={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:function(B,z,Y,nt,ot,ft,wt){var mt=ft.length-1;switch(ot){case 1:return ft[mt-1];case 2:this.$=[];break;case 3:ft[mt-1].push(ft[mt]),this.$=ft[mt-1];break;case 4:case 5:this.$=ft[mt];break;case 6:case 7:this.$=[];break;case 8:nt.getCommonDb().setDiagramTitle(ft[mt].substr(6)),this.$=ft[mt].substr(6);break;case 9:this.$=ft[mt].trim(),nt.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=ft[mt].trim(),nt.getCommonDb().setAccDescription(this.$);break;case 12:nt.addSection(ft[mt].substr(8)),this.$=ft[mt].substr(8);break;case 15:nt.addTask(ft[mt],0,""),this.$=ft[mt];break;case 16:nt.addEvent(ft[mt].substr(2)),this.$=ft[mt];break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:f,12:g,14:w,16:v,17:b,18:14,19:15,20:E,21:S},i(a,[2,7],{1:[2,1]}),i(a,[2,3]),{9:18,11:f,12:g,14:w,16:v,17:b,18:14,19:15,20:E,21:S},i(a,[2,5]),i(a,[2,6]),i(a,[2,8]),{13:[1,19]},{15:[1,20]},i(a,[2,11]),i(a,[2,12]),i(a,[2,13]),i(a,[2,14]),i(a,[2,15]),i(a,[2,16]),i(a,[2,4]),i(a,[2,9]),i(a,[2,10])],defaultActions:{},parseError:function(B,z){if(z.recoverable)this.trace(B);else{var Y=new Error(B);throw Y.hash=z,Y}},parse:function(B){var z=this,Y=[0],nt=[],ot=[null],ft=[],wt=this.table,mt="",ct=0,rt=0,it=2,gt=1,Q=ft.slice.call(arguments,1),dt=Object.create(this.lexer),K={yy:{}};for(var yt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,yt)&&(K.yy[yt]=this.yy[yt]);dt.setInput(B,K.yy),K.yy.lexer=dt,K.yy.parser=this,typeof dt.yylloc>"u"&&(dt.yylloc={});var V=dt.yylloc;ft.push(V);var Ot=dt.options&&dt.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function It(){var ye;return ye=nt.pop()||dt.lex()||gt,typeof ye!="number"&&(ye instanceof Array&&(nt=ye,ye=nt.pop()),ye=z.symbols_[ye]||ye),ye}for(var jt,xt,Ft,Ct,kt={},Gt,Fe,Mt,pn;;){if(xt=Y[Y.length-1],this.defaultActions[xt]?Ft=this.defaultActions[xt]:((jt===null||typeof jt>"u")&&(jt=It()),Ft=wt[xt]&&wt[xt][jt]),typeof Ft>"u"||!Ft.length||!Ft[0]){var Ae="";pn=[];for(Gt in wt[xt])this.terminals_[Gt]&&Gt>it&&pn.push("'"+this.terminals_[Gt]+"'");dt.showPosition?Ae="Parse error on line "+(ct+1)+`: +`+dt.showPosition()+` +Expecting `+pn.join(", ")+", got '"+(this.terminals_[jt]||jt)+"'":Ae="Parse error on line "+(ct+1)+": Unexpected "+(jt==gt?"end of input":"'"+(this.terminals_[jt]||jt)+"'"),this.parseError(Ae,{text:dt.match,token:this.terminals_[jt]||jt,line:dt.yylineno,loc:V,expected:pn})}if(Ft[0]instanceof Array&&Ft.length>1)throw new Error("Parse Error: multiple actions possible at state: "+xt+", token: "+jt);switch(Ft[0]){case 1:Y.push(jt),ot.push(dt.yytext),ft.push(dt.yylloc),Y.push(Ft[1]),jt=null,rt=dt.yyleng,mt=dt.yytext,ct=dt.yylineno,V=dt.yylloc;break;case 2:if(Fe=this.productions_[Ft[1]][1],kt.$=ot[ot.length-Fe],kt._$={first_line:ft[ft.length-(Fe||1)].first_line,last_line:ft[ft.length-1].last_line,first_column:ft[ft.length-(Fe||1)].first_column,last_column:ft[ft.length-1].last_column},Ot&&(kt._$.range=[ft[ft.length-(Fe||1)].range[0],ft[ft.length-1].range[1]]),Ct=this.performAction.apply(kt,[mt,rt,ct,K.yy,Ft[1],ot,ft].concat(Q)),typeof Ct<"u")return Ct;Fe&&(Y=Y.slice(0,-1*Fe*2),ot=ot.slice(0,-1*Fe),ft=ft.slice(0,-1*Fe)),Y.push(this.productions_[Ft[1]][0]),ot.push(kt.$),ft.push(kt._$),Mt=wt[Y[Y.length-2]][Y[Y.length-1]],Y.push(Mt);break;case 3:return!0}}return!0}},M=function(){var R={EOF:1,parseError:function(z,Y){if(this.yy.parser)this.yy.parser.parseError(z,Y);else throw new Error(z)},setInput:function(B,z){return this.yy=z||this.yy||{},this._input=B,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var B=this._input[0];this.yytext+=B,this.yyleng++,this.offset++,this.match+=B,this.matched+=B;var z=B.match(/(?:\r\n?|\n).*/g);return z?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),B},unput:function(B){var z=B.length,Y=B.split(/(?:\r\n?|\n)/g);this._input=B+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-z),this.offset-=z;var nt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Y.length-1&&(this.yylineno-=Y.length-1);var ot=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Y?(Y.length===nt.length?this.yylloc.first_column:0)+nt[nt.length-Y.length].length-Y[0].length:this.yylloc.first_column-z},this.options.ranges&&(this.yylloc.range=[ot[0],ot[0]+this.yyleng-z]),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(B){this.unput(this.match.slice(B))},pastInput:function(){var B=this.matched.substr(0,this.matched.length-this.match.length);return(B.length>20?"...":"")+B.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var B=this.match;return B.length<20&&(B+=this._input.substr(0,20-B.length)),(B.substr(0,20)+(B.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var B=this.pastInput(),z=new Array(B.length+1).join("-");return B+this.upcomingInput()+` +`+z+"^"},test_match:function(B,z){var Y,nt,ot;if(this.options.backtrack_lexer&&(ot={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&&(ot.yylloc.range=this.yylloc.range.slice(0))),nt=B[0].match(/(?:\r\n?|\n).*/g),nt&&(this.yylineno+=nt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:nt?nt[nt.length-1].length-nt[nt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+B[0].length},this.yytext+=B[0],this.match+=B[0],this.matches=B,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(B[0].length),this.matched+=B[0],Y=this.performAction.call(this,this.yy,this,z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Y)return Y;if(this._backtrack){for(var ft in ot)this[ft]=ot[ft];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var B,z,Y,nt;this._more||(this.yytext="",this.match="");for(var ot=this._currentRules(),ft=0;ftz[0].length)){if(z=Y,nt=ft,this.options.backtrack_lexer){if(B=this.test_match(Y,ot[ft]),B!==!1)return B;if(this._backtrack){z=!1;continue}else return!1}else if(!this.options.flex)break}return z?(B=this.test_match(z,ot[nt]),B!==!1?B:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var z=this.next();return z||this.lex()},begin:function(z){this.conditionStack.push(z)},popState:function(){var z=this.conditionStack.length-1;return z>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(z){return z=this.conditionStack.length-1-Math.abs(z||0),z>=0?this.conditionStack[z]:"INITIAL"},pushState:function(z){this.begin(z)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(z,Y,nt,ot){switch(nt){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}},rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?::\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18],inclusive:!0}}};return R}();_.lexer=M;function F(){this.yy={}}return F.prototype=_,_.Parser=F,new F}();l2t.parser=l2t;const Dtn=l2t;let ND="",DHt=0;const h2t=[],IX=[],PD=[],MHt=()=>uBt,IHt=function(){h2t.length=0,IX.length=0,ND="",PD.length=0,ag()},OHt=function(i){ND=i,h2t.push(i)},NHt=function(){return h2t},PHt=function(){let i=jHt();const a=100;let f=0;for(;!i&&ff.id===DHt-1).events.push(i)},RHt=function(i){const a={section:ND,type:ND,description:i,task:i,classes:[]};IX.push(a)},jHt=function(){const i=function(f){return PD[f].processed};let a=!0;for(const[f,g]of PD.entries())i(f),a=a&&g.processed;return a},Mtn=Object.freeze(Object.defineProperty({__proto__:null,addEvent:BHt,addSection:OHt,addTask:FHt,addTaskOrg:RHt,clear:IHt,default:{clear:IHt,getCommonDb:MHt,addSection:OHt,getSections:NHt,getTasks:PHt,addTask:FHt,addTaskOrg:RHt,addEvent:BHt},getCommonDb:MHt,getSections:NHt,getTasks:PHt},Symbol.toStringTag,{value:"Module"})),Itn=12,OX=function(i,a){const f=i.append("rect");return f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),f.attr("rx",a.rx),f.attr("ry",a.ry),a.class!==void 0&&f.attr("class",a.class),f},Otn=function(i,a){const g=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),w=i.append("g");w.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),w.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function v(S){const _=YL().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);S.append("path").attr("class","mouth").attr("d",_).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(S){const _=YL().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);S.append("path").attr("class","mouth").attr("d",_).attr("transform","translate("+a.cx+","+(a.cy+7)+")")}function E(S){S.append("line").attr("class","mouth").attr("stroke",2).attr("x1",a.cx-5).attr("y1",a.cy+7).attr("x2",a.cx+5).attr("y2",a.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.score>3?v(w):a.score<3?b(w):E(w),g},Ntn=function(i,a){const f=i.append("circle");return f.attr("cx",a.cx),f.attr("cy",a.cy),f.attr("class","actor-"+a.pos),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("r",a.r),f.class!==void 0&&f.attr("class",f.class),a.title!==void 0&&f.append("title").text(a.title),f},$Ht=function(i,a){const f=a.text.replace(//gi," "),g=i.append("text");g.attr("x",a.x),g.attr("y",a.y),g.attr("class","legend"),g.style("text-anchor",a.anchor),a.class!==void 0&&g.attr("class",a.class);const w=g.append("tspan");return w.attr("x",a.x+a.textMargin*2),w.text(f),g},Ptn=function(i,a){function f(w,v,b,E,S){return w+","+v+" "+(w+b)+","+v+" "+(w+b)+","+(v+E-S)+" "+(w+b-S*1.2)+","+(v+E)+" "+w+","+(v+E)}const g=i.append("polygon");g.attr("points",f(a.x,a.y,50,20,7)),g.attr("class","labelBox"),a.y=a.y+a.labelMargin,a.x=a.x+.5*a.labelMargin,$Ht(i,a)},Ftn=function(i,a,f){const g=i.append("g"),w=f2t();w.x=a.x,w.y=a.y,w.fill=a.fill,w.width=f.width,w.height=f.height,w.class="journey-section section-type-"+a.num,w.rx=3,w.ry=3,OX(g,w),qHt(f)(a.text,g,w.x,w.y,w.width,w.height,{class:"journey-section section-type-"+a.num},f,a.colour)};let zHt=-1;const Btn=function(i,a,f){const g=a.x+f.width/2,w=i.append("g");zHt++;const v=300+5*30;w.append("line").attr("id","task"+zHt).attr("x1",g).attr("y1",a.y).attr("x2",g).attr("y2",v).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Otn(w,{cx:g,cy:300+(5-a.score)*30,score:a.score});const b=f2t();b.x=a.x,b.y=a.y,b.fill=a.fill,b.width=f.width,b.height=f.height,b.class="task task-type-"+a.num,b.rx=3,b.ry=3,OX(w,b),a.x+14,qHt(f)(a.task,w,b.x,b.y,b.width,b.height,{class:"task"},f,a.colour)},Rtn=function(i,a){OX(i,{x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,class:"rect"}).lower()},jtn=function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},f2t=function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},qHt=function(){function i(w,v,b,E,S,_,M,F){const R=v.append("text").attr("x",b+S/2).attr("y",E+_/2+5).style("font-color",F).style("text-anchor","middle").text(w);g(R,M)}function a(w,v,b,E,S,_,M,F,R){const{taskFontSize:B,taskFontFamily:z}=F,Y=w.split(//gi);for(let nt=0;nt)/).reverse(),w,v=[],b=1.1,E=f.attr("y"),S=parseFloat(f.attr("dy")),_=f.text(null).append("tspan").attr("x",0).attr("y",E).attr("dy",S+"em");for(let M=0;Ma||w==="
")&&(v.pop(),_.text(v.join(" ").trim()),w==="
"?v=[""]:v=[w],_=f.append("tspan").attr("x",0).attr("y",E).attr("dy",b+"em").text(w))})}const ztn=function(i,a,f,g){const w=f%Itn-1,v=i.append("g");a.section=w,v.attr("class",(a.class?a.class+" ":"")+"timeline-node "+("section-"+w));const b=v.append("g"),E=v.append("g"),_=E.append("text").text(a.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(HHt,a.width).node().getBBox(),M=g.fontSize&&g.fontSize.replace?g.fontSize.replace("px",""):g.fontSize;return a.height=_.height+M*1.1*.5+a.padding,a.height=Math.max(a.height,a.maxHeight),a.width=a.width+2*a.padding,E.attr("transform","translate("+a.width/2+", "+a.padding/2+")"),Htn(b,a,w),a},qtn=function(i,a,f){const g=i.append("g"),v=g.append("text").text(a.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(HHt,a.width).node().getBBox(),b=f.fontSize&&f.fontSize.replace?f.fontSize.replace("px",""):f.fontSize;return g.remove(),v.height+b*1.1*.5+a.padding},Htn=function(i,a,f){i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+a.type).attr("d",`M0 ${a.height-5} v${-a.height+2*5} q0,-5 5,-5 h${a.width-2*5} q5,0 5,5 v${a.height-5} H0 Z`),i.append("line").attr("class","node-line-"+f).attr("x1",0).attr("y1",a.height).attr("x2",a.width).attr("y2",a.height)},H9={drawRect:OX,drawCircle:Ntn,drawSection:Ftn,drawText:$Ht,drawLabel:Ptn,drawTask:Btn,drawBackgroundRect:Rtn,getTextObj:jtn,getNoteRect:f2t,initGraphics:$tn,drawNode:ztn,getVirtualNodeHeight:qtn},Vtn=function(i,a,f,g){var Q,dt;const w=Re(),v=w.leftMargin??50;Kt.debug("timeline",g.db);const b=w.securityLevel;let E;b==="sandbox"&&(E=Tr("#i"+a));const _=Tr(b==="sandbox"?E.nodes()[0].contentDocument.body:"body").select("#"+a);_.append("g");const M=g.db.getTasks(),F=g.db.getCommonDb().getDiagramTitle();Kt.debug("task",M),H9.initGraphics(_);const R=g.db.getSections();Kt.debug("sections",R);let B=0,z=0,Y=0,nt=0,ot=50+v,ft=50;nt=50;let wt=0,mt=!0;R.forEach(function(K){const yt={number:wt,descr:K,section:wt,width:150,padding:20,maxHeight:B},V=H9.getVirtualNodeHeight(_,yt,w);Kt.debug("sectionHeight before draw",V),B=Math.max(B,V+20)});let ct=0,rt=0;Kt.debug("tasks.length",M.length);for(const[K,yt]of M.entries()){const V={number:K,descr:yt,section:yt.section,width:150,padding:20,maxHeight:z},Ot=H9.getVirtualNodeHeight(_,V,w);Kt.debug("taskHeight before draw",Ot),z=Math.max(z,Ot+20),ct=Math.max(ct,yt.events.length);let It=0;for(let jt=0;jt0?R.forEach(K=>{const yt=M.filter(jt=>jt.section===K),V={number:wt,descr:K,section:wt,width:200*Math.max(yt.length,1)-50,padding:20,maxHeight:B};Kt.debug("sectionNode",V);const Ot=_.append("g"),It=H9.drawNode(Ot,V,wt,w);Kt.debug("sectionNode output",It),Ot.attr("transform",`translate(${ot}, ${nt})`),ft+=B+50,yt.length>0&&VHt(_,yt,wt,ot,ft,z,w,ct,rt,B,!1),ot+=200*Math.max(yt.length,1),ft=nt,wt++}):(mt=!1,VHt(_,M,wt,ot,ft,z,w,ct,rt,B,!0));const it=_.node().getBBox();Kt.debug("bounds",it),F&&_.append("text").text(F).attr("x",it.width/2-v).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),Y=mt?B+z+150:z+100,_.append("g").attr("class","lineWrapper").append("line").attr("x1",v).attr("y1",Y).attr("x2",it.width+3*v).attr("y2",Y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),w8(void 0,_,((Q=w.timeline)==null?void 0:Q.padding)??50,((dt=w.timeline)==null?void 0:dt.useMaxWidth)??!1)},VHt=function(i,a,f,g,w,v,b,E,S,_,M){var F;for(const R of a){const B={descr:R.task,section:f,number:f,width:150,padding:20,maxHeight:v};Kt.debug("taskNode",B);const z=i.append("g").attr("class","taskWrapper"),nt=H9.drawNode(z,B,f,b).height;if(Kt.debug("taskHeight after draw",nt),z.attr("transform",`translate(${g}, ${w})`),v=Math.max(v,nt),R.events){const ot=i.append("g").attr("class","lineWrapper");let ft=v;w+=100,ft=ft+Utn(i,R.events,f,g,w,b),w-=100,ot.append("line").attr("x1",g+190/2).attr("y1",w+v).attr("x2",g+190/2).attr("y2",w+v+(M?v:_)+S+120).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}g=g+200,M&&!((F=b.timeline)!=null&&F.disableMulticolor)&&f++}w=w-10},Utn=function(i,a,f,g,w,v){let b=0;const E=w;w=w+100;for(const S of a){const _={descr:S,section:f,number:f,width:150,padding:20,maxHeight:50};Kt.debug("eventNode",_);const M=i.append("g").attr("class","eventWrapper"),R=H9.drawNode(M,_,f,v).height;b=b+R,M.attr("transform",`translate(${g}, ${w})`),w=w+10+R}return w=E,b},Gtn={setConf:()=>{},draw:Vtn},Ktn=i=>{let a="";for(let f=0;f` + .edge { + stroke-width: 3; + } + ${Ktn(i)} + .section-root rect, .section-root path, .section-root circle { + fill: ${i.git0}; + } + .section-root text { + fill: ${i.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .eventWrapper { + filter: brightness(120%); + } +`}},Symbol.toStringTag,{value:"Module"}));var d2t=function(){var i=function(mt,ct,rt,it){for(rt=rt||{},it=mt.length;it--;rt[mt[it]]=ct);return rt},a=[1,4],f=[1,13],g=[1,12],w=[1,15],v=[1,16],b=[1,20],E=[1,19],S=[6,7,8],_=[1,26],M=[1,24],F=[1,25],R=[6,7,11],B=[1,6,13,15,16,19,22],z=[1,33],Y=[1,34],nt=[1,6,7,11,13,15,16,19,22],ot={trace:function(){},yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:function(ct,rt,it,gt,Q,dt,K){var yt=dt.length-1;switch(Q){case 6:case 7:return gt;case 8:gt.getLogger().trace("Stop NL ");break;case 9:gt.getLogger().trace("Stop EOF ");break;case 11:gt.getLogger().trace("Stop NL2 ");break;case 12:gt.getLogger().trace("Stop EOF2 ");break;case 15:gt.getLogger().info("Node: ",dt[yt].id),gt.addNode(dt[yt-1].length,dt[yt].id,dt[yt].descr,dt[yt].type);break;case 16:gt.getLogger().trace("Icon: ",dt[yt]),gt.decorateNode({icon:dt[yt]});break;case 17:case 21:gt.decorateNode({class:dt[yt]});break;case 18:gt.getLogger().trace("SPACELIST");break;case 19:gt.getLogger().trace("Node: ",dt[yt].id),gt.addNode(0,dt[yt].id,dt[yt].descr,dt[yt].type);break;case 20:gt.decorateNode({icon:dt[yt]});break;case 25:gt.getLogger().trace("node found ..",dt[yt-2]),this.$={id:dt[yt-1],descr:dt[yt-1],type:gt.getType(dt[yt-2],dt[yt])};break;case 26:this.$={id:dt[yt],descr:dt[yt],type:gt.nodeType.DEFAULT};break;case 27:gt.getLogger().trace("node found ..",dt[yt-3]),this.$={id:dt[yt-3],descr:dt[yt-1],type:gt.getType(dt[yt-2],dt[yt])};break}},table:[{3:1,4:2,5:3,6:[1,5],8:a},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:a},{6:f,7:[1,10],9:9,12:11,13:g,14:14,15:w,16:v,17:17,18:18,19:b,22:E},i(S,[2,3]),{1:[2,2]},i(S,[2,4]),i(S,[2,5]),{1:[2,6],6:f,12:21,13:g,14:14,15:w,16:v,17:17,18:18,19:b,22:E},{6:f,9:22,12:11,13:g,14:14,15:w,16:v,17:17,18:18,19:b,22:E},{6:_,7:M,10:23,11:F},i(R,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:b,22:E}),i(R,[2,18]),i(R,[2,19]),i(R,[2,20]),i(R,[2,21]),i(R,[2,23]),i(R,[2,24]),i(R,[2,26],{19:[1,30]}),{20:[1,31]},{6:_,7:M,10:32,11:F},{1:[2,7],6:f,12:21,13:g,14:14,15:w,16:v,17:17,18:18,19:b,22:E},i(B,[2,14],{7:z,11:Y}),i(nt,[2,8]),i(nt,[2,9]),i(nt,[2,10]),i(R,[2,15]),i(R,[2,16]),i(R,[2,17]),{20:[1,35]},{21:[1,36]},i(B,[2,13],{7:z,11:Y}),i(nt,[2,11]),i(nt,[2,12]),{21:[1,37]},i(R,[2,25]),i(R,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:function(ct,rt){if(rt.recoverable)this.trace(ct);else{var it=new Error(ct);throw it.hash=rt,it}},parse:function(ct){var rt=this,it=[0],gt=[],Q=[null],dt=[],K=this.table,yt="",V=0,Ot=0,It=2,jt=1,xt=dt.slice.call(arguments,1),Ft=Object.create(this.lexer),Ct={yy:{}};for(var kt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,kt)&&(Ct.yy[kt]=this.yy[kt]);Ft.setInput(ct,Ct.yy),Ct.yy.lexer=Ft,Ct.yy.parser=this,typeof Ft.yylloc>"u"&&(Ft.yylloc={});var Gt=Ft.yylloc;dt.push(Gt);var Fe=Ft.options&&Ft.options.ranges;typeof Ct.yy.parseError=="function"?this.parseError=Ct.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mt(){var Mn;return Mn=gt.pop()||Ft.lex()||jt,typeof Mn!="number"&&(Mn instanceof Array&&(gt=Mn,Mn=gt.pop()),Mn=rt.symbols_[Mn]||Mn),Mn}for(var pn,Ae,ye,tn,sn={},be,Ne,Xt,_e;;){if(Ae=it[it.length-1],this.defaultActions[Ae]?ye=this.defaultActions[Ae]:((pn===null||typeof pn>"u")&&(pn=Mt()),ye=K[Ae]&&K[Ae][pn]),typeof ye>"u"||!ye.length||!ye[0]){var xe="";_e=[];for(be in K[Ae])this.terminals_[be]&&be>It&&_e.push("'"+this.terminals_[be]+"'");Ft.showPosition?xe="Parse error on line "+(V+1)+`: +`+Ft.showPosition()+` +Expecting `+_e.join(", ")+", got '"+(this.terminals_[pn]||pn)+"'":xe="Parse error on line "+(V+1)+": Unexpected "+(pn==jt?"end of input":"'"+(this.terminals_[pn]||pn)+"'"),this.parseError(xe,{text:Ft.match,token:this.terminals_[pn]||pn,line:Ft.yylineno,loc:Gt,expected:_e})}if(ye[0]instanceof Array&&ye.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ae+", token: "+pn);switch(ye[0]){case 1:it.push(pn),Q.push(Ft.yytext),dt.push(Ft.yylloc),it.push(ye[1]),pn=null,Ot=Ft.yyleng,yt=Ft.yytext,V=Ft.yylineno,Gt=Ft.yylloc;break;case 2:if(Ne=this.productions_[ye[1]][1],sn.$=Q[Q.length-Ne],sn._$={first_line:dt[dt.length-(Ne||1)].first_line,last_line:dt[dt.length-1].last_line,first_column:dt[dt.length-(Ne||1)].first_column,last_column:dt[dt.length-1].last_column},Fe&&(sn._$.range=[dt[dt.length-(Ne||1)].range[0],dt[dt.length-1].range[1]]),tn=this.performAction.apply(sn,[yt,Ot,V,Ct.yy,ye[1],Q,dt].concat(xt)),typeof tn<"u")return tn;Ne&&(it=it.slice(0,-1*Ne*2),Q=Q.slice(0,-1*Ne),dt=dt.slice(0,-1*Ne)),it.push(this.productions_[ye[1]][0]),Q.push(sn.$),dt.push(sn._$),Xt=K[it[it.length-2]][it[it.length-1]],it.push(Xt);break;case 3:return!0}}return!0}},ft=function(){var mt={EOF:1,parseError:function(rt,it){if(this.yy.parser)this.yy.parser.parseError(rt,it);else throw new Error(rt)},setInput:function(ct,rt){return this.yy=rt||this.yy||{},this._input=ct,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 ct=this._input[0];this.yytext+=ct,this.yyleng++,this.offset++,this.match+=ct,this.matched+=ct;var rt=ct.match(/(?:\r\n?|\n).*/g);return rt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ct},unput:function(ct){var rt=ct.length,it=ct.split(/(?:\r\n?|\n)/g);this._input=ct+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-rt),this.offset-=rt;var gt=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),it.length-1&&(this.yylineno-=it.length-1);var Q=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:it?(it.length===gt.length?this.yylloc.first_column:0)+gt[gt.length-it.length].length-it[0].length:this.yylloc.first_column-rt},this.options.ranges&&(this.yylloc.range=[Q[0],Q[0]+this.yyleng-rt]),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(ct){this.unput(this.match.slice(ct))},pastInput:function(){var ct=this.matched.substr(0,this.matched.length-this.match.length);return(ct.length>20?"...":"")+ct.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ct=this.match;return ct.length<20&&(ct+=this._input.substr(0,20-ct.length)),(ct.substr(0,20)+(ct.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ct=this.pastInput(),rt=new Array(ct.length+1).join("-");return ct+this.upcomingInput()+` +`+rt+"^"},test_match:function(ct,rt){var it,gt,Q;if(this.options.backtrack_lexer&&(Q={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Q.yylloc.range=this.yylloc.range.slice(0))),gt=ct[0].match(/(?:\r\n?|\n).*/g),gt&&(this.yylineno+=gt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:gt?gt[gt.length-1].length-gt[gt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ct[0].length},this.yytext+=ct[0],this.match+=ct[0],this.matches=ct,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(ct[0].length),this.matched+=ct[0],it=this.performAction.call(this,this.yy,this,rt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),it)return it;if(this._backtrack){for(var dt in Q)this[dt]=Q[dt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ct,rt,it,gt;this._more||(this.yytext="",this.match="");for(var Q=this._currentRules(),dt=0;dtrt[0].length)){if(rt=it,gt=dt,this.options.backtrack_lexer){if(ct=this.test_match(it,Q[dt]),ct!==!1)return ct;if(this._backtrack){rt=!1;continue}else return!1}else if(!this.options.flex)break}return rt?(ct=this.test_match(rt,Q[gt]),ct!==!1?ct:!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 rt=this.next();return rt||this.lex()},begin:function(rt){this.conditionStack.push(rt)},popState:function(){var rt=this.conditionStack.length-1;return rt>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(rt){return rt=this.conditionStack.length-1-Math.abs(rt||0),rt>=0?this.conditionStack[rt]:"INITIAL"},pushState:function(rt){this.begin(rt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(rt,it,gt,Q){switch(gt){case 0:return rt.getLogger().trace("Found comment",it.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:this.popState();break;case 5:rt.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return rt.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:rt.getLogger().trace("end icon"),this.popState();break;case 10:return rt.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return rt.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return rt.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return rt.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:return this.begin("NODE"),19;case 15:return this.begin("NODE"),19;case 16:return this.begin("NODE"),19;case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:rt.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return rt.getLogger().trace("description:",it.yytext),"NODE_DESCR";case 26:this.popState();break;case 27:return this.popState(),rt.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),rt.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),rt.getLogger().trace("node end ...",it.yytext),"NODE_DEND";case 30:return this.popState(),rt.getLogger().trace("node end (("),"NODE_DEND";case 31:return this.popState(),rt.getLogger().trace("node end (-"),"NODE_DEND";case 32:return this.popState(),rt.getLogger().trace("node end (-"),"NODE_DEND";case 33:return this.popState(),rt.getLogger().trace("node end (("),"NODE_DEND";case 34:return this.popState(),rt.getLogger().trace("node end (("),"NODE_DEND";case 35:return rt.getLogger().trace("Long description:",it.yytext),20;case 36:return rt.getLogger().trace("Long description:",it.yytext),20}},rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return mt}();ot.lexer=ft;function wt(){this.yy={}}return wt.prototype=ot,ot.Parser=wt,new wt}();d2t.parser=d2t;const Ytn=d2t;let ry=[],UHt=0,g2t={};const Xtn=()=>{ry=[],UHt=0,g2t={}},Qtn=function(i){for(let a=ry.length-1;a>=0;a--)if(ry[a].levelry.length>0?ry[0]:null,Ztn=(i,a,f,g)=>{var S,_;Kt.info("addNode",i,a,f,g);const w=Re();let v=((S=w.mindmap)==null?void 0:S.padding)??Bl.mindmap.padding;switch(g){case V1.ROUNDED_RECT:case V1.RECT:case V1.HEXAGON:v*=2}const b={id:UHt++,nodeId:Ef(a,w),level:i,descr:Ef(f,w),type:g,children:[],width:((_=w.mindmap)==null?void 0:_.maxNodeWidth)??Bl.mindmap.maxNodeWidth,padding:v},E=Qtn(i);if(E)E.children.push(b),ry.push(b);else if(ry.length===0)ry.push(b);else throw new Error('There can be only one root. No parent could be found for ("'+b.descr+'")')},V1={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},ten={clear:Xtn,addNode:Ztn,getMindmap:Jtn,nodeType:V1,getType:(i,a)=>{switch(Kt.debug("In get type",i,a),i){case"[":return V1.RECT;case"(":return a===")"?V1.ROUNDED_RECT:V1.CLOUD;case"((":return V1.CIRCLE;case")":return V1.CLOUD;case"))":return V1.BANG;case"{{":return V1.HEXAGON;default:return V1.DEFAULT}},setElementForId:(i,a)=>{g2t[i]=a},decorateNode:i=>{if(!i)return;const a=Re(),f=ry[ry.length-1];i.icon&&(f.icon=Ef(i.icon,a)),i.class&&(f.class=Ef(i.class,a))},type2Str:i=>{switch(i){case V1.DEFAULT:return"no-border";case V1.RECT:return"rect";case V1.ROUNDED_RECT:return"rounded-rect";case V1.CIRCLE:return"circle";case V1.CLOUD:return"cloud";case V1.BANG:return"bang";case V1.HEXAGON:return"hexgon";default:return"no-border"}},getLogger:()=>Kt,getElementById:i=>g2t[i]};var GHt={exports:{}};(function(i,a){(function(f,g){i.exports=g()})(Z0,function(){function f(y){"@babel/helpers - typeof";return f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(p){return typeof p}:function(p){return p&&typeof Symbol=="function"&&p.constructor===Symbol&&p!==Symbol.prototype?"symbol":typeof p},f(y)}function g(y,p){if(!(y instanceof p))throw new TypeError("Cannot call a class as a function")}function w(y,p){for(var x=0;xy.length)&&(p=y.length);for(var x=0,C=new Array(p);x"u"?null:window,z=B?B.navigator:null;B&&B.document;var Y=f(""),nt=f({}),ot=f(function(){}),ft=typeof HTMLElement>"u"?"undefined":f(HTMLElement),wt=function(p){return p&&p.instanceString&&ct(p.instanceString)?p.instanceString():null},mt=function(p){return p!=null&&f(p)==Y},ct=function(p){return p!=null&&f(p)===ot},rt=function(p){return!yt(p)&&(Array.isArray?Array.isArray(p):p!=null&&p instanceof Array)},it=function(p){return p!=null&&f(p)===nt&&!rt(p)&&p.constructor===Object},gt=function(p){return p!=null&&f(p)===nt},Q=function(p){return p!=null&&f(p)===f(1)&&!isNaN(p)},dt=function(p){return Q(p)&&Math.floor(p)===p},K=function(p){if(ft!=="undefined")return p!=null&&p instanceof HTMLElement},yt=function(p){return V(p)||Ot(p)},V=function(p){return wt(p)==="collection"&&p._private.single},Ot=function(p){return wt(p)==="collection"&&!p._private.single},It=function(p){return wt(p)==="core"},jt=function(p){return wt(p)==="stylesheet"},xt=function(p){return wt(p)==="event"},Ft=function(p){return p==null?!0:!!(p===""||p.match(/^\s+$/))},Ct=function(p){return typeof HTMLElement>"u"?!1:p instanceof HTMLElement},kt=function(p){return it(p)&&Q(p.x1)&&Q(p.x2)&&Q(p.y1)&&Q(p.y2)},Gt=function(p){return gt(p)&&ct(p.then)},Fe=function(){return z&&z.userAgent.match(/msie|trident|edge/i)},Mt=function(p,x){x||(x=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var O=[],N=0;Nx?1:0},Br=function(p,x){return-1*ce(p,x)},we=Object.assign!=null?Object.assign.bind(Object):function(y){for(var p=arguments,x=1;x1&&(St-=1),St<1/6?pt+(_t-pt)*6*St:St<1/2?_t:St<2/3?pt+(_t-pt)*(2/3-St)*6:pt}var Z=new RegExp("^"+Xt+"$").exec(p);if(Z){if(C=parseInt(Z[1]),C<0?C=(360- -1*C%360)%360:C>360&&(C=C%360),C/=360,L=parseFloat(Z[2]),L<0||L>100||(L=L/100,O=parseFloat(Z[3]),O<0||O>100)||(O=O/100,N=Z[4],N!==void 0&&(N=parseFloat(N),N<0||N>1)))return;if(L===0)j=H=q=Math.round(O*255);else{var st=O<.5?O*(1+L):O+L-O*L,bt=2*O-st;j=Math.round(255*W(bt,st,C+1/3)),H=Math.round(255*W(bt,st,C)),q=Math.round(255*W(bt,st,C-1/3))}x=[j,H,q,N]}return x},ga=function(p){var x,C=new RegExp("^"+be+"$").exec(p);if(C){x=[];for(var L=[],O=1;O<=3;O++){var N=C[O];if(N[N.length-1]==="%"&&(L[O]=!0),N=parseFloat(N),L[O]&&(N=N/100*255),N<0||N>255)return;x.push(Math.floor(N))}var j=L[1]||L[2]||L[3],H=L[1]&&L[2]&&L[3];if(j&&!H)return;var q=C[4];if(q!==void 0){if(q=parseFloat(q),q<0||q>1)return;x.push(q)}}return x},Ss=function(p){return br[p.toLowerCase()]},za=function(p){return(rt(p)?p:null)||Ss(p)||Fi(p)||ga(p)||mi(p)},br={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},An=function(p){for(var x=p.map,C=p.keys,L=C.length,O=0;O=p||Ut<0||Z&&de>=O}function Et(){var ee=Ha();if(St(ee))return Nt(ee);j=setTimeout(Et,_t(ee))}function Nt(ee){return j=void 0,st&&C?bt(ee):(C=L=void 0,N)}function Pt(){j!==void 0&&clearTimeout(j),q=0,C=H=L=j=void 0}function qt(){return j===void 0?N:Nt(Ha())}function re(){var ee=Ha(),Ut=St(ee);if(C=arguments,L=this,H=ee,Ut){if(j===void 0)return pt(H);if(Z)return clearTimeout(j),j=setTimeout(Et,p),bt(H)}return j===void 0&&(j=setTimeout(Et,p)),N}return re.cancel=Pt,re.flush=qt,re}var pu=Ci,Le=B?B.performance:null,iy=Le&&Le.now?function(){return Le.now()}:function(){return Date.now()},$e=function(){if(B){if(B.requestAnimationFrame)return function(y){B.requestAnimationFrame(y)};if(B.mozRequestAnimationFrame)return function(y){B.mozRequestAnimationFrame(y)};if(B.webkitRequestAnimationFrame)return function(y){B.webkitRequestAnimationFrame(y)};if(B.msRequestAnimationFrame)return function(y){B.msRequestAnimationFrame(y)}}return function(y){y&&setTimeout(function(){y(iy())},1e3/60)}}(),g1=function(p){return $e(p)},ip=iy,sy=9261,D8=65599,g4=5381,th=function(p){for(var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:sy,C=x,L;L=p.next(),!L.done;)C=C*D8+L.value|0;return C},fg=function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:sy;return x*D8+p|0},O2=function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:g4;return(x<<5)+x+p|0},M8=function(p,x){return p*2097152+x},N2=function(p){return p[0]*2097152+p[1]},p4=function(p,x){return[fg(p[0],x[0]),O2(p[1],x[1])]},U1=function(p,x){var C={value:0,done:!1},L=0,O=p.length,N={next:function(){return L=0&&!(p[L]===x&&(p.splice(L,1),C));L--);},G9=function(p){p.splice(0,p.length)},OB=function(p,x){for(var C=0;C"u"?"undefined":f(Set))!==VX?Set:UX,K9=function(p,x){var C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(p===void 0||x===void 0||!It(p)){$l("An element must have a core reference and parameters set");return}var L=x.group;if(L==null&&(x.data&&x.data.source!=null&&x.data.target!=null?L="edges":L="nodes"),L!=="nodes"&&L!=="edges"){$l("An element must be of type `nodes` or `edges`; you specified `"+L+"`");return}this.length=1,this[0]=this;var O=this._private={cy:p,single:!0,data:x.data||{},position:x.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:L,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!x.selected,selectable:x.selectable===void 0?!0:!!x.selectable,locked:!!x.locked,grabbed:!1,grabbable:x.grabbable===void 0?!0:!!x.grabbable,pannable:x.pannable===void 0?L==="edges":!!x.pannable,active:!1,classes:new Wx,animation:{current:[],queue:[]},rscratch:{},scratch:x.scratch||{},edges:[],children:[],parent:x.parent&&x.parent.isNode()?x.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(O.position.x==null&&(O.position.x=0),O.position.y==null&&(O.position.y=0),x.renderedPosition){var N=x.renderedPosition,j=p.pan(),H=p.zoom();O.position={x:(N.x-j.x)/H,y:(N.y-j.y)/H}}var q=[];rt(x.classes)?q=x.classes:mt(x.classes)&&(q=x.classes.split(/\s+/));for(var W=0,Z=q.length;WNt?1:0},W=function(Et,Nt,Pt,qt,re){var ee;if(Pt==null&&(Pt=0),re==null&&(re=C),Pt<0)throw new Error("lo must be non-negative");for(qt==null&&(qt=Et.length);PtEe;0<=Ee?Yt++:Yt--)de.push(Yt);return de}).apply(this).reverse(),Ut=[],qt=0,re=ee.length;qtTe;0<=Te?++de:--de)ie.push(N(Et,Pt));return ie},_t=function(Et,Nt,Pt,qt){var re,ee,Ut;for(qt==null&&(qt=C),re=Et[Pt];Pt>Nt;){if(Ut=Pt-1>>1,ee=Et[Ut],qt(re,ee)<0){Et[Pt]=ee,Pt=Ut;continue}break}return Et[Pt]=re},St=function(Et,Nt,Pt){var qt,re,ee,Ut,de;for(Pt==null&&(Pt=C),re=Et.length,de=Nt,ee=Et[Nt],qt=2*Nt+1;qt0;){var ee=Nt.pop(),Ut=St(ee),de=ee.id();if(st[de]=Ut,Ut!==1/0)for(var Yt=ee.neighborhood().intersect(pt),Ee=0;Ee0)for(Tn.unshift(qe);Z[lr];){var Sn=Z[lr];Tn.unshift(Sn.edge),Tn.unshift(Sn.node),Xn=Sn.node,lr=Xn.id()}return j.spawn(Tn)}}}},YX={kruskal:function(p){p=p||function(Pt){return 1};for(var x=this.byGroup(),C=x.nodes,L=x.edges,O=C.length,N=new Array(O),j=C,H=function(qt){for(var re=0;re0;){if(re(),Ut++,qt===W){for(var de=[],Yt=O,Ee=W,Te=Et[Ee];de.unshift(Yt),Te!=null&&de.unshift(Te),Yt=St[Ee],Yt!=null;)Ee=Yt.id(),Te=Et[Ee];return{found:!0,distance:Z[qt],path:this.spawn(de),steps:Ut}}bt[qt]=!0;for(var ie=Pt._private.edges,ze=0;zeTe&&(pt[Ee]=Te,Nt[Ee]=Yt,Pt[Ee]=re),!O){var ie=Yt*W+de;!O&&pt[ie]>Te&&(pt[ie]=Te,Nt[ie]=de,Pt[ie]=re)}}}for(var ze=0;ze1&&arguments[1]!==void 0?arguments[1]:N,eo=Pt(as),Ta=[],pa=eo;;){if(pa==null)return x.spawn();var mo=Nt(pa),Kn=mo.edge,G=mo.pred;if(Ta.unshift(pa[0]),pa.same(Es)&&Ta.length>0)break;Kn!=null&&Ta.unshift(Kn),pa=G}return H.spawn(Ta)},ee=0;ee=0;W--){var Z=q[W],st=Z[1],bt=Z[2];(x[st]===j&&x[bt]===H||x[st]===H&&x[bt]===j)&&q.splice(W,1)}for(var pt=0;ptL;){var O=Math.floor(Math.random()*x.length);x=rQ(O,p,x),C--}return x},iQ={kargerStein:function(){var p=this,x=this.byGroup(),C=x.nodes,L=x.edges;L.unmergeBy(function(Tn){return Tn.isLoop()});var O=C.length,N=L.length,j=Math.ceil(Math.pow(Math.log(O)/Math.LN2,2)),H=Math.floor(O/nQ);if(O<2){$l("At least 2 nodes are required for Karger-Stein algorithm");return}for(var q=[],W=0;W1&&arguments[1]!==void 0?arguments[1]:0,C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:p.length,L=1/0,O=x;O1&&arguments[1]!==void 0?arguments[1]:0,C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:p.length,L=-1/0,O=x;O1&&arguments[1]!==void 0?arguments[1]:0,C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:p.length,L=0,O=0,N=x;N1&&arguments[1]!==void 0?arguments[1]:0,C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:p.length,L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,O=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,N=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;L?p=p.slice(x,C):(C0&&p.splice(0,x));for(var j=0,H=p.length-1;H>=0;H--){var q=p[H];N?isFinite(q)||(p[H]=-1/0,j++):p.splice(H,1)}O&&p.sort(function(st,bt){return st-bt});var W=p.length,Z=Math.floor(W/2);return W%2!==0?p[Z+1+j]:(p[Z-1+j]+p[Z+j])/2},lQ=function(p){return Math.PI*p/180},Y9=function(p,x){return Math.atan2(x,p)-Math.PI/2},jD=Math.log2||function(y){return Math.log(y)/Math.log(2)},FB=function(p){return p>0?1:p<0?-1:0},w4=function(p,x){return Math.sqrt(m4(p,x))},m4=function(p,x){var C=x.x-p.x,L=x.y-p.y;return C*C+L*L},hQ=function(p){for(var x=p.length,C=0,L=0;L=p.x1&&p.y2>=p.y1)return{x1:p.x1,y1:p.y1,x2:p.x2,y2:p.y2,w:p.x2-p.x1,h:p.y2-p.y1};if(p.w!=null&&p.h!=null&&p.w>=0&&p.h>=0)return{x1:p.x1,y1:p.y1,x2:p.x1+p.w,y2:p.y1+p.h,w:p.w,h:p.h}}},dQ=function(p){return{x1:p.x1,x2:p.x2,w:p.w,y1:p.y1,y2:p.y2,h:p.h}},gQ=function(p){p.x1=1/0,p.y1=1/0,p.x2=-1/0,p.y2=-1/0,p.w=0,p.h=0},pQ=function(p,x,C){return{x1:p.x1+x,x2:p.x2+x,y1:p.y1+C,y2:p.y2+C,w:p.w,h:p.h}},BB=function(p,x){p.x1=Math.min(p.x1,x.x1),p.x2=Math.max(p.x2,x.x2),p.w=p.x2-p.x1,p.y1=Math.min(p.y1,x.y1),p.y2=Math.max(p.y2,x.y2),p.h=p.y2-p.y1},bQ=function(p,x,C){p.x1=Math.min(p.x1,x),p.x2=Math.max(p.x2,x),p.w=p.x2-p.x1,p.y1=Math.min(p.y1,C),p.y2=Math.max(p.y2,C),p.h=p.y2-p.y1},X9=function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return p.x1-=x,p.x2+=x,p.y1-=x,p.y2+=x,p.w=p.x2-p.x1,p.h=p.y2-p.y1,p},Q9=function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],C,L,O,N;if(x.length===1)C=L=O=N=x[0];else if(x.length===2)C=O=x[0],N=L=x[1];else if(x.length===4){var j=E(x,4);C=j[0],L=j[1],O=j[2],N=j[3]}return p.x1-=N,p.x2+=L,p.y1-=C,p.y2+=O,p.w=p.x2-p.x1,p.h=p.y2-p.y1,p},RB=function(p,x){p.x1=x.x1,p.y1=x.y1,p.x2=x.x2,p.y2=x.y2,p.w=p.x2-p.x1,p.h=p.y2-p.y1},$D=function(p,x){return!(p.x1>x.x2||x.x1>p.x2||p.x2x.y2||x.y1>p.y2)},Qx=function(p,x,C){return p.x1<=x&&x<=p.x2&&p.y1<=C&&C<=p.y2},wQ=function(p,x){return Qx(p,x.x,x.y)},jB=function(p,x){return Qx(p,x.x1,x.y1)&&Qx(p,x.x2,x.y2)},$B=function(p,x,C,L,O,N,j){var H=R8(O,N),q=O/2,W=N/2,Z;{var st=C-q+H-j,bt=L-W-j,pt=C+q-H+j,_t=bt;if(Z=uy(p,x,C,L,st,bt,pt,_t,!1),Z.length>0)return Z}{var St=C+q+j,Et=L-W+H-j,Nt=St,Pt=L+W-H+j;if(Z=uy(p,x,C,L,St,Et,Nt,Pt,!1),Z.length>0)return Z}{var qt=C-q+H-j,re=L+W+j,ee=C+q-H+j,Ut=re;if(Z=uy(p,x,C,L,qt,re,ee,Ut,!1),Z.length>0)return Z}{var de=C-q-j,Yt=L-W+H-j,Ee=de,Te=L+W-H+j;if(Z=uy(p,x,C,L,de,Yt,Ee,Te,!1),Z.length>0)return Z}var ie;{var ze=C-q+H,me=L-W+H;if(ie=F8(p,x,C,L,ze,me,H+j),ie.length>0&&ie[0]<=ze&&ie[1]<=me)return[ie[0],ie[1]]}{var yn=C+q-H,nn=L-W+H;if(ie=F8(p,x,C,L,yn,nn,H+j),ie.length>0&&ie[0]>=yn&&ie[1]<=nn)return[ie[0],ie[1]]}{var qe=C+q-H,Tn=L+W-H;if(ie=F8(p,x,C,L,qe,Tn,H+j),ie.length>0&&ie[0]>=qe&&ie[1]>=Tn)return[ie[0],ie[1]]}{var Xn=C-q+H,lr=L+W-H;if(ie=F8(p,x,C,L,Xn,lr,H+j),ie.length>0&&ie[0]<=Xn&&ie[1]>=lr)return[ie[0],ie[1]]}return[]},mQ=function(p,x,C,L,O,N,j){var H=j,q=Math.min(C,O),W=Math.max(C,O),Z=Math.min(L,N),st=Math.max(L,N);return q-H<=p&&p<=W+H&&Z-H<=x&&x<=st+H},vQ=function(p,x,C,L,O,N,j,H,q){var W={x1:Math.min(C,j,O)-q,x2:Math.max(C,j,O)+q,y1:Math.min(L,H,N)-q,y2:Math.max(L,H,N)+q};return!(pW.x2||xW.y2)},yQ=function(p,x,C,L){C-=L;var O=x*x-4*p*C;if(O<0)return[];var N=Math.sqrt(O),j=2*p,H=(-x+N)/j,q=(-x-N)/j;return[H,q]},xQ=function(p,x,C,L,O){var N=1e-5;p===0&&(p=N),x/=p,C/=p,L/=p;var j,H,q,W,Z,st,bt,pt;if(H=(3*C-x*x)/9,q=-(27*L)+x*(9*C-2*(x*x)),q/=54,j=H*H*H+q*q,O[1]=0,bt=x/3,j>0){Z=q+Math.sqrt(j),Z=Z<0?-Math.pow(-Z,1/3):Math.pow(Z,1/3),st=q-Math.sqrt(j),st=st<0?-Math.pow(-st,1/3):Math.pow(st,1/3),O[0]=-bt+Z+st,bt+=(Z+st)/2,O[4]=O[2]=-bt,bt=Math.sqrt(3)*(-st+Z)/2,O[3]=bt,O[5]=-bt;return}if(O[5]=O[3]=0,j===0){pt=q<0?-Math.pow(-q,1/3):Math.pow(q,1/3),O[0]=-bt+2*pt,O[4]=O[2]=-(pt+bt);return}H=-H,W=H*H*H,W=Math.acos(q/Math.sqrt(W)),pt=2*Math.sqrt(H),O[0]=-bt+pt*Math.cos(W/3),O[2]=-bt+pt*Math.cos((W+2*Math.PI)/3),O[4]=-bt+pt*Math.cos((W+4*Math.PI)/3)},kQ=function(p,x,C,L,O,N,j,H){var q=1*C*C-4*C*O+2*C*j+4*O*O-4*O*j+j*j+L*L-4*L*N+2*L*H+4*N*N-4*N*H+H*H,W=1*9*C*O-3*C*C-3*C*j-6*O*O+3*O*j+9*L*N-3*L*L-3*L*H-6*N*N+3*N*H,Z=1*3*C*C-6*C*O+C*j-C*p+2*O*O+2*O*p-j*p+3*L*L-6*L*N+L*H-L*x+2*N*N+2*N*x-H*x,st=1*C*O-C*C+C*p-O*p+L*N-L*L+L*x-N*x,bt=[];xQ(q,W,Z,st,bt);for(var pt=1e-7,_t=[],St=0;St<6;St+=2)Math.abs(bt[St+1])=0&&bt[St]<=1&&_t.push(bt[St]);_t.push(1),_t.push(0);for(var Et=-1,Nt,Pt,qt,re=0;re<_t.length;re++)Nt=Math.pow(1-_t[re],2)*C+2*(1-_t[re])*_t[re]*O+_t[re]*_t[re]*j,Pt=Math.pow(1-_t[re],2)*L+2*(1-_t[re])*_t[re]*N+_t[re]*_t[re]*H,qt=Math.pow(Nt-p,2)+Math.pow(Pt-x,2),Et>=0?qtq?(p-O)*(p-O)+(x-N)*(x-N):W-st},y0=function(p,x,C){for(var L,O,N,j,H,q=0,W=0;W=p&&p>=N||L<=p&&p<=N)H=(p-L)/(N-L)*(j-O)+O,H>x&&q++;else continue;return q%2!==0},sm=function(p,x,C,L,O,N,j,H,q){var W=new Array(C.length),Z;H[0]!=null?(Z=Math.atan(H[1]/H[0]),H[0]<0?Z=Z+Math.PI/2:Z=-Z-Math.PI/2):Z=H;for(var st=Math.cos(-Z),bt=Math.sin(-Z),pt=0;pt0){var St=Z9(W,-q);_t=J9(St)}else _t=W;return y0(p,x,_t)},TQ=function(p,x,C,L,O,N,j){for(var H=new Array(C.length),q=N/2,W=j/2,Z=HD(N,j),st=Z*Z,bt=0;bt=0&&St<=1&&Nt.push(St),Et>=0&&Et<=1&&Nt.push(Et),Nt.length===0)return[];var Pt=Nt[0]*H[0]+p,qt=Nt[0]*H[1]+x;if(Nt.length>1){if(Nt[0]==Nt[1])return[Pt,qt];var re=Nt[1]*H[0]+p,ee=Nt[1]*H[1]+x;return[Pt,qt,re,ee]}else return[Pt,qt]},zD=function(p,x,C){return x<=p&&p<=C||C<=p&&p<=x?p:p<=x&&x<=C||C<=x&&x<=p?x:C},uy=function(p,x,C,L,O,N,j,H,q){var W=p-O,Z=C-p,st=j-O,bt=x-N,pt=L-x,_t=H-N,St=st*bt-_t*W,Et=Z*bt-pt*W,Nt=_t*Z-st*pt;if(Nt!==0){var Pt=St/Nt,qt=Et/Nt,re=.001,ee=0-re,Ut=1+re;return ee<=Pt&&Pt<=Ut&&ee<=qt&&qt<=Ut?[p+Pt*Z,x+Pt*pt]:q?[p+Pt*Z,x+Pt*pt]:[]}else return St===0||Et===0?zD(p,C,j)===j?[j,H]:zD(p,C,O)===O?[O,N]:zD(O,j,C)===C?[C,L]:[]:[]},B8=function(p,x,C,L,O,N,j,H){var q=[],W,Z=new Array(C.length),st=!0;N==null&&(st=!1);var bt;if(st){for(var pt=0;pt0){var _t=Z9(Z,-H);bt=J9(_t)}else bt=Z}else bt=C;for(var St,Et,Nt,Pt,qt=0;qt2){for(var nn=[q[0],q[1]],qe=Math.pow(nn[0]-p,2)+Math.pow(nn[1]-x,2),Tn=1;TnW&&(W=qt)},get:function(Pt){return q[Pt]}},st=0;st0?nn=yn.edgesTo(me)[0]:nn=me.edgesTo(yn)[0];var qe=L(nn);me=me.id(),de[me]>de[ie]+qe&&(de[me]=de[ie]+qe,Yt.nodes.indexOf(me)<0?Yt.push(me):Yt.updateItem(me),Ut[me]=0,ee[me]=[]),de[me]==de[ie]+qe&&(Ut[me]=Ut[me]+Ut[ie],ee[me].push(ie))}else for(var Tn=0;Tn0;){for(var or=re.pop(),pr=0;pr0&&j.push(C[H]);j.length!==0&&O.push(L.collection(j))}return O},jQ=function(p,x){for(var C=0;C5&&arguments[5]!==void 0?arguments[5]:qQ,j=L,H,q,W=0;W=2?j8(p,x,C,0,XB,HQ):j8(p,x,C,0,YB)},squaredEuclidean:function(p,x,C){return j8(p,x,C,0,XB)},manhattan:function(p,x,C){return j8(p,x,C,0,YB)},max:function(p,x,C){return j8(p,x,C,-1/0,VQ)}};t6["squared-euclidean"]=t6.squaredEuclidean,t6.squaredeuclidean=t6.squaredEuclidean;function eC(y,p,x,C,L,O){var N;return ct(y)?N=y:N=t6[y]||t6.euclidean,p===0&&ct(y)?N(L,O):N(p,x,C,L,O)}var UQ=p1({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),GD=function(p){return UQ(p)},nC=function(p,x,C,L,O){var N=O!=="kMedoids",j=N?function(Z){return C[Z]}:function(Z){return L[Z](C)},H=function(st){return L[st](x)},q=C,W=x;return eC(p,L.length,j,H,q,W)},KD=function(p,x,C){for(var L=C.length,O=new Array(L),N=new Array(L),j=new Array(x),H=null,q=0;qC)return!1}return!0},WQ=function(p,x,C){for(var L=0;Lj&&(j=x[q][W],H=W);O[H].push(p[q])}for(var Z=0;Z=O.threshold||O.mode==="dendrogram"&&p.length===1)return!1;var pt=x[N],_t=x[L[N]],St;O.mode==="dendrogram"?St={left:pt,right:_t,key:pt.key}:St={value:pt.value.concat(_t.value),key:pt.key},p[pt.index]=St,p.splice(_t.index,1),x[pt.key]=St;for(var Et=0;EtC[_t.key][Nt.key]&&(H=C[_t.key][Nt.key])):O.linkage==="max"?(H=C[pt.key][Nt.key],C[pt.key][Nt.key]0&&L.push(O);return L},iR=function(p,x,C){for(var L=[],O=0;Oj&&(N=q,j=x[O*p+q])}N>0&&L.push(N)}for(var W=0;Wq&&(H=W,q=Z)}C[O]=N[H]}return L=iR(p,x,C),L},sR=function(p){for(var x=this.cy(),C=this.nodes(),L=cJ(p),O={},N=0;N=Te?(ie=Te,Te=me,ze=yn):me>ie&&(ie=me);for(var nn=0;nn0?1:0;Ut[Yt%L.minIterations*j+or]=pr,Sn+=pr}if(Sn>0&&(Yt>=L.minIterations-1||Yt==L.maxIterations-1)){for(var kr=0,wr=0;wr1||ee>1)&&(j=!0),Z[Pt]=[],Nt.outgoers().forEach(function(de){de.isEdge()&&Z[Pt].push(de.id())})}else st[Pt]=[void 0,Nt.target().id()]}):N.forEach(function(Nt){var Pt=Nt.id();if(Nt.isNode()){var qt=Nt.degree(!0);qt%2&&(H?q?j=!0:q=Pt:H=Pt),Z[Pt]=[],Nt.connectedEdges().forEach(function(re){return Z[Pt].push(re.id())})}else st[Pt]=[Nt.source().id(),Nt.target().id()]});var bt={found:!1,trail:void 0};if(j)return bt;if(q&&H)if(O){if(W&&q!=W)return bt;W=q}else{if(W&&q!=W&&H!=W)return bt;W||(W=q)}else W||(W=N[0].id());var pt=function(Pt){for(var qt=Pt,re=[Pt],ee,Ut,de;Z[qt].length;)ee=Z[qt].shift(),Ut=st[ee][0],de=st[ee][1],qt!=de?(Z[de]=Z[de].filter(function(Yt){return Yt!=ee}),qt=de):!O&&qt!=Ut&&(Z[Ut]=Z[Ut].filter(function(Yt){return Yt!=ee}),qt=Ut),re.unshift(ee),re.unshift(qt);return re},_t=[],St=[];for(St=pt(W);St.length!=1;)Z[St[0]].length==0?(_t.unshift(N.getElementById(St.shift())),_t.unshift(N.getElementById(St.shift()))):St=pt(St.shift()).concat(St);_t.unshift(N.getElementById(St.shift()));for(var Et in Z)if(Z[Et].length)return bt;return bt.found=!0,bt.trail=this.spawn(_t,!0),bt}},iC=function(){var p=this,x={},C=0,L=0,O=[],N=[],j={},H=function(st,bt){for(var pt=N.length-1,_t=[],St=p.spawn();N[pt].x!=st||N[pt].y!=bt;)_t.push(N.pop().edge),pt--;_t.push(N.pop().edge),_t.forEach(function(Et){var Nt=Et.connectedNodes().intersection(p);St.merge(Et),Nt.forEach(function(Pt){var qt=Pt.id(),re=Pt.connectedEdges().intersection(p);St.merge(Pt),x[qt].cutVertex?St.merge(re.filter(function(ee){return ee.isLoop()})):St.merge(re)})}),O.push(St)},q=function Z(st,bt,pt){st===pt&&(L+=1),x[bt]={id:C,low:C++,cutVertex:!1};var _t=p.getElementById(bt).connectedEdges().intersection(p);if(_t.size()===0)O.push(p.spawn(p.getElementById(bt)));else{var St,Et,Nt,Pt;_t.forEach(function(qt){St=qt.source().id(),Et=qt.target().id(),Nt=St===bt?Et:St,Nt!==pt&&(Pt=qt.id(),j[Pt]||(j[Pt]=!0,N.push({x:bt,y:Nt,edge:qt})),Nt in x?x[bt].low=Math.min(x[bt].low,x[Nt].id):(Z(st,Nt,bt),x[bt].low=Math.min(x[bt].low,x[Nt].low),x[bt].id<=x[Nt].low&&(x[bt].cutVertex=!0,H(bt,Nt))))})}};p.forEach(function(Z){if(Z.isNode()){var st=Z.id();st in x||(L=0,q(st,st),x[st].cutVertex=L>1)}});var W=Object.keys(x).filter(function(Z){return x[Z].cutVertex}).map(function(Z){return p.getElementById(Z)});return{cut:p.spawn(W),components:O}},bJ={hopcroftTarjanBiconnected:iC,htbc:iC,htb:iC,hopcroftTarjanBiconnectedComponents:iC},sC=function(){var p=this,x={},C=0,L=[],O=[],N=p.spawn(p),j=function H(q){O.push(q),x[q]={index:C,low:C++,explored:!1};var W=p.getElementById(q).connectedEdges().intersection(p);if(W.forEach(function(_t){var St=_t.target().id();St!==q&&(St in x||H(St),x[St].explored||(x[q].low=Math.min(x[q].low,x[St].low)))}),x[q].index===x[q].low){for(var Z=p.spawn();;){var st=O.pop();if(Z.merge(p.getElementById(st)),x[st].low=x[q].index,x[st].explored=!0,st===q)break}var bt=Z.edgesWith(Z),pt=Z.merge(bt);L.push(pt),N=N.difference(pt)}};return p.forEach(function(H){if(H.isNode()){var q=H.id();q in x||j(q)}}),{cut:N,components:L}},wJ={tarjanStronglyConnected:sC,tsc:sC,tscc:sC,tarjanStronglyConnectedComponents:sC},aR={};[O8,WX,YX,QX,ZX,eQ,iQ,LQ,Jx,Zx,UD,zQ,tJ,aJ,dJ,pJ,bJ,wJ].forEach(function(y){we(aR,y)});/*! +Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable +Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) +Licensed under The MIT License (http://opensource.org/licenses/MIT) +*/var oR=0,cR=1,uR=2,am=function y(p){if(!(this instanceof y))return new y(p);this.id="Thenable/1.0.7",this.state=oR,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof p=="function"&&p.call(this,this.fulfill.bind(this),this.reject.bind(this))};am.prototype={fulfill:function(p){return lR(this,cR,"fulfillValue",p)},reject:function(p){return lR(this,uR,"rejectReason",p)},then:function(p,x){var C=this,L=new am;return C.onFulfilled.push(dR(p,L,"fulfill")),C.onRejected.push(dR(x,L,"reject")),hR(C),L.proxy}};var lR=function(p,x,C,L){return p.state===oR&&(p.state=x,p[C]=L,hR(p)),p},hR=function(p){p.state===cR?fR(p,"onFulfilled",p.fulfillValue):p.state===uR&&fR(p,"onRejected",p.rejectReason)},fR=function(p,x,C){if(p[x].length!==0){var L=p[x];p[x]=[];var O=function(){for(var j=0;j0}},clearQueue:function(){return function(){var x=this,C=x.length!==void 0,L=C?x:[x],O=this._private.cy||this;if(!O.styleEnabled())return this;for(var N=0;N-1}var mZ=wZ;function vZ(y,p){var x=this.__data__,C=cC(x,y);return C<0?(++this.size,x.push([y,p])):x[C][1]=p,this}var yZ=vZ;function r6(y){var p=-1,x=y==null?0:y.length;for(this.clear();++p-1&&y%1==0&&y0&&this.spawn(L).updateStyle().emit("class"),x},addClass:function(p){return this.toggleClass(p,!0)},hasClass:function(p){var x=this[0];return x!=null&&x._private.classes.has(p)},toggleClass:function(p,x){rt(p)||(p=p.match(/\S+/g)||[]);for(var C=this,L=x===void 0,O=[],N=0,j=C.length;N0&&this.spawn(O).updateStyle().emit("class"),C},removeClass:function(p){return this.toggleClass(p,!1)},flashClass:function(p,x){var C=this;if(x==null)x=250;else if(x===0)return C;return C.addClass(p),setTimeout(function(){C.removeClass(p)},x),C}};lC.className=lC.classNames=lC.classes;var yc={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:sn,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};yc.variable="(?:[\\w-.]|(?:\\\\"+yc.metaChar+"))+",yc.className="(?:[\\w-]|(?:\\\\"+yc.metaChar+"))+",yc.value=yc.string+"|"+yc.number,yc.id=yc.variable,function(){var y,p,x;for(y=yc.comparatorOp.split("|"),x=0;x=0)&&p!=="="&&(yc.comparatorOp+="|\\!"+p)}();var bu=function(){return{checks:[]}},Xi={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},JD=[{selector:":selected",matches:function(p){return p.selected()}},{selector:":unselected",matches:function(p){return!p.selected()}},{selector:":selectable",matches:function(p){return p.selectable()}},{selector:":unselectable",matches:function(p){return!p.selectable()}},{selector:":locked",matches:function(p){return p.locked()}},{selector:":unlocked",matches:function(p){return!p.locked()}},{selector:":visible",matches:function(p){return p.visible()}},{selector:":hidden",matches:function(p){return!p.visible()}},{selector:":transparent",matches:function(p){return p.transparent()}},{selector:":grabbed",matches:function(p){return p.grabbed()}},{selector:":free",matches:function(p){return!p.grabbed()}},{selector:":removed",matches:function(p){return p.removed()}},{selector:":inside",matches:function(p){return!p.removed()}},{selector:":grabbable",matches:function(p){return p.grabbable()}},{selector:":ungrabbable",matches:function(p){return!p.grabbable()}},{selector:":animated",matches:function(p){return p.animated()}},{selector:":unanimated",matches:function(p){return!p.animated()}},{selector:":parent",matches:function(p){return p.isParent()}},{selector:":childless",matches:function(p){return p.isChildless()}},{selector:":child",matches:function(p){return p.isChild()}},{selector:":orphan",matches:function(p){return p.isOrphan()}},{selector:":nonorphan",matches:function(p){return p.isChild()}},{selector:":compound",matches:function(p){return p.isNode()?p.isParent():p.source().isParent()||p.target().isParent()}},{selector:":loop",matches:function(p){return p.isLoop()}},{selector:":simple",matches:function(p){return p.isSimple()}},{selector:":active",matches:function(p){return p.active()}},{selector:":inactive",matches:function(p){return!p.active()}},{selector:":backgrounding",matches:function(p){return p.backgrounding()}},{selector:":nonbackgrounding",matches:function(p){return!p.backgrounding()}}].sort(function(y,p){return Br(y.selector,p.selector)}),Ett=function(){for(var y={},p,x=0;x0&&W.edgeCount>0)return Gc("The selector `"+p+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(W.edgeCount>1)return Gc("The selector `"+p+"` is invalid because it uses multiple edge selectors"),!1;W.edgeCount===1&&Gc("The selector `"+p+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},Att=function(){if(this.toStringCache!=null)return this.toStringCache;for(var p=function(W){return W??""},x=function(W){return mt(W)?'"'+W+'"':p(W)},C=function(W){return" "+W+" "},L=function(W,Z){var st=W.type,bt=W.value;switch(st){case Xi.GROUP:{var pt=p(bt);return pt.substring(0,pt.length-1)}case Xi.DATA_COMPARE:{var _t=W.field,St=W.operator;return"["+_t+C(p(St))+x(bt)+"]"}case Xi.DATA_BOOL:{var Et=W.operator,Nt=W.field;return"["+p(Et)+Nt+"]"}case Xi.DATA_EXIST:{var Pt=W.field;return"["+Pt+"]"}case Xi.META_COMPARE:{var qt=W.operator,re=W.field;return"[["+re+C(p(qt))+x(bt)+"]]"}case Xi.STATE:return bt;case Xi.ID:return"#"+bt;case Xi.CLASS:return"."+bt;case Xi.PARENT:case Xi.CHILD:return O(W.parent,Z)+C(">")+O(W.child,Z);case Xi.ANCESTOR:case Xi.DESCENDANT:return O(W.ancestor,Z)+" "+O(W.descendant,Z);case Xi.COMPOUND_SPLIT:{var ee=O(W.left,Z),Ut=O(W.subject,Z),de=O(W.right,Z);return ee+(ee.length>0?" ":"")+Ut+de}case Xi.TRUE:return""}},O=function(W,Z){return W.checks.reduce(function(st,bt,pt){return st+(Z===W&&pt===0?"$":"")+L(bt,Z)},"")},N="",j=0;j1&&j=0&&(x=x.replace("!",""),Z=!0),x.indexOf("@")>=0&&(x=x.replace("@",""),W=!0),(O||j||W)&&(H=!O&&!N?"":""+p,q=""+C),W&&(p=H=H.toLowerCase(),C=q=q.toLowerCase()),x){case"*=":L=H.indexOf(q)>=0;break;case"$=":L=H.indexOf(q,H.length-q.length)>=0;break;case"^=":L=H.indexOf(q)===0;break;case"=":L=p===C;break;case">":st=!0,L=p>C;break;case">=":st=!0,L=p>=C;break;case"<":st=!0,L=p0;){var W=L.shift();p(W),O.add(W.id()),j&&C(L,O,W)}return y}function NR(y,p,x){if(x.isParent())for(var C=x._private.children,L=0;L1&&arguments[1]!==void 0?arguments[1]:!0;return eM(this,y,p,NR)};function PR(y,p,x){if(x.isChild()){var C=x._private.parent;p.has(C.id())||y.push(C)}}a6.forEachUp=function(y){var p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return eM(this,y,p,PR)};function Ptt(y,p,x){PR(y,p,x),NR(y,p,x)}a6.forEachUpAndDown=function(y){var p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return eM(this,y,p,Ptt)},a6.ancestors=a6.parents;var G1,FR;G1=FR={data:Kc.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:Kc.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:Kc.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Kc.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:Kc.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:Kc.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var p=this[0];if(p)return p._private.data.id}},G1.attr=G1.data,G1.removeAttr=G1.removeData;var fy=FR,q8={};function nM(y){return function(p){var x=this;if(p===void 0&&(p=!0),x.length!==0)if(x.isNode()&&!x.removed()){for(var C=0,L=x[0],O=L._private.edges,N=0;Np}),minIndegree:o6("indegree",function(y,p){return yp}),minOutdegree:o6("outdegree",function(y,p){return yp})}),we(q8,{totalDegree:function(p){for(var x=0,C=this.nodes(),L=0;L0,st=Z;Z&&(W=W[0]);var bt=st?W.position():{x:0,y:0};x!==void 0?q.position(p,x+bt[p]):O!==void 0&&q.position({x:O.x+bt.x,y:O.y+bt.y})}else{var pt=C.position(),_t=j?C.parent():null,St=_t&&_t.length>0,Et=St;St&&(_t=_t[0]);var Nt=Et?_t.position():{x:0,y:0};return O={x:pt.x-Nt.x,y:pt.y-Nt.y},p===void 0?O:O[p]}else if(!N)return;return this}},db.modelPosition=db.point=db.position,db.modelPositions=db.points=db.positions,db.renderedPoint=db.renderedPosition,db.relativePoint=db.relativePosition;var Ftt=BR,c6,dy;c6=dy={},dy.renderedBoundingBox=function(y){var p=this.boundingBox(y),x=this.cy(),C=x.zoom(),L=x.pan(),O=p.x1*C+L.x,N=p.x2*C+L.x,j=p.y1*C+L.y,H=p.y2*C+L.y;return{x1:O,x2:N,y1:j,y2:H,w:N-O,h:H-j}},dy.dirtyCompoundBoundsCache=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,p=this.cy();return!p.styleEnabled()||!p.hasCompoundNodes()?this:(this.forEachUp(function(x){if(x.isParent()){var C=x._private;C.compoundBoundsClean=!1,C.bbCache=null,y||x.emitAndNotify("bounds")}}),this)},dy.updateCompoundBounds=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,p=this.cy();if(!p.styleEnabled()||!p.hasCompoundNodes())return this;if(!y&&p.batching())return this;function x(N){if(!N.isParent())return;var j=N._private,H=N.children(),q=N.pstyle("compound-sizing-wrt-labels").value==="include",W={width:{val:N.pstyle("min-width").pfValue,left:N.pstyle("min-width-bias-left"),right:N.pstyle("min-width-bias-right")},height:{val:N.pstyle("min-height").pfValue,top:N.pstyle("min-height-bias-top"),bottom:N.pstyle("min-height-bias-bottom")}},Z=H.boundingBox({includeLabels:q,includeOverlays:!1,useCache:!1}),st=j.position;(Z.w===0||Z.h===0)&&(Z={w:N.pstyle("width").pfValue,h:N.pstyle("height").pfValue},Z.x1=st.x-Z.w/2,Z.x2=st.x+Z.w/2,Z.y1=st.y-Z.h/2,Z.y2=st.y+Z.h/2);function bt(Yt,Ee,Te){var ie=0,ze=0,me=Ee+Te;return Yt>0&&me>0&&(ie=Ee/me*Yt,ze=Te/me*Yt),{biasDiff:ie,biasComplementDiff:ze}}function pt(Yt,Ee,Te,ie){if(Te.units==="%")switch(ie){case"width":return Yt>0?Te.pfValue*Yt:0;case"height":return Ee>0?Te.pfValue*Ee:0;case"average":return Yt>0&&Ee>0?Te.pfValue*(Yt+Ee)/2:0;case"min":return Yt>0&&Ee>0?Yt>Ee?Te.pfValue*Ee:Te.pfValue*Yt:0;case"max":return Yt>0&&Ee>0?Yt>Ee?Te.pfValue*Yt:Te.pfValue*Ee:0;default:return 0}else return Te.units==="px"?Te.pfValue:0}var _t=W.width.left.value;W.width.left.units==="px"&&W.width.val>0&&(_t=_t*100/W.width.val);var St=W.width.right.value;W.width.right.units==="px"&&W.width.val>0&&(St=St*100/W.width.val);var Et=W.height.top.value;W.height.top.units==="px"&&W.height.val>0&&(Et=Et*100/W.height.val);var Nt=W.height.bottom.value;W.height.bottom.units==="px"&&W.height.val>0&&(Nt=Nt*100/W.height.val);var Pt=bt(W.width.val-Z.w,_t,St),qt=Pt.biasDiff,re=Pt.biasComplementDiff,ee=bt(W.height.val-Z.h,Et,Nt),Ut=ee.biasDiff,de=ee.biasComplementDiff;j.autoPadding=pt(Z.w,Z.h,N.pstyle("padding"),N.pstyle("padding-relative-to").value),j.autoWidth=Math.max(Z.w,W.width.val),st.x=(-qt+Z.x1+Z.x2+re)/2,j.autoHeight=Math.max(Z.h,W.height.val),st.y=(-Ut+Z.y1+Z.y2+de)/2}for(var C=0;Cp.x2?L:p.x2,p.y1=Cp.y2?O:p.y2,p.w=p.x2-p.x1,p.h=p.y2-p.y1)},k4=function(p,x){return x==null?p:gb(p,x.x1,x.y1,x.x2,x.y2)},H8=function(p,x,C){return fb(p,x,C)},hC=function(p,x,C){if(!x.cy().headless()){var L=x._private,O=L.rstyle,N=O.arrowWidth/2,j=x.pstyle(C+"-arrow-shape").value,H,q;if(j!=="none"){C==="source"?(H=O.srcX,q=O.srcY):C==="target"?(H=O.tgtX,q=O.tgtY):(H=O.midX,q=O.midY);var W=L.arrowBounds=L.arrowBounds||{},Z=W[C]=W[C]||{};Z.x1=H-N,Z.y1=q-N,Z.x2=H+N,Z.y2=q+N,Z.w=Z.x2-Z.x1,Z.h=Z.y2-Z.y1,X9(Z,1),gb(p,Z.x1,Z.y1,Z.x2,Z.y2)}}},rM=function(p,x,C){if(!x.cy().headless()){var L;C?L=C+"-":L="";var O=x._private,N=O.rstyle,j=x.pstyle(L+"label").strValue;if(j){var H=x.pstyle("text-halign"),q=x.pstyle("text-valign"),W=H8(N,"labelWidth",C),Z=H8(N,"labelHeight",C),st=H8(N,"labelX",C),bt=H8(N,"labelY",C),pt=x.pstyle(L+"text-margin-x").pfValue,_t=x.pstyle(L+"text-margin-y").pfValue,St=x.isEdge(),Et=x.pstyle(L+"text-rotation"),Nt=x.pstyle("text-outline-width").pfValue,Pt=x.pstyle("text-border-width").pfValue,qt=Pt/2,re=x.pstyle("text-background-padding").pfValue,ee=2,Ut=Z,de=W,Yt=de/2,Ee=Ut/2,Te,ie,ze,me;if(St)Te=st-Yt,ie=st+Yt,ze=bt-Ee,me=bt+Ee;else{switch(H.value){case"left":Te=st-de,ie=st;break;case"center":Te=st-Yt,ie=st+Yt;break;case"right":Te=st,ie=st+de;break}switch(q.value){case"top":ze=bt-Ut,me=bt;break;case"center":ze=bt-Ee,me=bt+Ee;break;case"bottom":ze=bt,me=bt+Ut;break}}Te+=pt-Math.max(Nt,qt)-re-ee,ie+=pt+Math.max(Nt,qt)+re+ee,ze+=_t-Math.max(Nt,qt)-re-ee,me+=_t+Math.max(Nt,qt)+re+ee;var yn=C||"main",nn=O.labelBounds,qe=nn[yn]=nn[yn]||{};qe.x1=Te,qe.y1=ze,qe.x2=ie,qe.y2=me,qe.w=ie-Te,qe.h=me-ze;var Tn=St&&Et.strValue==="autorotate",Xn=Et.pfValue!=null&&Et.pfValue!==0;if(Tn||Xn){var lr=Tn?H8(O.rstyle,"labelAngle",C):Et.pfValue,Sn=Math.cos(lr),or=Math.sin(lr),pr=(Te+ie)/2,kr=(ze+me)/2;if(!St){switch(H.value){case"left":pr=ie;break;case"right":pr=Te;break}switch(q.value){case"top":kr=me;break;case"bottom":kr=ze;break}}var wr=function(na,vi){return na=na-pr,vi=vi-kr,{x:na*Sn-vi*or+pr,y:na*or+vi*Sn+kr}},Cr=wr(Te,ze),$n=wr(Te,me),cr=wr(ie,ze),mr=wr(ie,me);Te=Math.min(Cr.x,$n.x,cr.x,mr.x),ie=Math.max(Cr.x,$n.x,cr.x,mr.x),ze=Math.min(Cr.y,$n.y,cr.y,mr.y),me=Math.max(Cr.y,$n.y,cr.y,mr.y)}var Sr=yn+"Rot",gi=nn[Sr]=nn[Sr]||{};gi.x1=Te,gi.y1=ze,gi.x2=ie,gi.y2=me,gi.w=ie-Te,gi.h=me-ze,gb(p,Te,ze,ie,me),gb(O.labelBounds.all,Te,ze,ie,me)}return p}},Btt=function(p,x){if(!x.cy().headless()){var C=x.pstyle("outline-opacity").value,L=x.pstyle("outline-width").value;if(C>0&&L>0){var O=x.pstyle("outline-offset").value,N=x.pstyle("shape").value,j=L+O,H=(p.w+j*2)/p.w,q=(p.h+j*2)/p.h,W=0,Z=0;["diamond","pentagon","round-triangle"].includes(N)?(H=(p.w+j*2.4)/p.w,Z=-j/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(N)?H=(p.w+j*2.4)/p.w:N==="star"?(H=(p.w+j*2.8)/p.w,q=(p.h+j*2.6)/p.h,Z=-j/3.8):N==="triangle"?(H=(p.w+j*2.8)/p.w,q=(p.h+j*2.4)/p.h,Z=-j/1.4):N==="vee"&&(H=(p.w+j*4.4)/p.w,q=(p.h+j*3.8)/p.h,Z=-j*.5);var st=p.h*q-p.h,bt=p.w*H-p.w;if(Q9(p,[Math.ceil(st/2),Math.ceil(bt/2)]),W!=0||Z!==0){var pt=pQ(p,W,Z);BB(p,pt)}}}},Rtt=function(p,x){var C=p._private.cy,L=C.styleEnabled(),O=C.headless(),N=v0(),j=p._private,H=p.isNode(),q=p.isEdge(),W,Z,st,bt,pt,_t,St=j.rstyle,Et=H&&L?p.pstyle("bounds-expansion").pfValue:[0],Nt=function(Qi){return Qi.pstyle("display").value!=="none"},Pt=!L||Nt(p)&&(!q||Nt(p.source())&&Nt(p.target()));if(Pt){var qt=0,re=0;L&&x.includeOverlays&&(qt=p.pstyle("overlay-opacity").value,qt!==0&&(re=p.pstyle("overlay-padding").value));var ee=0,Ut=0;L&&x.includeUnderlays&&(ee=p.pstyle("underlay-opacity").value,ee!==0&&(Ut=p.pstyle("underlay-padding").value));var de=Math.max(re,Ut),Yt=0,Ee=0;if(L&&(Yt=p.pstyle("width").pfValue,Ee=Yt/2),H&&x.includeNodes){var Te=p.position();pt=Te.x,_t=Te.y;var ie=p.outerWidth(),ze=ie/2,me=p.outerHeight(),yn=me/2;W=pt-ze,Z=pt+ze,st=_t-yn,bt=_t+yn,gb(N,W,st,Z,bt),L&&x.includeOutlines&&Btt(N,p)}else if(q&&x.includeEdges)if(L&&!O){var nn=p.pstyle("curve-style").strValue;if(W=Math.min(St.srcX,St.midX,St.tgtX),Z=Math.max(St.srcX,St.midX,St.tgtX),st=Math.min(St.srcY,St.midY,St.tgtY),bt=Math.max(St.srcY,St.midY,St.tgtY),W-=Ee,Z+=Ee,st-=Ee,bt+=Ee,gb(N,W,st,Z,bt),nn==="haystack"){var qe=St.haystackPts;if(qe&&qe.length===2){if(W=qe[0].x,st=qe[0].y,Z=qe[1].x,bt=qe[1].y,W>Z){var Tn=W;W=Z,Z=Tn}if(st>bt){var Xn=st;st=bt,bt=Xn}gb(N,W-Ee,st-Ee,Z+Ee,bt+Ee)}}else if(nn==="bezier"||nn==="unbundled-bezier"||nn==="segments"||nn==="taxi"){var lr;switch(nn){case"bezier":case"unbundled-bezier":lr=St.bezierPts;break;case"segments":case"taxi":lr=St.linePts;break}if(lr!=null)for(var Sn=0;SnZ){var $n=W;W=Z,Z=$n}if(st>bt){var cr=st;st=bt,bt=cr}W-=Ee,Z+=Ee,st-=Ee,bt+=Ee,gb(N,W,st,Z,bt)}if(L&&x.includeEdges&&q&&(hC(N,p,"mid-source"),hC(N,p,"mid-target"),hC(N,p,"source"),hC(N,p,"target")),L){var mr=p.pstyle("ghost").value==="yes";if(mr){var Sr=p.pstyle("ghost-offset-x").pfValue,gi=p.pstyle("ghost-offset-y").pfValue;gb(N,N.x1+Sr,N.y1+gi,N.x2+Sr,N.y2+gi)}}var ss=j.bodyBounds=j.bodyBounds||{};RB(ss,N),Q9(ss,Et),X9(ss,1),L&&(W=N.x1,Z=N.x2,st=N.y1,bt=N.y2,gb(N,W-de,st-de,Z+de,bt+de));var na=j.overlayBounds=j.overlayBounds||{};RB(na,N),Q9(na,Et),X9(na,1);var vi=j.labelBounds=j.labelBounds||{};vi.all!=null?gQ(vi.all):vi.all=v0(),L&&x.includeLabels&&(x.includeMainLabels&&rM(N,p,null),q&&(x.includeSourceLabels&&rM(N,p,"source"),x.includeTargetLabels&&rM(N,p,"target")))}return N.x1=op(N.x1),N.y1=op(N.y1),N.x2=op(N.x2),N.y2=op(N.y2),N.w=op(N.x2-N.x1),N.h=op(N.y2-N.y1),N.w>0&&N.h>0&&Pt&&(Q9(N,Et),X9(N,1)),N},$R=function(p){var x=0,C=function(N){return(N?1:0)<0&&arguments[0]!==void 0?arguments[0]:Xtt,p=arguments.length>1?arguments[1]:void 0,x=0;x=0;j--)N(j);return this},pb.removeAllListeners=function(){return this.removeListener("*")},pb.emit=pb.trigger=function(y,p,x){var C=this.listeners,L=C.length;return this.emitting++,rt(p)||(p=[p]),gC(this,function(O,N){x!=null&&(C=[{event:N.event,type:N.type,namespace:N.namespace,callback:x}],L=C.length);for(var j=function(W){var Z=C[W];if(Z.type===N.type&&(!Z.namespace||Z.namespace===N.namespace||Z.namespace===Ytt)&&O.eventMatches(O.context,Z,N)){var st=[N];p!=null&&OB(st,p),O.beforeEmit(O.context,Z,N),Z.conf&&Z.conf.one&&(O.listeners=O.listeners.filter(function(_t){return _t!==Z}));var bt=O.callbackContext(O.context,Z,N),pt=Z.callback.apply(bt,st);O.afterEmit(O.context,Z,N),pt===!1&&(N.stopPropagation(),N.preventDefault())}},H=0;H1&&!N){var j=this.length-1,H=this[j],q=H._private.data.id;this[j]=void 0,this[p]=H,O.set(q,{ele:H,index:p})}return this.length--,this},unmergeOne:function(p){p=p[0];var x=this._private,C=p._private.data.id,L=x.map,O=L.get(C);if(!O)return this;var N=O.index;return this.unmergeAt(N),this},unmerge:function(p){var x=this._private.cy;if(!p)return this;if(p&&mt(p)){var C=p;p=x.mutableElements().filter(C)}for(var L=0;L=0;x--){var C=this[x];p(C)&&this.unmergeAt(x)}return this},map:function(p,x){for(var C=[],L=this,O=0;OC&&(C=H,L=j)}return{value:C,ele:L}},min:function(p,x){for(var C=1/0,L,O=this,N=0;N=0&&O"u"?"undefined":f(Symbol))!=p&&f(Symbol.iterator)!=p;x&&(pC[Symbol.iterator]=function(){var C=this,L={value:void 0,done:!1},O=0,N=this.length;return b({next:function(){return O1&&arguments[1]!==void 0?arguments[1]:!0,C=this[0],L=C.cy();if(L.styleEnabled()&&C){this.cleanStyle();var O=C._private.style[p];return O??(x?L.style().getDefaultProperty(p):null)}},numericStyle:function(p){var x=this[0];if(x.cy().styleEnabled()&&x){var C=x.pstyle(p);return C.pfValue!==void 0?C.pfValue:C.value}},numericStyleUnits:function(p){var x=this[0];if(x.cy().styleEnabled()&&x)return x.pstyle(p).units},renderedStyle:function(p){var x=this.cy();if(!x.styleEnabled())return this;var C=this[0];if(C)return x.style().getRenderedStyle(C,p)},style:function(p,x){var C=this.cy();if(!C.styleEnabled())return this;var L=!1,O=C.style();if(it(p)){var N=p;O.applyBypass(this,N,L),this.emitAndNotify("style")}else if(mt(p))if(x===void 0){var j=this[0];return j?O.getStylePropertyValue(j,p):void 0}else O.applyBypass(this,p,x,L),this.emitAndNotify("style");else if(p===void 0){var H=this[0];return H?O.getRawStyle(H):void 0}return this},removeStyle:function(p){var x=this.cy();if(!x.styleEnabled())return this;var C=!1,L=x.style(),O=this;if(p===void 0)for(var N=0;N0&&p.push(W[0]),p.push(j[0])}return this.spawn(p,!0).filter(y)},"neighborhood"),closedNeighborhood:function(p){return this.neighborhood().add(this).filter(p)},openNeighborhood:function(p){return this.neighborhood(p)}}),K1.neighbourhood=K1.neighborhood,K1.closedNeighbourhood=K1.closedNeighborhood,K1.openNeighbourhood=K1.openNeighborhood,we(K1,{source:ap(function(p){var x=this[0],C;return x&&(C=x._private.source||x.cy().collection()),C&&p?C.filter(p):C},"source"),target:ap(function(p){var x=this[0],C;return x&&(C=x._private.target||x.cy().collection()),C&&p?C.filter(p):C},"target"),sources:ej({attr:"source"}),targets:ej({attr:"target"})});function ej(y){return function(x){for(var C=[],L=0;L0);return N},component:function(){var p=this[0];return p.cy().mutableElements().components(p)[0]}}),K1.componentsOf=K1.components;var w1=function(p,x){var C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(p===void 0){$l("A collection must have a reference to the core");return}var O=new F2,N=!1;if(!x)x=[];else if(x.length>0&&it(x[0])&&!V(x[0])){N=!0;for(var j=[],H=new Wx,q=0,W=x.length;q0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,C=x.cy(),L=C._private,O=[],N=[],j,H=0,q=x.length;H0){for(var Xn=j.length===x.length?x:new w1(C,j),lr=0;lr0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,C=[],L={},O=x._private.cy;function N(me){for(var yn=me._private.edges,nn=0;nn0&&(y?Te.emitAndNotify("remove"):p&&Te.emit("remove"));for(var ie=0;ie0?ie=me:Te=me;while(Math.abs(ze)>N&&++yn=O?Nt(Ee,yn):nn===0?yn:qt(Ee,Te,Te+q)}var ee=!1;function Ut(){ee=!0,(y!==p||x!==C)&&Pt()}var de=function(Te){return ee||Ut(),y===p&&x===C?Te:Te===0?0:Te===1?1:St(re(Te),p,C)};de.getControlPoints=function(){return[{x:y,y:p},{x,y:C}]};var Yt="generateBezier("+[y,p,x,C]+")";return de.toString=function(){return Yt},de}/*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License */var oet=function(){function y(C){return-C.tension*C.x-C.friction*C.v}function p(C,L,O){var N={x:C.x+O.dx*L,v:C.v+O.dv*L,tension:C.tension,friction:C.friction};return{dx:N.v,dv:y(N)}}function x(C,L){var O={dx:C.v,dv:y(C)},N=p(C,L*.5,O),j=p(C,L*.5,N),H=p(C,L,j),q=1/6*(O.dx+2*(N.dx+j.dx)+H.dx),W=1/6*(O.dv+2*(N.dv+j.dv)+H.dv);return C.x=C.x+q*L,C.v=C.v+W*L,C}return function C(L,O,N){var j={x:-1,v:0,tension:null,friction:null},H=[0],q=0,W=1/1e4,Z=16/1e3,st,bt,pt;for(L=parseFloat(L)||500,O=parseFloat(O)||20,N=N||null,j.tension=L,j.friction=O,st=N!==null,st?(q=C(L,O),bt=q/N*Z):bt=Z;pt=x(pt||j,bt),H.push(1+pt.x),q+=16,Math.abs(pt.x)>W&&Math.abs(pt.v)>W;);return st?function(_t){return H[_t*(H.length-1)|0]}:q}}(),Ru=function(p,x,C,L){var O=aet(p,x,C,L);return function(N,j,H){return N+(j-N)*O(H)}},yC={linear:function(p,x,C){return p+(x-p)*C},ease:Ru(.25,.1,.25,1),"ease-in":Ru(.42,0,1,1),"ease-out":Ru(0,0,.58,1),"ease-in-out":Ru(.42,0,.58,1),"ease-in-sine":Ru(.47,0,.745,.715),"ease-out-sine":Ru(.39,.575,.565,1),"ease-in-out-sine":Ru(.445,.05,.55,.95),"ease-in-quad":Ru(.55,.085,.68,.53),"ease-out-quad":Ru(.25,.46,.45,.94),"ease-in-out-quad":Ru(.455,.03,.515,.955),"ease-in-cubic":Ru(.55,.055,.675,.19),"ease-out-cubic":Ru(.215,.61,.355,1),"ease-in-out-cubic":Ru(.645,.045,.355,1),"ease-in-quart":Ru(.895,.03,.685,.22),"ease-out-quart":Ru(.165,.84,.44,1),"ease-in-out-quart":Ru(.77,0,.175,1),"ease-in-quint":Ru(.755,.05,.855,.06),"ease-out-quint":Ru(.23,1,.32,1),"ease-in-out-quint":Ru(.86,0,.07,1),"ease-in-expo":Ru(.95,.05,.795,.035),"ease-out-expo":Ru(.19,1,.22,1),"ease-in-out-expo":Ru(1,0,0,1),"ease-in-circ":Ru(.6,.04,.98,.335),"ease-out-circ":Ru(.075,.82,.165,1),"ease-in-out-circ":Ru(.785,.135,.15,.86),spring:function(p,x,C){if(C===0)return yC.linear;var L=oet(p,x,C);return function(O,N,j){return O+(N-O)*L(j)}},"cubic-bezier":Ru};function ij(y,p,x,C,L){if(C===1||p===x)return x;var O=L(p,x,C);return y==null||((y.roundValue||y.color)&&(O=Math.round(O)),y.min!==void 0&&(O=Math.max(O,y.min)),y.max!==void 0&&(O=Math.min(O,y.max))),O}function sj(y,p){return y.pfValue!=null||y.value!=null?y.pfValue!=null&&(p==null||p.type.units!=="%")?y.pfValue:y.value:y}function h6(y,p,x,C,L){var O=L!=null?L.type:null;x<0?x=0:x>1&&(x=1);var N=sj(y,L),j=sj(p,L);if(Q(N)&&Q(j))return ij(O,N,j,x,C);if(rt(N)&&rt(j)){for(var H=[],q=0;q0?(bt==="spring"&&pt.push(N.duration),N.easingImpl=yC[bt].apply(null,pt)):N.easingImpl=yC[bt]}var _t=N.easingImpl,St;if(N.duration===0?St=1:St=(x-H)/N.duration,N.applying&&(St=N.progress),St<0?St=0:St>1&&(St=1),N.delay==null){var Et=N.startPosition,Nt=N.position;if(Nt&&L&&!y.locked()){var Pt={};X8(Et.x,Nt.x)&&(Pt.x=h6(Et.x,Nt.x,St,_t)),X8(Et.y,Nt.y)&&(Pt.y=h6(Et.y,Nt.y,St,_t)),y.position(Pt)}var qt=N.startPan,re=N.pan,ee=O.pan,Ut=re!=null&&C;Ut&&(X8(qt.x,re.x)&&(ee.x=h6(qt.x,re.x,St,_t)),X8(qt.y,re.y)&&(ee.y=h6(qt.y,re.y,St,_t)),y.emit("pan"));var de=N.startZoom,Yt=N.zoom,Ee=Yt!=null&&C;Ee&&(X8(de,Yt)&&(O.zoom=P8(O.minZoom,h6(de,Yt,St,_t),O.maxZoom)),y.emit("zoom")),(Ut||Ee)&&y.emit("viewport");var Te=N.style;if(Te&&Te.length>0&&L){for(var ie=0;ie=0;Ut--){var de=ee[Ut];de()}ee.splice(0,ee.length)},Nt=bt.length-1;Nt>=0;Nt--){var Pt=bt[Nt],qt=Pt._private;if(qt.stopped){bt.splice(Nt,1),qt.hooked=!1,qt.playing=!1,qt.started=!1,Et(qt.frames);continue}!qt.playing&&!qt.applying||(qt.playing&&qt.applying&&(qt.applying=!1),qt.started||uet(W,Pt,y),cet(W,Pt,y,Z),qt.applying&&(qt.applying=!1),Et(qt.frames),qt.step!=null&&qt.step(y),Pt.completed()&&(bt.splice(Nt,1),qt.hooked=!1,qt.playing=!1,qt.started=!1,Et(qt.completes)),_t=!0)}return!Z&&bt.length===0&&pt.length===0&&C.push(W),_t}for(var O=!1,N=0;N0?p.notify("draw",x):p.notify("draw")),x.unmerge(C),p.emit("step")}var het={animate:Kc.animate(),animation:Kc.animation(),animated:Kc.animated(),clearQueue:Kc.clearQueue(),delay:Kc.delay(),delayAnimation:Kc.delayAnimation(),stop:Kc.stop(),addToAnimationPool:function(p){var x=this;x.styleEnabled()&&x._private.aniEles.merge(p)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var p=this;if(p._private.animationsRunning=!0,!p.styleEnabled())return;function x(){p._private.animationsRunning&&g1(function(O){aj(O,p),x()})}var C=p.renderer();C&&C.beforeRender?C.beforeRender(function(O,N){aj(N,p)},C.beforeRenderPriorities.animations):x()}},fet={qualifierCompare:function(p,x){return p==null||x==null?p==null&&x==null:p.sameText(x)},eventMatches:function(p,x,C){var L=x.qualifier;return L!=null?p!==C.target&&V(C.target)&&L.matches(C.target):!0},addEventFields:function(p,x){x.cy=p,x.target=p},callbackContext:function(p,x,C){return x.qualifier!=null?C.target:p}},xC=function(p){return mt(p)?new ly(p):p},oj={createEmitter:function(){var p=this._private;return p.emitter||(p.emitter=new dC(fet,this)),this},emitter:function(){return this._private.emitter},on:function(p,x,C){return this.emitter().on(p,xC(x),C),this},removeListener:function(p,x,C){return this.emitter().removeListener(p,xC(x),C),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(p,x,C){return this.emitter().one(p,xC(x),C),this},once:function(p,x,C){return this.emitter().one(p,xC(x),C),this},emit:function(p,x){return this.emitter().emit(p,x),this},emitAndNotify:function(p,x){return this.emit(p),this.notify(p,x),this}};Kc.eventAliasesOn(oj);var hM={png:function(p){var x=this._private.renderer;return p=p||{},x.png(p)},jpg:function(p){var x=this._private.renderer;return p=p||{},p.bg=p.bg||"#fff",x.jpg(p)}};hM.jpeg=hM.jpg;var kC={layout:function(p){var x=this;if(p==null){$l("Layout options must be specified to make a layout");return}if(p.name==null){$l("A `name` must be specified to make a layout");return}var C=p.name,L=x.extension("layout",C);if(L==null){$l("No such layout `"+C+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var O;mt(p.eles)?O=x.$(p.eles):O=p.eles!=null?p.eles:x.$();var N=new L(we({},p,{cy:x,eles:O}));return N}};kC.createLayout=kC.makeLayout=kC.layout;var det={notify:function(p,x){var C=this._private;if(this.batching()){C.batchNotifications=C.batchNotifications||{};var L=C.batchNotifications[p]=C.batchNotifications[p]||this.collection();x!=null&&L.merge(x);return}if(C.notificationsEnabled){var O=this.renderer();this.destroyed()||!O||O.notify(p,x)}},notifications:function(p){var x=this._private;return p===void 0?x.notificationsEnabled:(x.notificationsEnabled=!!p,this)},noNotifications:function(p){this.notifications(!1),p(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var p=this._private;return p.batchCount==null&&(p.batchCount=0),p.batchCount===0&&(p.batchStyleEles=this.collection(),p.batchNotifications={}),p.batchCount++,this},endBatch:function(){var p=this._private;if(p.batchCount===0)return this;if(p.batchCount--,p.batchCount===0){p.batchStyleEles.updateStyle();var x=this.renderer();Object.keys(p.batchNotifications).forEach(function(C){var L=p.batchNotifications[C];L.empty()?x.notify(C):x.notify(C,L)})}return this},batch:function(p){return this.startBatch(),p(),this.endBatch(),this},batchData:function(p){var x=this;return this.batch(function(){for(var C=Object.keys(p),L=0;L0;)x.removeChild(x.childNodes[0]);p._private.renderer=null,p.mutableElements().forEach(function(C){var L=C._private;L.rscratch={},L.rstyle={},L.animation.current=[],L.animation.queue=[]})},onRender:function(p){return this.on("render",p)},offRender:function(p){return this.off("render",p)}};fM.invalidateDimensions=fM.resize;var EC={collection:function(p,x){return mt(p)?this.$(p):yt(p)?p.collection():rt(p)?(x||(x={}),new w1(this,p,x.unique,x.removed)):new w1(this)},nodes:function(p){var x=this.$(function(C){return C.isNode()});return p?x.filter(p):x},edges:function(p){var x=this.$(function(C){return C.isEdge()});return p?x.filter(p):x},$:function(p){var x=this._private.elements;return p?x.filter(p):x.spawnSelf()},mutableElements:function(){return this._private.elements}};EC.elements=EC.filter=EC.$;var W1={},Q8="t",pet="f";W1.apply=function(y){for(var p=this,x=p._private,C=x.cy,L=C.collection(),O=0;O0;if(st||Z&&bt){var pt=void 0;st&&bt||st?pt=q.properties:bt&&(pt=q.mappedProperties);for(var _t=0;_t1&&(qt=1),j.color){var ee=C.valueMin[0],Ut=C.valueMax[0],de=C.valueMin[1],Yt=C.valueMax[1],Ee=C.valueMin[2],Te=C.valueMax[2],ie=C.valueMin[3]==null?1:C.valueMin[3],ze=C.valueMax[3]==null?1:C.valueMax[3],me=[Math.round(ee+(Ut-ee)*qt),Math.round(de+(Yt-de)*qt),Math.round(Ee+(Te-Ee)*qt),Math.round(ie+(ze-ie)*qt)];O={bypass:C.bypass,name:C.name,value:me,strValue:"rgb("+me[0]+", "+me[1]+", "+me[2]+")"}}else if(j.number){var yn=C.valueMin+(C.valueMax-C.valueMin)*qt;O=this.parse(C.name,yn,C.bypass,st)}else return!1;if(!O)return _t(),!1;O.mapping=C,C=O;break}case N.data:{for(var nn=C.field.split("."),qe=Z.data,Tn=0;Tn0&&O>0){for(var j={},H=!1,q=0;q0?y.delayAnimation(N).play().promise().then(Pt):Pt()}).then(function(){return y.animation({style:j,duration:O,easing:y.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){x.removeBypasses(y,L),y.emitAndNotify("style"),C.transitioning=!1})}else C.transitioning&&(this.removeBypasses(y,L),y.emitAndNotify("style"),C.transitioning=!1)},W1.checkTrigger=function(y,p,x,C,L,O){var N=this.properties[p],j=L(N);j!=null&&j(x,C)&&O(N)},W1.checkZOrderTrigger=function(y,p,x,C){var L=this;this.checkTrigger(y,p,x,C,function(O){return O.triggersZOrder},function(){L._private.cy.notify("zorder",y)})},W1.checkBoundsTrigger=function(y,p,x,C){this.checkTrigger(y,p,x,C,function(L){return L.triggersBounds},function(L){y.dirtyCompoundBoundsCache(),y.dirtyBoundingBoxCache(),L.triggersBoundsOfParallelBeziers&&p==="curve-style"&&(x==="bezier"||C==="bezier")&&y.parallelEdges().forEach(function(O){O.isBundledBezier()&&O.dirtyBoundingBoxCache()}),L.triggersBoundsOfConnectedEdges&&p==="display"&&(x==="none"||C==="none")&&y.connectedEdges().forEach(function(O){O.dirtyBoundingBoxCache()})})},W1.checkTriggers=function(y,p,x,C){y.dirtyStyleCache(),this.checkZOrderTrigger(y,p,x,C),this.checkBoundsTrigger(y,p,x,C)};var J8={};J8.applyBypass=function(y,p,x,C){var L=this,O=[],N=!0;if(p==="*"||p==="**"){if(x!==void 0)for(var j=0;jL.length?C=C.substr(L.length):C=""}function H(){O.length>N.length?O=O.substr(N.length):O=""}for(;;){var q=C.match(/^\s*$/);if(q)break;var W=C.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!W){Gc("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+C);break}L=W[0];var Z=W[1];if(Z!=="core"){var st=new ly(Z);if(st.invalid){Gc("Skipping parsing of block: Invalid selector found in string stylesheet: "+Z),j();continue}}var bt=W[2],pt=!1;O=bt;for(var _t=[];;){var St=O.match(/^\s*$/);if(St)break;var Et=O.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!Et){Gc("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+bt),pt=!0;break}N=Et[0];var Nt=Et[1],Pt=Et[2],qt=p.properties[Nt];if(!qt){Gc("Skipping property: Invalid property name in: "+N),H();continue}var re=x.parse(Nt,Pt);if(!re){Gc("Skipping property: Invalid property definition in: "+N),H();continue}_t.push({name:Nt,val:Pt}),H()}if(pt){j();break}x.selector(Z);for(var ee=0;ee<_t.length;ee++){var Ut=_t[ee];x.css(Ut.name,Ut.val)}j()}return x},gM.fromString=function(y){var p=this;return p.resetToDefault(),p.appendFromString(y),p};var m1={};(function(){var y=sn,p=Ne,x=_e,C=xe,L=Mn,O=function(mr){return"^"+mr+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},N=function(mr){var Sr=y+"|\\w+|"+p+"|"+x+"|"+C+"|"+L;return"^"+mr+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+y+")\\s*\\,\\s*("+y+")\\s*,\\s*("+Sr+")\\s*\\,\\s*("+Sr+")\\)$"},j=[`^url\\s*\\(\\s*['"]?(.+?)['"]?\\s*\\)$`,"^(none)$","^(.+)$"];m1.types={time:{number:!0,min:0,units:"s|ms",implicitUnits:"ms"},percent:{number:!0,min:0,max:100,units:"%",implicitUnits:"%"},percentages:{number:!0,min:0,max:100,units:"%",implicitUnits:"%",multiple:!0},zeroOneNumber:{number:!0,min:0,max:1,unitless:!0},zeroOneNumbers:{number:!0,min:0,max:1,unitless:!0,multiple:!0},nOneOneNumber:{number:!0,min:-1,max:1,unitless:!0},nonNegativeInt:{number:!0,min:0,integer:!0,unitless:!0},nonNegativeNumber:{number:!0,min:0,unitless:!0},position:{enums:["parent","origin"]},nodeSize:{number:!0,min:0,enums:["label"]},number:{number:!0,unitless:!0},numbers:{number:!0,unitless:!0,multiple:!0},positiveNumber:{number:!0,unitless:!0,min:0,strictMin:!0},size:{number:!0,min:0},bidirectionalSize:{number:!0},bidirectionalSizeMaybePercent:{number:!0,allowPercent:!0},bidirectionalSizes:{number:!0,multiple:!0},sizeMaybePercent:{number:!0,min:0,allowPercent:!0},axisDirection:{enums:["horizontal","leftward","rightward","vertical","upward","downward","auto"]},paddingRelativeTo:{enums:["width","height","average","min","max"]},bgWH:{number:!0,min:0,allowPercent:!0,enums:["auto"],multiple:!0},bgPos:{number:!0,allowPercent:!0,multiple:!0},bgRelativeTo:{enums:["inner","include-padding"],multiple:!0},bgRepeat:{enums:["repeat","repeat-x","repeat-y","no-repeat"],multiple:!0},bgFit:{enums:["none","contain","cover"],multiple:!0},bgCrossOrigin:{enums:["anonymous","use-credentials","null"],multiple:!0},bgClip:{enums:["none","node"],multiple:!0},bgContainment:{enums:["inside","over"],multiple:!0},color:{color:!0},colors:{color:!0,multiple:!0},fill:{enums:["solid","linear-gradient","radial-gradient"]},bool:{enums:["yes","no"]},bools:{enums:["yes","no"],multiple:!0},lineStyle:{enums:["solid","dotted","dashed"]},lineCap:{enums:["butt","round","square"]},borderStyle:{enums:["solid","dotted","dashed","double"]},curveStyle:{enums:["bezier","unbundled-bezier","haystack","segments","straight","straight-triangle","taxi"]},fontFamily:{regex:'^([\\w- \\"]+(?:\\s*,\\s*[\\w- \\"]+)*)$'},fontStyle:{enums:["italic","normal","oblique"]},fontWeight:{enums:["normal","bold","bolder","lighter","100","200","300","400","500","600","800","900",100,200,300,400,500,600,700,800,900]},textDecoration:{enums:["none","underline","overline","line-through"]},textTransform:{enums:["none","uppercase","lowercase"]},textWrap:{enums:["none","wrap","ellipsis"]},textOverflowWrap:{enums:["whitespace","anywhere"]},textBackgroundShape:{enums:["rectangle","roundrectangle","round-rectangle"]},nodeShape:{enums:["rectangle","roundrectangle","round-rectangle","cutrectangle","cut-rectangle","bottomroundrectangle","bottom-round-rectangle","barrel","ellipse","triangle","round-triangle","square","pentagon","round-pentagon","hexagon","round-hexagon","concavehexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","tag","round-tag","star","diamond","round-diamond","vee","rhomboid","right-rhomboid","polygon"]},overlayShape:{enums:["roundrectangle","round-rectangle","ellipse"]},compoundIncludeLabels:{enums:["include","exclude"]},arrowShape:{enums:["tee","triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","square","circle","diamond","chevron","none"]},arrowFill:{enums:["filled","hollow"]},arrowWidth:{number:!0,units:"%|px|em",implicitUnits:"px",enums:["match-line"]},display:{enums:["element","none"]},visibility:{enums:["hidden","visible"]},zCompoundDepth:{enums:["bottom","orphan","auto","top"]},zIndexCompare:{enums:["auto","manual"]},valign:{enums:["top","center","bottom"]},halign:{enums:["left","center","right"]},justification:{enums:["left","center","right","auto"]},text:{string:!0},data:{mapping:!0,regex:O("data")},layoutData:{mapping:!0,regex:O("layoutData")},scratch:{mapping:!0,regex:O("scratch")},mapData:{mapping:!0,regex:N("mapData")},mapLayoutData:{mapping:!0,regex:N("mapLayoutData")},mapScratch:{mapping:!0,regex:N("mapScratch")},fn:{mapping:!0,fn:!0},url:{regexes:j,singleRegexMatchValue:!0},urls:{regexes:j,singleRegexMatchValue:!0,multiple:!0},propList:{propList:!0},angle:{number:!0,units:"deg|rad",implicitUnits:"rad"},textRotation:{number:!0,units:"deg|rad",implicitUnits:"rad",enums:["none","autorotate"]},polygonPointList:{number:!0,multiple:!0,evenMultiple:!0,min:-1,max:1,unitless:!0},edgeDistances:{enums:["intersection","node-position","endpoints"]},edgeEndpoint:{number:!0,multiple:!0,units:"%|px|em|deg|rad",implicitUnits:"px",enums:["inside-to-node","outside-to-node","outside-to-node-or-label","outside-to-line","outside-to-line-or-label"],singleEnum:!0,validate:function(mr,Sr){switch(mr.length){case 2:return Sr[0]!=="deg"&&Sr[0]!=="rad"&&Sr[1]!=="deg"&&Sr[1]!=="rad";case 1:return mt(mr[0])||Sr[0]==="deg"||Sr[0]==="rad";default:return!1}}},easing:{regexes:["^(spring)\\s*\\(\\s*("+y+")\\s*,\\s*("+y+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+y+")\\s*,\\s*("+y+")\\s*,\\s*("+y+")\\s*,\\s*("+y+")\\s*\\)$"],enums:["linear","ease","ease-in","ease-out","ease-in-out","ease-in-sine","ease-out-sine","ease-in-out-sine","ease-in-quad","ease-out-quad","ease-in-out-quad","ease-in-cubic","ease-out-cubic","ease-in-out-cubic","ease-in-quart","ease-out-quart","ease-in-out-quart","ease-in-quint","ease-out-quint","ease-in-out-quint","ease-in-expo","ease-out-expo","ease-in-out-expo","ease-in-circ","ease-out-circ","ease-in-out-circ"]},gradientDirection:{enums:["to-bottom","to-top","to-left","to-right","to-bottom-right","to-bottom-left","to-top-right","to-top-left","to-right-bottom","to-left-bottom","to-right-top","to-left-top"]},boundsExpansion:{number:!0,multiple:!0,min:0,validate:function(mr){var Sr=mr.length;return Sr===1||Sr===2||Sr===4}}};var H={zeroNonZero:function(mr,Sr){return(mr==null||Sr==null)&&mr!==Sr||mr==0&&Sr!=0?!0:mr!=0&&Sr==0},any:function(mr,Sr){return mr!=Sr},emptyNonEmpty:function(mr,Sr){var gi=Ft(mr),ss=Ft(Sr);return gi&&!ss||!gi&&ss}},q=m1.types,W=[{name:"label",type:q.text,triggersBounds:H.any,triggersZOrder:H.emptyNonEmpty},{name:"text-rotation",type:q.textRotation,triggersBounds:H.any},{name:"text-margin-x",type:q.bidirectionalSize,triggersBounds:H.any},{name:"text-margin-y",type:q.bidirectionalSize,triggersBounds:H.any}],Z=[{name:"source-label",type:q.text,triggersBounds:H.any},{name:"source-text-rotation",type:q.textRotation,triggersBounds:H.any},{name:"source-text-margin-x",type:q.bidirectionalSize,triggersBounds:H.any},{name:"source-text-margin-y",type:q.bidirectionalSize,triggersBounds:H.any},{name:"source-text-offset",type:q.size,triggersBounds:H.any}],st=[{name:"target-label",type:q.text,triggersBounds:H.any},{name:"target-text-rotation",type:q.textRotation,triggersBounds:H.any},{name:"target-text-margin-x",type:q.bidirectionalSize,triggersBounds:H.any},{name:"target-text-margin-y",type:q.bidirectionalSize,triggersBounds:H.any},{name:"target-text-offset",type:q.size,triggersBounds:H.any}],bt=[{name:"font-family",type:q.fontFamily,triggersBounds:H.any},{name:"font-style",type:q.fontStyle,triggersBounds:H.any},{name:"font-weight",type:q.fontWeight,triggersBounds:H.any},{name:"font-size",type:q.size,triggersBounds:H.any},{name:"text-transform",type:q.textTransform,triggersBounds:H.any},{name:"text-wrap",type:q.textWrap,triggersBounds:H.any},{name:"text-overflow-wrap",type:q.textOverflowWrap,triggersBounds:H.any},{name:"text-max-width",type:q.size,triggersBounds:H.any},{name:"text-outline-width",type:q.size,triggersBounds:H.any},{name:"line-height",type:q.positiveNumber,triggersBounds:H.any}],pt=[{name:"text-valign",type:q.valign,triggersBounds:H.any},{name:"text-halign",type:q.halign,triggersBounds:H.any},{name:"color",type:q.color},{name:"text-outline-color",type:q.color},{name:"text-outline-opacity",type:q.zeroOneNumber},{name:"text-background-color",type:q.color},{name:"text-background-opacity",type:q.zeroOneNumber},{name:"text-background-padding",type:q.size,triggersBounds:H.any},{name:"text-border-opacity",type:q.zeroOneNumber},{name:"text-border-color",type:q.color},{name:"text-border-width",type:q.size,triggersBounds:H.any},{name:"text-border-style",type:q.borderStyle,triggersBounds:H.any},{name:"text-background-shape",type:q.textBackgroundShape,triggersBounds:H.any},{name:"text-justification",type:q.justification}],_t=[{name:"events",type:q.bool,triggersZOrder:H.any},{name:"text-events",type:q.bool,triggersZOrder:H.any}],St=[{name:"display",type:q.display,triggersZOrder:H.any,triggersBounds:H.any,triggersBoundsOfConnectedEdges:!0},{name:"visibility",type:q.visibility,triggersZOrder:H.any},{name:"opacity",type:q.zeroOneNumber,triggersZOrder:H.zeroNonZero},{name:"text-opacity",type:q.zeroOneNumber},{name:"min-zoomed-font-size",type:q.size},{name:"z-compound-depth",type:q.zCompoundDepth,triggersZOrder:H.any},{name:"z-index-compare",type:q.zIndexCompare,triggersZOrder:H.any},{name:"z-index",type:q.number,triggersZOrder:H.any}],Et=[{name:"overlay-padding",type:q.size,triggersBounds:H.any},{name:"overlay-color",type:q.color},{name:"overlay-opacity",type:q.zeroOneNumber,triggersBounds:H.zeroNonZero},{name:"overlay-shape",type:q.overlayShape,triggersBounds:H.any}],Nt=[{name:"underlay-padding",type:q.size,triggersBounds:H.any},{name:"underlay-color",type:q.color},{name:"underlay-opacity",type:q.zeroOneNumber,triggersBounds:H.zeroNonZero},{name:"underlay-shape",type:q.overlayShape,triggersBounds:H.any}],Pt=[{name:"transition-property",type:q.propList},{name:"transition-duration",type:q.time},{name:"transition-delay",type:q.time},{name:"transition-timing-function",type:q.easing}],qt=function(mr,Sr){return Sr.value==="label"?-mr.poolIndex():Sr.pfValue},re=[{name:"height",type:q.nodeSize,triggersBounds:H.any,hashOverride:qt},{name:"width",type:q.nodeSize,triggersBounds:H.any,hashOverride:qt},{name:"shape",type:q.nodeShape,triggersBounds:H.any},{name:"shape-polygon-points",type:q.polygonPointList,triggersBounds:H.any},{name:"background-color",type:q.color},{name:"background-fill",type:q.fill},{name:"background-opacity",type:q.zeroOneNumber},{name:"background-blacken",type:q.nOneOneNumber},{name:"background-gradient-stop-colors",type:q.colors},{name:"background-gradient-stop-positions",type:q.percentages},{name:"background-gradient-direction",type:q.gradientDirection},{name:"padding",type:q.sizeMaybePercent,triggersBounds:H.any},{name:"padding-relative-to",type:q.paddingRelativeTo,triggersBounds:H.any},{name:"bounds-expansion",type:q.boundsExpansion,triggersBounds:H.any}],ee=[{name:"border-color",type:q.color},{name:"border-opacity",type:q.zeroOneNumber},{name:"border-width",type:q.size,triggersBounds:H.any},{name:"border-style",type:q.borderStyle}],Ut=[{name:"outline-color",type:q.color},{name:"outline-opacity",type:q.zeroOneNumber},{name:"outline-width",type:q.size,triggersBounds:H.any},{name:"outline-style",type:q.borderStyle},{name:"outline-offset",type:q.size,triggersBounds:H.any}],de=[{name:"background-image",type:q.urls},{name:"background-image-crossorigin",type:q.bgCrossOrigin},{name:"background-image-opacity",type:q.zeroOneNumbers},{name:"background-image-containment",type:q.bgContainment},{name:"background-image-smoothing",type:q.bools},{name:"background-position-x",type:q.bgPos},{name:"background-position-y",type:q.bgPos},{name:"background-width-relative-to",type:q.bgRelativeTo},{name:"background-height-relative-to",type:q.bgRelativeTo},{name:"background-repeat",type:q.bgRepeat},{name:"background-fit",type:q.bgFit},{name:"background-clip",type:q.bgClip},{name:"background-width",type:q.bgWH},{name:"background-height",type:q.bgWH},{name:"background-offset-x",type:q.bgPos},{name:"background-offset-y",type:q.bgPos}],Yt=[{name:"position",type:q.position,triggersBounds:H.any},{name:"compound-sizing-wrt-labels",type:q.compoundIncludeLabels,triggersBounds:H.any},{name:"min-width",type:q.size,triggersBounds:H.any},{name:"min-width-bias-left",type:q.sizeMaybePercent,triggersBounds:H.any},{name:"min-width-bias-right",type:q.sizeMaybePercent,triggersBounds:H.any},{name:"min-height",type:q.size,triggersBounds:H.any},{name:"min-height-bias-top",type:q.sizeMaybePercent,triggersBounds:H.any},{name:"min-height-bias-bottom",type:q.sizeMaybePercent,triggersBounds:H.any}],Ee=[{name:"line-style",type:q.lineStyle},{name:"line-color",type:q.color},{name:"line-fill",type:q.fill},{name:"line-cap",type:q.lineCap},{name:"line-opacity",type:q.zeroOneNumber},{name:"line-dash-pattern",type:q.numbers},{name:"line-dash-offset",type:q.number},{name:"line-gradient-stop-colors",type:q.colors},{name:"line-gradient-stop-positions",type:q.percentages},{name:"curve-style",type:q.curveStyle,triggersBounds:H.any,triggersBoundsOfParallelBeziers:!0},{name:"haystack-radius",type:q.zeroOneNumber,triggersBounds:H.any},{name:"source-endpoint",type:q.edgeEndpoint,triggersBounds:H.any},{name:"target-endpoint",type:q.edgeEndpoint,triggersBounds:H.any},{name:"control-point-step-size",type:q.size,triggersBounds:H.any},{name:"control-point-distances",type:q.bidirectionalSizes,triggersBounds:H.any},{name:"control-point-weights",type:q.numbers,triggersBounds:H.any},{name:"segment-distances",type:q.bidirectionalSizes,triggersBounds:H.any},{name:"segment-weights",type:q.numbers,triggersBounds:H.any},{name:"taxi-turn",type:q.bidirectionalSizeMaybePercent,triggersBounds:H.any},{name:"taxi-turn-min-distance",type:q.size,triggersBounds:H.any},{name:"taxi-direction",type:q.axisDirection,triggersBounds:H.any},{name:"edge-distances",type:q.edgeDistances,triggersBounds:H.any},{name:"arrow-scale",type:q.positiveNumber,triggersBounds:H.any},{name:"loop-direction",type:q.angle,triggersBounds:H.any},{name:"loop-sweep",type:q.angle,triggersBounds:H.any},{name:"source-distance-from-node",type:q.size,triggersBounds:H.any},{name:"target-distance-from-node",type:q.size,triggersBounds:H.any}],Te=[{name:"ghost",type:q.bool,triggersBounds:H.any},{name:"ghost-offset-x",type:q.bidirectionalSize,triggersBounds:H.any},{name:"ghost-offset-y",type:q.bidirectionalSize,triggersBounds:H.any},{name:"ghost-opacity",type:q.zeroOneNumber}],ie=[{name:"selection-box-color",type:q.color},{name:"selection-box-opacity",type:q.zeroOneNumber},{name:"selection-box-border-color",type:q.color},{name:"selection-box-border-width",type:q.size},{name:"active-bg-color",type:q.color},{name:"active-bg-opacity",type:q.zeroOneNumber},{name:"active-bg-size",type:q.size},{name:"outside-texture-bg-color",type:q.color},{name:"outside-texture-bg-opacity",type:q.zeroOneNumber}],ze=[];m1.pieBackgroundN=16,ze.push({name:"pie-size",type:q.sizeMaybePercent});for(var me=1;me<=m1.pieBackgroundN;me++)ze.push({name:"pie-"+me+"-background-color",type:q.color}),ze.push({name:"pie-"+me+"-background-size",type:q.percent}),ze.push({name:"pie-"+me+"-background-opacity",type:q.zeroOneNumber});var yn=[],nn=m1.arrowPrefixes=["source","mid-source","target","mid-target"];[{name:"arrow-shape",type:q.arrowShape,triggersBounds:H.any},{name:"arrow-color",type:q.color},{name:"arrow-fill",type:q.arrowFill},{name:"arrow-width",type:q.arrowWidth}].forEach(function(cr){nn.forEach(function(mr){var Sr=mr+"-"+cr.name,gi=cr.type,ss=cr.triggersBounds;yn.push({name:Sr,type:gi,triggersBounds:ss})})},{});var qe=m1.properties=[].concat(_t,Pt,St,Et,Nt,Te,pt,bt,W,Z,st,re,ee,Ut,de,ze,Yt,Ee,yn,ie),Tn=m1.propertyGroups={behavior:_t,transition:Pt,visibility:St,overlay:Et,underlay:Nt,ghost:Te,commonLabel:pt,labelDimensions:bt,mainLabel:W,sourceLabel:Z,targetLabel:st,nodeBody:re,nodeBorder:ee,nodeOutline:Ut,backgroundImage:de,pie:ze,compound:Yt,edgeLine:Ee,edgeArrow:yn,core:ie},Xn=m1.propertyGroupNames={},lr=m1.propertyGroupKeys=Object.keys(Tn);lr.forEach(function(cr){Xn[cr]=Tn[cr].map(function(mr){return mr.name}),Tn[cr].forEach(function(mr){return mr.groupKey=cr})});var Sn=m1.aliases=[{name:"content",pointsTo:"label"},{name:"control-point-distance",pointsTo:"control-point-distances"},{name:"control-point-weight",pointsTo:"control-point-weights"},{name:"edge-text-rotation",pointsTo:"text-rotation"},{name:"padding-left",pointsTo:"padding"},{name:"padding-right",pointsTo:"padding"},{name:"padding-top",pointsTo:"padding"},{name:"padding-bottom",pointsTo:"padding"}];m1.propertyNames=qe.map(function(cr){return cr.name});for(var or=0;or=7&&p[0]==="d"&&(W=new RegExp(j.data.regex).exec(p))){if(x)return!1;var st=j.data;return{name:y,value:W,strValue:""+p,mapped:st,field:W[1],bypass:x}}else if(p.length>=10&&p[0]==="m"&&(Z=new RegExp(j.mapData.regex).exec(p))){if(x||q.multiple)return!1;var bt=j.mapData;if(!(q.color||q.number))return!1;var pt=this.parse(y,Z[4]);if(!pt||pt.mapped)return!1;var _t=this.parse(y,Z[5]);if(!_t||_t.mapped)return!1;if(pt.pfValue===_t.pfValue||pt.strValue===_t.strValue)return Gc("`"+y+": "+p+"` is not a valid mapper because the output range is zero; converting to `"+y+": "+pt.strValue+"`"),this.parse(y,pt.strValue);if(q.color){var St=pt.value,Et=_t.value,Nt=St[0]===Et[0]&&St[1]===Et[1]&&St[2]===Et[2]&&(St[3]===Et[3]||(St[3]==null||St[3]===1)&&(Et[3]==null||Et[3]===1));if(Nt)return!1}return{name:y,value:Z,strValue:""+p,mapped:bt,field:Z[1],fieldMin:parseFloat(Z[2]),fieldMax:parseFloat(Z[3]),valueMin:pt.value,valueMax:_t.value,bypass:x}}}if(q.multiple&&C!=="multiple"){var Pt;if(H?Pt=p.split(/\s+/):rt(p)?Pt=p:Pt=[p],q.evenMultiple&&Pt.length%2!==0)return null;for(var qt=[],re=[],ee=[],Ut="",de=!1,Yt=0;Yt0?" ":"")+Ee.strValue}return q.validate&&!q.validate(qt,re)?null:q.singleEnum&&de?qt.length===1&&mt(qt[0])?{name:y,value:qt[0],strValue:qt[0],bypass:x}:null:{name:y,value:qt,pfValue:ee,strValue:Ut,bypass:x,units:re}}var Te=function(){for(var mr=0;mrq.max||q.strictMax&&p===q.max))return null;var nn={name:y,value:p,strValue:""+p+(ie||""),units:ie,bypass:x};return q.unitless||ie!=="px"&&ie!=="em"?nn.pfValue=p:nn.pfValue=ie==="px"||!ie?p:this.getEmSizeInPixels()*p,(ie==="ms"||ie==="s")&&(nn.pfValue=ie==="ms"?p:1e3*p),(ie==="deg"||ie==="rad")&&(nn.pfValue=ie==="rad"?p:lQ(p)),ie==="%"&&(nn.pfValue=p/100),nn}else if(q.propList){var qe=[],Tn=""+p;if(Tn!=="none"){for(var Xn=Tn.split(/\s*,\s*|\s+/),lr=0;lr0&&j>0&&!isNaN(C.w)&&!isNaN(C.h)&&C.w>0&&C.h>0){H=Math.min((N-2*x)/C.w,(j-2*x)/C.h),H=H>this._private.maxZoom?this._private.maxZoom:H,H=H=C.minZoom&&(C.maxZoom=x),this},minZoom:function(p){return p===void 0?this._private.minZoom:this.zoomRange({min:p})},maxZoom:function(p){return p===void 0?this._private.maxZoom:this.zoomRange({max:p})},getZoomedViewport:function(p){var x=this._private,C=x.pan,L=x.zoom,O,N,j=!1;if(x.zoomingEnabled||(j=!0),Q(p)?N=p:it(p)&&(N=p.level,p.position!=null?O=W9(p.position,L,C):p.renderedPosition!=null&&(O=p.renderedPosition),O!=null&&!x.panningEnabled&&(j=!0)),N=N>x.maxZoom?x.maxZoom:N,N=Nx.maxZoom||!x.zoomingEnabled?N=!0:(x.zoom=H,O.push("zoom"))}if(L&&(!N||!p.cancelOnFailedZoom)&&x.panningEnabled){var q=p.pan;Q(q.x)&&(x.pan.x=q.x,j=!1),Q(q.y)&&(x.pan.y=q.y,j=!1),j||O.push("pan")}return O.length>0&&(O.push("viewport"),this.emit(O.join(" ")),this.notify("viewport")),this},center:function(p){var x=this.getCenterPan(p);return x&&(this._private.pan=x,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(p,x){if(this._private.panningEnabled){if(mt(p)){var C=p;p=this.mutableElements().filter(C)}else yt(p)||(p=this.mutableElements());if(p.length!==0){var L=p.boundingBox(),O=this.width(),N=this.height();x=x===void 0?this._private.zoom:x;var j={x:(O-x*(L.x1+L.x2))/2,y:(N-x*(L.y1+L.y2))/2};return j}}},reset:function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},invalidateSize:function(){this._private.sizeCache=null},size:function(){var p=this._private,x=p.container,C=this;return p.sizeCache=p.sizeCache||(x?function(){var L=C.window().getComputedStyle(x),O=function(j){return parseFloat(L.getPropertyValue(j))};return{width:x.clientWidth-O("padding-left")-O("padding-right"),height:x.clientHeight-O("padding-top")-O("padding-bottom")}}():{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var p=this._private.pan,x=this._private.zoom,C=this.renderedExtent(),L={x1:(C.x1-p.x)/x,x2:(C.x2-p.x)/x,y1:(C.y1-p.y)/x,y2:(C.y2-p.y)/x};return L.w=L.x2-L.x1,L.h=L.y2-L.y1,L},renderedExtent:function(){var p=this.width(),x=this.height();return{x1:0,y1:0,x2:p,y2:x,w:p,h:x}},multiClickDebounceTime:function(p){if(p)this._private.multiClickDebounceTime=p;else return this._private.multiClickDebounceTime;return this}};T4.centre=T4.center,T4.autolockNodes=T4.autolock,T4.autoungrabifyNodes=T4.autoungrabify;var Z8={data:Kc.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:Kc.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:Kc.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Kc.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Z8.attr=Z8.data,Z8.removeAttr=Z8.removeData;var tE=function(p){var x=this;p=we({},p);var C=p.container;C&&!K(C)&&K(C[0])&&(C=C[0]);var L=C?C._cyreg:null;L=L||{},L&&L.cy&&(L.cy.destroy(),L={});var O=L.readies=L.readies||[];C&&(C._cyreg=L),L.cy=x;var N=B!==void 0&&C!==void 0&&!p.headless,j=p;j.layout=we({name:N?"grid":"null"},j.layout),j.renderer=we({name:N?"canvas":"null"},j.renderer);var H=function(pt,_t,St){return _t!==void 0?_t:St!==void 0?St:pt},q=this._private={container:C,ready:!1,options:j,elements:new w1(this),listeners:[],aniEles:new w1(this),data:j.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:H(!0,j.zoomingEnabled),userZoomingEnabled:H(!0,j.userZoomingEnabled),panningEnabled:H(!0,j.panningEnabled),userPanningEnabled:H(!0,j.userPanningEnabled),boxSelectionEnabled:H(!0,j.boxSelectionEnabled),autolock:H(!1,j.autolock,j.autolockNodes),autoungrabify:H(!1,j.autoungrabify,j.autoungrabifyNodes),autounselectify:H(!1,j.autounselectify),styleEnabled:j.styleEnabled===void 0?N:j.styleEnabled,zoom:Q(j.zoom)?j.zoom:1,pan:{x:it(j.pan)&&Q(j.pan.x)?j.pan.x:0,y:it(j.pan)&&Q(j.pan.y)?j.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:H(250,j.multiClickDebounceTime)};this.createEmitter(),this.selectionType(j.selectionType),this.zoomRange({min:j.minZoom,max:j.maxZoom});var W=function(pt,_t){var St=pt.some(Gt);if(St)return e6.all(pt).then(_t);_t(pt)};q.styleEnabled&&x.setStyle([]);var Z=we({},j,j.renderer);x.initRenderer(Z);var st=function(pt,_t,St){x.notifications(!1);var Et=x.mutableElements();Et.length>0&&Et.remove(),pt!=null&&(it(pt)||rt(pt))&&x.add(pt),x.one("layoutready",function(Pt){x.notifications(!0),x.emit(Pt),x.one("load",_t),x.emitAndNotify("load")}).one("layoutstop",function(){x.one("done",St),x.emit("done")});var Nt=we({},x._private.options.layout);Nt.eles=x.elements(),x.layout(Nt).run()};W([j.style,j.elements],function(bt){var pt=bt[0],_t=bt[1];q.styleEnabled&&x.style().append(pt),st(_t,function(){x.startAnimationLoop(),q.ready=!0,ct(j.ready)&&x.on("ready",j.ready);for(var St=0;St0,H=v0(p.boundingBox?p.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),q;if(yt(p.roots))q=p.roots;else if(rt(p.roots)){for(var W=[],Z=0;Z0;){var yn=me(),nn=Ee(yn,ie);if(nn)yn.outgoers().filter(function(vi){return vi.isNode()&&C.has(vi)}).forEach(ze);else if(nn===null){Gc("Detected double maximal shift for node `"+yn.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}Yt();var qe=0;if(p.avoidOverlap)for(var Tn=0;Tn0&&Et[0].length<=3?pa/2:0),G=2*Math.PI/Et[ks].length*as;return ks===0&&Et[0].length===1&&(Kn=1),{x:gi.x+Kn*Math.cos(G),y:gi.y+Kn*Math.sin(G)}}else{var mo={x:gi.x+(as+1-(Es+1)/2)*eo,y:(ks+1)*Ta};return mo}};return C.nodes().layoutPositions(this,p,na),this};var yet={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(p,x){return!0},ready:void 0,stop:void 0,transform:function(p,x){return x}};function lj(y){this.options=we({},yet,y)}lj.prototype.run=function(){var y=this.options,p=y,x=y.cy,C=p.eles,L=p.counterclockwise!==void 0?!p.counterclockwise:p.clockwise,O=C.nodes().not(":parent");p.sort&&(O=O.sort(p.sort));for(var N=v0(p.boundingBox?p.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),j={x:N.x1+N.w/2,y:N.y1+N.h/2},H=p.sweep===void 0?2*Math.PI-2*Math.PI/O.length:p.sweep,q=H/Math.max(1,O.length-1),W,Z=0,st=0;st1&&p.avoidOverlap){Z*=1.75;var Et=Math.cos(q)-Math.cos(0),Nt=Math.sin(q)-Math.sin(0),Pt=Math.sqrt(Z*Z/(Et*Et+Nt*Nt));W=Math.max(Pt,W)}var qt=function(ee,Ut){var de=p.startAngle+Ut*q*(L?1:-1),Yt=W*Math.cos(de),Ee=W*Math.sin(de),Te={x:j.x+Yt,y:j.y+Ee};return Te};return C.nodes().layoutPositions(this,p,qt),this};var xet={fit:!0,padding:30,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(p){return p.degree()},levelWidth:function(p){return p.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(p,x){return!0},ready:void 0,stop:void 0,transform:function(p,x){return x}};function hj(y){this.options=we({},xet,y)}hj.prototype.run=function(){for(var y=this.options,p=y,x=p.counterclockwise!==void 0?!p.counterclockwise:p.clockwise,C=y.cy,L=p.eles,O=L.nodes().not(":parent"),N=v0(p.boundingBox?p.boundingBox:{x1:0,y1:0,w:C.width(),h:C.height()}),j={x:N.x1+N.w/2,y:N.y1+N.h/2},H=[],q=0,W=0;W0){var re=Math.abs(Nt[0].value-qt.value);re>=St&&(Nt=[],Et.push(Nt))}Nt.push(qt)}var ee=q+p.minNodeSpacing;if(!p.avoidOverlap){var Ut=Et.length>0&&Et[0].length>1,de=Math.min(N.w,N.h)/2-ee,Yt=de/(Et.length+Ut?1:0);ee=Math.min(ee,Yt)}for(var Ee=0,Te=0;Te1&&p.avoidOverlap){var yn=Math.cos(me)-Math.cos(0),nn=Math.sin(me)-Math.sin(0),qe=Math.sqrt(ee*ee/(yn*yn+nn*nn));Ee=Math.max(qe,Ee)}ie.r=Ee,Ee+=ee}if(p.equidistant){for(var Tn=0,Xn=0,lr=0;lr=y.numIter||(Det(C,y),C.temperature=C.temperature*y.coolingFactor,C.temperature=y.animationThreshold&&O(),g1(Z)}};W()}else{for(;q;)q=N(H),H++;gj(C,y),j()}return this},_C.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},_C.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var Eet=function(p,x,C){for(var L=C.eles.edges(),O=C.eles.nodes(),N=v0(C.boundingBox?C.boundingBox:{x1:0,y1:0,w:p.width(),h:p.height()}),j={isCompound:p.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:O.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:L.size(),temperature:C.initialTemp,clientWidth:N.w,clientHeight:N.h,boundingBox:N},H=C.eles.components(),q={},W=0;W0){j.graphSet.push(de);for(var W=0;WL.count?0:L.graph},Cet=function y(p,x,C,L){var O=L.graphSet[C];if(-10)var Z=L.nodeOverlap*W,st=Math.sqrt(j*j+H*H),bt=Z*j/st,pt=Z*H/st;else var _t=AC(p,j,H),St=AC(x,-1*j,-1*H),Et=St.x-_t.x,Nt=St.y-_t.y,Pt=Et*Et+Nt*Nt,st=Math.sqrt(Pt),Z=(p.nodeRepulsion+x.nodeRepulsion)/Pt,bt=Z*Et/st,pt=Z*Nt/st;p.isLocked||(p.offsetX-=bt,p.offsetY-=pt),x.isLocked||(x.offsetX+=bt,x.offsetY+=pt)}},Oet=function(p,x,C,L){if(C>0)var O=p.maxX-x.minX;else var O=x.maxX-p.minX;if(L>0)var N=p.maxY-x.minY;else var N=x.maxY-p.minY;return O>=0&&N>=0?Math.sqrt(O*O+N*N):0},AC=function(p,x,C){var L=p.positionX,O=p.positionY,N=p.height||1,j=p.width||1,H=C/x,q=N/j,W={};return x===0&&0C?(W.x=L,W.y=O+N/2,W):0x&&-1*q<=H&&H<=q?(W.x=L-j/2,W.y=O-j*C/2/x,W):0=q)?(W.x=L+N*x/2/C,W.y=O+N/2,W):(0>C&&(H<=-1*q||H>=q)&&(W.x=L-N*x/2/C,W.y=O-N/2),W)},Net=function(p,x){for(var C=0;CC){var St=x.gravity*bt/_t,Et=x.gravity*pt/_t;st.offsetX+=St,st.offsetY+=Et}}}}},Fet=function(p,x){var C=[],L=0,O=-1;for(C.push.apply(C,p.graphSet[0]),O+=p.graphSet[0].length;L<=O;){var N=C[L++],j=p.idToIndex[N],H=p.layoutNodes[j],q=H.children;if(0C)var O={x:C*p/L,y:C*x/L};else var O={x:p,y:x};return O},jet=function y(p,x){var C=p.parentId;if(C!=null){var L=x.layoutNodes[x.idToIndex[C]],O=!1;if((L.maxX==null||p.maxX+L.padRight>L.maxX)&&(L.maxX=p.maxX+L.padRight,O=!0),(L.minX==null||p.minX-L.padLeftL.maxY)&&(L.maxY=p.maxY+L.padBottom,O=!0),(L.minY==null||p.minY-L.padTopEt&&(pt+=St+x.componentSpacing,bt=0,_t=0,St=0)}}},$et={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(p){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(p,x){return!0},ready:void 0,stop:void 0,transform:function(p,x){return x}};function pj(y){this.options=we({},$et,y)}pj.prototype.run=function(){var y=this.options,p=y,x=y.cy,C=p.eles,L=C.nodes().not(":parent");p.sort&&(L=L.sort(p.sort));var O=v0(p.boundingBox?p.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()});if(O.h===0||O.w===0)C.nodes().layoutPositions(this,p,function(pr){return{x:O.x1,y:O.y1}});else{var N=L.size(),j=Math.sqrt(N*O.h/O.w),H=Math.round(j),q=Math.round(O.w/O.h*j),W=function(kr){if(kr==null)return Math.min(H,q);var wr=Math.min(H,q);wr==H?H=kr:q=kr},Z=function(kr){if(kr==null)return Math.max(H,q);var wr=Math.max(H,q);wr==H?H=kr:q=kr},st=p.rows,bt=p.cols!=null?p.cols:p.columns;if(st!=null&&bt!=null)H=st,q=bt;else if(st!=null&&bt==null)H=st,q=Math.ceil(N/H);else if(st==null&&bt!=null)q=bt,H=Math.ceil(N/q);else if(q*H>N){var pt=W(),_t=Z();(pt-1)*_t>=N?W(pt-1):(_t-1)*pt>=N&&Z(_t-1)}else for(;q*H=N?Z(Et+1):W(St+1)}var Nt=O.w/q,Pt=O.h/H;if(p.condense&&(Nt=0,Pt=0),p.avoidOverlap)for(var qt=0;qt=q&&(yn=0,me++)},qe={},Tn=0;Tn(yn=EQ(y,p,nn[qe],nn[qe+1],nn[qe+2],nn[qe+3])))return St(Ut,yn),!0}else if(Yt.edgeType==="bezier"||Yt.edgeType==="multibezier"||Yt.edgeType==="self"||Yt.edgeType==="compound"){for(var nn=Yt.allpts,qe=0;qe+5(yn=kQ(y,p,nn[qe],nn[qe+1],nn[qe+2],nn[qe+3],nn[qe+4],nn[qe+5])))return St(Ut,yn),!0}for(var Tn=Tn||de.source,Xn=Xn||de.target,lr=L.getArrowWidth(Ee,Te),Sn=[{name:"source",x:Yt.arrowStartX,y:Yt.arrowStartY,angle:Yt.srcArrowAngle},{name:"target",x:Yt.arrowEndX,y:Yt.arrowEndY,angle:Yt.tgtArrowAngle},{name:"mid-source",x:Yt.midX,y:Yt.midY,angle:Yt.midsrcArrowAngle},{name:"mid-target",x:Yt.midX,y:Yt.midY,angle:Yt.midtgtArrowAngle}],qe=0;qe0&&(Et(Tn),Et(Xn))}function Pt(Ut,de,Yt){return fb(Ut,de,Yt)}function qt(Ut,de){var Yt=Ut._private,Ee=st,Te;de?Te=de+"-":Te="",Ut.boundingBox();var ie=Yt.labelBounds[de||"main"],ze=Ut.pstyle(Te+"label").value,me=Ut.pstyle("text-events").strValue==="yes";if(!(!me||!ze)){var yn=Pt(Yt.rscratch,"labelX",de),nn=Pt(Yt.rscratch,"labelY",de),qe=Pt(Yt.rscratch,"labelAngle",de),Tn=Ut.pstyle(Te+"text-margin-x").pfValue,Xn=Ut.pstyle(Te+"text-margin-y").pfValue,lr=ie.x1-Ee-Tn,Sn=ie.x2+Ee-Tn,or=ie.y1-Ee-Xn,pr=ie.y2+Ee-Xn;if(qe){var kr=Math.cos(qe),wr=Math.sin(qe),Cr=function(na,vi){return na=na-yn,vi=vi-nn,{x:na*kr-vi*wr+yn,y:na*wr+vi*kr+nn}},$n=Cr(lr,or),cr=Cr(lr,pr),mr=Cr(Sn,or),Sr=Cr(Sn,pr),gi=[$n.x+Tn,$n.y+Xn,mr.x+Tn,mr.y+Xn,Sr.x+Tn,Sr.y+Xn,cr.x+Tn,cr.y+Xn];if(y0(y,p,gi))return St(Ut),!0}else if(Qx(ie,y,p))return St(Ut),!0}}for(var re=N.length-1;re>=0;re--){var ee=N[re];ee.isNode()?Et(ee)||qt(ee):Nt(ee)||qt(ee)||qt(ee,"source")||qt(ee,"target")}return j},C4.getAllInBox=function(y,p,x,C){var L=this.getCachedZSortedEles().interactive,O=[],N=Math.min(y,x),j=Math.max(y,x),H=Math.min(p,C),q=Math.max(p,C);y=N,x=j,p=H,C=q;for(var W=v0({x1:y,y1:p,x2:x,y2:C}),Z=0;Z0?Math.max(hr-us,0):Math.min(hr+us,0)},ze=ie(Ee,de),me=ie(Te,Yt),yn=!1;Nt===q?Et=Math.abs(ze)>Math.abs(me)?L:C:Nt===H||Nt===j?(Et=C,yn=!0):(Nt===O||Nt===N)&&(Et=L,yn=!0);var nn=Et===C,qe=nn?me:ze,Tn=nn?Te:Ee,Xn=FB(Tn),lr=!1;!(yn&&(qt||ee))&&(Nt===j&&Tn<0||Nt===H&&Tn>0||Nt===O&&Tn>0||Nt===N&&Tn<0)&&(Xn*=-1,qe=Xn*Math.abs(qe),lr=!0);var Sn;if(qt){var or=re<0?1+re:re;Sn=or*qe}else{var pr=re<0?qe:0;Sn=pr+re*Xn}var kr=function(hr){return Math.abs(hr)=Math.abs(qe)},wr=kr(Sn),Cr=kr(Math.abs(qe)-Math.abs(Sn)),$n=wr||Cr;if($n&&!lr)if(nn){var cr=Math.abs(Tn)<=st/2,mr=Math.abs(Ee)<=bt/2;if(cr){var Sr=(W.x1+W.x2)/2,gi=W.y1,ss=W.y2;x.segpts=[Sr,gi,Sr,ss]}else if(mr){var na=(W.y1+W.y2)/2,vi=W.x1,si=W.x2;x.segpts=[vi,na,si,na]}else x.segpts=[W.x1,W.y2]}else{var Qi=Math.abs(Tn)<=Z/2,ks=Math.abs(Te)<=pt/2;if(Qi){var as=(W.y1+W.y2)/2,Es=W.x1,eo=W.x2;x.segpts=[Es,as,eo,as]}else if(ks){var Ta=(W.x1+W.x2)/2,pa=W.y1,mo=W.y2;x.segpts=[Ta,pa,Ta,mo]}else x.segpts=[W.x2,W.y1]}else if(nn){var Kn=W.y1+Sn+(St?st/2*Xn:0),G=W.x1,Vn=W.x2;x.segpts=[G,Kn,Vn,Kn]}else{var gr=W.x1+Sn+(St?Z/2*Xn:0),nr=W.y1,Be=W.y2;x.segpts=[gr,nr,gr,Be]}},Q1.tryToCorrectInvalidPoints=function(y,p){var x=y._private.rscratch;if(x.edgeType==="bezier"){var C=p.srcPos,L=p.tgtPos,O=p.srcW,N=p.srcH,j=p.tgtW,H=p.tgtH,q=p.srcShape,W=p.tgtShape,Z=!Q(x.startX)||!Q(x.startY),st=!Q(x.arrowStartX)||!Q(x.arrowStartY),bt=!Q(x.endX)||!Q(x.endY),pt=!Q(x.arrowEndX)||!Q(x.arrowEndY),_t=3,St=this.getArrowWidth(y.pstyle("width").pfValue,y.pstyle("arrow-scale").value)*this.arrowShapeWidth,Et=_t*St,Nt=w4({x:x.ctrlpts[0],y:x.ctrlpts[1]},{x:x.startX,y:x.startY}),Pt=Ntme.poolIndex()){var yn=ze;ze=me,me=yn}var nn=Yt.srcPos=ze.position(),qe=Yt.tgtPos=me.position(),Tn=Yt.srcW=ze.outerWidth(),Xn=Yt.srcH=ze.outerHeight(),lr=Yt.tgtW=me.outerWidth(),Sn=Yt.tgtH=me.outerHeight(),or=Yt.srcShape=x.nodeShapes[p.getNodeShape(ze)],pr=Yt.tgtShape=x.nodeShapes[p.getNodeShape(me)];Yt.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var kr=0;kr0){var cr=O,mr=m4(cr,Yx(x)),Sr=m4(cr,Yx($n)),gi=mr;if(Sr2){var ss=m4(cr,{x:$n[2],y:$n[3]});ss0){var G=N,Vn=m4(G,Yx(x)),gr=m4(G,Yx(Kn)),nr=Vn;if(gr2){var Be=m4(G,{x:Kn[2],y:Kn[3]});Be=pt||Ut){St={cp:qt,segment:ee};break}}if(St)break}var de=St.cp,Yt=St.segment,Ee=(pt-Et)/Yt.length,Te=Yt.t1-Yt.t0,ie=bt?Yt.t0+Te*Ee:Yt.t1-Te*Ee;ie=P8(0,ie,1),p=Xx(de.p0,de.p1,de.p2,ie),st=Uet(de.p0,de.p1,de.p2,ie);break}case"straight":case"segments":case"haystack":{for(var ze=0,me,yn,nn,qe,Tn=C.allpts.length,Xn=0;Xn+3=pt));Xn+=2);var lr=pt-yn,Sn=lr/me;Sn=P8(0,Sn,1),p=fQ(nn,qe,Sn),st=DC(nn,qe);break}}N("labelX",Z,p.x),N("labelY",Z,p.y),N("labelAutoAngle",Z,st)}};q("source"),q("target"),this.applyLabelDimensions(y)}},j2.applyLabelDimensions=function(y){this.applyPrefixedLabelDimensions(y),y.isEdge()&&(this.applyPrefixedLabelDimensions(y,"source"),this.applyPrefixedLabelDimensions(y,"target"))},j2.applyPrefixedLabelDimensions=function(y,p){var x=y._private,C=this.getLabelText(y,p),L=this.calculateLabelDimensions(y,C),O=y.pstyle("line-height").pfValue,N=y.pstyle("text-wrap").strValue,j=fb(x.rscratch,"labelWrapCachedLines",p)||[],H=N!=="wrap"?1:Math.max(j.length,1),q=L.height/H,W=q*O,Z=L.width,st=L.height+(H-1)*(O-1)*q;cy(x.rstyle,"labelWidth",p,Z),cy(x.rscratch,"labelWidth",p,Z),cy(x.rstyle,"labelHeight",p,st),cy(x.rscratch,"labelHeight",p,st),cy(x.rscratch,"labelLineHeight",p,W)},j2.getLabelText=function(y,p){var x=y._private,C=p?p+"-":"",L=y.pstyle(C+"label").strValue,O=y.pstyle("text-transform").value,N=function(lr,Sn){return Sn?(cy(x.rscratch,lr,p,Sn),Sn):fb(x.rscratch,lr,p)};if(!L)return"";O=="none"||(O=="uppercase"?L=L.toUpperCase():O=="lowercase"&&(L=L.toLowerCase()));var j=y.pstyle("text-wrap").value;if(j==="wrap"){var H=N("labelKey");if(H!=null&&N("labelWrapKey")===H)return N("labelWrapCachedText");for(var q="​",W=L.split(` +`),Z=y.pstyle("text-max-width").pfValue,st=y.pstyle("text-overflow-wrap").value,bt=st==="anywhere",pt=[],_t=/[\s\u200b]+/,St=bt?"":" ",Et=0;EtZ){for(var ee=Nt.split(_t),Ut="",de=0;deze)break;me+=L[qe],qe===L.length-1&&(nn=!0)}return nn||(me+=yn),me}return L},j2.getLabelJustification=function(y){var p=y.pstyle("text-justification").strValue,x=y.pstyle("text-halign").strValue;if(p==="auto")if(y.isNode())switch(x){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return p},j2.calculateLabelDimensions=function(y,p){var x=this,C=Nd(p,y._private.labelDimsKey),L=x.labelDimCache||(x.labelDimCache=[]),O=L[C];if(O!=null)return O;var N=0,j=y.pstyle("font-style").strValue,H=y.pstyle("font-size").pfValue,q=y.pstyle("font-family").strValue,W=y.pstyle("font-weight").strValue,Z=this.labelCalcCanvas,st=this.labelCalcCanvasContext;if(!Z){Z=this.labelCalcCanvas=document.createElement("canvas"),st=this.labelCalcCanvasContext=Z.getContext("2d");var bt=Z.style;bt.position="absolute",bt.left="-9999px",bt.top="-9999px",bt.zIndex="-1",bt.visibility="hidden",bt.pointerEvents="none"}st.font="".concat(j," ").concat(W," ").concat(H,"px ").concat(q);for(var pt=0,_t=0,St=p.split(` +`),Et=0;Et1&&arguments[1]!==void 0?arguments[1]:!0;if(p.merge(N),j)for(var H=0;H=y.desktopTapThreshold2}var cm=L(G);Sl&&(y.hoverData.tapholdCancelled=!0);var py=function(){var $2=y.hoverData.dragDelta=y.hoverData.dragDelta||[];$2.length===0?($2.push(no[0]),$2.push(no[1])):($2[0]+=no[0],$2[1]+=no[1])};gr=!0,C(Ca,["mousemove","vmousemove","tapdrag"],G,{x:hr[0],y:hr[1]});var y6=function(){y.data.bgActivePosistion=void 0,y.hoverData.selecting||nr.emit({originalEvent:G,type:"boxstart",position:{x:hr[0],y:hr[1]}}),kc[4]=1,y.hoverData.selecting=!0,y.redrawHint("select",!0),y.redraw()};if(y.hoverData.which===3){if(Sl){var _4={originalEvent:G,type:"cxtdrag",position:{x:hr[0],y:hr[1]}};ra?ra.emit(_4):nr.emit(_4),y.hoverData.cxtDragged=!0,(!y.hoverData.cxtOver||Ca!==y.hoverData.cxtOver)&&(y.hoverData.cxtOver&&y.hoverData.cxtOver.emit({originalEvent:G,type:"cxtdragout",position:{x:hr[0],y:hr[1]}}),y.hoverData.cxtOver=Ca,Ca&&Ca.emit({originalEvent:G,type:"cxtdragover",position:{x:hr[0],y:hr[1]}}))}}else if(y.hoverData.dragging){if(gr=!0,nr.panningEnabled()&&nr.userPanningEnabled()){var x6;if(y.hoverData.justStartedPan){var BC=y.hoverData.mdownPos;x6={x:(hr[0]-BC[0])*Be,y:(hr[1]-BC[1])*Be},y.hoverData.justStartedPan=!1}else x6={x:no[0]*Be,y:no[1]*Be};nr.panBy(x6),nr.emit("dragpan"),y.hoverData.dragged=!0}hr=y.projectIntoViewport(G.clientX,G.clientY)}else if(kc[4]==1&&(ra==null||ra.pannable())){if(Sl){if(!y.hoverData.dragging&&nr.boxSelectionEnabled()&&(cm||!nr.panningEnabled()||!nr.userPanningEnabled()))y6();else if(!y.hoverData.selecting&&nr.panningEnabled()&&nr.userPanningEnabled()){var A4=O(ra,y.hoverData.downs);A4&&(y.hoverData.dragging=!0,y.hoverData.justStartedPan=!0,kc[4]=0,y.data.bgActivePosistion=Yx(us),y.redrawHint("select",!0),y.redraw())}ra&&ra.pannable()&&ra.active()&&ra.unactivate()}}else{if(ra&&ra.pannable()&&ra.active()&&ra.unactivate(),(!ra||!ra.grabbed())&&Ca!=oc&&(oc&&C(oc,["mouseout","tapdragout"],G,{x:hr[0],y:hr[1]}),Ca&&C(Ca,["mouseover","tapdragover"],G,{x:hr[0],y:hr[1]}),y.hoverData.last=Ca),ra)if(Sl){if(nr.boxSelectionEnabled()&&cm)ra&&ra.grabbed()&&(St(ql),ra.emit("freeon"),ql.emit("free"),y.dragData.didDrag&&(ra.emit("dragfreeon"),ql.emit("dragfree"))),y6();else if(ra&&ra.grabbed()&&y.nodeIsDraggable(ra)){var k0=!y.dragData.didDrag;k0&&y.redrawHint("eles",!0),y.dragData.didDrag=!0,y.hoverData.draggingEles||pt(ql,{inDragLayer:!0});var J1={x:0,y:0};if(Q(no[0])&&Q(no[1])&&(J1.x+=no[0],J1.y+=no[1],k0)){var E0=y.hoverData.dragDelta;E0&&Q(E0[0])&&Q(E0[1])&&(J1.x+=E0[0],J1.y+=E0[1])}y.hoverData.draggingEles=!0,ql.silentShift(J1).emit("position drag"),y.redrawHint("drag",!0),y.redraw()}}else py();gr=!0}if(kc[2]=hr[0],kc[3]=hr[1],gr)return G.stopPropagation&&G.stopPropagation(),G.preventDefault&&G.preventDefault(),!1}},!1);var Ee,Te,ie;y.registerBinding(p,"mouseup",function(G){var Vn=y.hoverData.capture;if(Vn){y.hoverData.capture=!1;var gr=y.cy,nr=y.projectIntoViewport(G.clientX,G.clientY),Be=y.selection,Ls=y.findNearestElement(nr[0],nr[1],!0,!1),hr=y.dragData.possibleDragElements,us=y.hoverData.down,Ya=L(G);if(y.data.bgActivePosistion&&(y.redrawHint("select",!0),y.redraw()),y.hoverData.tapholdCancelled=!0,y.data.bgActivePosistion=void 0,us&&us.unactivate(),y.hoverData.which===3){var kc={originalEvent:G,type:"cxttapend",position:{x:nr[0],y:nr[1]}};if(us?us.emit(kc):gr.emit(kc),!y.hoverData.cxtDragged){var Ca={originalEvent:G,type:"cxttap",position:{x:nr[0],y:nr[1]}};us?us.emit(Ca):gr.emit(Ca)}y.hoverData.cxtDragged=!1,y.hoverData.which=null}else if(y.hoverData.which===1){if(C(Ls,["mouseup","tapend","vmouseup"],G,{x:nr[0],y:nr[1]}),!y.dragData.didDrag&&!y.hoverData.dragged&&!y.hoverData.selecting&&!y.hoverData.isOverThresholdDrag&&(C(us,["click","tap","vclick"],G,{x:nr[0],y:nr[1]}),Te=!1,G.timeStamp-ie<=gr.multiClickDebounceTime()?(Ee&&clearTimeout(Ee),Te=!0,ie=null,C(us,["dblclick","dbltap","vdblclick"],G,{x:nr[0],y:nr[1]})):(Ee=setTimeout(function(){Te||C(us,["oneclick","onetap","voneclick"],G,{x:nr[0],y:nr[1]})},gr.multiClickDebounceTime()),ie=G.timeStamp)),us==null&&!y.dragData.didDrag&&!y.hoverData.selecting&&!y.hoverData.dragged&&!L(G)&&(gr.$(x).unselect(["tapunselect"]),hr.length>0&&y.redrawHint("eles",!0),y.dragData.possibleDragElements=hr=gr.collection()),Ls==us&&!y.dragData.didDrag&&!y.hoverData.selecting&&Ls!=null&&Ls._private.selectable&&(y.hoverData.dragging||(gr.selectionType()==="additive"||Ya?Ls.selected()?Ls.unselect(["tapunselect"]):Ls.select(["tapselect"]):Ya||(gr.$(x).unmerge(Ls).unselect(["tapunselect"]),Ls.select(["tapselect"]))),y.redrawHint("eles",!0)),y.hoverData.selecting){var oc=gr.collection(y.getAllInBox(Be[0],Be[1],Be[2],Be[3]));y.redrawHint("select",!0),oc.length>0&&y.redrawHint("eles",!0),gr.emit({type:"boxend",originalEvent:G,position:{x:nr[0],y:nr[1]}});var ra=function(Sl){return Sl.selectable()&&!Sl.selected()};gr.selectionType()==="additive"||Ya||gr.$(x).unmerge(oc).unselect(),oc.emit("box").stdFilter(ra).select().emit("boxselect"),y.redraw()}if(y.hoverData.dragging&&(y.hoverData.dragging=!1,y.redrawHint("select",!0),y.redrawHint("eles",!0),y.redraw()),!Be[4]){y.redrawHint("drag",!0),y.redrawHint("eles",!0);var no=us&&us.grabbed();St(hr),no&&(us.emit("freeon"),hr.emit("free"),y.dragData.didDrag&&(us.emit("dragfreeon"),hr.emit("dragfree")))}}Be[4]=0,y.hoverData.down=null,y.hoverData.cxtStarted=!1,y.hoverData.draggingEles=!1,y.hoverData.selecting=!1,y.hoverData.isOverThresholdDrag=!1,y.dragData.didDrag=!1,y.hoverData.dragged=!1,y.hoverData.dragDelta=[],y.hoverData.mdownPos=null,y.hoverData.mdownGPos=null}},!1);var ze=function(G){if(!y.scrollingPage){var Vn=y.cy,gr=Vn.zoom(),nr=Vn.pan(),Be=y.projectIntoViewport(G.clientX,G.clientY),Ls=[Be[0]*gr+nr.x,Be[1]*gr+nr.y];if(y.hoverData.draggingEles||y.hoverData.dragging||y.hoverData.cxtStarted||de()){G.preventDefault();return}if(Vn.panningEnabled()&&Vn.userPanningEnabled()&&Vn.zoomingEnabled()&&Vn.userZoomingEnabled()){G.preventDefault(),y.data.wheelZooming=!0,clearTimeout(y.data.wheelTimeout),y.data.wheelTimeout=setTimeout(function(){y.data.wheelZooming=!1,y.redrawHint("eles",!0),y.redraw()},150);var hr;G.deltaY!=null?hr=G.deltaY/-250:G.wheelDeltaY!=null?hr=G.wheelDeltaY/1e3:hr=G.wheelDelta/1e3,hr=hr*y.wheelSensitivity;var us=G.deltaMode===1;us&&(hr*=33);var Ya=Vn.zoom()*Math.pow(10,hr);G.type==="gesturechange"&&(Ya=y.gestureStartZoom*G.scale),Vn.zoom({level:Ya,renderedPosition:{x:Ls[0],y:Ls[1]}}),Vn.emit(G.type==="gesturechange"?"pinchzoom":"scrollzoom")}}};y.registerBinding(y.container,"wheel",ze,!0),y.registerBinding(p,"scroll",function(G){y.scrollingPage=!0,clearTimeout(y.scrollingPageTimeout),y.scrollingPageTimeout=setTimeout(function(){y.scrollingPage=!1},250)},!0),y.registerBinding(y.container,"gesturestart",function(G){y.gestureStartZoom=y.cy.zoom(),y.hasTouchStarted||G.preventDefault()},!0),y.registerBinding(y.container,"gesturechange",function(Kn){y.hasTouchStarted||ze(Kn)},!0),y.registerBinding(y.container,"mouseout",function(G){var Vn=y.projectIntoViewport(G.clientX,G.clientY);y.cy.emit({originalEvent:G,type:"mouseout",position:{x:Vn[0],y:Vn[1]}})},!1),y.registerBinding(y.container,"mouseover",function(G){var Vn=y.projectIntoViewport(G.clientX,G.clientY);y.cy.emit({originalEvent:G,type:"mouseover",position:{x:Vn[0],y:Vn[1]}})},!1);var me,yn,nn,qe,Tn,Xn,lr,Sn,or,pr,kr,wr,Cr,$n=function(G,Vn,gr,nr){return Math.sqrt((gr-G)*(gr-G)+(nr-Vn)*(nr-Vn))},cr=function(G,Vn,gr,nr){return(gr-G)*(gr-G)+(nr-Vn)*(nr-Vn)},mr;y.registerBinding(y.container,"touchstart",mr=function(G){if(y.hasTouchStarted=!0,!!Yt(G)){Nt(),y.touchData.capture=!0,y.data.bgActivePosistion=void 0;var Vn=y.cy,gr=y.touchData.now,nr=y.touchData.earlier;if(G.touches[0]){var Be=y.projectIntoViewport(G.touches[0].clientX,G.touches[0].clientY);gr[0]=Be[0],gr[1]=Be[1]}if(G.touches[1]){var Be=y.projectIntoViewport(G.touches[1].clientX,G.touches[1].clientY);gr[2]=Be[0],gr[3]=Be[1]}if(G.touches[2]){var Be=y.projectIntoViewport(G.touches[2].clientX,G.touches[2].clientY);gr[4]=Be[0],gr[5]=Be[1]}if(G.touches[1]){y.touchData.singleTouchMoved=!0,St(y.dragData.touchDragEles);var Ls=y.findContainerClientCoords();or=Ls[0],pr=Ls[1],kr=Ls[2],wr=Ls[3],me=G.touches[0].clientX-or,yn=G.touches[0].clientY-pr,nn=G.touches[1].clientX-or,qe=G.touches[1].clientY-pr,Cr=0<=me&&me<=kr&&0<=nn&&nn<=kr&&0<=yn&&yn<=wr&&0<=qe&&qe<=wr;var hr=Vn.pan(),us=Vn.zoom();Tn=$n(me,yn,nn,qe),Xn=cr(me,yn,nn,qe),lr=[(me+nn)/2,(yn+qe)/2],Sn=[(lr[0]-hr.x)/us,(lr[1]-hr.y)/us];var Ya=200,kc=Ya*Ya;if(Xn=1){for(var vb=y.touchData.startPosition=[null,null,null,null,null,null],v1=0;v1=y.touchTapThreshold2}if(Vn&&y.touchData.cxt){G.preventDefault();var vb=G.touches[0].clientX-or,v1=G.touches[0].clientY-pr,up=G.touches[1].clientX-or,Bd=G.touches[1].clientY-pr,cm=cr(vb,v1,up,Bd),py=cm/Xn,y6=150,_4=y6*y6,x6=1.5,BC=x6*x6;if(py>=BC||cm>=_4){y.touchData.cxt=!1,y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var A4={originalEvent:G,type:"cxttapend",position:{x:Be[0],y:Be[1]}};y.touchData.start?(y.touchData.start.unactivate().emit(A4),y.touchData.start=null):nr.emit(A4)}}if(Vn&&y.touchData.cxt){var A4={originalEvent:G,type:"cxtdrag",position:{x:Be[0],y:Be[1]}};y.data.bgActivePosistion=void 0,y.redrawHint("select",!0),y.touchData.start?y.touchData.start.emit(A4):nr.emit(A4),y.touchData.start&&(y.touchData.start._private.grabbed=!1),y.touchData.cxtDragged=!0;var k0=y.findNearestElement(Be[0],Be[1],!0,!0);(!y.touchData.cxtOver||k0!==y.touchData.cxtOver)&&(y.touchData.cxtOver&&y.touchData.cxtOver.emit({originalEvent:G,type:"cxtdragout",position:{x:Be[0],y:Be[1]}}),y.touchData.cxtOver=k0,k0&&k0.emit({originalEvent:G,type:"cxtdragover",position:{x:Be[0],y:Be[1]}}))}else if(Vn&&G.touches[2]&&nr.boxSelectionEnabled())G.preventDefault(),y.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,y.touchData.selecting||nr.emit({originalEvent:G,type:"boxstart",position:{x:Be[0],y:Be[1]}}),y.touchData.selecting=!0,y.touchData.didSelect=!0,gr[4]=1,!gr||gr.length===0||gr[0]===void 0?(gr[0]=(Be[0]+Be[2]+Be[4])/3,gr[1]=(Be[1]+Be[3]+Be[5])/3,gr[2]=(Be[0]+Be[2]+Be[4])/3+1,gr[3]=(Be[1]+Be[3]+Be[5])/3+1):(gr[2]=(Be[0]+Be[2]+Be[4])/3,gr[3]=(Be[1]+Be[3]+Be[5])/3),y.redrawHint("select",!0),y.redraw();else if(Vn&&G.touches[1]&&!y.touchData.didSelect&&nr.zoomingEnabled()&&nr.panningEnabled()&&nr.userZoomingEnabled()&&nr.userPanningEnabled()){G.preventDefault(),y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var J1=y.dragData.touchDragEles;if(J1){y.redrawHint("drag",!0);for(var E0=0;E00&&!y.hoverData.draggingEles&&!y.swipePanning&&y.data.bgActivePosistion!=null&&(y.data.bgActivePosistion=void 0,y.redrawHint("select",!0),y.redraw())}},!1);var gi;y.registerBinding(p,"touchcancel",gi=function(G){var Vn=y.touchData.start;y.touchData.capture=!1,Vn&&Vn.unactivate()});var ss,na,vi,si;if(y.registerBinding(p,"touchend",ss=function(G){var Vn=y.touchData.start,gr=y.touchData.capture;if(gr)G.touches.length===0&&(y.touchData.capture=!1),G.preventDefault();else return;var nr=y.selection;y.swipePanning=!1,y.hoverData.draggingEles=!1;var Be=y.cy,Ls=Be.zoom(),hr=y.touchData.now,us=y.touchData.earlier;if(G.touches[0]){var Ya=y.projectIntoViewport(G.touches[0].clientX,G.touches[0].clientY);hr[0]=Ya[0],hr[1]=Ya[1]}if(G.touches[1]){var Ya=y.projectIntoViewport(G.touches[1].clientX,G.touches[1].clientY);hr[2]=Ya[0],hr[3]=Ya[1]}if(G.touches[2]){var Ya=y.projectIntoViewport(G.touches[2].clientX,G.touches[2].clientY);hr[4]=Ya[0],hr[5]=Ya[1]}Vn&&Vn.unactivate();var kc;if(y.touchData.cxt){if(kc={originalEvent:G,type:"cxttapend",position:{x:hr[0],y:hr[1]}},Vn?Vn.emit(kc):Be.emit(kc),!y.touchData.cxtDragged){var Ca={originalEvent:G,type:"cxttap",position:{x:hr[0],y:hr[1]}};Vn?Vn.emit(Ca):Be.emit(Ca)}y.touchData.start&&(y.touchData.start._private.grabbed=!1),y.touchData.cxt=!1,y.touchData.start=null,y.redraw();return}if(!G.touches[2]&&Be.boxSelectionEnabled()&&y.touchData.selecting){y.touchData.selecting=!1;var oc=Be.collection(y.getAllInBox(nr[0],nr[1],nr[2],nr[3]));nr[0]=void 0,nr[1]=void 0,nr[2]=void 0,nr[3]=void 0,nr[4]=0,y.redrawHint("select",!0),Be.emit({type:"boxend",originalEvent:G,position:{x:hr[0],y:hr[1]}});var ra=function(_4){return _4.selectable()&&!_4.selected()};oc.emit("box").stdFilter(ra).select().emit("boxselect"),oc.nonempty()&&y.redrawHint("eles",!0),y.redraw()}if(Vn!=null&&Vn.unactivate(),G.touches[2])y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);else if(!G.touches[1]){if(!G.touches[0]){if(!G.touches[0]){y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var no=y.dragData.touchDragEles;if(Vn!=null){var ql=Vn._private.grabbed;St(no),y.redrawHint("drag",!0),y.redrawHint("eles",!0),ql&&(Vn.emit("freeon"),no.emit("free"),y.dragData.didDrag&&(Vn.emit("dragfreeon"),no.emit("dragfree"))),C(Vn,["touchend","tapend","vmouseup","tapdragout"],G,{x:hr[0],y:hr[1]}),Vn.unactivate(),y.touchData.start=null}else{var Sl=y.findNearestElement(hr[0],hr[1],!0,!0);C(Sl,["touchend","tapend","vmouseup","tapdragout"],G,{x:hr[0],y:hr[1]})}var mb=y.touchData.startPosition[0]-hr[0],vb=mb*mb,v1=y.touchData.startPosition[1]-hr[1],up=v1*v1,Bd=vb+up,cm=Bd*Ls*Ls;y.touchData.singleTouchMoved||(Vn||Be.$(":selected").unselect(["tapunselect"]),C(Vn,["tap","vclick"],G,{x:hr[0],y:hr[1]}),na=!1,G.timeStamp-si<=Be.multiClickDebounceTime()?(vi&&clearTimeout(vi),na=!0,si=null,C(Vn,["dbltap","vdblclick"],G,{x:hr[0],y:hr[1]})):(vi=setTimeout(function(){na||C(Vn,["onetap","voneclick"],G,{x:hr[0],y:hr[1]})},Be.multiClickDebounceTime()),si=G.timeStamp)),Vn!=null&&!y.dragData.didDrag&&Vn._private.selectable&&cm"u"){var Qi=[],ks=function(G){return{clientX:G.clientX,clientY:G.clientY,force:1,identifier:G.pointerId,pageX:G.pageX,pageY:G.pageY,radiusX:G.width/2,radiusY:G.height/2,screenX:G.screenX,screenY:G.screenY,target:G.target}},as=function(G){return{event:G,touch:ks(G)}},Es=function(G){Qi.push(as(G))},eo=function(G){for(var Vn=0;Vn0)return Sn[0]}return null},bt=Object.keys(Z),pt=0;pt0?st:$B(O,N,p,x,C,L,j)},checkPoint:function(p,x,C,L,O,N,j){var H=R8(L,O),q=2*H;if(sm(p,x,this.points,N,j,L,O-q,[0,-1],C)||sm(p,x,this.points,N,j,L-q,O,[0,-1],C))return!0;var W=L/2+2*C,Z=O/2+2*C,st=[N-W,j-Z,N-W,j,N+W,j,N+W,j-Z];return!!(y0(p,x,st)||v4(p,x,q,q,N+L/2-H,j+O/2-H,C)||v4(p,x,q,q,N-L/2+H,j+O/2-H,C))}}},om.registerNodeShapes=function(){var y=this.nodeShapes={},p=this;this.generateEllipse(),this.generatePolygon("triangle",Fd(3,0)),this.generateRoundPolygon("round-triangle",Fd(3,0)),this.generatePolygon("rectangle",Fd(4,0)),y.square=y.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var x=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",x),this.generateRoundPolygon("round-diamond",x)}this.generatePolygon("pentagon",Fd(5,0)),this.generateRoundPolygon("round-pentagon",Fd(5,0)),this.generatePolygon("hexagon",Fd(6,0)),this.generateRoundPolygon("round-hexagon",Fd(6,0)),this.generatePolygon("heptagon",Fd(7,0)),this.generateRoundPolygon("round-heptagon",Fd(7,0)),this.generatePolygon("octagon",Fd(8,0)),this.generateRoundPolygon("round-octagon",Fd(8,0));var C=new Array(20);{var L=qD(5,0),O=qD(5,Math.PI/5),N=.5*(3-Math.sqrt(5));N*=1.57;for(var j=0;j=p.deqFastCost*qt)break}else if(q){if(Nt>=p.deqCost*bt||Nt>=p.deqAvgCost*st)break}else if(Pt>=p.deqNoDrawCost*vM)break;var re=p.deq(C,St,_t);if(re.length>0)for(var ee=0;ee0&&(p.onDeqd(C,pt),!q&&p.shouldRedraw(C,pt,St,_t)&&O())},j=p.priority||BD;L.beforeRender(N,j(C))}}}},Ket=function(){function y(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ay;g(this,y),this.idsByKey=new F2,this.keyForId=new F2,this.cachesByLvl=new F2,this.lvls=[],this.getKey=p,this.doesEleInvalidateKey=x}return v(y,[{key:"getIdsFor",value:function(x){x==null&&$l("Can not get id list for null key");var C=this.idsByKey,L=this.idsByKey.get(x);return L||(L=new Wx,C.set(x,L)),L}},{key:"addIdForKey",value:function(x,C){x!=null&&this.getIdsFor(x).add(C)}},{key:"deleteIdForKey",value:function(x,C){x!=null&&this.getIdsFor(x).delete(C)}},{key:"getNumberOfIdsForKey",value:function(x){return x==null?0:this.getIdsFor(x).size}},{key:"updateKeyMappingFor",value:function(x){var C=x.id(),L=this.keyForId.get(C),O=this.getKey(x);this.deleteIdForKey(L,C),this.addIdForKey(O,C),this.keyForId.set(C,O)}},{key:"deleteKeyMappingFor",value:function(x){var C=x.id(),L=this.keyForId.get(C);this.deleteIdForKey(L,C),this.keyForId.delete(C)}},{key:"keyHasChangedFor",value:function(x){var C=x.id(),L=this.keyForId.get(C),O=this.getKey(x);return L!==O}},{key:"isInvalid",value:function(x){return this.keyHasChangedFor(x)||this.doesEleInvalidateKey(x)}},{key:"getCachesAt",value:function(x){var C=this.cachesByLvl,L=this.lvls,O=C.get(x);return O||(O=new F2,C.set(x,O),L.push(x)),O}},{key:"getCache",value:function(x,C){return this.getCachesAt(C).get(x)}},{key:"get",value:function(x,C){var L=this.getKey(x),O=this.getCache(L,C);return O!=null&&this.updateKeyMappingFor(x),O}},{key:"getForCachedKey",value:function(x,C){var L=this.keyForId.get(x.id()),O=this.getCache(L,C);return O}},{key:"hasCache",value:function(x,C){return this.getCachesAt(C).has(x)}},{key:"has",value:function(x,C){var L=this.getKey(x);return this.hasCache(L,C)}},{key:"setCache",value:function(x,C,L){L.key=x,this.getCachesAt(C).set(x,L)}},{key:"set",value:function(x,C,L){var O=this.getKey(x);this.setCache(O,C,L),this.updateKeyMappingFor(x)}},{key:"deleteCache",value:function(x,C){this.getCachesAt(C).delete(x)}},{key:"delete",value:function(x,C){var L=this.getKey(x);this.deleteCache(L,C)}},{key:"invalidateKey",value:function(x){var C=this;this.lvls.forEach(function(L){return C.deleteCache(x,L)})}},{key:"invalidate",value:function(x){var C=x.id(),L=this.keyForId.get(C);this.deleteKeyMappingFor(x);var O=this.doesEleInvalidateKey(x);return O&&this.invalidateKey(L),O||this.getNumberOfIdsForKey(L)===0}}]),y}(),Ij=25,OC=50,NC=-4,yM=3,Wet=7.99,Yet=8,Xet=1024,Qet=1024,Jet=1024,Zet=.2,tnt=.8,ent=10,nnt=.15,rnt=.1,int=.9,snt=.9,ant=100,ont=1,p6={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},cnt=p1({getKey:null,doesEleInvalidateKey:ay,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:b4,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),rE=function(p,x){var C=this;C.renderer=p,C.onDequeues=[];var L=cnt(x);we(C,L),C.lookup=new Ket(L.getKey,L.doesEleInvalidateKey),C.setupDequeueing()},Jh=rE.prototype;Jh.reasons=p6,Jh.getTextureQueue=function(y){var p=this;return p.eleImgCaches=p.eleImgCaches||{},p.eleImgCaches[y]=p.eleImgCaches[y]||[]},Jh.getRetiredTextureQueue=function(y){var p=this,x=p.eleImgCaches.retired=p.eleImgCaches.retired||{},C=x[y]=x[y]||[];return C},Jh.getElementQueue=function(){var y=this,p=y.eleCacheQueue=y.eleCacheQueue||new N8(function(x,C){return C.reqs-x.reqs});return p},Jh.getElementKeyToQueue=function(){var y=this,p=y.eleKeyToCacheQueue=y.eleKeyToCacheQueue||{};return p},Jh.getElement=function(y,p,x,C,L){var O=this,N=this.renderer,j=N.cy.zoom(),H=this.lookup;if(!p||p.w===0||p.h===0||isNaN(p.w)||isNaN(p.h)||!y.visible()||y.removed()||!O.allowEdgeTxrCaching&&y.isEdge()||!O.allowParentTxrCaching&&y.isParent())return null;if(C==null&&(C=Math.ceil(jD(j*x))),C=Wet||C>yM)return null;var q=Math.pow(2,C),W=p.h*q,Z=p.w*q,st=N.eleTextBiggerThanMin(y,q);if(!this.isVisible(y,st))return null;var bt=H.get(y,C);if(bt&&bt.invalidated&&(bt.invalidated=!1,bt.texture.invalidatedWidth-=bt.width),bt)return bt;var pt;if(W<=Ij?pt=Ij:W<=OC?pt=OC:pt=Math.ceil(W/OC)*OC,W>Jet||Z>Qet)return null;var _t=O.getTextureQueue(pt),St=_t[_t.length-2],Et=function(){return O.recycleTexture(pt,Z)||O.addTexture(pt,Z)};St||(St=_t[_t.length-1]),St||(St=Et()),St.width-St.usedWidthC;Te--)Yt=O.getElement(y,p,x,Te,p6.downscale);Ee()}else return O.queueElement(y,ee.level-1),ee;else{var ie;if(!Pt&&!qt&&!re)for(var ze=C-1;ze>=NC;ze--){var me=H.get(y,ze);if(me){ie=me;break}}if(Nt(ie))return O.queueElement(y,C),ie;St.context.translate(St.usedWidth,0),St.context.scale(q,q),this.drawElement(St.context,y,p,st,!1),St.context.scale(1/q,1/q),St.context.translate(-St.usedWidth,0)}return bt={x:St.usedWidth,texture:St,level:C,scale:q,width:Z,height:W,scaledLabelShown:st},St.usedWidth+=Math.ceil(Z+Yet),St.eleCaches.push(bt),H.set(y,C,bt),O.checkTextureFullness(St),bt},Jh.invalidateElements=function(y){for(var p=0;p=Zet*y.width&&this.retireTexture(y)},Jh.checkTextureFullness=function(y){var p=this,x=p.getTextureQueue(y.height);y.usedWidth/y.width>tnt&&y.fullnessChecks>=ent?oy(x,y):y.fullnessChecks++},Jh.retireTexture=function(y){var p=this,x=y.height,C=p.getTextureQueue(x),L=this.lookup;oy(C,y),y.retired=!0;for(var O=y.eleCaches,N=0;N=p)return N.retired=!1,N.usedWidth=0,N.invalidatedWidth=0,N.fullnessChecks=0,G9(N.eleCaches),N.context.setTransform(1,0,0,1,0,0),N.context.clearRect(0,0,N.width,N.height),oy(L,N),C.push(N),N}},Jh.queueElement=function(y,p){var x=this,C=x.getElementQueue(),L=x.getElementKeyToQueue(),O=this.getKey(y),N=L[O];if(N)N.level=Math.max(N.level,p),N.eles.merge(y),N.reqs++,C.updateItem(N);else{var j={eles:y.spawn().merge(y),level:p,reqs:1,key:O};C.push(j),L[O]=j}},Jh.dequeue=function(y){for(var p=this,x=p.getElementQueue(),C=p.getElementKeyToQueue(),L=[],O=p.lookup,N=0;N0;N++){var j=x.pop(),H=j.key,q=j.eles[0],W=O.hasCache(q,j.level);if(C[H]=null,W)continue;L.push(j);var Z=p.getBoundingBox(q);p.getElement(q,Z,y,j.level,p6.dequeue)}return L},Jh.removeFromQueue=function(y){var p=this,x=p.getElementQueue(),C=p.getElementKeyToQueue(),L=this.getKey(y),O=C[L];O!=null&&(O.eles.length===1?(O.reqs=Kx,x.updateItem(O),x.pop(),C[L]=null):O.eles.unmerge(y))},Jh.onDequeue=function(y){this.onDequeues.push(y)},Jh.offDequeue=function(y){oy(this.onDequeues,y)},Jh.setupDequeueing=Mj.setupDequeueing({deqRedrawThreshold:ant,deqCost:nnt,deqAvgCost:rnt,deqNoDrawCost:int,deqFastCost:snt,deq:function(p,x,C){return p.dequeue(x,C)},onDeqd:function(p,x){for(var C=0;C=lnt||x>PC)return null}C.validateLayersElesOrdering(x,y);var H=C.layersByLevel,q=Math.pow(2,x),W=H[x]=H[x]||[],Z,st=C.levelIsComplete(x,y),bt,pt=function(){var Ee=function(yn){if(C.validateLayersElesOrdering(yn,y),C.levelIsComplete(yn,y))return bt=H[yn],!0},Te=function(yn){if(!bt)for(var nn=x+yn;iE<=nn&&nn<=PC&&!Ee(nn);nn+=yn);};Te(1),Te(-1);for(var ie=W.length-1;ie>=0;ie--){var ze=W[ie];ze.invalid&&oy(W,ze)}};if(!st)pt();else return W;var _t=function(){if(!Z){Z=v0();for(var Ee=0;EePj)return null;var ze=C.makeLayer(Z,x);if(Te!=null){var me=W.indexOf(Te)+1;W.splice(me,0,ze)}else(Ee.insert===void 0||Ee.insert)&&W.unshift(ze);return ze};if(C.skipping&&!j)return null;for(var Et=null,Nt=y.length/unt,Pt=!j,qt=0;qt=Nt||!jB(Et.bb,re.boundingBox()))&&(Et=St({insert:!0,after:Et}),!Et))return null;bt||Pt?C.queueLayer(Et,re):C.drawEleInLayer(Et,re,x,p),Et.eles.push(re),Ut[x]=Et}return bt||(Pt?null:W)},Df.getEleLevelForLayerLevel=function(y,p){return y},Df.drawEleInLayer=function(y,p,x,C){var L=this,O=this.renderer,N=y.context,j=p.boundingBox();j.w===0||j.h===0||!p.visible()||(x=L.getEleLevelForLayerLevel(x,C),O.setImgSmoothing(N,!1),O.drawCachedElement(N,p,null,null,x,Fj),O.setImgSmoothing(N,!0))},Df.levelIsComplete=function(y,p){var x=this,C=x.layersByLevel[y];if(!C||C.length===0)return!1;for(var L=0,O=0;O0||N.invalid)return!1;L+=N.eles.length}return L===p.length},Df.validateLayersElesOrdering=function(y,p){var x=this.layersByLevel[y];if(x)for(var C=0;C0){p=!0;break}}return p},Df.invalidateElements=function(y){var p=this;y.length!==0&&(p.lastInvalidationTime=ip(),!(y.length===0||!p.haveLayers())&&p.updateElementsInLayers(y,function(C,L,O){p.invalidateLayer(C)}))},Df.invalidateLayer=function(y){if(this.lastInvalidationTime=ip(),!y.invalid){var p=y.level,x=y.eles,C=this.layersByLevel[p];oy(C,y),y.elesQueue=[],y.invalid=!0,y.replacement&&(y.replacement.invalid=!0);for(var L=0;L3&&arguments[3]!==void 0?arguments[3]:!0,L=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,O=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,N=this,j=p._private.rscratch;if(!(O&&!p.visible())&&!(j.badLine||j.allpts==null||isNaN(j.allpts[0]))){var H;x&&(H=x,y.translate(-H.x1,-H.y1));var q=O?p.pstyle("opacity").value:1,W=O?p.pstyle("line-opacity").value:1,Z=p.pstyle("curve-style").value,st=p.pstyle("line-style").value,bt=p.pstyle("width").pfValue,pt=p.pstyle("line-cap").value,_t=q*W,St=q*W,Et=function(){var ie=arguments.length>0&&arguments[0]!==void 0?arguments[0]:_t;Z==="straight-triangle"?(N.eleStrokeStyle(y,p,ie),N.drawEdgeTrianglePath(p,y,j.allpts)):(y.lineWidth=bt,y.lineCap=pt,N.eleStrokeStyle(y,p,ie),N.drawEdgePath(p,y,j.allpts,st),y.lineCap="butt")},Nt=function(){L&&N.drawEdgeOverlay(y,p)},Pt=function(){L&&N.drawEdgeUnderlay(y,p)},qt=function(){var ie=arguments.length>0&&arguments[0]!==void 0?arguments[0]:St;N.drawArrowheads(y,p,ie)},re=function(){N.drawElementText(y,p,null,C)};y.lineJoin="round";var ee=p.pstyle("ghost").value==="yes";if(ee){var Ut=p.pstyle("ghost-offset-x").pfValue,de=p.pstyle("ghost-offset-y").pfValue,Yt=p.pstyle("ghost-opacity").value,Ee=_t*Yt;y.translate(Ut,de),Et(Ee),qt(Ee),y.translate(-Ut,-de)}Pt(),Et(),qt(),Nt(),re(),x&&y.translate(H.x1,H.y1)}};var Hj=function(p){if(!["overlay","underlay"].includes(p))throw new Error("Invalid state");return function(x,C){if(C.visible()){var L=C.pstyle("".concat(p,"-opacity")).value;if(L!==0){var O=this,N=O.usePaths(),j=C._private.rscratch,H=C.pstyle("".concat(p,"-padding")).pfValue,q=2*H,W=C.pstyle("".concat(p,"-color")).value;x.lineWidth=q,j.edgeType==="self"&&!N?x.lineCap="butt":x.lineCap="round",O.colorStrokeStyle(x,W[0],W[1],W[2],L),O.drawEdgePath(C,x,j.allpts,"solid")}}}};wb.drawEdgeOverlay=Hj("overlay"),wb.drawEdgeUnderlay=Hj("underlay"),wb.drawEdgePath=function(y,p,x,C){var L=y._private.rscratch,O=p,N,j=!1,H=this.usePaths(),q=y.pstyle("line-dash-pattern").pfValue,W=y.pstyle("line-dash-offset").pfValue;if(H){var Z=x.join("$"),st=L.pathCacheKey&&L.pathCacheKey===Z;st?(N=p=L.pathCache,j=!0):(N=p=new Path2D,L.pathCacheKey=Z,L.pathCache=N)}if(O.setLineDash)switch(C){case"dotted":O.setLineDash([1,1]);break;case"dashed":O.setLineDash(q),O.lineDashOffset=W;break;case"solid":O.setLineDash([]);break}if(!j&&!L.badLine)switch(p.beginPath&&p.beginPath(),p.moveTo(x[0],x[1]),L.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var bt=2;bt+35&&arguments[5]!==void 0?arguments[5]:!0,N=this;if(C==null){if(O&&!N.eleTextBiggerThanMin(p))return}else if(C===!1)return;if(p.isNode()){var j=p.pstyle("label");if(!j||!j.value)return;var H=N.getLabelJustification(p);y.textAlign=H,y.textBaseline="bottom"}else{var q=p.element()._private.rscratch.badLine,W=p.pstyle("label"),Z=p.pstyle("source-label"),st=p.pstyle("target-label");if(q||(!W||!W.value)&&(!Z||!Z.value)&&(!st||!st.value))return;y.textAlign="center",y.textBaseline="bottom"}var bt=!x,pt;x&&(pt=x,y.translate(-pt.x1,-pt.y1)),L==null?(N.drawText(y,p,null,bt,O),p.isEdge()&&(N.drawText(y,p,"source",bt,O),N.drawText(y,p,"target",bt,O))):N.drawText(y,p,L,bt,O),x&&y.translate(pt.x1,pt.y1)},S4.getFontCache=function(y){var p;this.fontCaches=this.fontCaches||[];for(var x=0;x2&&arguments[2]!==void 0?arguments[2]:!0,C=p.pstyle("font-style").strValue,L=p.pstyle("font-size").pfValue+"px",O=p.pstyle("font-family").strValue,N=p.pstyle("font-weight").strValue,j=x?p.effectiveOpacity()*p.pstyle("text-opacity").value:1,H=p.pstyle("text-outline-opacity").value*j,q=p.pstyle("color").value,W=p.pstyle("text-outline-color").value;y.font=C+" "+N+" "+L+" "+O,y.lineJoin="round",this.colorFillStyle(y,q[0],q[1],q[2],j),this.colorStrokeStyle(y,W[0],W[1],W[2],H)};function kM(y,p,x,C,L){var O=arguments.length>5&&arguments[5]!==void 0?arguments[5]:5,N=arguments.length>6?arguments[6]:void 0;y.beginPath(),y.moveTo(p+O,x),y.lineTo(p+C-O,x),y.quadraticCurveTo(p+C,x,p+C,x+O),y.lineTo(p+C,x+L-O),y.quadraticCurveTo(p+C,x+L,p+C-O,x+L),y.lineTo(p+O,x+L),y.quadraticCurveTo(p,x+L,p,x+L-O),y.lineTo(p,x+O),y.quadraticCurveTo(p,x,p+O,x),y.closePath(),N?y.stroke():y.fill()}S4.getTextAngle=function(y,p){var x,C=y._private,L=C.rscratch,O=p?p+"-":"",N=y.pstyle(O+"text-rotation"),j=fb(L,"labelAngle",p);return N.strValue==="autorotate"?x=y.isEdge()?j:0:N.strValue==="none"?x=0:x=N.pfValue,x},S4.drawText=function(y,p,x){var C=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,L=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,O=p._private,N=O.rscratch,j=L?p.effectiveOpacity():1;if(!(L&&(j===0||p.pstyle("text-opacity").value===0))){x==="main"&&(x=null);var H=fb(N,"labelX",x),q=fb(N,"labelY",x),W,Z,st=this.getLabelText(p,x);if(st!=null&&st!==""&&!isNaN(H)&&!isNaN(q)){this.setupTextStyle(y,p,L);var bt=x?x+"-":"",pt=fb(N,"labelWidth",x),_t=fb(N,"labelHeight",x),St=p.pstyle(bt+"text-margin-x").pfValue,Et=p.pstyle(bt+"text-margin-y").pfValue,Nt=p.isEdge(),Pt=p.pstyle("text-halign").value,qt=p.pstyle("text-valign").value;Nt&&(Pt="center",qt="center"),H+=St,q+=Et;var re;switch(C?re=this.getTextAngle(p,x):re=0,re!==0&&(W=H,Z=q,y.translate(W,Z),y.rotate(re),H=0,q=0),qt){case"top":break;case"center":q+=_t/2;break;case"bottom":q+=_t;break}var ee=p.pstyle("text-background-opacity").value,Ut=p.pstyle("text-border-opacity").value,de=p.pstyle("text-border-width").pfValue,Yt=p.pstyle("text-background-padding").pfValue,Ee=p.pstyle("text-background-shape").strValue,Te=Ee.indexOf("round")===0,ie=2;if(ee>0||de>0&&Ut>0){var ze=H-Yt;switch(Pt){case"left":ze-=pt;break;case"center":ze-=pt/2;break}var me=q-_t-Yt,yn=pt+2*Yt,nn=_t+2*Yt;if(ee>0){var qe=y.fillStyle,Tn=p.pstyle("text-background-color").value;y.fillStyle="rgba("+Tn[0]+","+Tn[1]+","+Tn[2]+","+ee*j+")",Te?kM(y,ze,me,yn,nn,ie):y.fillRect(ze,me,yn,nn),y.fillStyle=qe}if(de>0&&Ut>0){var Xn=y.strokeStyle,lr=y.lineWidth,Sn=p.pstyle("text-border-color").value,or=p.pstyle("text-border-style").value;if(y.strokeStyle="rgba("+Sn[0]+","+Sn[1]+","+Sn[2]+","+Ut*j+")",y.lineWidth=de,y.setLineDash)switch(or){case"dotted":y.setLineDash([1,1]);break;case"dashed":y.setLineDash([4,2]);break;case"double":y.lineWidth=de/4,y.setLineDash([]);break;case"solid":y.setLineDash([]);break}if(Te?kM(y,ze,me,yn,nn,ie,"stroke"):y.strokeRect(ze,me,yn,nn),or==="double"){var pr=de/2;Te?kM(y,ze+pr,me+pr,yn-pr*2,nn-pr*2,ie,"stroke"):y.strokeRect(ze+pr,me+pr,yn-pr*2,nn-pr*2)}y.setLineDash&&y.setLineDash([]),y.lineWidth=lr,y.strokeStyle=Xn}}var kr=2*p.pstyle("text-outline-width").pfValue;if(kr>0&&(y.lineWidth=kr),p.pstyle("text-wrap").value==="wrap"){var wr=fb(N,"labelWrapCachedLines",x),Cr=fb(N,"labelLineHeight",x),$n=pt/2,cr=this.getLabelJustification(p);switch(cr==="auto"||(Pt==="left"?cr==="left"?H+=-pt:cr==="center"&&(H+=-$n):Pt==="center"?cr==="left"?H+=-$n:cr==="right"&&(H+=$n):Pt==="right"&&(cr==="center"?H+=$n:cr==="right"&&(H+=pt))),qt){case"top":q-=(wr.length-1)*Cr;break;case"center":case"bottom":q-=(wr.length-1)*Cr;break}for(var mr=0;mr0&&y.strokeText(wr[mr],H,q),y.fillText(wr[mr],H,q),q+=Cr}else kr>0&&y.strokeText(st,H,q),y.fillText(st,H,q);re!==0&&(y.rotate(-re),y.translate(-W,-Z))}}};var b6={};b6.drawNode=function(y,p,x){var C=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,L=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,O=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,N=this,j,H,q=p._private,W=q.rscratch,Z=p.position();if(!(!Q(Z.x)||!Q(Z.y))&&!(O&&!p.visible())){var st=O?p.effectiveOpacity():1,bt=N.usePaths(),pt,_t=!1,St=p.padding();j=p.width()+2*St,H=p.height()+2*St;var Et;x&&(Et=x,y.translate(-Et.x1,-Et.y1));for(var Nt=p.pstyle("background-image"),Pt=Nt.value,qt=new Array(Pt.length),re=new Array(Pt.length),ee=0,Ut=0;Ut0&&arguments[0]!==void 0?arguments[0]:ze;N.eleFillStyle(y,p,Kn)},pr=function(){var Kn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:nn;N.colorStrokeStyle(y,me[0],me[1],me[2],Kn)},kr=function(){var Kn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:lr;N.colorStrokeStyle(y,Tn[0],Tn[1],Tn[2],Kn)},wr=function(Kn,G,Vn,gr){var nr=N.nodePathCache=N.nodePathCache||[],Be=Pd(Vn==="polygon"?Vn+","+gr.join(","):Vn,""+G,""+Kn),Ls=nr[Be],hr,us=!1;return Ls!=null?(hr=Ls,us=!0,W.pathCache=hr):(hr=new Path2D,nr[Be]=W.pathCache=hr),{path:hr,cacheHit:us}},Cr=p.pstyle("shape").strValue,$n=p.pstyle("shape-polygon-points").pfValue;if(bt){y.translate(Z.x,Z.y);var cr=wr(j,H,Cr,$n);pt=cr.path,_t=cr.cacheHit}var mr=function(){if(!_t){var Kn=Z;bt&&(Kn={x:0,y:0}),N.nodeShapes[N.getNodeShape(p)].draw(pt||y,Kn.x,Kn.y,j,H)}bt?y.fill(pt):y.fill()},Sr=function(){for(var Kn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:st,G=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,Vn=q.backgrounding,gr=0,nr=0;nr0&&arguments[0]!==void 0?arguments[0]:!1,G=arguments.length>1&&arguments[1]!==void 0?arguments[1]:st;N.hasPie(p)&&(N.drawPie(y,p,G),Kn&&(bt||N.nodeShapes[N.getNodeShape(p)].draw(y,Z.x,Z.y,j,H)))},ss=function(){var Kn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:st,G=(Te>0?Te:-Te)*Kn,Vn=Te>0?0:255;Te!==0&&(N.colorFillStyle(y,Vn,Vn,Vn,G),bt?y.fill(pt):y.fill())},na=function(){if(ie>0){if(y.lineWidth=ie,y.lineCap="butt",y.setLineDash)switch(yn){case"dotted":y.setLineDash([1,1]);break;case"dashed":y.setLineDash([4,2]);break;case"solid":case"double":y.setLineDash([]);break}if(bt?y.stroke(pt):y.stroke(),yn==="double"){y.lineWidth=ie/3;var Kn=y.globalCompositeOperation;y.globalCompositeOperation="destination-out",bt?y.stroke(pt):y.stroke(),y.globalCompositeOperation=Kn}y.setLineDash&&y.setLineDash([])}},vi=function(){if(qe>0){if(y.lineWidth=qe,y.lineCap="butt",y.setLineDash)switch(Xn){case"dotted":y.setLineDash([1,1]);break;case"dashed":y.setLineDash([4,2]);break;case"solid":case"double":y.setLineDash([]);break}var Kn=Z;bt&&(Kn={x:0,y:0});var G=N.getNodeShape(p),Vn=(j+ie+(qe+Sn))/j,gr=(H+ie+(qe+Sn))/H,nr=j*Vn,Be=H*gr,Ls=N.nodeShapes[G].points,hr;if(bt){var us=wr(nr,Be,G,Ls);hr=us.path}if(G==="ellipse")N.drawEllipsePath(hr||y,Kn.x,Kn.y,nr,Be);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(G)){var Ya=0,kc=0,Ca=0;G==="round-diamond"?Ya=(ie+Sn+qe)*1.4:G==="round-heptagon"?(Ya=(ie+Sn+qe)*1.075,Ca=-(ie/2+Sn+qe)/35):G==="round-hexagon"?Ya=(ie+Sn+qe)*1.12:G==="round-pentagon"?(Ya=(ie+Sn+qe)*1.13,Ca=-(ie/2+Sn+qe)/15):G==="round-tag"?(Ya=(ie+Sn+qe)*1.12,kc=(ie/2+qe+Sn)*.07):G==="round-triangle"&&(Ya=(ie+Sn+qe)*(Math.PI/2),Ca=-(ie+Sn/2+qe)/Math.PI),Ya!==0&&(Vn=(j+Ya)/j,gr=(H+Ya)/H),N.drawRoundPolygonPath(hr||y,Kn.x+kc,Kn.y+Ca,j*Vn,H*gr,Ls)}else if(["roundrectangle","round-rectangle"].includes(G))N.drawRoundRectanglePath(hr||y,Kn.x,Kn.y,nr,Be);else if(["cutrectangle","cut-rectangle"].includes(G))N.drawCutRectanglePath(hr||y,Kn.x,Kn.y,nr,Be);else if(["bottomroundrectangle","bottom-round-rectangle"].includes(G))N.drawBottomRoundRectanglePath(hr||y,Kn.x,Kn.y,nr,Be);else if(G==="barrel")N.drawBarrelPath(hr||y,Kn.x,Kn.y,nr,Be);else if(G.startsWith("polygon")||["rhomboid","right-rhomboid","round-tag","tag","vee"].includes(G)){var oc=(ie+qe+Sn)/j;Ls=J9(Z9(Ls,oc)),N.drawPolygonPath(hr||y,Kn.x,Kn.y,j,H,Ls)}else{var ra=(ie+qe+Sn)/j;Ls=J9(Z9(Ls,-ra)),N.drawPolygonPath(hr||y,Kn.x,Kn.y,j,H,Ls)}if(bt?y.stroke(hr):y.stroke(),Xn==="double"){y.lineWidth=ie/3;var no=y.globalCompositeOperation;y.globalCompositeOperation="destination-out",bt?y.stroke(hr):y.stroke(),y.globalCompositeOperation=no}y.setLineDash&&y.setLineDash([])}},si=function(){L&&N.drawNodeOverlay(y,p,Z,j,H)},Qi=function(){L&&N.drawNodeUnderlay(y,p,Z,j,H)},ks=function(){N.drawElementText(y,p,null,C)},as=p.pstyle("ghost").value==="yes";if(as){var Es=p.pstyle("ghost-offset-x").pfValue,eo=p.pstyle("ghost-offset-y").pfValue,Ta=p.pstyle("ghost-opacity").value,pa=Ta*st;y.translate(Es,eo),kr(),vi(),or(Ta*ze),mr(),Sr(pa,!0),pr(Ta*nn),na(),gi(Te!==0||ie!==0),Sr(pa,!1),ss(pa),y.translate(-Es,-eo)}bt&&y.translate(-Z.x,-Z.y),Qi(),bt&&y.translate(Z.x,Z.y),kr(),vi(),or(),mr(),Sr(st,!0),pr(),na(),gi(Te!==0||ie!==0),Sr(st,!1),ss(),bt&&y.translate(-Z.x,-Z.y),ks(),si(),x&&y.translate(Et.x1,Et.y1)}};var EM=function(p){if(!["overlay","underlay"].includes(p))throw new Error("Invalid state");return function(x,C,L,O,N){var j=this;if(C.visible()){var H=C.pstyle("".concat(p,"-padding")).pfValue,q=C.pstyle("".concat(p,"-opacity")).value,W=C.pstyle("".concat(p,"-color")).value,Z=C.pstyle("".concat(p,"-shape")).value;if(q>0){if(L=L||C.position(),O==null||N==null){var st=C.padding();O=C.width()+2*st,N=C.height()+2*st}j.colorFillStyle(x,W[0],W[1],W[2],q),j.nodeShapes[Z].draw(x,L.x,L.y,O+H*2,N+H*2),x.fill()}}}};b6.drawNodeOverlay=EM("overlay"),b6.drawNodeUnderlay=EM("underlay"),b6.hasPie=function(y){return y=y[0],y._private.hasPie},b6.drawPie=function(y,p,x,C){p=p[0],C=C||p.position();var L=p.cy().style(),O=p.pstyle("pie-size"),N=C.x,j=C.y,H=p.width(),q=p.height(),W=Math.min(H,q)/2,Z=0,st=this.usePaths();st&&(N=0,j=0),O.units==="%"?W=W*O.pfValue:O.pfValue!==void 0&&(W=O.pfValue/2);for(var bt=1;bt<=L.pieBackgroundN;bt++){var pt=p.pstyle("pie-"+bt+"-background-size").value,_t=p.pstyle("pie-"+bt+"-background-color").value,St=p.pstyle("pie-"+bt+"-background-opacity").value*x,Et=pt/100;Et+Z>1&&(Et=1-Z);var Nt=1.5*Math.PI+2*Math.PI*Z,Pt=2*Math.PI*Et,qt=Nt+Pt;pt===0||Z>=1||Z+Et>1||(y.beginPath(),y.moveTo(N,j),y.arc(N,j,W,Nt,qt),y.closePath(),this.colorFillStyle(y,_t[0],_t[1],_t[2],St),y.fill(),Z+=Et)}};var dg={},Ent=100;dg.getPixelRatio=function(){var y=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var p=y.backingStorePixelRatio||y.webkitBackingStorePixelRatio||y.mozBackingStorePixelRatio||y.msBackingStorePixelRatio||y.oBackingStorePixelRatio||y.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/p},dg.paintCache=function(y){for(var p=this.paintCaches=this.paintCaches||[],x=!0,C,L=0;LN.minMbLowQualFrames&&(N.motionBlurPxRatio=N.mbPxRBlurry)),N.clearingMotionBlur&&(N.motionBlurPxRatio=1),N.textureDrawLastFrame&&!Z&&(W[N.NODE]=!0,W[N.SELECT_BOX]=!0);var Nt=H.style(),Pt=H.zoom(),qt=L!==void 0?L:Pt,re=H.pan(),ee={x:re.x,y:re.y},Ut={zoom:Pt,pan:{x:re.x,y:re.y}},de=N.prevViewport,Yt=de===void 0||Ut.zoom!==de.zoom||Ut.pan.x!==de.pan.x||Ut.pan.y!==de.pan.y;!Yt&&!(_t&&!pt)&&(N.motionBlurPxRatio=1),O&&(ee=O),qt*=j,ee.x*=j,ee.y*=j;var Ee=N.getCachedZSortedEles();function Te(vi,si,Qi,ks,as){var Es=vi.globalCompositeOperation;vi.globalCompositeOperation="destination-out",N.colorFillStyle(vi,255,255,255,N.motionBlurTransparency),vi.fillRect(si,Qi,ks,as),vi.globalCompositeOperation=Es}function ie(vi,si){var Qi,ks,as,Es;!N.clearingMotionBlur&&(vi===q.bufferContexts[N.MOTIONBLUR_BUFFER_NODE]||vi===q.bufferContexts[N.MOTIONBLUR_BUFFER_DRAG])?(Qi={x:re.x*bt,y:re.y*bt},ks=Pt*bt,as=N.canvasWidth*bt,Es=N.canvasHeight*bt):(Qi=ee,ks=qt,as=N.canvasWidth,Es=N.canvasHeight),vi.setTransform(1,0,0,1,0,0),si==="motionBlur"?Te(vi,0,0,as,Es):!p&&(si===void 0||si)&&vi.clearRect(0,0,as,Es),x||(vi.translate(Qi.x,Qi.y),vi.scale(ks,ks)),O&&vi.translate(O.x,O.y),L&&vi.scale(L,L)}if(Z||(N.textureDrawLastFrame=!1),Z){if(N.textureDrawLastFrame=!0,!N.textureCache){N.textureCache={},N.textureCache.bb=H.mutableElements().boundingBox(),N.textureCache.texture=N.data.bufferCanvases[N.TEXTURE_BUFFER];var ze=N.data.bufferContexts[N.TEXTURE_BUFFER];ze.setTransform(1,0,0,1,0,0),ze.clearRect(0,0,N.canvasWidth*N.textureMult,N.canvasHeight*N.textureMult),N.render({forcedContext:ze,drawOnlyNodeLayer:!0,forcedPxRatio:j*N.textureMult});var Ut=N.textureCache.viewport={zoom:H.zoom(),pan:H.pan(),width:N.canvasWidth,height:N.canvasHeight};Ut.mpan={x:(0-Ut.pan.x)/Ut.zoom,y:(0-Ut.pan.y)/Ut.zoom}}W[N.DRAG]=!1,W[N.NODE]=!1;var me=q.contexts[N.NODE],yn=N.textureCache.texture,Ut=N.textureCache.viewport;me.setTransform(1,0,0,1,0,0),st?Te(me,0,0,Ut.width,Ut.height):me.clearRect(0,0,Ut.width,Ut.height);var nn=Nt.core("outside-texture-bg-color").value,qe=Nt.core("outside-texture-bg-opacity").value;N.colorFillStyle(me,nn[0],nn[1],nn[2],qe),me.fillRect(0,0,Ut.width,Ut.height);var Pt=H.zoom();ie(me,!1),me.clearRect(Ut.mpan.x,Ut.mpan.y,Ut.width/Ut.zoom/j,Ut.height/Ut.zoom/j),me.drawImage(yn,Ut.mpan.x,Ut.mpan.y,Ut.width/Ut.zoom/j,Ut.height/Ut.zoom/j)}else N.textureOnViewport&&!p&&(N.textureCache=null);var Tn=H.extent(),Xn=N.pinching||N.hoverData.dragging||N.swipePanning||N.data.wheelZooming||N.hoverData.draggingEles||N.cy.animated(),lr=N.hideEdgesOnViewport&&Xn,Sn=[];if(Sn[N.NODE]=!W[N.NODE]&&st&&!N.clearedForMotionBlur[N.NODE]||N.clearingMotionBlur,Sn[N.NODE]&&(N.clearedForMotionBlur[N.NODE]=!0),Sn[N.DRAG]=!W[N.DRAG]&&st&&!N.clearedForMotionBlur[N.DRAG]||N.clearingMotionBlur,Sn[N.DRAG]&&(N.clearedForMotionBlur[N.DRAG]=!0),W[N.NODE]||x||C||Sn[N.NODE]){var or=st&&!Sn[N.NODE]&&bt!==1,me=p||(or?N.data.bufferContexts[N.MOTIONBLUR_BUFFER_NODE]:q.contexts[N.NODE]),pr=st&&!or?"motionBlur":void 0;ie(me,pr),lr?N.drawCachedNodes(me,Ee.nondrag,j,Tn):N.drawLayeredElements(me,Ee.nondrag,j,Tn),N.debug&&N.drawDebugPoints(me,Ee.nondrag),!x&&!st&&(W[N.NODE]=!1)}if(!C&&(W[N.DRAG]||x||Sn[N.DRAG])){var or=st&&!Sn[N.DRAG]&&bt!==1,me=p||(or?N.data.bufferContexts[N.MOTIONBLUR_BUFFER_DRAG]:q.contexts[N.DRAG]);ie(me,st&&!or?"motionBlur":void 0),lr?N.drawCachedNodes(me,Ee.drag,j,Tn):N.drawCachedElements(me,Ee.drag,j,Tn),N.debug&&N.drawDebugPoints(me,Ee.drag),!x&&!st&&(W[N.DRAG]=!1)}if(N.showFps||!C&&W[N.SELECT_BOX]&&!x){var me=p||q.contexts[N.SELECT_BOX];if(ie(me),N.selection[4]==1&&(N.hoverData.selecting||N.touchData.selecting)){var Pt=N.cy.zoom(),kr=Nt.core("selection-box-border-width").value/Pt;me.lineWidth=kr,me.fillStyle="rgba("+Nt.core("selection-box-color").value[0]+","+Nt.core("selection-box-color").value[1]+","+Nt.core("selection-box-color").value[2]+","+Nt.core("selection-box-opacity").value+")",me.fillRect(N.selection[0],N.selection[1],N.selection[2]-N.selection[0],N.selection[3]-N.selection[1]),kr>0&&(me.strokeStyle="rgba("+Nt.core("selection-box-border-color").value[0]+","+Nt.core("selection-box-border-color").value[1]+","+Nt.core("selection-box-border-color").value[2]+","+Nt.core("selection-box-opacity").value+")",me.strokeRect(N.selection[0],N.selection[1],N.selection[2]-N.selection[0],N.selection[3]-N.selection[1]))}if(q.bgActivePosistion&&!N.hoverData.selecting){var Pt=N.cy.zoom(),wr=q.bgActivePosistion;me.fillStyle="rgba("+Nt.core("active-bg-color").value[0]+","+Nt.core("active-bg-color").value[1]+","+Nt.core("active-bg-color").value[2]+","+Nt.core("active-bg-opacity").value+")",me.beginPath(),me.arc(wr.x,wr.y,Nt.core("active-bg-size").pfValue/Pt,0,2*Math.PI),me.fill()}var Cr=N.lastRedrawTime;if(N.showFps&&Cr){Cr=Math.round(Cr);var $n=Math.round(1e3/Cr);me.setTransform(1,0,0,1,0,0),me.fillStyle="rgba(255, 0, 0, 0.75)",me.strokeStyle="rgba(255, 0, 0, 0.75)",me.lineWidth=1,me.fillText("1 frame = "+Cr+" ms = "+$n+" fps",0,20);var cr=60;me.strokeRect(0,30,250,20),me.fillRect(0,30,250*Math.min($n/cr,1),20)}x||(W[N.SELECT_BOX]=!1)}if(st&&bt!==1){var mr=q.contexts[N.NODE],Sr=N.data.bufferCanvases[N.MOTIONBLUR_BUFFER_NODE],gi=q.contexts[N.DRAG],ss=N.data.bufferCanvases[N.MOTIONBLUR_BUFFER_DRAG],na=function(si,Qi,ks){si.setTransform(1,0,0,1,0,0),ks||!Et?si.clearRect(0,0,N.canvasWidth,N.canvasHeight):Te(si,0,0,N.canvasWidth,N.canvasHeight);var as=bt;si.drawImage(Qi,0,0,N.canvasWidth*as,N.canvasHeight*as,0,0,N.canvasWidth,N.canvasHeight)};(W[N.NODE]||Sn[N.NODE])&&(na(mr,Sr,Sn[N.NODE]),W[N.NODE]=!1),(W[N.DRAG]||Sn[N.DRAG])&&(na(gi,ss,Sn[N.DRAG]),W[N.DRAG]=!1)}N.prevViewport=Ut,N.clearingMotionBlur&&(N.clearingMotionBlur=!1,N.motionBlurCleared=!0,N.motionBlur=!0),st&&(N.motionBlurTimeout=setTimeout(function(){N.motionBlurTimeout=null,N.clearedForMotionBlur[N.NODE]=!1,N.clearedForMotionBlur[N.DRAG]=!1,N.motionBlur=!1,N.clearingMotionBlur=!Z,N.mbFrames=0,W[N.NODE]=!0,W[N.DRAG]=!0,N.redraw()},Ent)),p||H.emit("render")};var gy={};gy.drawPolygonPath=function(y,p,x,C,L,O){var N=C/2,j=L/2;y.beginPath&&y.beginPath(),y.moveTo(p+N*O[0],x+j*O[1]);for(var H=1;H0&&N>0){bt.clearRect(0,0,O,N),bt.globalCompositeOperation="source-over";var pt=this.getCachedZSortedEles();if(y.full)bt.translate(-C.x1*q,-C.y1*q),bt.scale(q,q),this.drawElements(bt,pt),bt.scale(1/q,1/q),bt.translate(C.x1*q,C.y1*q);else{var _t=p.pan(),St={x:_t.x*q,y:_t.y*q};q*=p.zoom(),bt.translate(St.x,St.y),bt.scale(q,q),this.drawElements(bt,pt),bt.scale(1/q,1/q),bt.translate(-St.x,-St.y)}y.bg&&(bt.globalCompositeOperation="destination-over",bt.fillStyle=y.bg,bt.rect(0,0,O,N),bt.fill())}return st};function Tnt(y,p){for(var x=atob(y),C=new ArrayBuffer(x.length),L=new Uint8Array(C),O=0;O"u"?"undefined":f(OffscreenCanvas))!=="undefined"?x=new OffscreenCanvas(y,p):(x=document.createElement("canvas"),x.width=y,x.height=p),x},[jj,bb,wb,aE,S4,b6,dg,gy,oE,Yj].forEach(function(y){we(xc,y)});var cp=[{name:"null",impl:mj},{name:"base",impl:Dj},{name:"canvas",impl:Xj}],Cnt=[{type:"layout",extensions:Vet},{type:"renderer",extensions:cp}],Snt={},_nt={};function Ant(y,p,x){var C=x,L=function(de){Gc("Can not register `"+p+"` for `"+y+"` since `"+de+"` already exists in the prototype and can not be overridden")};if(y==="core"){if(tE.prototype[p])return L(p);tE.prototype[p]=x}else if(y==="collection"){if(w1.prototype[p])return L(p);w1.prototype[p]=x}else if(y==="layout"){for(var O=function(de){this.options=de,x.call(this,de),it(this._private)||(this._private={}),this._private.cy=de.cy,this._private.listeners=[],this.createEmitter()},N=O.prototype=Object.create(x.prototype),j=[],H=0;Hz&&(this.rect.x-=(this.labelWidth-z)/2,this.setWidth(this.labelWidth)),this.labelHeight>Y&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-Y)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-Y),this.setHeight(this.labelHeight))}}},F.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==b.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},F.prototype.transform=function(B){var z=this.rect.x;z>S.WORLD_BOUNDARY?z=S.WORLD_BOUNDARY:z<-S.WORLD_BOUNDARY&&(z=-S.WORLD_BOUNDARY);var Y=this.rect.y;Y>S.WORLD_BOUNDARY?Y=S.WORLD_BOUNDARY:Y<-S.WORLD_BOUNDARY&&(Y=-S.WORLD_BOUNDARY);var nt=new M(z,Y),ot=B.inverseTransformPoint(nt);this.setLocation(ot.x,ot.y)},F.prototype.getLeft=function(){return this.rect.x},F.prototype.getRight=function(){return this.rect.x+this.rect.width},F.prototype.getTop=function(){return this.rect.y},F.prototype.getBottom=function(){return this.rect.y+this.rect.height},F.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},f.exports=F},function(f,g,w){function v(b,E){b==null&&E==null?(this.x=0,this.y=0):(this.x=b,this.y=E)}v.prototype.getX=function(){return this.x},v.prototype.getY=function(){return this.y},v.prototype.setX=function(b){this.x=b},v.prototype.setY=function(b){this.y=b},v.prototype.getDifference=function(b){return new DimensionD(this.x-b.x,this.y-b.y)},v.prototype.getCopy=function(){return new v(this.x,this.y)},v.prototype.translate=function(b){return this.x+=b.width,this.y+=b.height,this},f.exports=v},function(f,g,w){var v=w(2),b=w(10),E=w(0),S=w(6),_=w(3),M=w(1),F=w(13),R=w(12),B=w(11);function z(nt,ot,ft){v.call(this,ft),this.estimatedSize=b.MIN_VALUE,this.margin=E.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=nt,ot!=null&&ot instanceof S?this.graphManager=ot:ot!=null&&ot instanceof Layout&&(this.graphManager=ot.graphManager)}z.prototype=Object.create(v.prototype);for(var Y in v)z[Y]=v[Y];z.prototype.getNodes=function(){return this.nodes},z.prototype.getEdges=function(){return this.edges},z.prototype.getGraphManager=function(){return this.graphManager},z.prototype.getParent=function(){return this.parent},z.prototype.getLeft=function(){return this.left},z.prototype.getRight=function(){return this.right},z.prototype.getTop=function(){return this.top},z.prototype.getBottom=function(){return this.bottom},z.prototype.isConnected=function(){return this.isConnected},z.prototype.add=function(nt,ot,ft){if(ot==null&&ft==null){var wt=nt;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(wt)>-1)throw"Node already in graph!";return wt.owner=this,this.getNodes().push(wt),wt}else{var mt=nt;if(!(this.getNodes().indexOf(ot)>-1&&this.getNodes().indexOf(ft)>-1))throw"Source or target not in graph!";if(!(ot.owner==ft.owner&&ot.owner==this))throw"Both owners must be this graph!";return ot.owner!=ft.owner?null:(mt.source=ot,mt.target=ft,mt.isInterGraph=!1,this.getEdges().push(mt),ot.edges.push(mt),ft!=ot&&ft.edges.push(mt),mt)}},z.prototype.remove=function(nt){var ot=nt;if(nt instanceof _){if(ot==null)throw"Node is null!";if(!(ot.owner!=null&&ot.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var ft=ot.edges.slice(),wt,mt=ft.length,ct=0;ct-1&>>-1))throw"Source and/or target doesn't know this edge!";wt.source.edges.splice(it,1),wt.target!=wt.source&&wt.target.edges.splice(gt,1);var rt=wt.source.owner.getEdges().indexOf(wt);if(rt==-1)throw"Not in owner's edge list!";wt.source.owner.getEdges().splice(rt,1)}},z.prototype.updateLeftTop=function(){for(var nt=b.MAX_VALUE,ot=b.MAX_VALUE,ft,wt,mt,ct=this.getNodes(),rt=ct.length,it=0;itft&&(nt=ft),ot>wt&&(ot=wt)}return nt==b.MAX_VALUE?null:(ct[0].getParent().paddingLeft!=null?mt=ct[0].getParent().paddingLeft:mt=this.margin,this.left=ot-mt,this.top=nt-mt,new R(this.left,this.top))},z.prototype.updateBounds=function(nt){for(var ot=b.MAX_VALUE,ft=-b.MAX_VALUE,wt=b.MAX_VALUE,mt=-b.MAX_VALUE,ct,rt,it,gt,Q,dt=this.nodes,K=dt.length,yt=0;ytct&&(ot=ct),ftit&&(wt=it),mtct&&(ot=ct),ftit&&(wt=it),mt=this.nodes.length){var K=0;ft.forEach(function(yt){yt.owner==nt&&K++}),K==this.nodes.length&&(this.isConnected=!0)}},f.exports=z},function(f,g,w){var v,b=w(1);function E(S){v=w(5),this.layout=S,this.graphs=[],this.edges=[]}E.prototype.addRoot=function(){var S=this.layout.newGraph(),_=this.layout.newNode(null),M=this.add(S,_);return this.setRootGraph(M),this.rootGraph},E.prototype.add=function(S,_,M,F,R){if(M==null&&F==null&&R==null){if(S==null)throw"Graph is null!";if(_==null)throw"Parent node is null!";if(this.graphs.indexOf(S)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(S),S.parent!=null)throw"Already has a parent!";if(_.child!=null)throw"Already has a child!";return S.parent=_,_.child=S,S}else{R=M,F=_,M=S;var B=F.getOwner(),z=R.getOwner();if(!(B!=null&&B.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(z!=null&&z.getGraphManager()==this))throw"Target not in this graph mgr!";if(B==z)return M.isInterGraph=!1,B.add(M,F,R);if(M.isInterGraph=!0,M.source=F,M.target=R,this.edges.indexOf(M)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(M),!(M.source!=null&&M.target!=null))throw"Edge source and/or target is null!";if(!(M.source.edges.indexOf(M)==-1&&M.target.edges.indexOf(M)==-1))throw"Edge already in source and/or target incidency list!";return M.source.edges.push(M),M.target.edges.push(M),M}},E.prototype.remove=function(S){if(S instanceof v){var _=S;if(_.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(_==this.rootGraph||_.parent!=null&&_.parent.graphManager==this))throw"Invalid parent node!";var M=[];M=M.concat(_.getEdges());for(var F,R=M.length,B=0;B=S.getRight()?_[0]+=Math.min(S.getX()-E.getX(),E.getRight()-S.getRight()):S.getX()<=E.getX()&&S.getRight()>=E.getRight()&&(_[0]+=Math.min(E.getX()-S.getX(),S.getRight()-E.getRight())),E.getY()<=S.getY()&&E.getBottom()>=S.getBottom()?_[1]+=Math.min(S.getY()-E.getY(),E.getBottom()-S.getBottom()):S.getY()<=E.getY()&&S.getBottom()>=E.getBottom()&&(_[1]+=Math.min(E.getY()-S.getY(),S.getBottom()-E.getBottom()));var R=Math.abs((S.getCenterY()-E.getCenterY())/(S.getCenterX()-E.getCenterX()));S.getCenterY()===E.getCenterY()&&S.getCenterX()===E.getCenterX()&&(R=1);var B=R*_[0],z=_[1]/R;_[0]B)return _[0]=M,_[1]=Y,_[2]=R,_[3]=dt,!1;if(FR)return _[0]=z,_[1]=F,_[2]=gt,_[3]=B,!1;if(MR?(_[0]=ot,_[1]=ft,Ot=!0):(_[0]=nt,_[1]=Y,Ot=!0):jt===Ft&&(M>R?(_[0]=z,_[1]=Y,Ot=!0):(_[0]=wt,_[1]=ft,Ot=!0)),-xt===Ft?R>M?(_[2]=Q,_[3]=dt,It=!0):(_[2]=gt,_[3]=it,It=!0):xt===Ft&&(R>M?(_[2]=rt,_[3]=it,It=!0):(_[2]=K,_[3]=dt,It=!0)),Ot&&It)return!1;if(M>R?F>B?(Ct=this.getCardinalDirection(jt,Ft,4),kt=this.getCardinalDirection(xt,Ft,2)):(Ct=this.getCardinalDirection(-jt,Ft,3),kt=this.getCardinalDirection(-xt,Ft,1)):F>B?(Ct=this.getCardinalDirection(-jt,Ft,1),kt=this.getCardinalDirection(-xt,Ft,3)):(Ct=this.getCardinalDirection(jt,Ft,2),kt=this.getCardinalDirection(xt,Ft,4)),!Ot)switch(Ct){case 1:Fe=Y,Gt=M+-ct/Ft,_[0]=Gt,_[1]=Fe;break;case 2:Gt=wt,Fe=F+mt*Ft,_[0]=Gt,_[1]=Fe;break;case 3:Fe=ft,Gt=M+ct/Ft,_[0]=Gt,_[1]=Fe;break;case 4:Gt=ot,Fe=F+-mt*Ft,_[0]=Gt,_[1]=Fe;break}if(!It)switch(kt){case 1:pn=it,Mt=R+-V/Ft,_[2]=Mt,_[3]=pn;break;case 2:Mt=K,pn=B+yt*Ft,_[2]=Mt,_[3]=pn;break;case 3:pn=dt,Mt=R+V/Ft,_[2]=Mt,_[3]=pn;break;case 4:Mt=Q,pn=B+-yt*Ft,_[2]=Mt,_[3]=pn;break}}return!1},b.getCardinalDirection=function(E,S,_){return E>S?_:1+_%4},b.getIntersection=function(E,S,_,M){if(M==null)return this.getIntersection2(E,S,_);var F=E.x,R=E.y,B=S.x,z=S.y,Y=_.x,nt=_.y,ot=M.x,ft=M.y,wt=void 0,mt=void 0,ct=void 0,rt=void 0,it=void 0,gt=void 0,Q=void 0,dt=void 0,K=void 0;return ct=z-R,it=F-B,Q=B*R-F*z,rt=ft-nt,gt=Y-ot,dt=ot*nt-Y*ft,K=ct*gt-rt*it,K===0?null:(wt=(it*dt-gt*Q)/K,mt=(rt*Q-ct*dt)/K,new v(wt,mt))},b.angleOfVector=function(E,S,_,M){var F=void 0;return E!==_?(F=Math.atan((M-S)/(_-E)),_0?1:b<0?-1:0},v.floor=function(b){return b<0?Math.ceil(b):Math.floor(b)},v.ceil=function(b){return b<0?Math.floor(b):Math.ceil(b)},f.exports=v},function(f,g,w){function v(){}v.MAX_VALUE=2147483647,v.MIN_VALUE=-2147483648,f.exports=v},function(f,g,w){var v=function(){function F(R,B){for(var z=0;z"u"?"undefined":v(E);return E==null||S!="object"&&S!="function"},f.exports=b},function(f,g,w){function v(Y){if(Array.isArray(Y)){for(var nt=0,ot=Array(Y.length);nt0&&nt;){for(ct.push(it[0]);ct.length>0&&nt;){var gt=ct[0];ct.splice(0,1),mt.add(gt);for(var Q=gt.getEdges(),wt=0;wt-1&&it.splice(V,1)}mt=new Set,rt=new Map}}return Y},z.prototype.createDummyNodesForBendpoints=function(Y){for(var nt=[],ot=Y.source,ft=this.graphManager.calcLowestCommonAncestor(Y.source,Y.target),wt=0;wt0){for(var ft=this.edgeToDummyNodes.get(ot),wt=0;wt=0&&nt.splice(dt,1);var K=rt.getNeighborsList();K.forEach(function(Ot){if(ot.indexOf(Ot)<0){var It=ft.get(Ot),jt=It-1;jt==1&>.push(Ot),ft.set(Ot,jt)}})}ot=ot.concat(gt),(nt.length==1||nt.length==2)&&(wt=!0,mt=nt[0])}return mt},z.prototype.setGraphManager=function(Y){this.graphManager=Y},f.exports=z},function(f,g,w){function v(){}v.seed=1,v.x=0,v.nextDouble=function(){return v.x=Math.sin(v.seed++)*1e4,v.x-Math.floor(v.x)},f.exports=v},function(f,g,w){var v=w(4);function b(E,S){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}b.prototype.getWorldOrgX=function(){return this.lworldOrgX},b.prototype.setWorldOrgX=function(E){this.lworldOrgX=E},b.prototype.getWorldOrgY=function(){return this.lworldOrgY},b.prototype.setWorldOrgY=function(E){this.lworldOrgY=E},b.prototype.getWorldExtX=function(){return this.lworldExtX},b.prototype.setWorldExtX=function(E){this.lworldExtX=E},b.prototype.getWorldExtY=function(){return this.lworldExtY},b.prototype.setWorldExtY=function(E){this.lworldExtY=E},b.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},b.prototype.setDeviceOrgX=function(E){this.ldeviceOrgX=E},b.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},b.prototype.setDeviceOrgY=function(E){this.ldeviceOrgY=E},b.prototype.getDeviceExtX=function(){return this.ldeviceExtX},b.prototype.setDeviceExtX=function(E){this.ldeviceExtX=E},b.prototype.getDeviceExtY=function(){return this.ldeviceExtY},b.prototype.setDeviceExtY=function(E){this.ldeviceExtY=E},b.prototype.transformX=function(E){var S=0,_=this.lworldExtX;return _!=0&&(S=this.ldeviceOrgX+(E-this.lworldOrgX)*this.ldeviceExtX/_),S},b.prototype.transformY=function(E){var S=0,_=this.lworldExtY;return _!=0&&(S=this.ldeviceOrgY+(E-this.lworldOrgY)*this.ldeviceExtY/_),S},b.prototype.inverseTransformX=function(E){var S=0,_=this.ldeviceExtX;return _!=0&&(S=this.lworldOrgX+(E-this.ldeviceOrgX)*this.lworldExtX/_),S},b.prototype.inverseTransformY=function(E){var S=0,_=this.ldeviceExtY;return _!=0&&(S=this.lworldOrgY+(E-this.ldeviceOrgY)*this.lworldExtY/_),S},b.prototype.inverseTransformPoint=function(E){var S=new v(this.inverseTransformX(E.x),this.inverseTransformY(E.y));return S},f.exports=b},function(f,g,w){function v(B){if(Array.isArray(B)){for(var z=0,Y=Array(B.length);zE.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*E.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(B-E.ADAPTATION_LOWER_NODE_LIMIT)/(E.ADAPTATION_UPPER_NODE_LIMIT-E.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-E.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=E.MAX_NODE_DISPLACEMENT_INCREMENTAL):(B>E.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(E.COOLING_ADAPTATION_FACTOR,1-(B-E.ADAPTATION_LOWER_NODE_LIMIT)/(E.ADAPTATION_UPPER_NODE_LIMIT-E.ADAPTATION_LOWER_NODE_LIMIT)*(1-E.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=E.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},F.prototype.calcSpringForces=function(){for(var B=this.getAllEdges(),z,Y=0;Y0&&arguments[0]!==void 0?arguments[0]:!0,z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,Y,nt,ot,ft,wt=this.getAllNodes(),mt;if(this.useFRGridVariant)for(this.totalIterations%E.GRID_CALCULATION_CHECK_PERIOD==1&&B&&this.updateGrid(),mt=new Set,Y=0;Yct||mt>ct)&&(B.gravitationForceX=-this.gravityConstant*ot,B.gravitationForceY=-this.gravityConstant*ft)):(ct=z.getEstimatedSize()*this.compoundGravityRangeFactor,(wt>ct||mt>ct)&&(B.gravitationForceX=-this.gravityConstant*ot*this.compoundGravityConstant,B.gravitationForceY=-this.gravityConstant*ft*this.compoundGravityConstant))},F.prototype.isConverged=function(){var B,z=!1;return this.totalIterations>this.maxIterations/3&&(z=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),B=this.totalDisplacement=wt.length||ct>=wt[0].length)){for(var rt=0;rtF}}]),_}();f.exports=S},function(f,g,w){var v=function(){function S(_,M){for(var F=0;F2&&arguments[2]!==void 0?arguments[2]:1,R=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,B=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;b(this,S),this.sequence1=_,this.sequence2=M,this.match_score=F,this.mismatch_penalty=R,this.gap_penalty=B,this.iMax=_.length+1,this.jMax=M.length+1,this.grid=new Array(this.iMax);for(var z=0;z=0;_--){var M=this.listeners[_];M.event===E&&M.callback===S&&this.listeners.splice(_,1)}},b.emit=function(E,S){for(var _=0;_M.coolingFactor*M.maxNodeDisplacement&&(this.displacementX=M.coolingFactor*M.maxNodeDisplacement*E.sign(this.displacementX)),Math.abs(this.displacementY)>M.coolingFactor*M.maxNodeDisplacement&&(this.displacementY=M.coolingFactor*M.maxNodeDisplacement*E.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),M.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},S.prototype.propogateDisplacementToChildren=function(M,F){for(var R=this.getChild().getNodes(),B,z=0;z0)this.positionNodesRadially(it);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var gt=new Set(this.getAllNodes()),Q=this.nodesWithGravity.filter(function(dt){return gt.has(dt)});this.graphManager.setAllNodesToApplyGravitation(Q),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},ct.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%R.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var it=new Set(this.getAllNodes()),gt=this.nodesWithGravity.filter(function(K){return it.has(K)});this.graphManager.setAllNodesToApplyGravitation(gt),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=R.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=R.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var Q=!this.isTreeGrowing&&!this.isGrowthFinished,dt=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(Q,dt),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},ct.prototype.getPositionsData=function(){for(var it=this.graphManager.getAllNodes(),gt={},Q=0;Q1){var Ot;for(Ot=0;Otdt&&(dt=Math.floor(V.y)),yt=Math.floor(V.x+F.DEFAULT_COMPONENT_SEPERATION)}this.transform(new Y(B.WORLD_CENTER_X-V.x/2,B.WORLD_CENTER_Y-V.y/2))},ct.radialLayout=function(it,gt,Q){var dt=Math.max(this.maxDiagonalInTree(it),F.DEFAULT_RADIAL_SEPARATION);ct.branchRadialLayout(gt,null,0,359,0,dt);var K=wt.calculateBounds(it),yt=new mt;yt.setDeviceOrgX(K.getMinX()),yt.setDeviceOrgY(K.getMinY()),yt.setWorldOrgX(Q.x),yt.setWorldOrgY(Q.y);for(var V=0;V1;){var pn=Mt[0];Mt.splice(0,1);var Ae=Ft.indexOf(pn);Ae>=0&&Ft.splice(Ae,1),Gt--,Ct--}gt!=null?Fe=(Ft.indexOf(Mt[0])+1)%Gt:Fe=0;for(var ye=Math.abs(dt-Q)/Ct,tn=Fe;kt!=Ct;tn=++tn%Gt){var sn=Ft[tn].getOtherEnd(it);if(sn!=gt){var be=(Q+kt*ye)%360,Ne=(be+ye)%360;ct.branchRadialLayout(sn,it,be,Ne,K+yt,yt),kt++}}},ct.maxDiagonalInTree=function(it){for(var gt=ot.MIN_VALUE,Q=0;Qgt&&(gt=K)}return gt},ct.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},ct.prototype.groupZeroDegreeMembers=function(){var it=this,gt={};this.memberGroups={},this.idToDummyNode={};for(var Q=[],dt=this.graphManager.getAllNodes(),K=0;K"u"&&(gt[Ot]=[]),gt[Ot]=gt[Ot].concat(yt)}Object.keys(gt).forEach(function(It){if(gt[It].length>1){var jt="DummyCompound_"+It;it.memberGroups[jt]=gt[It];var xt=gt[It][0].getParent(),Ft=new _(it.graphManager);Ft.id=jt,Ft.paddingLeft=xt.paddingLeft||0,Ft.paddingRight=xt.paddingRight||0,Ft.paddingBottom=xt.paddingBottom||0,Ft.paddingTop=xt.paddingTop||0,it.idToDummyNode[jt]=Ft;var Ct=it.getGraphManager().add(it.newGraph(),Ft),kt=xt.getChild();kt.add(Ft);for(var Gt=0;Gt=0;it--){var gt=this.compoundOrder[it],Q=gt.id,dt=gt.paddingLeft,K=gt.paddingTop;this.adjustLocations(this.tiledMemberPack[Q],gt.rect.x,gt.rect.y,dt,K)}},ct.prototype.repopulateZeroDegreeMembers=function(){var it=this,gt=this.tiledZeroDegreePack;Object.keys(gt).forEach(function(Q){var dt=it.idToDummyNode[Q],K=dt.paddingLeft,yt=dt.paddingTop;it.adjustLocations(gt[Q],dt.rect.x,dt.rect.y,K,yt)})},ct.prototype.getToBeTiled=function(it){var gt=it.id;if(this.toBeTiled[gt]!=null)return this.toBeTiled[gt];var Q=it.getChild();if(Q==null)return this.toBeTiled[gt]=!1,!1;for(var dt=Q.getNodes(),K=0;K0)return this.toBeTiled[gt]=!1,!1;if(yt.getChild()==null){this.toBeTiled[yt.id]=!1;continue}if(!this.getToBeTiled(yt))return this.toBeTiled[gt]=!1,!1}return this.toBeTiled[gt]=!0,!0},ct.prototype.getNodeDegree=function(it){it.id;for(var gt=it.getEdges(),Q=0,dt=0;dtIt&&(It=xt.rect.height)}Q+=It+it.verticalPadding}},ct.prototype.tileCompoundMembers=function(it,gt){var Q=this;this.tiledMemberPack=[],Object.keys(it).forEach(function(dt){var K=gt[dt];Q.tiledMemberPack[dt]=Q.tileNodes(it[dt],K.paddingLeft+K.paddingRight),K.rect.width=Q.tiledMemberPack[dt].width,K.rect.height=Q.tiledMemberPack[dt].height})},ct.prototype.tileNodes=function(it,gt){var Q=F.TILING_PADDING_VERTICAL,dt=F.TILING_PADDING_HORIZONTAL,K={rows:[],rowWidth:[],rowHeight:[],width:0,height:gt,verticalPadding:Q,horizontalPadding:dt};it.sort(function(Ot,It){return Ot.rect.width*Ot.rect.height>It.rect.width*It.rect.height?-1:Ot.rect.width*Ot.rect.height0&&(V+=it.horizontalPadding),it.rowWidth[Q]=V,it.width0&&(Ot+=it.verticalPadding);var It=0;Ot>it.rowHeight[Q]&&(It=it.rowHeight[Q],it.rowHeight[Q]=Ot,It=it.rowHeight[Q]-It),it.height+=It,it.rows[Q].push(gt)},ct.prototype.getShortestRowIndex=function(it){for(var gt=-1,Q=Number.MAX_VALUE,dt=0;dtQ&&(gt=dt,Q=it.rowWidth[dt]);return gt},ct.prototype.canAddHorizontal=function(it,gt,Q){var dt=this.getShortestRowIndex(it);if(dt<0)return!0;var K=it.rowWidth[dt];if(K+it.horizontalPadding+gt<=it.width)return!0;var yt=0;it.rowHeight[dt]0&&(yt=Q+it.verticalPadding-it.rowHeight[dt]);var V;it.width-K>=gt+it.horizontalPadding?V=(it.height+yt)/(K+gt+it.horizontalPadding):V=(it.height+yt)/it.width,yt=Q+it.verticalPadding;var Ot;return it.widthyt&>!=Q){dt.splice(-1,1),it.rows[Q].push(K),it.rowWidth[gt]=it.rowWidth[gt]-yt,it.rowWidth[Q]=it.rowWidth[Q]+yt,it.width=it.rowWidth[instance.getLongestRowIndex(it)];for(var V=Number.MIN_VALUE,Ot=0;OtV&&(V=dt[Ot].height);gt>0&&(V+=it.verticalPadding);var It=it.rowHeight[gt]+it.rowHeight[Q];it.rowHeight[gt]=V,it.rowHeight[Q]0)for(var kt=K;kt<=yt;kt++)Ct[0]+=this.grid[kt][V-1].length+this.grid[kt][V].length-1;if(yt0)for(var kt=V;kt<=Ot;kt++)Ct[3]+=this.grid[K-1][kt].length+this.grid[K][kt].length-1;for(var Gt=ot.MAX_VALUE,Fe,Mt,pn=0;pn0){var Ot;Ot=mt.getGraphManager().add(mt.newGraph(),Q),this.processChildrenList(Ot,gt,mt)}}},Y.prototype.stop=function(){return this.stopped=!0,this};var ot=function(wt){wt("layout","cose-bilkent",Y)};typeof cytoscape<"u"&&ot(cytoscape),g.exports=ot}])})})(WHt);var ien=WHt.exports;const sen=e9(ien),aen=12,oen=function(i,a,f,g){a.append("path").attr("id","node-"+f.id).attr("class","node-bkg node-"+i.type2Str(f.type)).attr("d",`M0 ${f.height-5} v${-f.height+2*5} q0,-5 5,-5 h${f.width-2*5} q5,0 5,5 v${f.height-5} H0 Z`),a.append("line").attr("class","node-line-"+g).attr("x1",0).attr("y1",f.height).attr("x2",f.width).attr("y2",f.height)},cen=function(i,a,f){a.append("rect").attr("id","node-"+f.id).attr("class","node-bkg node-"+i.type2Str(f.type)).attr("height",f.height).attr("width",f.width)},uen=function(i,a,f){const g=f.width,w=f.height,v=.15*g,b=.25*g,E=.35*g,S=.2*g;a.append("path").attr("id","node-"+f.id).attr("class","node-bkg node-"+i.type2Str(f.type)).attr("d",`M0 0 a${v},${v} 0 0,1 ${g*.25},${-1*g*.1} + a${E},${E} 1 0,1 ${g*.4},${-1*g*.1} + a${b},${b} 1 0,1 ${g*.35},${1*g*.2} + + a${v},${v} 1 0,1 ${g*.15},${1*w*.35} + a${S},${S} 1 0,1 ${-1*g*.15},${1*w*.65} + + a${b},${v} 1 0,1 ${-1*g*.25},${g*.15} + a${E},${E} 1 0,1 ${-1*g*.5},0 + a${v},${v} 1 0,1 ${-1*g*.25},${-1*g*.15} + + a${v},${v} 1 0,1 ${-1*g*.1},${-1*w*.35} + a${S},${S} 1 0,1 ${g*.1},${-1*w*.65} + + H0 V0 Z`)},len=function(i,a,f){const g=f.width,w=f.height,v=.15*g;a.append("path").attr("id","node-"+f.id).attr("class","node-bkg node-"+i.type2Str(f.type)).attr("d",`M0 0 a${v},${v} 1 0,0 ${g*.25},${-1*w*.1} + a${v},${v} 1 0,0 ${g*.25},0 + a${v},${v} 1 0,0 ${g*.25},0 + a${v},${v} 1 0,0 ${g*.25},${1*w*.1} + + a${v},${v} 1 0,0 ${g*.15},${1*w*.33} + a${v*.8},${v*.8} 1 0,0 0,${1*w*.34} + a${v},${v} 1 0,0 ${-1*g*.15},${1*w*.33} + + a${v},${v} 1 0,0 ${-1*g*.25},${w*.15} + a${v},${v} 1 0,0 ${-1*g*.25},0 + a${v},${v} 1 0,0 ${-1*g*.25},0 + a${v},${v} 1 0,0 ${-1*g*.25},${-1*w*.15} + + a${v},${v} 1 0,0 ${-1*g*.1},${-1*w*.33} + a${v*.8},${v*.8} 1 0,0 0,${-1*w*.34} + a${v},${v} 1 0,0 ${g*.1},${-1*w*.33} + + H0 V0 Z`)},hen=function(i,a,f){a.append("circle").attr("id","node-"+f.id).attr("class","node-bkg node-"+i.type2Str(f.type)).attr("r",f.width/2)};function fen(i,a,f,g,w){return i.insert("polygon",":first-child").attr("points",g.map(function(v){return v.x+","+v.y}).join(" ")).attr("transform","translate("+(w.width-a)/2+", "+f+")")}const den=function(i,a,f){const g=f.height,v=g/4,b=f.width-f.padding+2*v,E=[{x:v,y:0},{x:b-v,y:0},{x:b,y:-g/2},{x:b-v,y:-g},{x:v,y:-g},{x:0,y:-g/2}];fen(a,b,g,E,f)},gen=function(i,a,f){a.append("rect").attr("id","node-"+f.id).attr("class","node-bkg node-"+i.type2Str(f.type)).attr("height",f.height).attr("rx",f.padding).attr("ry",f.padding).attr("width",f.width)},pen=function(i,a,f,g,w){const v=w.htmlLabels,b=g%(aen-1),E=a.append("g");f.section=b;let S="section-"+b;b<0&&(S+=" section-root"),E.attr("class",(f.class?f.class+" ":"")+"mindmap-node "+S);const _=E.append("g"),M=E.append("g"),F=f.descr.replace(/()/g,` +`);ZY(M,F,{useHtmlLabels:v,width:f.width,classes:"mindmap-node-label"}),v||M.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");const R=M.node().getBBox(),[B]=k9(w.fontSize);if(f.height=R.height+B*1.1*.5+f.padding,f.width=R.width+2*f.padding,f.icon)if(f.type===i.nodeType.CIRCLE)f.height+=50,f.width+=50,E.append("foreignObject").attr("height","50px").attr("width",f.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+b+" "+f.icon),M.attr("transform","translate("+f.width/2+", "+(f.height/2-1.5*f.padding)+")");else{f.width+=50;const z=f.height;f.height=Math.max(z,60);const Y=Math.abs(f.height-z);E.append("foreignObject").attr("width","60px").attr("height",f.height).attr("style","text-align: center;margin-top:"+Y/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+b+" "+f.icon),M.attr("transform","translate("+(25+f.width/2)+", "+(Y/2+f.padding/2)+")")}else if(v){const z=(f.width-R.width)/2,Y=(f.height-R.height)/2;M.attr("transform","translate("+z+", "+Y+")")}else{const z=f.width/2,Y=f.padding/2;M.attr("transform","translate("+z+", "+Y+")")}switch(f.type){case i.nodeType.DEFAULT:oen(i,_,f,b);break;case i.nodeType.ROUNDED_RECT:gen(i,_,f);break;case i.nodeType.RECT:cen(i,_,f);break;case i.nodeType.CIRCLE:_.attr("transform","translate("+f.width/2+", "+ +f.height/2+")"),hen(i,_,f);break;case i.nodeType.CLOUD:uen(i,_,f);break;case i.nodeType.BANG:len(i,_,f);break;case i.nodeType.HEXAGON:den(i,_,f);break}return i.setElementForId(f.id,E),f.height},ben=function(i,a){const f=i.getElementById(a.id),g=a.x||0,w=a.y||0;f.attr("transform","translate("+g+","+w+")")};KHt.use(sen);function QHt(i,a,f,g,w){pen(i,a,f,g,w),f.children&&f.children.forEach((v,b)=>{QHt(i,a,v,g<0?b:g,w)})}function wen(i,a){a.edges().map((f,g)=>{const w=f.data();if(f[0]._private.bodyBounds){const v=f[0]._private.rscratch;Kt.trace("Edge: ",g,w),i.insert("path").attr("d",`M ${v.startX},${v.startY} L ${v.midX},${v.midY} L${v.endX},${v.endY} `).attr("class","edge section-edge-"+w.section+" edge-depth-"+w.depth)}})}function JHt(i,a,f,g){a.add({group:"nodes",data:{id:i.id.toString(),labelText:i.descr,height:i.height,width:i.width,level:g,nodeId:i.id,padding:i.padding,type:i.type},position:{x:i.x,y:i.y}}),i.children&&i.children.forEach(w=>{JHt(w,a,f,g+1),a.add({group:"edges",data:{id:`${i.id}_${w.id}`,source:i.id,target:w.id,depth:g,section:w.section}})})}function men(i,a){return new Promise(f=>{const g=Tr("body").append("div").attr("id","cy").attr("style","display:none"),w=KHt({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});g.remove(),JHt(i,w,a,0),w.nodes().forEach(function(v){v.layoutDimensions=()=>{const b=v.data();return{w:b.width,h:b.height}}}),w.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),w.ready(v=>{Kt.info("Ready",v),f(w)})})}function ven(i,a){a.nodes().map((f,g)=>{const w=f.data();w.x=f.position().x,w.y=f.position().y,ben(i,w);const v=i.getElementById(w.nodeId);Kt.info("Id:",g,"Position: (",f.position().x,", ",f.position().y,")",w),v.attr("transform",`translate(${f.position().x-w.width/2}, ${f.position().y-w.height/2})`),v.attr("attr",`apa-${g})`)})}const yen={draw:async(i,a,f,g)=>{var F,R;Kt.debug(`Rendering mindmap diagram +`+i);const w=g.db,v=w.getMindmap();if(!v)return;const b=Re();b.htmlLabels=!1;const E=FF(a),S=E.append("g");S.attr("class","mindmap-edges");const _=E.append("g");_.attr("class","mindmap-nodes"),QHt(w,_,v,-1,b);const M=await men(v,b);wen(S,M),ven(w,M),w8(void 0,E,((F=b.mindmap)==null?void 0:F.padding)??Bl.mindmap.padding,((R=b.mindmap)==null?void 0:R.useMaxWidth)??Bl.mindmap.useMaxWidth)}},xen=i=>{let a="";for(let f=0;f` + .edge { + stroke-width: 3; + } + ${xen(i)} + .section-root rect, .section-root path, .section-root circle, .section-root polygon { + fill: ${i.git0}; + } + .section-root text { + fill: ${i.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .mindmap-node-label { + dy: 1em; + alignment-baseline: middle; + text-anchor: middle; + dominant-baseline: middle; + text-align: center; + } +`}},Symbol.toStringTag,{value:"Module"}));var w2t=function(){var i=function(E,S,_,M){for(_=_||{},M=E.length;M--;_[E[M]]=S);return _},a=[1,9],f=[1,10],g=[1,5,10,12],w={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(S,_,M,F,R,B,z){var Y=B.length-1;switch(R){case 7:const nt=F.findOrCreateNode(B[Y-4].trim().replaceAll('""','"')),ot=F.findOrCreateNode(B[Y-2].trim().replaceAll('""','"')),ft=parseFloat(B[Y].trim());F.addLink(nt,ot,ft);break;case 8:case 9:case 11:this.$=B[Y];break;case 10:this.$=B[Y-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:a,20:f},{1:[2,6],7:11,10:[1,12]},i(f,[2,4],{9:13,5:[1,14]}),{12:[1,15]},i(g,[2,8]),i(g,[2,9]),{19:[1,16]},i(g,[2,11]),{1:[2,1]},{1:[2,5]},i(f,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:a,20:f},{15:18,16:7,17:8,18:a,20:f},{18:[1,19]},i(f,[2,3]),{12:[1,20]},i(g,[2,10]),{15:21,16:7,17:8,18:a,20:f},i([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(S,_){if(_.recoverable)this.trace(S);else{var M=new Error(S);throw M.hash=_,M}},parse:function(S){var _=this,M=[0],F=[],R=[null],B=[],z=this.table,Y="",nt=0,ot=0,ft=2,wt=1,mt=B.slice.call(arguments,1),ct=Object.create(this.lexer),rt={yy:{}};for(var it in this.yy)Object.prototype.hasOwnProperty.call(this.yy,it)&&(rt.yy[it]=this.yy[it]);ct.setInput(S,rt.yy),rt.yy.lexer=ct,rt.yy.parser=this,typeof ct.yylloc>"u"&&(ct.yylloc={});var gt=ct.yylloc;B.push(gt);var Q=ct.options&&ct.options.ranges;typeof rt.yy.parseError=="function"?this.parseError=rt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function dt(){var Gt;return Gt=F.pop()||ct.lex()||wt,typeof Gt!="number"&&(Gt instanceof Array&&(F=Gt,Gt=F.pop()),Gt=_.symbols_[Gt]||Gt),Gt}for(var K,yt,V,Ot,It={},jt,xt,Ft,Ct;;){if(yt=M[M.length-1],this.defaultActions[yt]?V=this.defaultActions[yt]:((K===null||typeof K>"u")&&(K=dt()),V=z[yt]&&z[yt][K]),typeof V>"u"||!V.length||!V[0]){var kt="";Ct=[];for(jt in z[yt])this.terminals_[jt]&&jt>ft&&Ct.push("'"+this.terminals_[jt]+"'");ct.showPosition?kt="Parse error on line "+(nt+1)+`: +`+ct.showPosition()+` +Expecting `+Ct.join(", ")+", got '"+(this.terminals_[K]||K)+"'":kt="Parse error on line "+(nt+1)+": Unexpected "+(K==wt?"end of input":"'"+(this.terminals_[K]||K)+"'"),this.parseError(kt,{text:ct.match,token:this.terminals_[K]||K,line:ct.yylineno,loc:gt,expected:Ct})}if(V[0]instanceof Array&&V.length>1)throw new Error("Parse Error: multiple actions possible at state: "+yt+", token: "+K);switch(V[0]){case 1:M.push(K),R.push(ct.yytext),B.push(ct.yylloc),M.push(V[1]),K=null,ot=ct.yyleng,Y=ct.yytext,nt=ct.yylineno,gt=ct.yylloc;break;case 2:if(xt=this.productions_[V[1]][1],It.$=R[R.length-xt],It._$={first_line:B[B.length-(xt||1)].first_line,last_line:B[B.length-1].last_line,first_column:B[B.length-(xt||1)].first_column,last_column:B[B.length-1].last_column},Q&&(It._$.range=[B[B.length-(xt||1)].range[0],B[B.length-1].range[1]]),Ot=this.performAction.apply(It,[Y,ot,nt,rt.yy,V[1],R,B].concat(mt)),typeof Ot<"u")return Ot;xt&&(M=M.slice(0,-1*xt*2),R=R.slice(0,-1*xt),B=B.slice(0,-1*xt)),M.push(this.productions_[V[1]][0]),R.push(It.$),B.push(It._$),Ft=z[M[M.length-2]][M[M.length-1]],M.push(Ft);break;case 3:return!0}}return!0}},v=function(){var E={EOF:1,parseError:function(_,M){if(this.yy.parser)this.yy.parser.parseError(_,M);else throw new Error(_)},setInput:function(S,_){return this.yy=_||this.yy||{},this._input=S,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var S=this._input[0];this.yytext+=S,this.yyleng++,this.offset++,this.match+=S,this.matched+=S;var _=S.match(/(?:\r\n?|\n).*/g);return _?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),S},unput:function(S){var _=S.length,M=S.split(/(?:\r\n?|\n)/g);this._input=S+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-_),this.offset-=_;var F=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),M.length-1&&(this.yylineno-=M.length-1);var R=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:M?(M.length===F.length?this.yylloc.first_column:0)+F[F.length-M.length].length-M[0].length:this.yylloc.first_column-_},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-_]),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(S){this.unput(this.match.slice(S))},pastInput:function(){var S=this.matched.substr(0,this.matched.length-this.match.length);return(S.length>20?"...":"")+S.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var S=this.match;return S.length<20&&(S+=this._input.substr(0,20-S.length)),(S.substr(0,20)+(S.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var S=this.pastInput(),_=new Array(S.length+1).join("-");return S+this.upcomingInput()+` +`+_+"^"},test_match:function(S,_){var M,F,R;if(this.options.backtrack_lexer&&(R={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(R.yylloc.range=this.yylloc.range.slice(0))),F=S[0].match(/(?:\r\n?|\n).*/g),F&&(this.yylineno+=F.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:F?F[F.length-1].length-F[F.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+S[0].length},this.yytext+=S[0],this.match+=S[0],this.matches=S,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(S[0].length),this.matched+=S[0],M=this.performAction.call(this,this.yy,this,_,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),M)return M;if(this._backtrack){for(var B in R)this[B]=R[B];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var S,_,M,F;this._more||(this.yytext="",this.match="");for(var R=this._currentRules(),B=0;B_[0].length)){if(_=M,F=B,this.options.backtrack_lexer){if(S=this.test_match(M,R[B]),S!==!1)return S;if(this._backtrack){_=!1;continue}else return!1}else if(!this.options.flex)break}return _?(S=this.test_match(_,R[F]),S!==!1?S:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var _=this.next();return _||this.lex()},begin:function(_){this.conditionStack.push(_)},popState:function(){var _=this.conditionStack.length-1;return _>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(_){return _=this.conditionStack.length-1-Math.abs(_||0),_>=0?this.conditionStack[_]:"INITIAL"},pushState:function(_){this.begin(_)},stateStackSize:function(){return this.conditionStack.length},options:{easy_keword_rules:!0},performAction:function(_,M,F,R){switch(F){case 0:return this.pushState("csv"),4;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;case 5:return 20;case 6:return this.popState("escaped_text"),18;case 7:return 19}},rules:[/^(?:sankey-beta\b)/,/^(?:$)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:(\u002C))/,/^(?:(\u0022))/,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/,/^(?:(\u0022)(?!(\u0022)))/,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/],conditions:{csv:{rules:[1,2,3,4,5,6,7],inclusive:!1},escaped_text:{rules:[6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return E}();w.lexer=v;function b(){this.yy={}}return b.prototype=w,w.Parser=b,new b}();w2t.parser=w2t;const NX=w2t;let PX=[],FX=[],FD={};const Een=()=>{PX=[],FX=[],FD={},ag()};class Ten{constructor(a,f,g=0){this.source=a,this.target=f,this.value=g}}const Cen=(i,a,f)=>{PX.push(new Ten(i,a,f))};class Sen{constructor(a){this.ID=a}}const _en={nodesMap:FD,getConfig:()=>Re().sankey,getNodes:()=>FX,getLinks:()=>PX,getGraph:()=>({nodes:FX.map(i=>({id:i.ID})),links:PX.map(i=>({source:i.source.ID,target:i.target.ID,value:i.value}))}),addLink:Cen,findOrCreateNode:i=>(i=ei.sanitizeText(i,Re()),FD[i]||(FD[i]=new Sen(i),FX.push(FD[i])),FD[i]),getAccTitle:Xg,setAccTitle:og,getAccDescription:Jg,setAccDescription:Qg,getDiagramTitle:Zg,setDiagramTitle:S2,clear:Een};function ZHt(i,a){let f;if(a===void 0)for(const g of i)g!=null&&(f=g)&&(f=g);else{let g=-1;for(let w of i)(w=a(w,++g,i))!=null&&(f=w)&&(f=w)}return f}function tVt(i,a){let f;if(a===void 0)for(const g of i)g!=null&&(f>g||f===void 0&&g>=g)&&(f=g);else{let g=-1;for(let w of i)(w=a(w,++g,i))!=null&&(f>w||f===void 0&&w>=w)&&(f=w)}return f}function m2t(i,a){let f=0;if(a===void 0)for(let g of i)(g=+g)&&(f+=g);else{let g=-1;for(let w of i)(w=+a(w,++g,i))&&(f+=w)}return f}function Aen(i){return i.target.depth}function Len(i){return i.depth}function Den(i,a){return a-1-i.height}function eVt(i,a){return i.sourceLinks.length?i.depth:a-1}function Men(i){return i.targetLinks.length?i.depth:i.sourceLinks.length?tVt(i.sourceLinks,Aen)-1:0}function BX(i){return function(){return i}}function nVt(i,a){return RX(i.source,a.source)||i.index-a.index}function rVt(i,a){return RX(i.target,a.target)||i.index-a.index}function RX(i,a){return i.y0-a.y0}function v2t(i){return i.value}function Ien(i){return i.index}function Oen(i){return i.nodes}function Nen(i){return i.links}function iVt(i,a){const f=i.get(a);if(!f)throw new Error("missing: "+a);return f}function sVt({nodes:i}){for(const a of i){let f=a.y0,g=f;for(const w of a.sourceLinks)w.y0=f+w.width/2,f+=w.width;for(const w of a.targetLinks)w.y1=g+w.width/2,g+=w.width}}function Pen(){let i=0,a=0,f=1,g=1,w=24,v=8,b,E=Ien,S=eVt,_,M,F=Oen,R=Nen,B=6;function z(){const It={nodes:F.apply(null,arguments),links:R.apply(null,arguments)};return Y(It),nt(It),ot(It),ft(It),ct(It),sVt(It),It}z.update=function(It){return sVt(It),It},z.nodeId=function(It){return arguments.length?(E=typeof It=="function"?It:BX(It),z):E},z.nodeAlign=function(It){return arguments.length?(S=typeof It=="function"?It:BX(It),z):S},z.nodeSort=function(It){return arguments.length?(_=It,z):_},z.nodeWidth=function(It){return arguments.length?(w=+It,z):w},z.nodePadding=function(It){return arguments.length?(v=b=+It,z):v},z.nodes=function(It){return arguments.length?(F=typeof It=="function"?It:BX(It),z):F},z.links=function(It){return arguments.length?(R=typeof It=="function"?It:BX(It),z):R},z.linkSort=function(It){return arguments.length?(M=It,z):M},z.size=function(It){return arguments.length?(i=a=0,f=+It[0],g=+It[1],z):[f-i,g-a]},z.extent=function(It){return arguments.length?(i=+It[0][0],f=+It[1][0],a=+It[0][1],g=+It[1][1],z):[[i,a],[f,g]]},z.iterations=function(It){return arguments.length?(B=+It,z):B};function Y({nodes:It,links:jt}){for(const[Ft,Ct]of It.entries())Ct.index=Ft,Ct.sourceLinks=[],Ct.targetLinks=[];const xt=new Map(It.map((Ft,Ct)=>[E(Ft,Ct,It),Ft]));for(const[Ft,Ct]of jt.entries()){Ct.index=Ft;let{source:kt,target:Gt}=Ct;typeof kt!="object"&&(kt=Ct.source=iVt(xt,kt)),typeof Gt!="object"&&(Gt=Ct.target=iVt(xt,Gt)),kt.sourceLinks.push(Ct),Gt.targetLinks.push(Ct)}if(M!=null)for(const{sourceLinks:Ft,targetLinks:Ct}of It)Ft.sort(M),Ct.sort(M)}function nt({nodes:It}){for(const jt of It)jt.value=jt.fixedValue===void 0?Math.max(m2t(jt.sourceLinks,v2t),m2t(jt.targetLinks,v2t)):jt.fixedValue}function ot({nodes:It}){const jt=It.length;let xt=new Set(It),Ft=new Set,Ct=0;for(;xt.size;){for(const kt of xt){kt.depth=Ct;for(const{target:Gt}of kt.sourceLinks)Ft.add(Gt)}if(++Ct>jt)throw new Error("circular link");xt=Ft,Ft=new Set}}function ft({nodes:It}){const jt=It.length;let xt=new Set(It),Ft=new Set,Ct=0;for(;xt.size;){for(const kt of xt){kt.height=Ct;for(const{source:Gt}of kt.targetLinks)Ft.add(Gt)}if(++Ct>jt)throw new Error("circular link");xt=Ft,Ft=new Set}}function wt({nodes:It}){const jt=ZHt(It,Ct=>Ct.depth)+1,xt=(f-i-w)/(jt-1),Ft=new Array(jt);for(const Ct of It){const kt=Math.max(0,Math.min(jt-1,Math.floor(S.call(null,Ct,jt))));Ct.layer=kt,Ct.x0=i+kt*xt,Ct.x1=Ct.x0+w,Ft[kt]?Ft[kt].push(Ct):Ft[kt]=[Ct]}if(_)for(const Ct of Ft)Ct.sort(_);return Ft}function mt(It){const jt=tVt(It,xt=>(g-a-(xt.length-1)*b)/m2t(xt,v2t));for(const xt of It){let Ft=a;for(const Ct of xt){Ct.y0=Ft,Ct.y1=Ft+Ct.value*jt,Ft=Ct.y1+b;for(const kt of Ct.sourceLinks)kt.width=kt.value*jt}Ft=(g-Ft+b)/(xt.length+1);for(let Ct=0;Ctxt.length)-1)),mt(jt);for(let xt=0;xt0))continue;let pn=(Fe/Mt-Gt.y0)*jt;Gt.y0+=pn,Gt.y1+=pn,K(Gt)}_===void 0&&kt.sort(RX),gt(kt,xt)}}function it(It,jt,xt){for(let Ft=It.length,Ct=Ft-2;Ct>=0;--Ct){const kt=It[Ct];for(const Gt of kt){let Fe=0,Mt=0;for(const{target:Ae,value:ye}of Gt.sourceLinks){let tn=ye*(Ae.layer-Gt.layer);Fe+=Ot(Gt,Ae)*tn,Mt+=tn}if(!(Mt>0))continue;let pn=(Fe/Mt-Gt.y0)*jt;Gt.y0+=pn,Gt.y1+=pn,K(Gt)}_===void 0&&kt.sort(RX),gt(kt,xt)}}function gt(It,jt){const xt=It.length>>1,Ft=It[xt];dt(It,Ft.y0-b,xt-1,jt),Q(It,Ft.y1+b,xt+1,jt),dt(It,g,It.length-1,jt),Q(It,a,0,jt)}function Q(It,jt,xt,Ft){for(;xt1e-6&&(Ct.y0+=kt,Ct.y1+=kt),jt=Ct.y1+b}}function dt(It,jt,xt,Ft){for(;xt>=0;--xt){const Ct=It[xt],kt=(Ct.y1-jt)*Ft;kt>1e-6&&(Ct.y0-=kt,Ct.y1-=kt),jt=Ct.y0-b}}function K({sourceLinks:It,targetLinks:jt}){if(M===void 0){for(const{source:{sourceLinks:xt}}of jt)xt.sort(rVt);for(const{target:{targetLinks:xt}}of It)xt.sort(nVt)}}function yt(It){if(M===void 0)for(const{sourceLinks:jt,targetLinks:xt}of It)jt.sort(rVt),xt.sort(nVt)}function V(It,jt){let xt=It.y0-(It.sourceLinks.length-1)*b/2;for(const{target:Ft,width:Ct}of It.sourceLinks){if(Ft===jt)break;xt+=Ct+b}for(const{source:Ft,width:Ct}of jt.targetLinks){if(Ft===It)break;xt-=Ct}return xt}function Ot(It,jt){let xt=jt.y0-(jt.targetLinks.length-1)*b/2;for(const{source:Ft,width:Ct}of jt.targetLinks){if(Ft===It)break;xt+=Ct+b}for(const{target:Ft,width:Ct}of It.sourceLinks){if(Ft===jt)break;xt-=Ct}return xt}return z}var y2t=Math.PI,x2t=2*y2t,V9=1e-6,Fen=x2t-V9;function k2t(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function aVt(){return new k2t}k2t.prototype=aVt.prototype={constructor:k2t,moveTo:function(i,a){this._+="M"+(this._x0=this._x1=+i)+","+(this._y0=this._y1=+a)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(i,a){this._+="L"+(this._x1=+i)+","+(this._y1=+a)},quadraticCurveTo:function(i,a,f,g){this._+="Q"+ +i+","+ +a+","+(this._x1=+f)+","+(this._y1=+g)},bezierCurveTo:function(i,a,f,g,w,v){this._+="C"+ +i+","+ +a+","+ +f+","+ +g+","+(this._x1=+w)+","+(this._y1=+v)},arcTo:function(i,a,f,g,w){i=+i,a=+a,f=+f,g=+g,w=+w;var v=this._x1,b=this._y1,E=f-i,S=g-a,_=v-i,M=b-a,F=_*_+M*M;if(w<0)throw new Error("negative radius: "+w);if(this._x1===null)this._+="M"+(this._x1=i)+","+(this._y1=a);else if(F>V9)if(!(Math.abs(M*E-S*_)>V9)||!w)this._+="L"+(this._x1=i)+","+(this._y1=a);else{var R=f-v,B=g-b,z=E*E+S*S,Y=R*R+B*B,nt=Math.sqrt(z),ot=Math.sqrt(F),ft=w*Math.tan((y2t-Math.acos((z+F-Y)/(2*nt*ot)))/2),wt=ft/ot,mt=ft/nt;Math.abs(wt-1)>V9&&(this._+="L"+(i+wt*_)+","+(a+wt*M)),this._+="A"+w+","+w+",0,0,"+ +(M*R>_*B)+","+(this._x1=i+mt*E)+","+(this._y1=a+mt*S)}},arc:function(i,a,f,g,w,v){i=+i,a=+a,f=+f,v=!!v;var b=f*Math.cos(g),E=f*Math.sin(g),S=i+b,_=a+E,M=1^v,F=v?g-w:w-g;if(f<0)throw new Error("negative radius: "+f);this._x1===null?this._+="M"+S+","+_:(Math.abs(this._x1-S)>V9||Math.abs(this._y1-_)>V9)&&(this._+="L"+S+","+_),f&&(F<0&&(F=F%x2t+x2t),F>Fen?this._+="A"+f+","+f+",0,1,"+M+","+(i-b)+","+(a-E)+"A"+f+","+f+",0,1,"+M+","+(this._x1=S)+","+(this._y1=_):F>V9&&(this._+="A"+f+","+f+",0,"+ +(F>=y2t)+","+M+","+(this._x1=i+f*Math.cos(w))+","+(this._y1=a+f*Math.sin(w))))},rect:function(i,a,f,g){this._+="M"+(this._x0=this._x1=+i)+","+(this._y0=this._y1=+a)+"h"+ +f+"v"+ +g+"h"+-f+"Z"},toString:function(){return this._}};function oVt(i){return function(){return i}}function Ben(i){return i[0]}function Ren(i){return i[1]}var jen=Array.prototype.slice;function $en(i){return i.source}function zen(i){return i.target}function qen(i){var a=$en,f=zen,g=Ben,w=Ren,v=null;function b(){var E,S=jen.call(arguments),_=a.apply(this,S),M=f.apply(this,S);if(v||(v=E=aVt()),i(v,+g.apply(this,(S[0]=_,S)),+w.apply(this,S),+g.apply(this,(S[0]=M,S)),+w.apply(this,S)),E)return v=null,E+""||null}return b.source=function(E){return arguments.length?(a=E,b):a},b.target=function(E){return arguments.length?(f=E,b):f},b.x=function(E){return arguments.length?(g=typeof E=="function"?E:oVt(+E),b):g},b.y=function(E){return arguments.length?(w=typeof E=="function"?E:oVt(+E),b):w},b.context=function(E){return arguments.length?(v=E??null,b):v},b}function Hen(i,a,f,g,w){i.moveTo(a,f),i.bezierCurveTo(a=(a+g)/2,f,a,w,g,w)}function Ven(){return qen(Hen)}function Uen(i){return[i.source.x1,i.y0]}function Gen(i){return[i.target.x0,i.y1]}function Ken(){return Ven().source(Uen).target(Gen)}const cVt=class vOt{static next(a){return new vOt(a+ ++vOt.count)}constructor(a){this.id=a,this.href=`#${a}`}toString(){return"url("+this.href+")"}};cVt.count=0;let uVt=cVt;const Wen={left:Len,right:Den,center:Men,justify:eVt},Yen={draw:function(i,a,f,g){const{securityLevel:w,sankey:v}=Re(),b=lBt.sankey;let E;w==="sandbox"&&(E=Tr("#i"+a));const S=Tr(w==="sandbox"?E.nodes()[0].contentDocument.body:"body"),_=w==="sandbox"?S.select(`[id="${a}"]`):Tr(`[id="${a}"]`),M=(v==null?void 0:v.width)??b.width,F=(v==null?void 0:v.height)??b.width,R=(v==null?void 0:v.useMaxWidth)??b.useMaxWidth,B=(v==null?void 0:v.nodeAlignment)??b.nodeAlignment,z=(v==null?void 0:v.prefix)??b.prefix,Y=(v==null?void 0:v.suffix)??b.suffix,nt=(v==null?void 0:v.showValues)??b.showValues,ot=g.db.getGraph(),ft=Wen[B],wt=10;Pen().nodeId(dt=>dt.id).nodeWidth(wt).nodePadding(10+(nt?15:0)).nodeAlign(ft).extent([[0,0],[M,F]])(ot);const ct=oF(tPt);_.append("g").attr("class","nodes").selectAll(".node").data(ot.nodes).join("g").attr("class","node").attr("id",dt=>(dt.uid=uVt.next("node-")).id).attr("transform",function(dt){return"translate("+dt.x0+","+dt.y0+")"}).attr("x",dt=>dt.x0).attr("y",dt=>dt.y0).append("rect").attr("height",dt=>dt.y1-dt.y0).attr("width",dt=>dt.x1-dt.x0).attr("fill",dt=>ct(dt.id));const rt=({id:dt,value:K})=>nt?`${dt} +${z}${Math.round(K*100)/100}${Y}`:dt;_.append("g").attr("class","node-labels").attr("font-family","sans-serif").attr("font-size",14).selectAll("text").data(ot.nodes).join("text").attr("x",dt=>dt.x0(dt.y1+dt.y0)/2).attr("dy",`${nt?"0":"0.35"}em`).attr("text-anchor",dt=>dt.x0(K.uid=uVt.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",K=>K.source.x1).attr("x2",K=>K.target.x0);dt.append("stop").attr("offset","0%").attr("stop-color",K=>ct(K.source.id)),dt.append("stop").attr("offset","100%").attr("stop-color",K=>ct(K.target.id))}let Q;switch(gt){case"gradient":Q=dt=>dt.uid;break;case"source":Q=dt=>ct(dt.source.id);break;case"target":Q=dt=>ct(dt.target.id);break;default:Q=gt}it.append("path").attr("d",Ken()).attr("stroke",Q).attr("stroke-width",dt=>Math.max(1,dt.width)),w8(void 0,_,0,R)}},Xen=i=>i.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` +`).trim(),Qen=NX.parse.bind(NX);NX.parse=i=>Qen(Xen(i));const Jen=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:NX,db:_en,renderer:Yen}},Symbol.toStringTag,{value:"Module"}));var E2t=function(){var i=function(wt,mt,ct,rt){for(ct=ct||{},rt=wt.length;rt--;ct[wt[rt]]=mt);return ct},a=[1,7],f=[1,13],g=[1,14],w=[1,15],v=[1,19],b=[1,16],E=[1,17],S=[1,18],_=[8,30],M=[8,21,28,29,30,31,32,40,44,47],F=[1,23],R=[1,24],B=[8,15,16,21,28,29,30,31,32,40,44,47],z=[8,15,16,21,27,28,29,30,31,32,40,44,47],Y=[1,49],nt={trace:function(){},yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,seperator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList:34,DIR:35,NODE_DSTART:36,NODE_DEND:37,BLOCK_ARROW_START:38,BLOCK_ARROW_END:39,classDef:40,CLASSDEF_ID:41,CLASSDEF_STYLEOPTS:42,DEFAULT:43,class:44,CLASSENTITY_IDS:45,STYLECLASS:46,style:47,STYLE_ENTITY_IDS:48,STYLE_DEFINITION_DATA:49,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:function(mt,ct,rt,it,gt,Q,dt){var K=Q.length-1;switch(gt){case 4:it.getLogger().debug("Rule: seperator (NL) ");break;case 5:it.getLogger().debug("Rule: seperator (Space) ");break;case 6:it.getLogger().debug("Rule: seperator (EOF) ");break;case 7:it.getLogger().debug("Rule: hierarchy: ",Q[K-1]),it.setHierarchy(Q[K-1]);break;case 8:it.getLogger().debug("Stop NL ");break;case 9:it.getLogger().debug("Stop EOF ");break;case 10:it.getLogger().debug("Stop NL2 ");break;case 11:it.getLogger().debug("Stop EOF2 ");break;case 12:it.getLogger().debug("Rule: statement: ",Q[K]),typeof Q[K].length=="number"?this.$=Q[K]:this.$=[Q[K]];break;case 13:it.getLogger().debug("Rule: statement #2: ",Q[K-1]),this.$=[Q[K-1]].concat(Q[K]);break;case 14:it.getLogger().debug("Rule: link: ",Q[K],mt),this.$={edgeTypeStr:Q[K],label:""};break;case 15:it.getLogger().debug("Rule: LABEL link: ",Q[K-3],Q[K-1],Q[K]),this.$={edgeTypeStr:Q[K],label:Q[K-1]};break;case 18:const yt=parseInt(Q[K]),V=it.generateId();this.$={id:V,type:"space",label:"",width:yt,children:[]};break;case 23:it.getLogger().debug("Rule: (nodeStatement link node) ",Q[K-2],Q[K-1],Q[K]," typestr: ",Q[K-1].edgeTypeStr);const Ot=it.edgeStrToEdgeData(Q[K-1].edgeTypeStr);this.$=[{id:Q[K-2].id,label:Q[K-2].label,type:Q[K-2].type,directions:Q[K-2].directions},{id:Q[K-2].id+"-"+Q[K].id,start:Q[K-2].id,end:Q[K].id,label:Q[K-1].label,type:"edge",directions:Q[K].directions,arrowTypeEnd:Ot,arrowTypeStart:"arrow_open"},{id:Q[K].id,label:Q[K].label,type:it.typeStr2Type(Q[K].typeStr),directions:Q[K].directions}];break;case 24:it.getLogger().debug("Rule: nodeStatement (abc88 node size) ",Q[K-1],Q[K]),this.$={id:Q[K-1].id,label:Q[K-1].label,type:it.typeStr2Type(Q[K-1].typeStr),directions:Q[K-1].directions,widthInColumns:parseInt(Q[K],10)};break;case 25:it.getLogger().debug("Rule: nodeStatement (node) ",Q[K]),this.$={id:Q[K].id,label:Q[K].label,type:it.typeStr2Type(Q[K].typeStr),directions:Q[K].directions,widthInColumns:1};break;case 26:it.getLogger().debug("APA123",this?this:"na"),it.getLogger().debug("COLUMNS: ",Q[K]),this.$={type:"column-setting",columns:Q[K]==="auto"?-1:parseInt(Q[K])};break;case 27:it.getLogger().debug("Rule: id-block statement : ",Q[K-2],Q[K-1]),it.generateId(),this.$={...Q[K-2],type:"composite",children:Q[K-1]};break;case 28:it.getLogger().debug("Rule: blockStatement : ",Q[K-2],Q[K-1],Q[K]);const It=it.generateId();this.$={id:It,type:"composite",label:"",children:Q[K-1]};break;case 29:it.getLogger().debug("Rule: node (NODE_ID seperator): ",Q[K]),this.$={id:Q[K]};break;case 30:it.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel seperator): ",Q[K-1],Q[K]),this.$={id:Q[K-1],label:Q[K].label,typeStr:Q[K].typeStr,directions:Q[K].directions};break;case 31:it.getLogger().debug("Rule: dirList: ",Q[K]),this.$=[Q[K]];break;case 32:it.getLogger().debug("Rule: dirList: ",Q[K-1],Q[K]),this.$=[Q[K-1]].concat(Q[K]);break;case 33:it.getLogger().debug("Rule: nodeShapeNLabel: ",Q[K-2],Q[K-1],Q[K]),this.$={typeStr:Q[K-2]+Q[K],label:Q[K-1]};break;case 34:it.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",Q[K-3],Q[K-2]," #3:",Q[K-1],Q[K]),this.$={typeStr:Q[K-3]+Q[K],label:Q[K-2],directions:Q[K-1]};break;case 35:case 36:this.$={type:"classDef",id:Q[K-1].trim(),css:Q[K].trim()};break;case 37:this.$={type:"applyClass",id:Q[K-1].trim(),styleClass:Q[K].trim()};break;case 38:this.$={type:"applyStyles",id:Q[K-1].trim(),stylesStr:Q[K].trim()};break}},table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:f,29:g,31:w,32:v,40:b,44:E,47:S},{8:[1,20]},i(_,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:a,28:f,29:g,31:w,32:v,40:b,44:E,47:S}),i(M,[2,16],{14:22,15:F,16:R}),i(M,[2,17]),i(M,[2,18]),i(M,[2,19]),i(M,[2,20]),i(M,[2,21]),i(M,[2,22]),i(B,[2,25],{27:[1,25]}),i(M,[2,26]),{19:26,26:12,32:v},{11:27,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:f,29:g,31:w,32:v,40:b,44:E,47:S},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},i(z,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},i(_,[2,13]),{26:35,32:v},{32:[2,14]},{17:[1,36]},i(B,[2,24]),{11:37,13:4,14:22,15:F,16:R,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:f,29:g,31:w,32:v,40:b,44:E,47:S},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},i(z,[2,30]),{18:[1,43]},{18:[1,44]},i(B,[2,23]),{18:[1,45]},{30:[1,46]},i(M,[2,28]),i(M,[2,35]),i(M,[2,36]),i(M,[2,37]),i(M,[2,38]),{37:[1,47]},{34:48,35:Y},{15:[1,50]},i(M,[2,27]),i(z,[2,33]),{39:[1,51]},{34:52,35:Y,39:[2,31]},{32:[2,15]},i(z,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:function(mt,ct){if(ct.recoverable)this.trace(mt);else{var rt=new Error(mt);throw rt.hash=ct,rt}},parse:function(mt){var ct=this,rt=[0],it=[],gt=[null],Q=[],dt=this.table,K="",yt=0,V=0,Ot=2,It=1,jt=Q.slice.call(arguments,1),xt=Object.create(this.lexer),Ft={yy:{}};for(var Ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ct)&&(Ft.yy[Ct]=this.yy[Ct]);xt.setInput(mt,Ft.yy),Ft.yy.lexer=xt,Ft.yy.parser=this,typeof xt.yylloc>"u"&&(xt.yylloc={});var kt=xt.yylloc;Q.push(kt);var Gt=xt.options&&xt.options.ranges;typeof Ft.yy.parseError=="function"?this.parseError=Ft.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Fe(){var xe;return xe=it.pop()||xt.lex()||It,typeof xe!="number"&&(xe instanceof Array&&(it=xe,xe=it.pop()),xe=ct.symbols_[xe]||xe),xe}for(var Mt,pn,Ae,ye,tn={},sn,be,Ne,Xt;;){if(pn=rt[rt.length-1],this.defaultActions[pn]?Ae=this.defaultActions[pn]:((Mt===null||typeof Mt>"u")&&(Mt=Fe()),Ae=dt[pn]&&dt[pn][Mt]),typeof Ae>"u"||!Ae.length||!Ae[0]){var _e="";Xt=[];for(sn in dt[pn])this.terminals_[sn]&&sn>Ot&&Xt.push("'"+this.terminals_[sn]+"'");xt.showPosition?_e="Parse error on line "+(yt+1)+`: +`+xt.showPosition()+` +Expecting `+Xt.join(", ")+", got '"+(this.terminals_[Mt]||Mt)+"'":_e="Parse error on line "+(yt+1)+": Unexpected "+(Mt==It?"end of input":"'"+(this.terminals_[Mt]||Mt)+"'"),this.parseError(_e,{text:xt.match,token:this.terminals_[Mt]||Mt,line:xt.yylineno,loc:kt,expected:Xt})}if(Ae[0]instanceof Array&&Ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+pn+", token: "+Mt);switch(Ae[0]){case 1:rt.push(Mt),gt.push(xt.yytext),Q.push(xt.yylloc),rt.push(Ae[1]),Mt=null,V=xt.yyleng,K=xt.yytext,yt=xt.yylineno,kt=xt.yylloc;break;case 2:if(be=this.productions_[Ae[1]][1],tn.$=gt[gt.length-be],tn._$={first_line:Q[Q.length-(be||1)].first_line,last_line:Q[Q.length-1].last_line,first_column:Q[Q.length-(be||1)].first_column,last_column:Q[Q.length-1].last_column},Gt&&(tn._$.range=[Q[Q.length-(be||1)].range[0],Q[Q.length-1].range[1]]),ye=this.performAction.apply(tn,[K,V,yt,Ft.yy,Ae[1],gt,Q].concat(jt)),typeof ye<"u")return ye;be&&(rt=rt.slice(0,-1*be*2),gt=gt.slice(0,-1*be),Q=Q.slice(0,-1*be)),rt.push(this.productions_[Ae[1]][0]),gt.push(tn.$),Q.push(tn._$),Ne=dt[rt[rt.length-2]][rt[rt.length-1]],rt.push(Ne);break;case 3:return!0}}return!0}},ot=function(){var wt={EOF:1,parseError:function(ct,rt){if(this.yy.parser)this.yy.parser.parseError(ct,rt);else throw new Error(ct)},setInput:function(mt,ct){return this.yy=ct||this.yy||{},this._input=mt,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 mt=this._input[0];this.yytext+=mt,this.yyleng++,this.offset++,this.match+=mt,this.matched+=mt;var ct=mt.match(/(?:\r\n?|\n).*/g);return ct?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),mt},unput:function(mt){var ct=mt.length,rt=mt.split(/(?:\r\n?|\n)/g);this._input=mt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ct),this.offset-=ct;var it=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),rt.length-1&&(this.yylineno-=rt.length-1);var gt=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:rt?(rt.length===it.length?this.yylloc.first_column:0)+it[it.length-rt.length].length-rt[0].length:this.yylloc.first_column-ct},this.options.ranges&&(this.yylloc.range=[gt[0],gt[0]+this.yyleng-ct]),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(mt){this.unput(this.match.slice(mt))},pastInput:function(){var mt=this.matched.substr(0,this.matched.length-this.match.length);return(mt.length>20?"...":"")+mt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var mt=this.match;return mt.length<20&&(mt+=this._input.substr(0,20-mt.length)),(mt.substr(0,20)+(mt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var mt=this.pastInput(),ct=new Array(mt.length+1).join("-");return mt+this.upcomingInput()+` +`+ct+"^"},test_match:function(mt,ct){var rt,it,gt;if(this.options.backtrack_lexer&&(gt={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&&(gt.yylloc.range=this.yylloc.range.slice(0))),it=mt[0].match(/(?:\r\n?|\n).*/g),it&&(this.yylineno+=it.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:it?it[it.length-1].length-it[it.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+mt[0].length},this.yytext+=mt[0],this.match+=mt[0],this.matches=mt,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(mt[0].length),this.matched+=mt[0],rt=this.performAction.call(this,this.yy,this,ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),rt)return rt;if(this._backtrack){for(var Q in gt)this[Q]=gt[Q];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var mt,ct,rt,it;this._more||(this.yytext="",this.match="");for(var gt=this._currentRules(),Q=0;Qct[0].length)){if(ct=rt,it=Q,this.options.backtrack_lexer){if(mt=this.test_match(rt,gt[Q]),mt!==!1)return mt;if(this._backtrack){ct=!1;continue}else return!1}else if(!this.options.flex)break}return ct?(mt=this.test_match(ct,gt[it]),mt!==!1?mt:!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 ct=this.next();return ct||this.lex()},begin:function(ct){this.conditionStack.push(ct)},popState:function(){var ct=this.conditionStack.length-1;return ct>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(ct){return ct=this.conditionStack.length-1-Math.abs(ct||0),ct>=0?this.conditionStack[ct]:"INITIAL"},pushState:function(ct){this.begin(ct)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(ct,rt,it,gt){switch(it){case 0:return 10;case 1:return ct.getLogger().debug("Found space-block"),31;case 2:return ct.getLogger().debug("Found nl-block"),31;case 3:return ct.getLogger().debug("Found space-block"),29;case 4:ct.getLogger().debug(".",rt.yytext);break;case 5:ct.getLogger().debug("_",rt.yytext);break;case 6:return 5;case 7:return rt.yytext=-1,28;case 8:return rt.yytext=rt.yytext.replace(/columns\s+/,""),ct.getLogger().debug("COLUMNS (LEX)",rt.yytext),28;case 9:this.pushState("md_string");break;case 10:return"MD_STR";case 11:this.popState();break;case 12:this.pushState("string");break;case 13:ct.getLogger().debug("LEX: POPPING STR:",rt.yytext),this.popState();break;case 14:return ct.getLogger().debug("LEX: STR end:",rt.yytext),"STR";case 15:return rt.yytext=rt.yytext.replace(/space\:/,""),ct.getLogger().debug("SPACE NUM (LEX)",rt.yytext),21;case 16:return rt.yytext="1",ct.getLogger().debug("COLUMNS (LEX)",rt.yytext),21;case 17:return 43;case 18:return"LINKSTYLE";case 19:return"INTERPOLATE";case 20:return this.pushState("CLASSDEF"),40;case 21:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 22:return this.popState(),this.pushState("CLASSDEFID"),41;case 23:return this.popState(),42;case 24:return this.pushState("CLASS"),44;case 25:return this.popState(),this.pushState("CLASS_STYLE"),45;case 26:return this.popState(),46;case 27:return this.pushState("STYLE_STMNT"),47;case 28:return this.popState(),this.pushState("STYLE_DEFINITION"),48;case 29:return this.popState(),49;case 30:return this.pushState("acc_title"),"acc_title";case 31:return this.popState(),"acc_title_value";case 32:return this.pushState("acc_descr"),"acc_descr";case 33:return this.popState(),"acc_descr_value";case 34:this.pushState("acc_descr_multiline");break;case 35:this.popState();break;case 36:return"acc_descr_multiline_value";case 37:return 30;case 38:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 39:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 40:return this.popState(),ct.getLogger().debug("Lex: ))"),"NODE_DEND";case 41:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 42:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 43:return this.popState(),ct.getLogger().debug("Lex: (-"),"NODE_DEND";case 44:return this.popState(),ct.getLogger().debug("Lex: -)"),"NODE_DEND";case 45:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 46:return this.popState(),ct.getLogger().debug("Lex: ]]"),"NODE_DEND";case 47:return this.popState(),ct.getLogger().debug("Lex: ("),"NODE_DEND";case 48:return this.popState(),ct.getLogger().debug("Lex: ])"),"NODE_DEND";case 49:return this.popState(),ct.getLogger().debug("Lex: /]"),"NODE_DEND";case 50:return this.popState(),ct.getLogger().debug("Lex: /]"),"NODE_DEND";case 51:return this.popState(),ct.getLogger().debug("Lex: )]"),"NODE_DEND";case 52:return this.popState(),ct.getLogger().debug("Lex: )"),"NODE_DEND";case 53:return this.popState(),ct.getLogger().debug("Lex: ]>"),"NODE_DEND";case 54:return this.popState(),ct.getLogger().debug("Lex: ]"),"NODE_DEND";case 55:return ct.getLogger().debug("Lexa: -)"),this.pushState("NODE"),36;case 56:return ct.getLogger().debug("Lexa: (-"),this.pushState("NODE"),36;case 57:return ct.getLogger().debug("Lexa: ))"),this.pushState("NODE"),36;case 58:return ct.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;case 59:return ct.getLogger().debug("Lex: ((("),this.pushState("NODE"),36;case 60:return ct.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;case 61:return ct.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;case 62:return ct.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;case 63:return ct.getLogger().debug("Lexc: >"),this.pushState("NODE"),36;case 64:return ct.getLogger().debug("Lexa: (["),this.pushState("NODE"),36;case 65:return ct.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;case 66:return this.pushState("NODE"),36;case 67:return this.pushState("NODE"),36;case 68:return this.pushState("NODE"),36;case 69:return this.pushState("NODE"),36;case 70:return this.pushState("NODE"),36;case 71:return this.pushState("NODE"),36;case 72:return this.pushState("NODE"),36;case 73:return ct.getLogger().debug("Lexa: ["),this.pushState("NODE"),36;case 74:return this.pushState("BLOCK_ARROW"),ct.getLogger().debug("LEX ARR START"),38;case 75:return ct.getLogger().debug("Lex: NODE_ID",rt.yytext),32;case 76:return ct.getLogger().debug("Lex: EOF",rt.yytext),8;case 77:this.pushState("md_string");break;case 78:this.pushState("md_string");break;case 79:return"NODE_DESCR";case 80:this.popState();break;case 81:ct.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 82:ct.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 83:return ct.getLogger().debug("LEX: NODE_DESCR:",rt.yytext),"NODE_DESCR";case 84:ct.getLogger().debug("LEX POPPING"),this.popState();break;case 85:ct.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 86:return rt.yytext=rt.yytext.replace(/^,\s*/,""),ct.getLogger().debug("Lex (right): dir:",rt.yytext),"DIR";case 87:return rt.yytext=rt.yytext.replace(/^,\s*/,""),ct.getLogger().debug("Lex (left):",rt.yytext),"DIR";case 88:return rt.yytext=rt.yytext.replace(/^,\s*/,""),ct.getLogger().debug("Lex (x):",rt.yytext),"DIR";case 89:return rt.yytext=rt.yytext.replace(/^,\s*/,""),ct.getLogger().debug("Lex (y):",rt.yytext),"DIR";case 90:return rt.yytext=rt.yytext.replace(/^,\s*/,""),ct.getLogger().debug("Lex (up):",rt.yytext),"DIR";case 91:return rt.yytext=rt.yytext.replace(/^,\s*/,""),ct.getLogger().debug("Lex (down):",rt.yytext),"DIR";case 92:return rt.yytext="]>",ct.getLogger().debug("Lex (ARROW_DIR end):",rt.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";case 93:return ct.getLogger().debug("Lex: LINK","#"+rt.yytext+"#"),15;case 94:return ct.getLogger().debug("Lex: LINK",rt.yytext),15;case 95:return ct.getLogger().debug("Lex: LINK",rt.yytext),15;case 96:return ct.getLogger().debug("Lex: LINK",rt.yytext),15;case 97:return ct.getLogger().debug("Lex: START_LINK",rt.yytext),this.pushState("LLABEL"),16;case 98:return ct.getLogger().debug("Lex: START_LINK",rt.yytext),this.pushState("LLABEL"),16;case 99:return ct.getLogger().debug("Lex: START_LINK",rt.yytext),this.pushState("LLABEL"),16;case 100:this.pushState("md_string");break;case 101:return ct.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";case 102:return this.popState(),ct.getLogger().debug("Lex: LINK","#"+rt.yytext+"#"),15;case 103:return this.popState(),ct.getLogger().debug("Lex: LINK",rt.yytext),15;case 104:return this.popState(),ct.getLogger().debug("Lex: LINK",rt.yytext),15;case 105:return ct.getLogger().debug("Lex: COLON",rt.yytext),rt.yytext=rt.yytext.slice(1),27}},rules:[/^(?:block-beta\b)/,/^(?:block\s+)/,/^(?:block\n+)/,/^(?:block:)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[29],inclusive:!1},STYLE_STMNT:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[23],inclusive:!1},CLASSDEF:{rules:[21,22],inclusive:!1},CLASS_STYLE:{rules:[26],inclusive:!1},CLASS:{rules:[25],inclusive:!1},LLABEL:{rules:[100,101,102,103,104],inclusive:!1},ARROW_DIR:{rules:[86,87,88,89,90,91,92],inclusive:!1},BLOCK_ARROW:{rules:[77,82,85],inclusive:!1},NODE:{rules:[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,78,81],inclusive:!1},md_string:{rules:[10,11,79,80],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[13,14,83,84],inclusive:!1},acc_descr_multiline:{rules:[35,36],inclusive:!1},acc_descr:{rules:[33],inclusive:!1},acc_title:{rules:[31],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,12,15,16,17,18,19,20,24,27,30,32,34,37,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,93,94,95,96,97,98,99,105],inclusive:!0}}};return wt}();nt.lexer=ot;function ft(){this.yy={}}return ft.prototype=nt,nt.Parser=ft,new ft}();E2t.parser=E2t;const Zen=E2t;let lb={},T2t=[],AB={};const lVt="color",hVt="fill",tnn="bgFill",fVt=",";let LB={};const enn=function(i,a=""){LB[i]===void 0&&(LB[i]={id:i,styles:[],textStyles:[]});const f=LB[i];a!=null&&a.split(fVt).forEach(g=>{const w=g.replace(/([^;]*);/,"$1").trim();if(g.match(lVt)){const b=w.replace(hVt,tnn).replace(lVt,hVt);f.textStyles.push(b)}f.styles.push(w)})},nnn=function(i,a=""){const f=lb[i];a!=null&&(f.styles=a.split(fVt))},rnn=function(i,a){i.split(",").forEach(function(f){let g=lb[f];if(g===void 0){const w=f.trim();lb[w]={id:w,type:"na",children:[]},g=lb[w]}g.classes||(g.classes=[]),g.classes.push(a)})},dVt=(i,a)=>{const f=i.flat(),g=[];for(const w of f){if(w.type==="classDef"){enn(w.id,w.css);continue}if(w.type==="applyClass"){rnn(w.id,(w==null?void 0:w.styleClass)||"");continue}if(w.type==="applyStyles"){w!=null&&w.stylesStr&&nnn(w.id,w==null?void 0:w.stylesStr);continue}if(w.type==="column-setting")a.columns=w.columns||-1;else if(w.type==="edge")AB[w.id]?AB[w.id]++:AB[w.id]=1,w.id=AB[w.id]+"-"+w.id,T2t.push(w);else{w.label||(w.type==="composite"?w.label="":w.label=w.id);const v=!lb[w.id];if(v?lb[w.id]=w:(w.type!=="na"&&(lb[w.id].type=w.type),w.label!==w.id&&(lb[w.id].label=w.label)),w.children&&dVt(w.children,w),w.type==="space"){const b=w.width||1;for(let E=0;E{Kt.debug("Clear called"),ag(),DB={id:"root",type:"composite",children:[],columns:-1},lb={root:DB},C2t=[],LB={},T2t=[],AB={}};function snn(i){switch(Kt.debug("typeStr2Type",i),i){case"[]":return"square";case"()":return Kt.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function ann(i){switch(Kt.debug("typeStr2Type",i),i){case"==":return"thick";default:return"normal"}}function onn(i){switch(i.trim()){case"--x":return"arrow_cross";case"--o":return"arrow_circle";default:return"arrow_point"}}let gVt=0;const cnn={getConfig:()=>o1().block,typeStr2Type:snn,edgeTypeStr2Type:ann,edgeStrToEdgeData:onn,getLogger:()=>console,getBlocksFlat:()=>[...Object.values(lb)],getBlocks:()=>C2t||[],getEdges:()=>T2t,setHierarchy:i=>{DB.children=i,dVt(i,DB),C2t=DB.children},getBlock:i=>lb[i],setBlock:i=>{lb[i.id]=i},getColumns:i=>{const a=lb[i];return a?a.columns?a.columns:a.children?a.children.length:-1:-1},getClasses:function(){return LB},clear:inn,generateId:()=>(gVt++,"id-"+Math.random().toString(36).substr(2,12)+"-"+gVt)},jX=(i,a)=>{const f=jPt,g=f(i,"r"),w=f(i,"g"),v=f(i,"b");return g9(g,w,v,a)},unn=i=>`.label { + font-family: ${i.fontFamily}; + color: ${i.nodeTextColor||i.textColor}; + } + .cluster-label text { + fill: ${i.titleColor}; + } + .cluster-label span,p { + color: ${i.titleColor}; + } + + + + .label text,span,p { + fill: ${i.nodeTextColor||i.textColor}; + color: ${i.nodeTextColor||i.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.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: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.5; + background-color: ${i.edgeLabelBackground}; + fill: ${i.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${jX(i.edgeLabelBackground,.5)}; + // background-color: + } + + .node .cluster { + // fill: ${jX(i.mainBkg,.5)}; + fill: ${jX(i.clusterBkg,.5)}; + stroke: ${jX(i.clusterBorder,.2)}; + box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px; + stroke-width: 1px; + } + + .cluster text { + fill: ${i.titleColor}; + } + + .cluster span,p { + color: ${i.titleColor}; + } + /* .cluster div { + color: ${i.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${i.fontFamily}; + font-size: 12px; + background: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } +`;function pVt(i,a,f=!1){var R,B,z;const g=i;let w="default";(((R=g==null?void 0:g.classes)==null?void 0:R.length)||0)>0&&(w=((g==null?void 0:g.classes)||[]).join(" ")),w=w+" flowchart-label";let v=0,b="",E;switch(g.type){case"round":v=5,b="rect";break;case"composite":v=0,b="composite",E=0;break;case"square":b="rect";break;case"diamond":b="question";break;case"hexagon":b="hexagon";break;case"block_arrow":b="block_arrow";break;case"odd":b="rect_left_inv_arrow";break;case"lean_right":b="lean_right";break;case"lean_left":b="lean_left";break;case"trapezoid":b="trapezoid";break;case"inv_trapezoid":b="inv_trapezoid";break;case"rect_left_inv_arrow":b="rect_left_inv_arrow";break;case"circle":b="circle";break;case"ellipse":b="ellipse";break;case"stadium":b="stadium";break;case"subroutine":b="subroutine";break;case"cylinder":b="cylinder";break;case"group":b="rect";break;case"doublecircle":b="doublecircle";break;default:b="rect"}const S=C2((g==null?void 0:g.styles)||[]),_=g.label,M=g.size||{width:0,height:0,x:0,y:0};return{labelStyle:S.labelStyle,shape:b,labelText:_,rx:v,ry:v,class:w,style:S.style,id:g.id,directions:g.directions,width:M.width,height:M.height,x:M.x,y:M.y,positioned:f,intersect:void 0,type:g.type,padding:E??(((z=(B=o1())==null?void 0:B.block)==null?void 0:z.padding)||0)}}async function lnn(i,a,f){const g=pVt(a,f,!1);if(g.type==="group")return;const w=await nX(i,g),v=w.node().getBBox(),b=f.getBlock(g.id);b.size={width:v.width,height:v.height,x:0,y:0,node:w},f.setBlock(b),w.remove()}async function hnn(i,a,f){const g=pVt(a,f,!0);f.getBlock(g.id).type!=="space"&&(await nX(i,g),a.intersect=g==null?void 0:g.intersect,Zpt(g))}async function S2t(i,a,f,g){for(const w of a)await g(i,w,f),w.children&&await S2t(i,w.children,f,g)}async function fnn(i,a,f){await S2t(i,a,f,lnn)}async function dnn(i,a,f){await S2t(i,a,f,hnn)}async function gnn(i,a,f,g,w){const v=new l1({multigraph:!0,compound:!0});v.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(const b of f)b.size&&v.setNode(b.id,{width:b.size.width,height:b.size.height,intersect:b.intersect});for(const b of a)if(b.start&&b.end){const E=g.getBlock(b.start),S=g.getBlock(b.end);if(E!=null&&E.size&&(S!=null&&S.size)){const _=E.size,M=S.size,F=[{x:_.x,y:_.y},{x:_.x+(M.x-_.x)/2,y:_.y+(M.y-_.y)/2},{x:M.x,y:M.y}];await dzt(i,{v:b.start,w:b.end,name:b.id},{...b,arrowTypeEnd:b.arrowTypeEnd,arrowTypeStart:b.arrowTypeStart,points:F,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",v,w),b.label&&(await tbt(i,{...b,label:b.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:b.arrowTypeEnd,arrowTypeStart:b.arrowTypeStart,points:F,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),await hzt({...b,x:F[1].x,y:F[1].y},{originalPath:F}))}}}const Af=((vVt=(mVt=Re())==null?void 0:mVt.block)==null?void 0:vVt.padding)||8;function pnn(i,a){if(i===0||!Number.isInteger(i))throw new Error("Columns must be an integer !== 0.");if(a<0||!Number.isInteger(a))throw new Error("Position must be a non-negative integer."+a);if(i<0)return{px:a,py:0};if(i===1)return{px:0,py:a};const f=a%i,g=Math.floor(a/i);return{px:f,py:g}}const bnn=i=>{let a=0,f=0;for(const g of i.children){const{width:w,height:v,x:b,y:E}=g.size||{width:0,height:0,x:0,y:0};Kt.debug("getMaxChildSize abc95 child:",g.id,"width:",w,"height:",v,"x:",b,"y:",E,g.type),g.type!=="space"&&(w>a&&(a=w/(i.widthInColumns||1)),v>f&&(f=v))}return{width:a,height:f}};function _2t(i,a,f=0,g=0){var b,E,S,_,M,F,R,B,z,Y,nt;Kt.debug("setBlockSizes abc95 (start)",i.id,(b=i==null?void 0:i.size)==null?void 0:b.x,"block width =",i==null?void 0:i.size,"sieblingWidth",f),(E=i==null?void 0:i.size)!=null&&E.width||(i.size={width:f,height:g,x:0,y:0});let w=0,v=0;if(((S=i.children)==null?void 0:S.length)>0){for(const gt of i.children)_2t(gt,a);const ot=bnn(i);w=ot.width,v=ot.height,Kt.debug("setBlockSizes abc95 maxWidth of",i.id,":s children is ",w,v);for(const gt of i.children)gt.size&&(Kt.debug(`abc95 Setting size of children of ${i.id} id=${gt.id} ${w} ${v} ${gt.size}`),gt.size.width=w*(gt.widthInColumns||1)+Af*((gt.widthInColumns||1)-1),gt.size.height=v,gt.size.x=0,gt.size.y=0,Kt.debug(`abc95 updating size of ${i.id} children child:${gt.id} maxWidth:${w} maxHeight:${v}`));for(const gt of i.children)_2t(gt,a,w,v);const ft=i.columns||-1;let wt=0;for(const gt of i.children)wt+=gt.widthInColumns||1;let mt=i.children.length;ft>0&&ft0?Math.min(i.children.length,ft):i.children.length;if(gt>0){const Q=(rt-gt*Af-Af)/gt;Kt.debug("abc95 (growing to fit) width",i.id,rt,(R=i.size)==null?void 0:R.width,Q);for(const dt of i.children)dt.size&&(dt.size.width=Q)}}i.size={width:rt,height:it,x:0,y:0}}Kt.debug("setBlockSizes abc94 (done)",i.id,(B=i==null?void 0:i.size)==null?void 0:B.x,(z=i==null?void 0:i.size)==null?void 0:z.width,(Y=i==null?void 0:i.size)==null?void 0:Y.y,(nt=i==null?void 0:i.size)==null?void 0:nt.height)}function bVt(i,a){var g,w,v,b,E,S,_,M,F,R,B,z,Y,nt,ot,ft,wt;Kt.debug(`abc85 layout blocks (=>layoutBlocks) ${i.id} x: ${(g=i==null?void 0:i.size)==null?void 0:g.x} y: ${(w=i==null?void 0:i.size)==null?void 0:w.y} width: ${(v=i==null?void 0:i.size)==null?void 0:v.width}`);const f=i.columns||-1;if(Kt.debug("layoutBlocks columns abc95",i.id,"=>",f,i),i.children&&i.children.length>0){const mt=((E=(b=i==null?void 0:i.children[0])==null?void 0:b.size)==null?void 0:E.width)||0,ct=i.children.length*mt+(i.children.length-1)*Af;Kt.debug("widthOfChildren 88",ct,"posX");let rt=0;Kt.debug("abc91 block?.size?.x",i.id,(S=i==null?void 0:i.size)==null?void 0:S.x);let it=(_=i==null?void 0:i.size)!=null&&_.x?((M=i==null?void 0:i.size)==null?void 0:M.x)+(-((F=i==null?void 0:i.size)==null?void 0:F.width)/2||0):-Af,gt=0;for(const Q of i.children){const dt=i;if(!Q.size)continue;const{width:K,height:yt}=Q.size,{px:V,py:Ot}=pnn(f,rt);if(Ot!=gt&&(gt=Ot,it=(R=i==null?void 0:i.size)!=null&&R.x?((B=i==null?void 0:i.size)==null?void 0:B.x)+(-((z=i==null?void 0:i.size)==null?void 0:z.width)/2||0):-Af,Kt.debug("New row in layout for block",i.id," and child ",Q.id,gt)),Kt.debug(`abc89 layout blocks (child) id: ${Q.id} Pos: ${rt} (px, py) ${V},${Ot} (${(Y=dt==null?void 0:dt.size)==null?void 0:Y.x},${(nt=dt==null?void 0:dt.size)==null?void 0:nt.y}) parent: ${dt.id} width: ${K}${Af}`),dt.size){const It=K/2;Q.size.x=it+Af+It,Kt.debug(`abc91 layout blocks (calc) px, pyid:${Q.id} startingPos=X${it} new startingPosX${Q.size.x} ${It} padding=${Af} width=${K} halfWidth=${It} => x:${Q.size.x} y:${Q.size.y} ${Q.widthInColumns} (width * (child?.w || 1)) / 2 ${K*((Q==null?void 0:Q.widthInColumns)||1)/2}`),it=Q.size.x+It,Q.size.y=dt.size.y-dt.size.height/2+Ot*(yt+Af)+yt/2+Af,Kt.debug(`abc88 layout blocks (calc) px, pyid:${Q.id}startingPosX${it}${Af}${It}=>x:${Q.size.x}y:${Q.size.y}${Q.widthInColumns}(width * (child?.w || 1)) / 2${K*((Q==null?void 0:Q.widthInColumns)||1)/2}`)}Q.children&&bVt(Q),rt+=(Q==null?void 0:Q.widthInColumns)||1,Kt.debug("abc88 columnsPos",Q,rt)}}Kt.debug(`layout blocks (<==layoutBlocks) ${i.id} x: ${(ot=i==null?void 0:i.size)==null?void 0:ot.x} y: ${(ft=i==null?void 0:i.size)==null?void 0:ft.y} width: ${(wt=i==null?void 0:i.size)==null?void 0:wt.width}`)}function wVt(i,{minX:a,minY:f,maxX:g,maxY:w}={minX:0,minY:0,maxX:0,maxY:0}){if(i.size&&i.id!=="root"){const{x:v,y:b,width:E,height:S}=i.size;v-E/2g&&(g=v+E/2),b+S/2>w&&(w=b+S/2)}if(i.children)for(const v of i.children)({minX:a,minY:f,maxX:g,maxY:w}=wVt(v,{minX:a,minY:f,maxX:g,maxY:w}));return{minX:a,minY:f,maxX:g,maxY:w}}function wnn(i){const a=i.getBlock("root");if(!a)return;_2t(a,i,0,0),bVt(a),Kt.debug("getBlocks",JSON.stringify(a,null,2));const{minX:f,minY:g,maxX:w,maxY:v}=wVt(a),b=v-g,E=w-f;return{x:f,y:g,width:E,height:b}}const mnn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Zen,db:cnn,renderer:{draw:async function(i,a,f,g){const{securityLevel:w,block:v}=o1(),b=g.db;let E;w==="sandbox"&&(E=Tr("#i"+a));const S=Tr(w==="sandbox"?E.nodes()[0].contentDocument.body:"body"),_=w==="sandbox"?S.select(`[id="${a}"]`):Tr(`[id="${a}"]`);jpt(_,["point","circle","cross"],g.type,a);const F=b.getBlocks(),R=b.getBlocksFlat(),B=b.getEdges(),z=_.insert("g").attr("class","block");await fnn(z,F,b);const Y=wnn(b);if(await dnn(z,F,b),await gnn(z,B,R,b,a),Y){const nt=Y,ot=Math.max(1,Math.round(.125*(nt.width/nt.height))),ft=nt.height+ot+10,wt=nt.width+10,{useMaxWidth:mt}=v;sg(_,ft,wt,!!mt),Kt.debug("Here Bounds",Y,nt),_.attr("viewBox",`${nt.x-5} ${nt.y-5} ${nt.width+10} ${nt.height+10}`)}oF(tPt)},getClasses:function(i,a){return a.db.getClasses()}},styles:unn}},Symbol.toStringTag,{value:"Module"}));return _2}); diff --git a/quick_start/index.html b/quick_start/index.html new file mode 100644 index 0000000..627cdd9 --- /dev/null +++ b/quick_start/index.html @@ -0,0 +1,904 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Quick Start - Prime Backup Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Quick Start

+ +

Install

+

Prepare MCDR

+

Prime Backup is a MCDReforged plugin, +and it requires mcdreforged>=2.12 to work

+

To install / update MCDReforged, you can run:

+
pip3 install mcdreforged>=2.12 -U
+
+

See MCDR document for more information

+

Install Python requirements

+

Prime Backup requires a few python libraries to run, they are all listed in the +requirements.txt at the GitHub repository root

+
requirements.txt
# core
+mcdreforged>=2.12.0
+psutil
+pytz
+xxhash>=3
+SQLAlchemy>=2
+APScheduler>=3.8,<4
+
+# compress
+zstandard
+
+

Use command pip3 install -r requirements.txt to install all required Python requirements

+

You can also use the following command to install all required python packages for the latest Prime Backup in one step

+
pip3 install -r https://tisunion.github.io/PrimeBackup/requirements.txt
+
+

Optional requirements

+

Some Prime Backup features requires python libraries that does not listed in the requirements.txt, +because it might take you some effort to install in some environments

+

If you want to have full features of Prime Backup, you can use the following command in advanced:

+
pip3 install -r https://tisunion.github.io/PrimeBackup/requirements.optional.txt
+
+

These optional requirements are also stored in the requirements.optional.txt

+
requirements.optional.txt
# hash
+blake3
+
+# compress
+lz4
+
+

Install the plugin

+

Download Prime Backup from GitHub Release, +and place it into the plugin folder of MCDR. Perform a MCDR plugin reload

+

Configure

+

Before using Prime Backup, you need to configure its config file correctly

+

Don't worry, for most of the config options, you can use the default values. +But there are a few options that you might still want to take a look at

+

Location

+

When Prime Backup is firstly loaded by MCDR, it will automatically generate the config file, +with the location at config/prime_backup/config.json

+
mcdr_root/
+└── config/
+    └── prime_backup/
+        └── config.json       <-------------
+
+

It's a json file, so you need to follow the json syntax to edit it

+

Necessary configs

+

Here are a few important things in the config file:

+
    +
  1. +

    Backup target, i.e. the directories / files you want to create backup on. + You need to change the "world" in the targets array to your world directory name

    +
    // root config
    +{
    +    // ...
    +    "backup": {
    +        "targets": [
    +            "world"
    +        ],
    +    }
    +    // ...
    +}
    +
    +

    In addition, if you are using bukkit-like servers that split the world dimensions, you might want to use something like this:

    +
    "targets": [
    +    "world",
    +    "world_nether",
    +    "world_the_end"
    +]
    +
    +
  2. +
  3. +

    The methods to calculate / store all backup data

    +
    // root config
    +{
    +    // ...
    +    "backup": {
    +        "hash_method": "xxh128",
    +        "compress_method": "zstd",
    +    }
    +    // ...
    +}
    +
    +
      +
    • +

      hash_method: The algorithm to hash the files. Available options: "xxh128", "sha256", "blake3"

      +
        +
      • "xxh128": A extremely fast, high-quality non-cryptographic hash algorithm. + Recommend to use, unless you want theoretic extreme safety on hackers
      • +
      • "sha256": A cryptographically secure and widely used hash algorithm
      • +
      • "blake3": A cryptographically secure and speedy hash algorithm. Much faster than sha256, but still slower than xxh128 + Recommend to use, don't forget to install the blake3 Python requirement
      • +
      +
    • +
    • +

      compress_method: The way the backups get compressed. Common suggestions:

      +
        +
      • "plain": No compression. Use this if you want the maximum operation speed
      • +
      • "zstd": Fast and good compression algorithm. Recommend to use you want to save some disk spaces
      • +
      +
    • +
    +
    +

    Note

    +

    If you want to use blake3 as the hash method, you need to install the blake3 python library manually. +It's not included in the default requirement list, because in some environments it might require rust runtime to build and install

    +
    pip3 install blake3
    +
    +
    +
    +

    Note

    +

    It is recommended that you set these two options wisely from the start

    +

    Although you can still use the !!pb database migrate_xxx command in MCDR to migrate the compression method and hash method of existing backups, +completing the migration might require a certain amount of time and disk space

    +
    +
  4. +
  5. +

    Enable the plugin. Set the enabled option in the root object to true. It should be at the top of the whole config file

    +
    // root config
    +{
    +    "enabled": true
    +    // ...
    +}
    +
    +
  6. +
  7. +

    Reload the plugin with MCDR command

    +
    !!MCDR plugin reload prime_backup
    +
    +
  8. +
+

Now Prime Backup should start working

+

Use

+

Enter !!pb in the MCDR console, or in game, you should see the welcome page as shown below

+

welcome

+ + + + + + + + + + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + \ No newline at end of file diff --git a/reference/index.html b/reference/index.html new file mode 100644 index 0000000..eca54f1 --- /dev/null +++ b/reference/index.html @@ -0,0 +1,560 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + References - Prime Backup Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

References

+ +

TODO

+ + + + + + + + + + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + \ No newline at end of file diff --git a/requirements.optional.txt b/requirements.optional.txt new file mode 100644 index 0000000..b19ec89 --- /dev/null +++ b/requirements.optional.txt @@ -0,0 +1,5 @@ +# hash +blake3 + +# compress +lz4 diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..837a6db --- /dev/null +++ b/requirements.txt @@ -0,0 +1,10 @@ +# core +mcdreforged>=2.12.0 +psutil +pytz +xxhash>=3 +SQLAlchemy>=2 +APScheduler>=3.8,<4 + +# compress +zstandard diff --git a/search/search_index.json b/search/search_index.json new file mode 100644 index 0000000..bb1f2fa --- /dev/null +++ b/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en","zh"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to Prime Backup Documentation","text":"

This is the official documentation of the Prime Backup plugin

"},{"location":"cli/","title":"Command Line Interface Tool","text":"

The *.pyz file of Prime Backup is not only an MCDR plugin, but also a Command-Line Interface (CLI) tool. You can run it with a valid Python 3 interpreter, provided all requirements are installed

$ python3 PrimeBackup.pyz\nusage: PrimeBackup.pyz [-h] [-d DB]\n                       {overview,list,show,import,export,extract,migrate_db}   \n                       ...\n\nPrime Backup v1.7.0 CLI tools\n\noptions:\n  -h, --help            show this help message and exit\n  -d DB, --db DB        Path to the prime_backup.db database file, or path to  \n                        the directory that contains the prime_backup.db        \n                        database file, e.g. \"/my/path/prime_backup.db\", or     \n                        \"/my/path\" (default: ./pb_files)\n\nCommand:\n  {overview,list,show,import,export,extract,migrate_db}\n                        Available commands\n    overview            Show overview information of the database\n    list                List backups\n    show                Show detailed information of the given backup\n    import              Import a backup from the given file. The backup file   \n                        needs to have a backup metadata file\n                        '.prime_backup.meta.json', or the --auto-meta flag     \n                        need to be supplied\n    export              Export the given backup to a single file\n    extract             Extract a single file from a backup\n    migrate_db          Migrate the database to the current version (2)  \n

You can append --help to each subcommand to display its help message. For example:

$ python3 PrimeBackup.pyz export --help\nusage: PrimeBackup.pyz export [-h] [-f FORMAT] [--fail-soft] [--no-verify]\n                              [--no-meta]\n                              backup_id output\n\nExport the given backup to a single file\n\npositional arguments:\n  backup_id             The ID of the backup to export. Besides an integer     \n                        ID, it can also be \"latest\" and \"latest_non_temp\"      \n  output                The output file name of the exported backup. Example:  \n                        my_backup.tar\n\noptions:\n  -h, --help            show this help message and exit\n  -f FORMAT, --format FORMAT\n                        The format of the output file. If not given, attempt   \n                        to infer from the output file name. Options: tar,      \n                        tar_gz, tar_bz2, tar_xz, tar_zst, zip\n  --fail-soft           Skip files with export failure in the backup, so a     \n                        single failure will not abort the export. Notes: a     \n                        corrupted file might damaged the tar-based file        \n  --no-verify           Do not verify the exported file contents\n  --no-meta             Do not add the backup metadata file\n                        '.prime_backup.meta.json' in the exported file\n

As a demonstration, here's an example usage that shows the overview of the database

$ python3 PrimeBackup.pyz -d run/pb_files overview\n[2023-12-09 20:31:39,929 INFO] Storage root set to 'run/pb_files'\n[2023-12-09 20:31:39,948 INFO] DB version: 1\n[2023-12-09 20:31:39,948 INFO] Hash method: xxh128\n[2023-12-09 20:31:39,948 INFO] Backup count: 2\n[2023-12-09 20:31:39,948 INFO] Blob count: 9108\n[2023-12-09 20:31:39,949 INFO] Blob stored size sum: 5158485126 (4.80GiB)\n[2023-12-09 20:31:39,949 INFO] Blob raw size sum: 8295323157 (7.73GiB)\n[2023-12-09 20:31:39,949 INFO] File count: 22010\n[2023-12-09 20:31:39,949 INFO] File raw size sum: 16610326638 (15.47GiB)\n
"},{"location":"command/","title":"MCDR Commands","text":"

Note

This document will assume that you use !!pb as the prefix for MCDR commands

"},{"location":"command/#welcome","title":"Welcome","text":"

The root !!pb command shows the welcome page

"},{"location":"command/#command-list-overview","title":"Command list overview","text":"

Use !!pb help to have a full view of all commands

"},{"location":"command/#todo","title":"TODO","text":"

TODO: More command usages

"},{"location":"config/","title":"Configuration","text":""},{"location":"config/#configuration-explanation","title":"Configuration Explanation","text":"

Here's a full explanation on the config file, if you want to have a deep dive on it

"},{"location":"config/#root-config","title":"Root config","text":"

This is the root json object in the config files

{\n    \"enabled\": true,\n    \"debug\": false,\n    \"storage_root\": \"./pb_files\",\n    \"concurrency\": 1,\n\n    // Subconfigs. See the following sections\n    \"command\": {/* Command config */},\n    \"server\": {/* Server config */},\n    \"backup\": {/* Backup config */},\n    \"scheduled_backup\": {/* Scheduled backup config */},\n    \"prune\": {/* Prune config */},\n    \"database\": {/* Database config */}\n}\n
"},{"location":"config/#enabled","title":"enabled","text":"

The switch of the plugin. Set to false to disable the plugin

  • Type: bool
  • Default: false
"},{"location":"config/#debug","title":"debug","text":"

The debug switch. Set to true to enable debug logging

  • Type: bool
  • Default: false
"},{"location":"config/#storage_root","title":"storage_root","text":"

The root directory for Prime Backup to store all data files

The path is related to the work directory of MCDR. By default, the root directory will be /path/to/mcdr_root/pb_files

  • Type: str
  • Default: \"./pb_files\"
"},{"location":"config/#concurrency","title":"concurrency","text":"

The maximum concurrency to be used during all task and action executions

Setting the concurrency to a higher value (e.g. 4) can speed up actions, such as backup creation and restoration, but it will also consume more CPU during these actions

A value of 0 means using 50% of the CPU

  • Type: int
  • Default: 1
"},{"location":"config/#command-config","title":"Command config","text":"
{\n    \"prefix\": \"!!pb\",\n    \"permission\": {\n        \"abort\": 1,  \n        \"back\": 2,\n        \"confirm\": 1,\n        \"database\": 4,\n        \"delete\": 2,\n        \"delete_range\": 3,\n        \"export\": 4,\n        \"list\": 1,\n        \"make\": 1,\n        \"prune\": 3,\n        \"rename\": 2,\n        \"show\": 1,\n        \"tag\": 3\n    },\n    \"confirm_time_wait\": \"1m\",\n    \"backup_on_restore\": true,\n    \"restore_countdown_sec\": 10\n}\n
"},{"location":"config/#prefix","title":"prefix","text":"

The prefix of all Prime Backup commands in MCDR. Normally you don't need to change it

  • Type: str
  • Default: \"!!pb\"
"},{"location":"config/#permission","title":"permission","text":"

Minimum required MCDR permission level for all subcommands

It's a mapping that maps from string to integer, storing permission level requirements for all subcommands. If a subcommand is not in the mapping, it will use level 1 as the default permission requirement

For example, in the default config, \"back\" is mapped to 2, which means that the !!pb back command requires permission level >= 2 to execute

  • Type: Dict[str, int]
"},{"location":"config/#confirm_time_wait","title":"confirm_time_wait","text":"

Some of the MCDR commands requires user to enter !!pb confirm to continue. This config defines the maximum time wait for those commands

When time exceeds, the command will be cancelled

  • Type: Duration
  • Default: \"1m\"
"},{"location":"config/#backup_on_restore","title":"backup_on_restore","text":"

If an automatically backup should be made before restoring the world to a given backup. These automatic pre-restore backups are temporary backups

This is a safeguard prepared for those idiot users

  • Type: bool
  • Default: true
"},{"location":"config/#restore_countdown_sec","title":"restore_countdown_sec","text":"

The duration in seconds of the countdown during backup restoring, before closing the Minecraft server

  • Type: int
  • Default: 10
"},{"location":"config/#server-config","title":"Server config","text":"

Options on how to interact with the Minecraft server

{\n    \"turn_off_auto_save\": true,\n    \"commands\": {\n        \"save_all_worlds\": \"save-all flush\",\n        \"auto_save_off\": \"save-off\",\n        \"auto_save_on\": \"save-on\"\n    },\n    \"saved_world_regex\": [\n        \"Saved the game\",\n        \"Saved the world\"\n    ],\n    \"save_world_max_wait\": \"10m\"\n}\n
"},{"location":"config/#turn_off_auto_save","title":"turn_off_auto_save","text":"

If the autosave should be turned off before making a backup

Since turning off autosave provide a consistent view to the Minecraft world files, it's suggested to set this option to true

  • Type: bool
  • Default: true
"},{"location":"config/#commands","title":"commands","text":"

A set of Minecraft commands to be used by Prime Backup. Current they're only used during a backup creation

Timing of what Prime Backup will do during a backup creation

  1. Turn off autosave with command stored in subconfig auto_save_off, if config turn_off_auto_save is true
  2. Save all worlds with command stored in subconfig save_all_worlds
  3. Wait until all words are saved, i.e. the server outputs matches one of the regex in config saved_world_regex
  4. Create the backup
  5. Turn on autosave with command stored in subconfig auto_save_on, if config turn_off_auto_save is true
"},{"location":"config/#saved_world_regex","title":"saved_world_regex","text":"

A list of regular expressions for identifying whether the server has already saved the world

Note

The regex patterns will perform a full match check on the server info content

  • Type: List[re.Pattern]
"},{"location":"config/#save_world_max_wait","title":"save_world_max_wait","text":"

The maximum waiting time to before world saving is complete during backup creation

  • Type: Duration
  • Default: \"10m\"
"},{"location":"config/#backup-config","title":"Backup config","text":"

Configs on how the backup is made

{\n    \"source_root\": \"./server\",\n    \"source_root_use_mcdr_working_directory\": false,\n    \"targets\": [\n        \"world\"\n    ],\n    \"ignored_files\": [\n        \"session.lock\"\n    ],\n    \"follow_target_symlink\": false,\n    \"hash_method\": \"xxh128\",\n    \"compress_method\": \"zstd\",\n    \"compress_threshold\": 64\n}\n
"},{"location":"config/#source_root","title":"source_root","text":"

The root directory where the backup / restore operations happen

Usually this should be the working_directory of MCDR, i.e. the server directory by default

  • Type: str
  • Default: \"./server\"
"},{"location":"config/#source_root_use_mcdr_working_directory","title":"source_root_use_mcdr_working_directory","text":"

If set to true, use the working directory of MCDR as the value of source_root, and the value of key source_root in the config will be ignored

  • Type: bool
  • Default: false
"},{"location":"config/#targets","title":"targets","text":"

The target files / directories to make backups

Usually you need to add the name(s) of your world folder(s) here

For example, for bukkit-like servers that split the world dimensions, you might want to use:

\"targets\": [\n    \"world\",\n    \"world_nether\",\n    \"world_the_end\"\n]\n
  • Type: List[str]
"},{"location":"config/#ignored_files","title":"ignored_files","text":"

A list of file names to be ignored during backup. It contains session.lock by default to solve the backup failure problem caused by session.lock being occupied by the server in Windows

If the name string starts with *, then it will ignore files with name ending with specific string, e.g. *.test makes all files ends with .test be ignored, like a.test

If the name string ends with *, then it will ignore files with name starting with specific string, e.g. temp* makes all files starts with temp be ignored, like tempfile

  • Type: List[str]
"},{"location":"config/#follow_target_symlink","title":"follow_target_symlink","text":"

When set to true, for backup targets that are symbolic links, Prime Backup will not only create backups for them, but also include the link targets of the symbolic links in the backup targets.

For example, in the following symbolic link graph:

world --> foo --> bar\n^\nbackup target\n

Prime Backup will save not only the world symbolic link, but also the foo symbolic link and the final bar directory

  • Type: bool
  • Default: false
"},{"location":"config/#hash_method","title":"hash_method","text":"

The algorithm to hash the files. Available options: \"xxh128\"\u3001\"sha256\"\u3001\"blake3\"

Hash Method Description Speed cryptographically secure xxh128 A extremely fast, high-quality 128bit non-cryptographic hash algorithm. Recommend to use, unless you want theoretic extreme safety on hackers \u2605\u2605\u2605\u2605\u2605 sha256 A cryptographically secure and widely used 256bit hash algorithm. It's slower than xxh128, but the speed could be acceptable using cpu with hardware acceleration \u2605\u2605 blake3 A cryptographically secure and speedy 256bit hash algorithm. It's still slower than xxh128, but is much faster than sha256 \u2605\u2605\u2605\u2606

Note

If you want to use blake3 as the hash method, you need to install the blake3 python library manually. It's not included in the default requirement list, because in some environments it might require rust runtime to build and install

pip3 install blake3\n
  • Type: str
  • Default: \"xxh128\"
"},{"location":"config/#compress_method","title":"compress_method","text":"

The method to compress files stored in a backup

Compress Method Description Speed Compress rate plain No compression, copy the file directly. Can utilize the copy-on-write technique if the file system supports that \u2605\u2605\u2605\u2605\u2605 \u2606 gzip The gzip library based on zlib. The format same as a .gz file \u2605\u2605 \u2605\u2605\u2605\u2605 lzma The LZMA algorithm. The same format as a .xz file. Provides the best compression, but the speed is very slow \u2606 \u2605\u2605\u2605\u2605\u2605 zstd The Zstandard algorithm. A good balance between speed and compression rate. Recommend to use \u2605\u2605\u2605\u2606 \u2605\u2605\u2605\u2605 lz4 The LZ4 algorithm. Faster than Zstandard, and even much faster in decompression, but with a lower compression rate \u2605\u2605\u2605\u2605 \u2605\u2605\u2606

Warning

Changing compress_method will only affect new files in new backups (i.e., new blobs)

Note

If you want to use lz4 as the compress method, you need to install the lz4 python library manually

pip3 install lz4\n
  • Type: str
  • Default: \"zstd\"
"},{"location":"config/#compress_threshold","title":"compress_threshold","text":"

For files with a size less than the compress_threshold, no compression will be applied. They will be stored in the plain format.

Warning

Changing compress_threshold will only affect new files in new backups (i.e., new blobs)

  • Type: int
  • Default: 64
"},{"location":"config/#scheduled-backup-config","title":"Scheduled backup config","text":"

Configuration of the scheduled backup feature from Prime Backup

It's for creating a backup periodically and automatically for your server

{\n    \"enabled\": false,\n    \"interval\": \"12h\",\n    \"crontab\": null,\n    \"jitter\": \"10s\",\n    \"reset_timer_on_backup\": true,\n    \"require_online_players\": false,\n    \"require_online_players_blacklist\": []\n}\n
"},{"location":"config/#enabled-interval-crontab-jitter","title":"enabled, interval, crontab, jitter","text":"

See the crontab job setting section

"},{"location":"config/#reset_timer_on_backup","title":"reset_timer_on_backup","text":"

If the schedule timer should be reset on each manual backup

This feature is only effective when the job is in interval mode

  • Type: bool
  • Default: true
"},{"location":"config/#require_online_players","title":"require_online_players","text":"

If set to true, scheduled backups will only run normally when players are present on the server. If all players logged out, then after the next scheduled backup is created, no more scheduled backup will be created

Example timeline:

flowchart LR\n    subgraph g1[Players online]\n    b1[8:00\\ncreated] --> b2\n    end\n\n    subgraph g2[No players online]\n    b2[9:00\\ncreated] --> b3\n    b3[10:00\\ncreated] --> b4:::disabled\n    b4[11:00\\nskipped] --> b5:::disabled\n    end\n\n    subgraph g3[Players online]\n    b5[12:00\\nskipped] --> b6\n    b6[13:00\\ncreated]\n    end\n\n    classDef disabled fill:#eee,stroke:#aaa,color:gray\n

Note

This feature requires the Prime Backup plugin to be loaded before the server starts. It's needed so Prime Backup can calculate the online player count correctly

If the Prime Backup plugin is loaded when the server is already running, the player detection feature will be disabled, as if require_online_players is set to false

Exception: If MinecraftDataAPI plugin is present, then Prime Backup will utilize its API to query online player dynamically, and the requirement mentioned above no longer exists

Note

The player detection logic might not work in heavily modded servers that behave too differently from vanilla servers

Tip

Since Prime Backup supports file deduplication and highly customizable prune config, having backups even when no player is on the server will not result in excessive space usage

  • Type: bool
  • Default: false
"},{"location":"config/#require_online_players_blacklist","title":"require_online_players_blacklist","text":"

In require_online_players, when determining if there are players online, the list of regex patterns for player names to be excluded

If you want the server to still be considered as having no players online and thus not perform scheduled backups, when only certain players are online, you can utilize this option

Example:

\"require_online_players_blacklist\": [\n    \"bot_.*\",  // Matches any player name starting with \"bot_\"\n    \"Steve\"    // Matches the player name \"Steve\"\n]\n

Note

The regex patterns will perform full match checks on the player names

Matches are case-insensitive

  • Type: List[re.Pattern]
  • Default: []
"},{"location":"config/#prune-config","title":"Prune config","text":"

The backup prune feature from Prime Backup enables automatically backup cleanup for the backup storage

{\n    \"enabled\": true,\n    \"interval\": \"3h\",\n    \"crontab\": null,\n    \"jitter\": \"20s\",\n    \"timezone_override\": null,\n    \"regular_backup\": {\n        \"enabled\": false,\n        \"max_amount\": 0,\n        \"max_lifetime\": \"0s\",\n        \"last\": -1,\n        \"hour\": 0,\n        \"day\": 0,\n        \"week\": 0,\n        \"month\": 0,\n        \"year\": 0\n    },\n    \"pre_restore_backup\": {\n        \"enabled\": true,\n        \"max_amount\": 10,\n        \"max_lifetime\": \"30d\",\n        \"last\": -1,\n        \"hour\": 0,\n        \"day\": 0,\n        \"week\": 0,\n        \"month\": 0,\n        \"year\": 0\n    }\n}\n

It contains 2 prune settings for 2 kinds of backups:

  • regular_backup: For regular backups, i.e. not temporary backups
  • temporary_backup: For temporary backups, e.g. pre-restore backups

Each prune settings describes the retain policy in detailed

Prime Backup use the following steps to decide what to delete and what to retain:

  1. Use last, hour, day, week, month, year, based on the PBS policy, filter out backups to be deleted / retained
  2. Use max_amount and max_lifetime to filter out those old and expired backups from the to-be-retained backups from step 1
  3. Collected those to-be-deleted backups from the 2 steps above, delete them one by one

The final prune result will be stored in the log file at logs/prune.log within the storage root

prune.log
Backup #147 at 2023-12-10 21:49:09: keep=True reason=keep last 1\nBackup #146 at 2023-12-10 21:36:10: keep=True reason=keep last 2\nBackup #145 at 2023-12-10 21:26:25: keep=True reason=keep last 3\nBackup #144 at 2023-12-10 21:21:22: keep=False reason=superseded by 145 (hour)\nBackup #143 at 2023-12-10 21:16:19: keep=False reason=superseded by 145 (hour)\nBackup #142 at 2023-12-10 21:11:14: keep=False reason=superseded by 145 (hour)\nBackup #141 at 2023-12-10 21:05:06: keep=False reason=superseded by 145 (hour)\nBackup #140 at 2023-12-10 21:00:03: keep=True reason=protected\nBackup #139 at 2023-12-10 20:55:01: keep=True reason=keep hour 1\nBackup #138 at 2023-12-10 20:49:57: keep=False reason=superseded by 139 (hour)\nBackup #137 at 2023-12-10 20:44:53: keep=False reason=superseded by 139 (hour)\nBackup #136 at 2023-12-10 20:39:45: keep=False reason=superseded by 139 (hour)\nBackup #135 at 2023-12-10 20:34:41: keep=False reason=superseded by 139 (hour)\nBackup #128 at 2023-12-10 19:59:06: keep=True reason=keep hour 2\nBackup #116 at 2023-12-10 18:56:14: keep=True reason=keep hour 3\nBackup #104 at 2023-12-10 17:55:35: keep=False reason=superseded by 116 (day)\nBackup #22 at 2023-12-09 23:59:53: keep=True reason=keep day 1\n
"},{"location":"config/#max_amount","title":"max_amount","text":"

Defines the maximum number of backups to keep, e.g. 10 means to keep a maximum of 10 of the latest backups

Set it to 0 for unlimited

  • Type: int
"},{"location":"config/#max_lifetime","title":"max_lifetime","text":"

Defines the maximum retention duration for all backups. Backups exceeding this duration will be pruned and deleted.

Set it to 0s for no time limit

  • Type: Duration
"},{"location":"config/#last-hour-day-week-month-year","title":"last, hour, day, week, month, year","text":"

A set of PBS-style prune options, to describe how backups are deleted/retained

See the prune simulator for more explanations on these options

The prune simulator can also be used to simulate the retain policy

Notes: Value 0 means no retention on this period; Value -1 means unlimited backups can be retained on this period, equivalent to setting to a very large value

  • Type: int
"},{"location":"config/#enabled-interval-crontab-jitter_1","title":"enabled, interval, crontab, jitter","text":"

See the crontab job setting section

"},{"location":"config/#timezone_override","title":"timezone_override","text":"

An optional timezone override during the prune calculation. By default (null value), Prime Backup will use the local timezone

Example values: null, \"Asia/Shanghai\", \"US/Eastern\", \"Europe/Amsterdam\"

  • Type: Optional[str]
  • Default: null
"},{"location":"config/#database-config","title":"Database config","text":"

Configurations for the SQLite database, used by Prime Backup

{\n    \"compact\": {\n        \"enabled\": true,\n        \"interval\": null,\n        \"crontab\": \"0 7 * * *\",\n        \"jitter\": \"1m\"\n    },\n    \"backup\": {\n        \"enabled\": true,\n        \"interval\": null,\n        \"crontab\": \"0 6 * * 0\",\n        \"jitter\": \"1m\"\n    }\n}\n

Subconfig compact and backup describe the crontab jobs on the database

"},{"location":"config/#compact","title":"compact","text":"

The database compact job

It performs the VACUUM command on the database, to compact the database file and free up unused space

"},{"location":"config/#backup","title":"backup","text":"

The database backup job

By default, Prime Backup creates backups for the database in the db_backup directory within the storage root periodically, just in case something wrong happens

Database backups are stored with the .tar.xz format, and won't take up much space

"},{"location":"config/#enabled-interval-crontab-jitter_2","title":"enabled, interval, crontab, jitter","text":"

See the crontab job setting section

"},{"location":"config/#subconfig-types","title":"Subconfig types","text":""},{"location":"config/#crontab-job-setting","title":"crontab job setting","text":"

Setting of a crontab job to describe when the job executes. There are 2 valid mode

  • interval mode: Execute the job at given time interval. The first execution also has to wait for the given interval
  • crontab mode: Execute the job at specific time, described by a crontab string

If the job is enabled, you must choose one of the above modes and set the related config values correctly

// Example\n{\n    \"enabled\": true,\n    \"interval\": \"1h\",\n    \"crontab\": null,\n    \"jitter\": \"10s\"\n}\n
"},{"location":"config/#enabled_1","title":"enabled","text":"

The switch for the job. Set to true to enable the crontab job; Set to false to disable the crontab job

  • Type: bool
"},{"location":"config/#interval","title":"interval","text":"

Used in interval mode. The time interval between 2 jobs

It should be null if the job is not in interval mode

  • Type: Optional[str]
"},{"location":"config/#crontab","title":"crontab","text":"

Used in crontab mode. The crontab string

You can use https://crontab.guru/ to create a crontab string

It should be null if the job is not in crontab mode

  • Type: Optional[str]
"},{"location":"config/#jitter","title":"jitter","text":"

The jitter between 2 scheduled backup jobs

The actual execution time for the next job will be shifted randomly with [0, jitter]

Set it to \"0s\" for no jitter

  • Type: str
"},{"location":"config/#special-value-types","title":"Special value types","text":""},{"location":"config/#duration","title":"Duration","text":"

Describes a time duration length with a string, e.g. \"3s\", \"15m\"

A Duration consists of two parts: the number, and the time unit.

For the number part, it can be an integer, or a float

For the unit part, see the following table:

Unit Description Equals to Value in seconds ms millisecond 0.001 second 0.001 s, sec second 1 second 1 m, min minute 60 seconds 60 h, hour hour 60 minutes 3600 d, day day 24 hours 86400 mon, month month 30 days 2592000 y, year year 365 days 31536000"},{"location":"quick_start/","title":"Quick Start","text":""},{"location":"quick_start/#install","title":"Install","text":""},{"location":"quick_start/#prepare-mcdr","title":"Prepare MCDR","text":"

Prime Backup is a MCDReforged plugin, and it requires mcdreforged>=2.12 to work

To install / update MCDReforged, you can run:

pip3 install mcdreforged>=2.12 -U\n

See MCDR document for more information

"},{"location":"quick_start/#install-python-requirements","title":"Install Python requirements","text":"

Prime Backup requires a few python libraries to run, they are all listed in the requirements.txt at the GitHub repository root

requirements.txt
# core\nmcdreforged>=2.12.0\npsutil\npytz\nxxhash>=3\nSQLAlchemy>=2\nAPScheduler>=3.8,<4\n\n# compress\nzstandard\n

Use command pip3 install -r requirements.txt to install all required Python requirements

You can also use the following command to install all required python packages for the latest Prime Backup in one step

pip3 install -r https://tisunion.github.io/PrimeBackup/requirements.txt\n
"},{"location":"quick_start/#optional-requirements","title":"Optional requirements","text":"

Some Prime Backup features requires python libraries that does not listed in the requirements.txt, because it might take you some effort to install in some environments

If you want to have full features of Prime Backup, you can use the following command in advanced:

pip3 install -r https://tisunion.github.io/PrimeBackup/requirements.optional.txt\n

These optional requirements are also stored in the requirements.optional.txt

requirements.optional.txt
# hash\nblake3\n\n# compress\nlz4\n
"},{"location":"quick_start/#install-the-plugin","title":"Install the plugin","text":"

Download Prime Backup from GitHub Release, and place it into the plugin folder of MCDR. Perform a MCDR plugin reload

"},{"location":"quick_start/#configure","title":"Configure","text":"

Before using Prime Backup, you need to configure its config file correctly

Don't worry, for most of the config options, you can use the default values. But there are a few options that you might still want to take a look at

"},{"location":"quick_start/#location","title":"Location","text":"

When Prime Backup is firstly loaded by MCDR, it will automatically generate the config file, with the location at config/prime_backup/config.json

mcdr_root/\n\u2514\u2500\u2500 config/\n    \u2514\u2500\u2500 prime_backup/\n        \u2514\u2500\u2500 config.json       <-------------\n

It's a json file, so you need to follow the json syntax to edit it

"},{"location":"quick_start/#necessary-configs","title":"Necessary configs","text":"

Here are a few important things in the config file:

  1. Backup target, i.e. the directories / files you want to create backup on. You need to change the \"world\" in the targets array to your world directory name

    // root config\n{\n    // ...\n    \"backup\": {\n        \"targets\": [\n            \"world\"\n        ],\n    }\n    // ...\n}\n

    In addition, if you are using bukkit-like servers that split the world dimensions, you might want to use something like this:

    \"targets\": [\n    \"world\",\n    \"world_nether\",\n    \"world_the_end\"\n]\n
  2. The methods to calculate / store all backup data

    // root config\n{\n    // ...\n    \"backup\": {\n        \"hash_method\": \"xxh128\",\n        \"compress_method\": \"zstd\",\n    }\n    // ...\n}\n
    • hash_method: The algorithm to hash the files. Available options: \"xxh128\", \"sha256\", \"blake3\"

      • \"xxh128\": A extremely fast, high-quality non-cryptographic hash algorithm. Recommend to use, unless you want theoretic extreme safety on hackers
      • \"sha256\": A cryptographically secure and widely used hash algorithm
      • \"blake3\": A cryptographically secure and speedy hash algorithm. Much faster than sha256, but still slower than xxh128 Recommend to use, don't forget to install the blake3 Python requirement
    • compress_method: The way the backups get compressed. Common suggestions:

      • \"plain\": No compression. Use this if you want the maximum operation speed
      • \"zstd\": Fast and good compression algorithm. Recommend to use you want to save some disk spaces

    Note

    If you want to use blake3 as the hash method, you need to install the blake3 python library manually. It's not included in the default requirement list, because in some environments it might require rust runtime to build and install

    pip3 install blake3\n

    Note

    It is recommended that you set these two options wisely from the start

    Although you can still use the !!pb database migrate_xxx command in MCDR to migrate the compression method and hash method of existing backups, completing the migration might require a certain amount of time and disk space

  3. Enable the plugin. Set the enabled option in the root object to true. It should be at the top of the whole config file

    // root config\n{\n    \"enabled\": true\n    // ...\n}\n
  4. Reload the plugin with MCDR command

    !!MCDR plugin reload prime_backup\n

Now Prime Backup should start working

"},{"location":"quick_start/#use","title":"Use","text":"

Enter !!pb in the MCDR console, or in game, you should see the welcome page as shown below

"},{"location":"reference/","title":"References","text":"

TODO

"},{"location":"zh/","title":"\u6b22\u8fce\u6765\u5230 Prime Backup \u7684\u6587\u6863","text":"

\u8fd9\u91cc\u662f Prime Backup \u63d2\u4ef6\u7684\u5b98\u65b9\u6587\u6863

"},{"location":"zh/cli/","title":"\u547d\u4ee4\u884c\u5de5\u5177","text":"

Prime Backup \u7684 *.pyz \u6587\u4ef6\u9664\u4e86\u662f\u4e00\u4e2a MCDR \u63d2\u4ef6\u5916\uff0c\u4e5f\u662f\u4e00\u4e2a\u547d\u4ee4\u884c\u754c\u9762\uff08CLI\uff09\u5de5\u5177\u3002 \u5728\u5b89\u88c5\u4e86\u6240\u9700\u7684 Python \u4f9d\u8d56\u5e93\u540e\uff0c\u4f60\u53ef\u4ee5\u76f4\u63a5\u7528 Python3 \u89e3\u6790\u5668\u6765\u8fd0\u884c\u5b83

$ python3 PrimeBackup.pyz\nusage: PrimeBackup.pyz [-h] [-d DB]\n                       {overview,list,show,import,export,extract,migrate_db}   \n                       ...\n\nPrime Backup v1.7.0 CLI tools\n\noptions:\n  -h, --help            show this help message and exit\n  -d DB, --db DB        Path to the prime_backup.db database file, or path to  \n                        the directory that contains the prime_backup.db        \n                        database file, e.g. \"/my/path/prime_backup.db\", or     \n                        \"/my/path\" (default: ./pb_files)\n\nCommand:\n  {overview,list,show,import,export,extract,migrate_db}\n                        Available commands\n    overview            Show overview information of the database\n    list                List backups\n    show                Show detailed information of the given backup\n    import              Import a backup from the given file. The backup file   \n                        needs to have a backup metadata file\n                        '.prime_backup.meta.json', or the --auto-meta flag     \n                        need to be supplied\n    export              Export the given backup to a single file\n    extract             Extract a single file from a backup\n    migrate_db          Migrate the database to the current version (2)  \n

\u4f60\u53ef\u4ee5\u5728\u6bcf\u4e2a\u5b50\u547d\u4ee4\u540e\u6dfb\u52a0 --help \u6765\u663e\u793a\u5176\u5e2e\u52a9\u4fe1\u606f\u3002\u4f8b\u5982\uff1a

$ python3 PrimeBackup.pyz export --help\nusage: PrimeBackup.pyz export [-h] [-f FORMAT] [--fail-soft] [--no-verify]\n                              [--no-meta]\n                              backup_id output\n\nExport the given backup to a single file\n\npositional arguments:\n  backup_id             The ID of the backup to export. Besides an integer     \n                        ID, it can also be \"latest\" and \"latest_non_temp\"      \n  output                The output file name of the exported backup. Example:  \n                        my_backup.tar\n\noptions:\n  -h, --help            show this help message and exit\n  -f FORMAT, --format FORMAT\n                        The format of the output file. If not given, attempt   \n                        to infer from the output file name. Options: tar,      \n                        tar_gz, tar_bz2, tar_xz, tar_zst, zip\n  --fail-soft           Skip files with export failure in the backup, so a     \n                        single failure will not abort the export. Notes: a     \n                        corrupted file might damaged the tar-based file        \n  --no-verify           Do not verify the exported file contents\n  --no-meta             Do not add the backup metadata file\n                        '.prime_backup.meta.json' in the exported file\n

\u4f5c\u4e3a\u6f14\u793a\uff0c\u4e0b\u9762\u7684\u8fd9\u4e2a\u4f8b\u5b50\u5c55\u793a\u4e86\u6570\u636e\u5e93\u7684\u72b6\u51b5\u6982\u89c8\uff1a

$ python3 PrimeBackup.pyz -d run/pb_files overview\n[2023-12-09 20:31:39,929 INFO] Storage root set to 'run/pb_files'\n[2023-12-09 20:31:39,948 INFO] DB version: 1\n[2023-12-09 20:31:39,948 INFO] Hash method: xxh128\n[2023-12-09 20:31:39,948 INFO] Backup count: 2\n[2023-12-09 20:31:39,948 INFO] Blob count: 9108\n[2023-12-09 20:31:39,949 INFO] Blob stored size sum: 5158485126 (4.80GiB)\n[2023-12-09 20:31:39,949 INFO] Blob raw size sum: 8295323157 (7.73GiB)\n[2023-12-09 20:31:39,949 INFO] File count: 22010\n[2023-12-09 20:31:39,949 INFO] File raw size sum: 16610326638 (15.47GiB)\n
"},{"location":"zh/command/","title":"MCDR \u6307\u4ee4","text":"

Note

\u672c\u6587\u6863\u5047\u5b9a\u4f60\u4f7f\u7528 !!pb \u4f5c\u4e3a MCDR \u547d\u4ee4\u7684\u524d\u7f00

"},{"location":"zh/command/#\u6b22\u8fce\u754c\u9762","title":"\u6b22\u8fce\u754c\u9762","text":"

\u6839\u547d\u4ee4 !!pb \u7528\u4e8e\u663e\u793a\u6b22\u8fce\u9875\u9762

"},{"location":"zh/command/#\u6307\u4ee4\u5217\u8868\u6982\u89c8","title":"\u6307\u4ee4\u5217\u8868\u6982\u89c8","text":"

\u4f7f\u7528 !!pb help \u53ef\u67e5\u770b\u6240\u6709\u547d\u4ee4\u7684\u5b8c\u6574\u5217\u8868

"},{"location":"zh/command/#todo","title":"TODO","text":"

TODO\uff1a\u66f4\u591a\u547d\u4ee4\u7528\u6cd5

"},{"location":"zh/config/","title":"\u914d\u7f6e\u6587\u4ef6","text":""},{"location":"zh/config/#\u914d\u7f6e\u6587\u4ef6\u8be6\u89e3","title":"\u914d\u7f6e\u6587\u4ef6\u8be6\u89e3","text":"

\u8fd9\u662f\u5bf9\u914d\u7f6e\u6587\u4ef6\u7684\u5b8c\u6574\u89e3\u91ca\u3002\u5982\u679c\u4f60\u60f3\u6df1\u5165\u4e86\u89e3\u5b83\uff0c\u90a3\u5c31\u63a5\u7740\u5f80\u4e0b\u770b\u5427

"},{"location":"zh/config/#\u6839\u914d\u7f6e","title":"\u6839\u914d\u7f6e","text":"

\u8fd9\u662f\u914d\u7f6e\u6587\u4ef6\u4e2d\u7684\u6839 json \u5bf9\u8c61

{\n    \"enabled\": true,\n    \"debug\": false,\n    \"storage_root\": \"./pb_files\",\n\n    // \u5b50\u914d\u7f6e\u3002\u8be6\u89c1\u4ee5\u4e0b\u5404\u8282\n    \"command\": {/* \u547d\u4ee4\u914d\u7f6e */},\n    \"server\": {/* \u670d\u52a1\u5668\u914d\u7f6e */},\n    \"backup\": {/* \u5907\u4efd\u914d\u7f6e */},\n    \"scheduled_backup\": {/* \u5b9a\u65f6\u5907\u4efd\u914d\u7f6e */},\n    \"prune\": {/* \u4fee\u526a\u914d\u7f6e */},\n    \"database\": {/* \u6570\u636e\u5e93\u914d\u7f6e */}\n}\n
"},{"location":"zh/config/#enabled","title":"enabled","text":"

\u63d2\u4ef6\u7684\u5f00\u5173\u3002\u8bbe\u7f6e\u4e3a false \u4ee5\u7981\u7528\u63d2\u4ef6

  • \u7c7b\u578b\uff1abool
  • \u9ed8\u8ba4\u503c\uff1afalse
"},{"location":"zh/config/#debug","title":"debug","text":"

\u8c03\u8bd5\u5f00\u5173\u3002\u8bbe\u7f6e\u4e3a true \u4ee5\u542f\u7528\u8c03\u8bd5\u65e5\u5fd7

  • \u7c7b\u578b\uff1abool
  • \u9ed8\u8ba4\u503c\uff1afalse
"},{"location":"zh/config/#storage_root","title":"storage_root","text":"

Prime Backup \u50a8\u5b58\u5404\u79cd\u6570\u636e\u6587\u4ef6\u6240\u7528\u7684\u6839\u76ee\u5f55

\u8fd9\u662f\u4e00\u4e2a\u76f8\u5bf9\u4e8e MCDR \u5de5\u4f5c\u76ee\u5f55\u7684\u76f8\u5bf9\u8def\u5f84\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u6839\u76ee\u5f55\u5c06\u662f /path/to/mcdr_root/pb_files

  • \u7c7b\u578b\uff1astr
  • \u9ed8\u8ba4\u503c\uff1a\"./pb_files\"
"},{"location":"zh/config/#concurrency","title":"concurrency","text":"

\u5728\u4efb\u4f55\u4efb\u52a1 / \u64cd\u4f5c\u7684\u6267\u884c\u671f\u95f4\u4f7f\u7528\u7684\u6700\u5927\u5e76\u53d1\u6570

\u5c06\u5e76\u53d1\u6570\u8bbe\u7f6e\u4e3a\u66f4\u9ad8\u7684\u503c\uff08\u4f8b\u5982 4\uff09\u53ef\u4ee5\u52a0\u5feb\u5907\u4efd\u521b\u5efa\u548c\u56de\u6863\u7b49\u64cd\u4f5c\u7684\u901f\u5ea6\uff0c \u4f46\u8fd9\u4e5f\u4f1a\u8ba9\u8fd9\u4e9b\u64cd\u4f5c\u6d88\u8017\u66f4\u591a\u7684 CPU

\u503c 0 \u8868\u793a\u4f7f\u7528 50% \u7684 CPU

  • \u7c7b\u578b\uff1aint
  • \u9ed8\u8ba4\u503c\uff1a1
"},{"location":"zh/config/#\u547d\u4ee4\u914d\u7f6e","title":"\u547d\u4ee4\u914d\u7f6e","text":"
{\n    \"prefix\": \"!!pb\",\n    \"permission\": {\n        \"abort\": 1,  \n        \"back\": 2,\n        \"confirm\": 1,\n        \"database\": 4,\n        \"delete\": 2,\n        \"delete_range\": 3,\n        \"export\": 4,\n        \"list\": 1,\n        \"make\": 1,\n        \"prune\": 3,\n        \"rename\": 2,\n        \"show\": 1,\n        \"tag\": 3\n    },\n    \"confirm_time_wait\": \"1m\",\n    \"backup_on_restore\": true,\n    \"restore_countdown_sec\": 10\n}\n
"},{"location":"zh/config/#prefix","title":"prefix","text":"

MCDR \u4e2d\uff0cPrime Backup \u6240\u6709\u547d\u4ee4\u7684\u524d\u7f00\u3002\u901a\u5e38\u4f60\u4e0d\u9700\u8981\u66f4\u6539\u5b83

  • \u7c7b\u578b\uff1astr
  • \u9ed8\u8ba4\u503c\uff1a\"!!pb\"
"},{"location":"zh/config/#permission","title":"permission","text":"

\u6240\u6709\u5b50\u547d\u4ee4\u6240\u9700\u7684 MCDR \u6743\u9650\u7b49\u7ea7 \u7684\u6700\u4f4e\u8981\u6c42

\u5b83\u662f\u4e00\u4e2a\u4ece\u5b57\u7b26\u4e32\u6620\u5c04\u5230\u6574\u6570\u7684\u6620\u5c04\u8868\uff0c\u5b58\u50a8\u6240\u6709\u5b50\u547d\u4ee4\u7684\u6743\u9650\u7ea7\u522b\u8981\u6c42\u3002 \u5982\u679c\u5b50\u547d\u4ee4\u4e0d\u5728\u6620\u5c04\u8868\u4e2d\uff0c\u5c06\u4f7f\u7528 1 \u4f5c\u4e3a\u9ed8\u8ba4\u7684\u6743\u9650\u7b49\u7ea7\u8981\u6c42

\u4f8b\u5982\uff0c\u5728\u9ed8\u8ba4\u914d\u7f6e\u4e2d\uff0c\"back\" \u88ab\u6620\u5c04\u5230 2\uff0c \u8fd9\u610f\u5473\u7740 !!pb back \u547d\u4ee4\u9700\u8981\u6743\u9650\u7ea7\u522b >=2 \u624d\u80fd\u6267\u884c\u3002

  • \u7c7b\u578b\uff1aDict[str, int]
"},{"location":"zh/config/#confirm_time_wait","title":"confirm_time_wait","text":"

\u6709\u4e00\u4e9b\u547d\u4ee4\u9700\u8981\u7528\u6237\u8f93\u5165 !!pb confirm \u624d\u53ef\u7ee7\u7eed\u6267\u884c\u3002 \u8fd9\u91cc\u5b9a\u4e49\u4e86\u8fd9\u4e9b\u547d\u4ee4\u7684\u6700\u957f\u7b49\u5f85\u65f6\u95f4

\u82e5\u7b49\u5f85\u8d85\u65f6\uff0c\u5219\u547d\u4ee4\u5c06\u88ab\u53d6\u6d88\u6267\u884c

  • \u7c7b\u578b\uff1aDuration
  • \u9ed8\u8ba4\u503c\uff1a\"1m\"
"},{"location":"zh/config/#backup_on_restore","title":"backup_on_restore","text":"

\u5728\u56de\u6863\u81f3\u6307\u5b9a\u5907\u4efd\u524d\uff0c\u662f\u5426\u8981\u81ea\u52a8\u521b\u5efa\u4e00\u4e2a\u5907\u4efd\u3002\u8fd9\u4e00\u7c7b\u5907\u4efd\u88ab\u79f0\u4e3a\u201c\u56de\u6863\u524d\u5907\u4efd\u201d\uff0c\u7c7b\u578b\u4e3a\u4e34\u65f6\u5907\u4efd

\u8fd9\u662f\u4e00\u9053\u4e3a\u90a3\u4e9b\u50bb\u74dc\u7528\u6237\u51c6\u5907\u7684\u5b89\u5168\u4fdd\u969c

  • \u7c7b\u578b\uff1abool
  • \u9ed8\u8ba4\u503c\uff1atrue
"},{"location":"zh/config/#restore_countdown_sec","title":"restore_countdown_sec","text":"

\u5728\u56de\u6863\u65f6\uff0c\u5173\u95ed Minecraft \u670d\u52a1\u5668\u524d\uff0c\u6267\u884c\u5012\u8ba1\u65f6\u7684\u6301\u7eed\u79d2\u6570

  • \u7c7b\u578b\uff1aint
  • \u9ed8\u8ba4\u503c\uff1a10
"},{"location":"zh/config/#\u670d\u52a1\u5668\u914d\u7f6e","title":"\u670d\u52a1\u5668\u914d\u7f6e","text":"

\u4e0e Minecraft \u670d\u52a1\u5668\u4ea4\u4e92\u76f8\u5173\u7684\u9009\u9879

{\n    \"turn_off_auto_save\": true,\n    \"commands\": {\n        \"save_all_worlds\": \"save-all flush\",\n        \"auto_save_off\": \"save-off\",\n        \"auto_save_on\": \"save-on\"\n    },\n    \"saved_world_regex\": [\n        \"Saved the game\",\n        \"Saved the world\"\n    ],\n    \"save_world_max_wait\": \"10m\"\n}\n
"},{"location":"zh/config/#turn_off_auto_save","title":"turn_off_auto_save","text":"

\u662f\u5426\u5e94\u5728\u8fdb\u884c\u5907\u4efd\u4e4b\u524d\u5173\u95ed\u81ea\u52a8\u4fdd\u5b58

\u7531\u4e8e\u5173\u95ed\u81ea\u52a8\u4fdd\u5b58\u53ef\u4ee5\u786e\u4fdd\u5728\u5907\u4efd\u671f\u95f4\uff0cMinecraft \u5b58\u6863\u6587\u4ef6\u4e0d\u4f1a\u53d1\u751f\u53d8\u5316\uff0c\u56e0\u6b64\u5efa\u8bae\u5c06\u6b64\u9009\u9879\u8bbe\u7f6e\u4e3a true

  • \u7c7b\u578b\uff1abool
  • \u9ed8\u8ba4\u503c\uff1atrue
"},{"location":"zh/config/#commands","title":"commands","text":"

Prime Backup \u4f7f\u7528\u7684 Minecraft \u6307\u4ee4\u7684\u96c6\u5408\u3002\u76ee\u524d\u5b83\u4eec\u4ec5\u5728\u521b\u5efa\u5907\u4efd\u671f\u95f4\u4f7f\u7528

Prime Backup \u5728\u521b\u5efa\u5907\u4efd\u65f6\u7684\u64cd\u4f5c\u65f6\u5e8f\u5982\u4e0b\uff1a

  1. \u5982\u679c\u914d\u7f6e turn_off_auto_save \u4e3a true\uff0c\u5219\u4f7f\u7528\u5b50\u914d\u7f6e auto_save_off \u5b58\u50a8\u7684\u547d\u4ee4\u5173\u95ed\u81ea\u52a8\u4fdd\u5b58
  2. \u4f7f\u7528\u5b50\u914d\u7f6e save_all_worlds \u5b58\u50a8\u7684\u547d\u4ee4\uff0c\u89e6\u53d1\u670d\u52a1\u5668\u4fdd\u5b58
  3. \u7b49\u5f85\u76f4\u5230\u4e16\u754c\u4fdd\u5b58\u5b8c\u6bd5\uff0c\u5373\u670d\u52a1\u5668\u8f93\u51fa\u4e0e saved_world_regex \u7684\u67d0\u4e00\u4e2a\u6b63\u5219\u8868\u8fbe\u5f0f\u6210\u529f\u5339\u914d
  4. \u521b\u5efa\u5907\u4efd
  5. \u5982\u679c\u914d\u7f6e turn_off_auto_save \u4e3a true\uff0c\u5219\u4f7f\u7528\u5b50\u914d\u7f6e auto_save_on \u5b58\u50a8\u7684\u547d\u4ee4\u6253\u5f00\u81ea\u52a8\u4fdd\u5b58
"},{"location":"zh/config/#saved_world_regex","title":"saved_world_regex","text":"

\u4e00\u4e2a\u6b63\u5219\u8868\u8fbe\u5f0f\u5217\u8868\uff0c\u7528\u4e8e\u8bc6\u522b\u670d\u52a1\u5668\u662f\u5426\u5df2\u4fdd\u5b58\u5b8c\u6210

Note

\u6b63\u5219\u8868\u8fbe\u5f0f\u5c06\u5bf9\u670d\u52a1\u7aef\u6d88\u606f\u8f93\u51fa\u6267\u884c \u5168\u4e32\u5339\u914d \u68c0\u67e5

  • \u7c7b\u578b\uff1aList[re.Pattern]
"},{"location":"zh/config/#save_world_max_wait","title":"save_world_max_wait","text":"

\u5728\u521b\u5efa\u5907\u4efd\u671f\u95f4\uff0c\u7b49\u5f85\u4e16\u754c\u4fdd\u5b58\u5b8c\u6210\u7684\u6700\u957f\u7b49\u5f85\u65f6\u95f4

  • \u7c7b\u578b\uff1aDuration
  • \u9ed8\u8ba4\u503c\uff1a\"10m\"
"},{"location":"zh/config/#\u5907\u4efd\u914d\u7f6e","title":"\u5907\u4efd\u914d\u7f6e","text":"

\u4e0e\u521b\u5efa\u914d\u7f6e\u5177\u4f53\u7ec6\u8282\u76f8\u5173\u7684\u914d\u7f6e

{\n    \"source_root\": \"./server\",\n    \"source_root_use_mcdr_working_directory\": false,\n    \"targets\": [\n        \"world\"\n    ],\n    \"ignored_files\": [\n        \"session.lock\"\n    ],\n    \"follow_target_symlink\": false,\n    \"hash_method\": \"xxh128\",\n    \"compress_method\": \"zstd\",\n    \"compress_threshold\": 64\n}\n
"},{"location":"zh/config/#source_root","title":"source_root","text":"

\u8fdb\u884c\u5907\u4efd/\u8fd8\u539f\u64cd\u4f5c\u7684\u6839\u76ee\u5f55

\u901a\u5e38\u5e94\u8be5\u662f MCDR \u7684 \u5de5\u4f5c\u76ee\u5f55\uff0c \u5373\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u7684 server \u76ee\u5f55

  • \u7c7b\u578b\uff1astr
  • \u9ed8\u8ba4\u503c\uff1a\"./server\"
"},{"location":"zh/config/#source_root_use_mcdr_working_directory","title":"source_root_use_mcdr_working_directory","text":"

\u82e5\u8bbe\u7f6e\u4e3a true\uff0c\u5219\u4f7f\u7528 MCDR \u7684\u5de5\u4f5c\u8def\u5f84\u4f5c\u4e3a source_root \u7684\u503c\u3002 \u6b64\u65f6\uff0c\u914d\u7f6e\u6587\u4ef6\u4e2d source_root \u952e\u7684\u503c\u5c06\u88ab\u5ffd\u7565

  • \u7c7b\u578b\uff1abool
  • \u9ed8\u8ba4\u503c\uff1afalse
"},{"location":"zh/config/#targets","title":"targets","text":"

\u8981\u5907\u4efd\u7684\u76ee\u6807\u6587\u4ef6/\u76ee\u5f55

\u901a\u5e38\u6765\u8bb2\uff0c\u4f60\u9700\u8981\u5728\u6574\u7406\u6dfb\u52a0\u4f60\u7684\u5b58\u6863\u6587\u4ef6\u5939\u7684\u540d\u5b57

\u4f8b\u5982\uff0c\u5bf9\u4e8e\u50cf bukkit \u90a3\u6837\u628a\u6bcf\u4e2a\u7ef4\u5ea6\u5b58\u5728\u72ec\u7acb\u7684\u6587\u4ef6\u5939\u91cc\u7684\u670d\u52a1\u5668\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u8fd9\u4e48\u914d\u7f6e\uff1a

\"targets\": [\n    \"world\",\n    \"world_nether\",\n    \"world_the_end\"\n]\n
  • \u7c7b\u578b\uff1aList[str]
"},{"location":"zh/config/#ignored_files","title":"ignored_files","text":"

\u5728\u5907\u4efd\u65f6\u5ffd\u7565\u7684\u6587\u4ef6\u540d\u5217\u8868\uff0c\u9ed8\u8ba4\u4ec5\u5305\u542b session.lock \u4ee5\u89e3\u51b3 Windows \u4e0b session.lock \u88ab\u670d\u52a1\u7aef\u5360\u7528\u5bfc\u81f4\u5907\u4efd\u5931\u8d25\u7684\u95ee\u9898

\u82e5\u6587\u4ef6\u540d\u5b57\u7b26\u4e32\u4ee5 * \u5f00\u5934\uff0c\u5219\u5c06\u5ffd\u7565\u4ee5\u6307\u5b9a\u5b57\u7b26\u4e32\u7ed3\u5c3e\u7684\u6587\u4ef6\uff0c \u5982 *.test \u8868\u793a\u5ffd\u7565\u6240\u6709\u4ee5 .test \u7ed3\u5c3e\u7684\u6587\u4ef6\uff0c\u5982 a.test

\u82e5\u6587\u4ef6\u540d\u5b57\u7b26\u4e32\u4ee5 * \u7ed3\u5c3e\uff0c\u5219\u5c06\u5ffd\u7565\u4ee5\u6307\u5b9a\u5b57\u7b26\u4e32\u5f00\u5934\u7684\u6587\u4ef6\uff0c \u5982 temp* \u8868\u793a\u5ffd\u7565\u6240\u6709\u4ee5 temp \u5f00\u5934\u7684\u6587\u4ef6\uff0c\u5982 tempfile

  • \u7c7b\u578b\uff1aList[str]
"},{"location":"zh/config/#follow_target_symlink","title":"follow_target_symlink","text":"

\u5728\u8bbe\u4e3a true \u65f6\uff0c\u5bf9\u4e8e\u7c7b\u578b\u4e3a\u7b26\u53f7\u94fe\u63a5\u7684 \u5907\u4efd\u76ee\u6807\uff0c Prime Backup \u9664\u4e86\u4f1a\u521b\u5efa\u5b83\u4eec\u7684\u5907\u4efd\u5916\uff0c \u8fd8\u4f1a\u628a\u7b26\u53f7\u94fe\u63a5\u7684\u5b9e\u9645\u76ee\u6807\u5305\u62ec\u5728\u5907\u4efd\u76ee\u6807\u4e2d

\u4f8b\u5982\uff0c\u5bf9\u4e8e\u4ee5\u4e0b\u7b26\u53f7\u94fe\u63a5\u5173\u7cfb\u56fe\uff1a

world --> foo --> bar\n^\n\u5907\u4efd\u76ee\u6807\n

Prime Backup \u9664\u4e86\u4f1a\u4fdd\u5b58 world \u8fd9\u4e2a\u7b26\u53f7\u94fe\u63a5\u5916\uff0c\u8fd8\u4f1a\u4fdd\u5b58 foo \u7b26\u53f7\u94fe\u63a5\uff0c\u548c\u6700\u7ec8\u7684\u7684 bar \u6587\u4ef6\u5939

  • \u7c7b\u578b\uff1abool
  • \u9ed8\u8ba4\u503c\uff1afalse
"},{"location":"zh/config/#hash_method","title":"hash_method","text":"

\u5bf9\u6587\u4ef6\u8fdb\u884c\u54c8\u5e0c\u65f6\u6240\u4f7f\u7528\u7684\u7b97\u6cd5\u3002\u53ef\u7528\u9009\u9879\uff1a\"xxh128\"\u3001\"sha256\"\u3001\"blake3\"

\u54c8\u5e0c\u7b97\u6cd5 \u63cf\u8ff0 \u901f\u5ea6 \u5bc6\u7801\u5b66\u5b89\u5168\u6027 xxh128 \u4e00\u79cd\u6781\u5feb\u7684\u3001\u9ad8\u8d28\u91cf\u7684 128 \u4f4d\u54c8\u5e0c\u7b97\u6cd5\uff0c\u4e0d\u63d0\u4f9b\u5bc6\u7801\u5b66\u5b89\u5168\u6027\u3002\u63a8\u8350\u4f7f\u7528\uff0c\u9664\u975e\u4f60\u60f3\u8981\u7406\u8bba\u4e0a\u7684\u6781\u7aef\u5b89\u5168 \u2605\u2605\u2605\u2605\u2605 sha256 \u4e00\u79cd\u5e7f\u6cdb\u4f7f\u7528\u7684\u3001\u5bc6\u7801\u5b66\u5b89\u5168\u7684 256 \u4f4d\u54c8\u5e0c\u7b97\u6cd5\u3002\u5b83\u6bd4 xxh128 \u6162\uff0c\u4f46\u5982\u679c CPU \u5e26\u786c\u4ef6\u52a0\u901f\u7684\u8bdd\u4e5f\u4e0d\u4f1a\u592a\u6162 \u2605\u2605 blake3 \u4e00\u79cd\u9ad8\u6548\u7684\u3001\u5bc6\u7801\u5b66\u5b89\u5168\u7684\u54c8\u5e0c\u7b97\u6cd5\u3002\u6bd4 sha256 \u5feb\u5f88\u591a\uff0c\u4f46\u662f\u4f9d\u7136\u6bd4 xxh128 \u6162 \u2605\u2605\u2605\u2606

Note

\u5982\u679c\u4f60\u60f3\u4f7f\u7528 blake3 \u4f5c\u4e3a\u54c8\u5e0c\u7b97\u6cd5\uff0c\u4f60\u9700\u8981\u624b\u52a8\u5b89\u88c5 blake3 Python \u5e93\u3002 \u5b83\u5e76\u4e0d\u5305\u542b\u5728\u9ed8\u8ba4\u7684 Python \u4f9d\u8d56\u5217\u8868\u4e2d\uff0c\u56e0\u4e3a\u5b83\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u53ef\u80fd\u9700\u8981 rust \u73af\u5883\u6765\u6784\u5efa\u5b89\u88c5

pip3 install blake3\n
  • \u7c7b\u578b\uff1astr
  • \u9ed8\u8ba4\u503c\uff1a\"xxh128\"
"},{"location":"zh/config/#compress_method","title":"compress_method","text":"

\u5728\u50a8\u5b58\u5907\u4efd\u4e2d\u7684\u6587\u4ef6\u65f6\uff0c\u6240\u4f7f\u7528\u7684\u538b\u7f29\u65b9\u6cd5

\u538b\u7f29\u65b9\u6cd5 \u63cf\u8ff0 \u901f\u5ea6 \u538b\u7f29\u7387 plain \u65e0\u538b\u7f29\uff0c\u76f4\u63a5\u590d\u5236\u3002\u82e5\u6587\u4ef6\u7cfb\u7edf\u652f\u6301\uff0c\u5c06\u4f7f\u7528\u5199\u65f6\u590d\u5236\u6280\u672f\u8fdb\u884c\u6587\u4ef6\u590d\u5236 \u2605\u2605\u2605\u2605\u2605 \u2606 gzip \u57fa\u4e8e zlib \u7684 gzip \u5e93\u3002.gz \u6587\u4ef6\u540c\u6b3e\u683c\u5f0f \u2605\u2605 \u2605\u2605\u2605\u2605 lzma LZMA \u7b97\u6cd5\u3002.xz \u6587\u4ef6\u540c\u6b3e\u683c\u5f0f\u3002\u63d0\u4f9b\u6700\u4f73\u7684\u538b\u7f29\u7387\uff0c\u4f46\u662f\u901f\u5ea6\u975e\u5e38\u6162 \u2606 \u2605\u2605\u2605\u2605\u2605 zstd Zstandard \u7b97\u6cd5\u3002\u4e00\u4e2a\u4f18\u79c0\u7684\u538b\u7f29\u7b97\u6cd5\uff0c\u5728\u901f\u5ea6\u548c\u538b\u7f29\u7387\u95f4\u53d6\u5f97\u4e86\u8f83\u597d\u7684\u5e73\u8861\u3002\u63a8\u8350\u4f7f\u7528 \u2605\u2605\u2605\u2606 \u2605\u2605\u2605\u2605 lz4 LZ4 \u7b97\u6cd5\u3002\u6bd4 Zstandard \u5feb\uff0c\u89e3\u538b\u901f\u5ea6\u975e\u5e38\u5feb\uff0c\u4f46\u662f\u538b\u7f29\u7387\u76f8\u5bf9\u8f83\u4f4e \u2605\u2605\u2605\u2605 \u2605\u2605\u2606

Warning

\u66f4\u6539 compress_method \u53ea\u4f1a\u5f71\u54cd\u65b0\u5907\u4efd\u4e2d\u7684\u65b0\u6587\u4ef6\uff08\u5373\u65b0\u7684\u6570\u636e\u5bf9\u8c61\uff09

Note

\u5982\u679c\u4f60\u60f3\u4f7f\u7528 lz4 \u4f5c\u4e3a\u538b\u7f29\u65b9\u6cd5\uff0c\u4f60\u9700\u8981\u624b\u52a8\u5b89\u88c5 lz4 Python \u5e93

pip3 install lz4\n
  • \u7c7b\u578b\uff1astr
  • \u9ed8\u8ba4\u503c\uff1a\"zstd\"
"},{"location":"zh/config/#compress_threshold","title":"compress_threshold","text":"

\u5bf9\u4e8e\u5927\u5c0f\u5c0f\u4e8e compress_threshold \u7684\u6587\u4ef6\uff0c\u4e0d\u5f03\u7528\u538b\u7f29\u3002\u5b83\u4eec\u5c06\u4ee5 plain \u683c\u5f0f\u5b58\u50a8

Warning

\u66f4\u6539 compress_threshold \u53ea\u4f1a\u5f71\u54cd\u65b0\u5907\u4efd\u4e2d\u7684\u65b0\u6587\u4ef6\uff08\u5373\u65b0\u7684\u6570\u636e\u5bf9\u8c61\uff09

  • \u7c7b\u578b\uff1aint
  • \u9ed8\u8ba4\u503c\uff1a64
"},{"location":"zh/config/#\u5b9a\u65f6\u5907\u4efd\u914d\u7f6e","title":"\u5b9a\u65f6\u5907\u4efd\u914d\u7f6e","text":"

\u5b9a\u65f6\u5907\u4efd\u529f\u80fd\u7684\u914d\u7f6e

\u8be5\u529f\u80fd\u4f1a\u5b9a\u671f\u4e3a\u670d\u52a1\u5668\u81ea\u52a8\u521b\u5efa\u5907\u4efd

{\n    \"enabled\": false,\n    \"interval\": \"12h\",\n    \"crontab\": null,\n    \"jitter\": \"10s\",\n    \"reset_timer_on_backup\": true,\n    \"require_online_players\": false,\n    \"require_online_players_blacklist\": []\n}\n
"},{"location":"zh/config/#enabled-interval-crontab-jitter","title":"enabled, interval, crontab, jitter","text":"

\u89c1 \u5b9a\u65f6\u4f5c\u4e1a\u914d\u7f6e \u5c0f\u8282

"},{"location":"zh/config/#reset_timer_on_backup","title":"reset_timer_on_backup","text":"

\u662f\u5426\u5728\u6bcf\u6b21\u624b\u52a8\u5907\u4efd\u65f6\u91cd\u7f6e\u8ba1\u5212\u5b9a\u65f6\u5668

\u8be5\u529f\u80fd\u4ec5\u5728\u5b9a\u65f6\u5907\u4efd\u4f5c\u4e1a\u4f7f\u7528\u95f4\u9694\u6a21\u5f0f\u7684\u5b9a\u65f6\u5668\u7684\u65f6\u5019\uff0c\u624d\u6709\u6548\u679c

  • \u7c7b\u578b\uff1abool
  • \u9ed8\u8ba4\u503c\uff1atrue
"},{"location":"zh/config/#require_online_players","title":"require_online_players","text":"

\u82e5\u8bbe\u4e3a true\uff0c\u5219\u53ea\u6709\u5728\u670d\u52a1\u5668\u4e2d\u5b58\u5728\u73a9\u5bb6\u65f6\uff0c\u624d\u6b63\u5e38\u8fdb\u884c\u5b9a\u65f6\u5907\u4efd\u3002 \u5982\u679c\u6240\u6709\u73a9\u5bb6\u5747\u5df2\u79bb\u7ebf\uff0c\u5219\u5728\u4e0b\u4e00\u6b21\u5b9a\u65f6\u5907\u4efd\u5b8c\u6210\u540e\uff0c\u4e4b\u540e\u7684\u5b9a\u65f6\u5907\u4efd\u90fd\u4f1a\u88ab\u8df3\u8fc7\u3002 \u4e5f\u5c31\u662f\u8bf4\uff0cPrime Backup \u5728\u6ca1\u6709\u73a9\u5bb6\u5728\u7ebf\u4e0a\u65f6\uff0c\u53ea\u4f1a\u89e6\u53d1\u4e00\u6b21\u5b9a\u65f6\u5907\u4efd

\u65f6\u95f4\u7ebf\u4e3e\u4f8b\uff1a

flowchart LR\n    subgraph g1[\u6709\u73a9\u5bb6\u5728\u7ebf]\n    b1[8:00\\n\u5907\u4efd\u521b\u5efa] --> b2\n    end\n\n    subgraph g2[\u65e0\u73a9\u5bb6\u5728\u7ebf]\n    b2[9:00\\n\u5907\u4efd\u521b\u5efa] --> b3\n    b3[10:00\\n\u5907\u4efd\u521b\u5efa] --> b4:::disabled\n    b4[11:00\\n\u5907\u4efd\u8df3\u8fc7] --> b5:::disabled\n    end\n\n    subgraph g3[\u6709\u73a9\u5bb6\u5728\u7ebf]\n    b5[12:00\\n\u5907\u4efd\u8df3\u8fc7] --> b6\n    b6[13:00\\n\u5907\u4efd\u521b\u5efa]\n    end\n\n    classDef disabled fill:#eee,stroke:#aaa,color:gray\n

Note

\u8be5\u529f\u80fd\u9700\u8981 Prime Backup \u63d2\u4ef6\u5728 \u670d\u52a1\u5668\u542f\u52a8\u524d \u5c31\u88ab\u52a0\u8f7d\u3002 \u8fd9\u662f\u5fc5\u9700\u7684\uff0c\u4ee5\u4fbf Prime Backup \u80fd\u591f\u6b63\u786e\u8ba1\u7b97\u5728\u7ebf\u73a9\u5bb6\u6570\u91cf

\u5982\u679c Prime Backup \u63d2\u4ef6\u662f\u5728\u670d\u52a1\u5668\u8fd0\u884c\u8fc7\u7a0b\u4e2d\u88ab\u52a0\u8f7d\u7684\uff0c \u73a9\u5bb6\u68c0\u6d4b\u529f\u80fd\u5c06\u88ab\u7981\u7528\uff0c\u5c31\u5982\u540c require_online_players \u88ab\u8bbe\u7f6e\u4e3a\u4e86 false \u4e00\u6837\u3002

\u7279\u4f8b\uff1a\u5982\u679c\u5b58\u5728 MinecraftDataAPI \u63d2\u4ef6\uff0c \u90a3\u4e48 Prime Backup \u5c06\u5229\u7528\u5176 API \u52a8\u6001\u5730\u67e5\u8be2\u5728\u7ebf\u73a9\u5bb6\uff0c\u6b64\u65f6\u4e0a\u8ff0\u9700\u6c42\u5c06\u4e0d\u518d\u5b58\u5728

Note

\u5bf9\u4e8e\u90a3\u4e9b\u884c\u4e3a\u8868\u73b0\u8fc7\u4e8e\u4e0d\u539f\u7248\u7684\u670d\u52a1\u5668\uff0cPrime Backup \u7684\u73a9\u5bb6\u5728\u7ebf\u8ba1\u7b97\u903b\u8f91\u53ef\u80fd\u65e0\u6cd5\u6b63\u5e38\u5de5\u4f5c

Tip

\u7531\u4e8e Prime Backup \u652f\u6301\u6587\u4ef6\u53bb\u91cd\u548c\u9ad8\u53ef\u81ea\u5b9a\u4e49\u7684 \u6e05\u7406\u914d\u7f6e \u529f\u80fd\uff0c \u5373\u4f7f\u5728\u73a9\u5bb6\u4e0d\u5728\u7ebf\u4e5f\u7167\u5e38\u8fdb\u884c\u5b9a\u65f6\u5907\u4efd\uff0c\u4e5f\u4e0d\u4f1a\u5360\u7528\u8fc7\u591a\u7684\u78c1\u76d8\u7a7a\u95f4

  • \u7c7b\u578b\uff1abool
  • \u9ed8\u8ba4\u503c\uff1afalse
"},{"location":"zh/config/#require_online_players_blacklist","title":"require_online_players_blacklist","text":"

\u5728 require_online_players \u5224\u65ad\u662f\u5426\u5b58\u5728\u73a9\u5bb6\u5728\u7ebf\u65f6\uff0c \u6392\u9664\u7684\u73a9\u5bb6\u540d\u6b63\u5219\u8868\u8fbe\u5f0f\u5217\u8868

\u5982\u679c\u4f60\u5e0c\u671b\u670d\u52a1\u5668\u4e2d\u53ea\u6709\u67d0\u4e9b\u73a9\u5bb6\u5728\u7ebf\u7684\u65f6\u5019\uff0c\u4e5f\u89c6\u4f5c\u670d\u52a1\u5668\u4e2d\u4e0d\u5b58\u5728\u73a9\u5bb6\uff0c \u4e0d\u8fdb\u884c\u5b9a\u65f6\u5907\u4efd\uff0c\u5219\u53ef\u4ee5\u4f7f\u7528\u8be5\u9009\u9879

\u914d\u7f6e\u4e3e\u4f8b\uff1a

\"require_online_players_blacklist\": [\n    \"bot_.*\",  // \u5339\u914d\u6240\u6709\u4ee5 \"bot_\" \u4e3a\u524d\u7f00\u7684\u73a9\u5bb6\u540d\n    \"Steve\"    // \u5339\u914d \"Steve\" \u8fd9\u4e2a\u73a9\u5bb6\u540d\n]\n

Note

\u5217\u8868\u4e2d\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\u5c06\u5bf9\u73a9\u5bb6\u540d\u6267\u884c \u5168\u4e32\u5339\u914d \u68c0\u67e5

\u5339\u914d\u65f6 \u5ffd\u7565\u5927\u5c0f\u5199

  • \u7c7b\u578b\uff1aList[re.Pattern]
  • \u9ed8\u8ba4\u503c\uff1a[]
"},{"location":"zh/config/#\u6e05\u7406\u914d\u7f6e","title":"\u6e05\u7406\u914d\u7f6e","text":"

Prime Backup \u7684\u5907\u4efd\u6e05\u7406\u529f\u80fd\u53ef\u7528\u4e8e\u81ea\u52a8\u6e05\u7406\u8fc7\u65f6\u5907\u4efd

{\n    \"enabled\": true,\n    \"interval\": \"3h\",\n    \"crontab\": null,\n    \"jitter\": \"20s\",\n    \"timezone_override\": null,\n    \"regular_backup\": {\n        \"enabled\": false,\n        \"max_amount\": 0,\n        \"max_lifetime\": \"0s\",\n        \"last\": -1,\n        \"hour\": 0,\n        \"day\": 0,\n        \"week\": 0,\n        \"month\": 0,\n        \"year\": 0\n    },\n    \"pre_restore_backup\": {\n        \"enabled\": true,\n        \"max_amount\": 10,\n        \"max_lifetime\": \"30d\",\n        \"last\": -1,\n        \"hour\": 0,\n        \"day\": 0,\n        \"week\": 0,\n        \"month\": 0,\n        \"year\": 0\n    }\n}\n

\u5b83\u5305\u542b\u4e24\u79cd\u6e05\u7406\u8bbe\u7f6e\uff0c\u5206\u522b\u9488\u5bf9\u4e8e\u5982\u4e0b\u4e24\u79cd\u7c7b\u578b\u7684\u5907\u4efd\uff1a

  • regular_backup: \u9488\u5bf9\u5e38\u89c4\u5907\u4efd\uff0c\u5373\u975e\u4e34\u65f6\u5907\u4efd
  • temporary_backup: \u9488\u5bf9\u4e34\u65f6\u5907\u4efd\uff0c\u5982\u56de\u6863\u524d\u7684\u5907\u4efd

\u6bcf\u79cd\u6e05\u7406\u8bbe\u7f6e\u90fd\u8be6\u7ec6\u63cf\u8ff0\u4e86\u5b58\u6863\u7684\u4fdd\u7559\u7b56\u7565

Prime Backup \u4f1a\u6267\u884c\u4ee5\u4e0b\u6b65\u9aa4\u6765\u51b3\u5b9a\u5220\u9664/\u4fdd\u7559\u54ea\u4e9b\u5907\u4efd

  1. \u4f7f\u7528 last, hour, day, week, month, year\uff0c \u57fa\u4e8e PBS \u4fdd\u7559\u7b56\u7565\uff0c\u7b5b\u9009\u51fa\u8981\u5220\u9664/\u4fdd\u7559\u7684\u5907\u4efd
  2. \u4f7f\u7528 max_amount\u3001max_lifetime \u8fd9\u4e24\u6761\u89c4\u5219\uff0c\u5728\u7b2c\u4e00\u6b65\u4fdd\u7559\u7684\u90a3\u4e9b\u5907\u4efd\u91cc\uff0c\u7b5b\u51fa\u90a3\u4e9b\u65e7\u7684\u548c\u8fc7\u671f\u7684\u5907\u4efd
  3. \u6536\u96c6\u4e0a\u8ff0\u4e24\u6b21\u7b5b\u9009\u8fc7\u7a0b\u4e2d\uff0c\u627e\u5230\u7684\u54ea\u4e9b\u9700\u8981\u5220\u9664\u7684\u5907\u4efd\uff0c\u5e76\u9010\u4e2a\u8fdb\u884c\u5220\u9664

\u5220\u9664\u5907\u4efd\u76f8\u5173\u7684\u51b3\u7b56\u7ed3\u679c\u4f1a\u4ee5\u65e5\u5fd7\u5f62\u5f0f\u50a8\u5b58\u5728 \u6570\u636e\u6839\u76ee\u5f55 \u7684 logs/prune.log \u6587\u4ef6\u91cc

prune.log
Backup #147 at 2023-12-10 21:49:09: keep=True reason=keep last 1\nBackup #146 at 2023-12-10 21:36:10: keep=True reason=keep last 2\nBackup #145 at 2023-12-10 21:26:25: keep=True reason=keep last 3\nBackup #144 at 2023-12-10 21:21:22: keep=False reason=superseded by 145 (hour)\nBackup #143 at 2023-12-10 21:16:19: keep=False reason=superseded by 145 (hour)\nBackup #142 at 2023-12-10 21:11:14: keep=False reason=superseded by 145 (hour)\nBackup #141 at 2023-12-10 21:05:06: keep=False reason=superseded by 145 (hour)\nBackup #140 at 2023-12-10 21:00:03: keep=True reason=protected\nBackup #139 at 2023-12-10 20:55:01: keep=True reason=keep hour 1\nBackup #138 at 2023-12-10 20:49:57: keep=False reason=superseded by 139 (hour)\nBackup #137 at 2023-12-10 20:44:53: keep=False reason=superseded by 139 (hour)\nBackup #136 at 2023-12-10 20:39:45: keep=False reason=superseded by 139 (hour)\nBackup #135 at 2023-12-10 20:34:41: keep=False reason=superseded by 139 (hour)\nBackup #128 at 2023-12-10 19:59:06: keep=True reason=keep hour 2\nBackup #116 at 2023-12-10 18:56:14: keep=True reason=keep hour 3\nBackup #104 at 2023-12-10 17:55:35: keep=False reason=superseded by 116 (day)\nBackup #22 at 2023-12-09 23:59:53: keep=True reason=keep day 1\n
"},{"location":"zh/config/#max_amount","title":"max_amount","text":"

\u5b9a\u4e49\u8981\u4fdd\u7559\u7684\u6700\u5927\u5907\u4efd\u6570\u91cf\uff0c\u4f8b\u5982 10 \u8868\u793a\u6700\u591a\u4fdd\u7559\u6700\u65b0\u7684 10 \u4e2a\u5907\u4efd

\u8bbe\u7f6e\u4e3a 0 \u8868\u793a\u65e0\u9650\u5236

  • \u7c7b\u578b\uff1aint
"},{"location":"zh/config/#max_lifetime","title":"max_lifetime","text":"

\u5b9a\u4e49\u6240\u6709\u5907\u4efd\u7684\u6700\u5927\u4fdd\u5b58\u65f6\u957f\u3002\u8d85\u51fa\u7ed9\u5b9a\u65f6\u957f\u7684\u5907\u4efd\u5c06\u88ab\u6e05\u7406

\u8bbe\u7f6e\u4e3a 0s \u8868\u793a\u65e0\u65f6\u957f\u9650\u5236

  • \u7c7b\u578b\uff1aDuration
"},{"location":"zh/config/#last-hour-day-week-month-year","title":"last, hour, day, week, month, year","text":"

\u4e00\u7ec4 PBS \u98ce\u683c\u7684\u6e05\u7406\u9009\u9879\uff0c\u7528\u4e8e\u63cf\u8ff0\u5907\u4efd\u7684\u5220\u9664/\u4fdd\u7559\u65b9\u5f0f

\u67e5\u770b \u6e05\u7406\u6a21\u62df\u5668 \u4e86\u89e3\u8fd9\u4e9b\u9009\u9879\u7684\u66f4\u591a\u89e3\u91ca

\u6e05\u7406\u6a21\u62df\u5668 \u4e5f\u53ef\u7528\u4e8e\u6a21\u62df\u5907\u4efd\u7684\u4fdd\u7559\u7b56\u7565

\u6ce8\u610f\uff1a\u503c 0 \u8868\u793a\u4e0d\u4e3a\u8be5\u533a\u95f4\u4fdd\u7559\u4efb\u4f55\u5907\u4efd\uff1b\u503c -1 \u8868\u793a\u8be5\u533a\u95f4\u53ef\u4ee5\u4fdd\u7559\u65e0\u9650\u591a\u7684\u5907\u4efd\uff0c\u4e0e\u8bbe\u4e3a\u6781\u5927\u503c\u7b49\u4ef7

  • \u7c7b\u578b\uff1aint
"},{"location":"zh/config/#enabled-interval-crontab-jitter_1","title":"enabled, interval, crontab, jitter","text":"

\u89c1 \u5b9a\u65f6\u4f5c\u4e1a\u914d\u7f6e \u5c0f\u8282

"},{"location":"zh/config/#timezone_override","title":"timezone_override","text":"

\u5728\u5907\u4efd\u6e05\u7406\u65f6\u6240\u4f7f\u7528\u7684\u65f6\u533a\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff08\u4f7f\u7528 null \u503c\uff09\uff0cPrime Backup \u5c06\u4f7f\u7528\u672c\u5730\u65f6\u533a

\u4f8b\u5b50\uff1anull, \"Asia/Shanghai\", \"US/Eastern\", \"Europe/Amsterdam\"

  • \u7c7b\u578b\uff1aOptional[str]
  • \u9ed8\u8ba4\u503c\uff1anull
"},{"location":"zh/config/#\u6570\u636e\u5e93\u914d\u7f6e","title":"\u6570\u636e\u5e93\u914d\u7f6e","text":"

Prime Backup \u6240\u4f7f\u7528\u7684 SQLite \u6570\u636e\u5e93\u7684\u76f8\u5173\u914d\u7f6e

{\n    \"compact\": {\n        \"enabled\": true,\n        \"interval\": null,\n        \"crontab\": \"0 7 * * *\",\n        \"jitter\": \"1m\"\n    },\n    \"backup\": {\n        \"enabled\": true,\n        \"interval\": null,\n        \"crontab\": \"0 6 * * 0\",\n        \"jitter\": \"1m\"\n    }\n}\n

\u5b50\u914d\u7f6e compact \u548c backup \u63cf\u8ff0\u4e86\u4e0e\u6570\u636e\u5e93\u76f8\u5173\u7684\u5b9a\u65f6\u4f5c\u4e1a

"},{"location":"zh/config/#compact","title":"compact","text":"

\u6570\u636e\u5e93\u7cbe\u7b80\u4f5c\u4e1a

\u5b83\u5bf9\u6570\u636e\u5e93\u4f7f\u7528\u4e86 VACUUM\u6307\u4ee4\uff0c \u4ee5\u7cbe\u7b80\u6570\u636e\u5e93\u6587\u4ef6\uff0c\u5e76\u91ca\u653e\u672a\u4f7f\u7528\u7684\u7a7a\u95f4

"},{"location":"zh/config/#backup","title":"backup","text":"

\u6570\u636e\u5e93\u5907\u4efd\u4f5c\u4e1a

\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0cPrime Backup \u4f1a\u5b9a\u671f\u5728 \u6570\u636e\u6839\u76ee\u5f55 \u5185\u7684 db_backup \u76ee\u5f55\u4e2d\u521b\u5efa\u6570\u636e\u5e93\u5907\u4efd\uff0c\u4ee5\u9632\u6570\u636e\u5e93\u6587\u4ef6\u635f\u574f\u800c\u5bfc\u81f4\u65e0\u6cd5\u8bbf\u95ee\u5907\u4efd

\u6570\u636e\u5e93\u5907\u4efd\u5c06\u4ee5 .tar.xz \u683c\u5f0f\u5b58\u50a8\uff0c\u4e0d\u4f1a\u5360\u7528\u592a\u591a\u7a7a\u95f4

"},{"location":"zh/config/#enabled-interval-crontab-jitter_2","title":"enabled, interval, crontab, jitter","text":"

\u89c1 \u5b9a\u65f6\u4f5c\u4e1a\u914d\u7f6e \u5c0f\u8282

"},{"location":"zh/config/#\u5b50\u914d\u7f6e\u9879\u8bf4\u660e","title":"\u5b50\u914d\u7f6e\u9879\u8bf4\u660e","text":""},{"location":"zh/config/#\u5b9a\u65f6\u4f5c\u4e1a\u914d\u7f6e","title":"\u5b9a\u65f6\u4f5c\u4e1a\u914d\u7f6e","text":"

\u4e00\u4e2a\u5b9a\u65f6\u4f5c\u4e1a\u76f8\u5173\u7684\u914d\u7f6e\uff0c\u7528\u4e8e\u63cf\u8ff0\u8be5\u4f5c\u4e1a\u4f1a\u5728\u4ec0\u4e48\u65f6\u5019\u6267\u884c\u3002\u6709\u4e24\u79cd\u6a21\u5f0f\uff1a

  • \u95f4\u9694\u6a21\u5f0f\uff1a\u6309\u7ed9\u5b9a\u7684\u65f6\u95f4\u95f4\u9694\u6267\u884c\u4f5c\u4e1a\u3002\u7b2c\u4e00\u6b21\u6267\u884c\u4e5f\u8981\u7b49\u5f85\u7ed9\u5b9a\u7684\u95f4\u9694
  • \u5b9a\u65f6\u6a21\u5f0f: \u5728\u7279\u5b9a\u65f6\u95f4\u6267\u884c\u4f5c\u4e1a\uff0c\u7531 crontab \u5b57\u7b26\u4e32\u63cf\u8ff0

\u82e5\u4f5c\u4e1a\u88ab\u542f\u7528\uff0c\u4f60\u5fc5\u987b\u9009\u62e9\u4e0a\u8ff0\u6a21\u5f0f\u4e4b\u4e00\uff0c\u5e76\u6b63\u786e\u8bbe\u7f6e\u76f8\u5173\u914d\u7f6e\u503c

// \u4f8b\u5b50\n{\n    \"enabled\": true,\n    \"interval\": \"1h\",\n    \"crontab\": null,\n    \"jitter\": \"10s\"\n}\n
"},{"location":"zh/config/#enabled_1","title":"enabled","text":"

\u4f5c\u4e1a\u7684\u5f00\u5173\u3002\u8bbe\u4e3a true \u4ee5\u542f\u7528\u8be5\u4f5c\u4e1a\uff0c\u8bbe\u4e3a false \u4ee5\u7981\u7528\u8be5\u5b9a\u65f6\u4f5c\u4e1a

  • \u7c7b\u578b\uff1abool
"},{"location":"zh/config/#interval","title":"interval","text":"

\u5728\u95f4\u9694\u6a21\u5f0f\u4e2d\u4f7f\u7528\u3002\u4e24\u6b21\u4efb\u52a1\u4e4b\u95f4\u7684\u65f6\u95f4\u95f4\u9694

\u82e5\u4f5c\u4e1a\u672a\u4f7f\u7528\u95f4\u9694\u6a21\u5f0f\uff0c\u5176\u503c\u5e94\u4e3a null

  • \u7c7b\u578b\uff1aOptional[str]
"},{"location":"zh/config/#crontab","title":"crontab","text":"

\u5728\u5b9a\u65f6\u6a21\u5f0f\u4e2d\u4f7f\u7528\u3002\u63cf\u8ff0\u5b9a\u65f6\u8ba1\u5212\u7684\u4e00\u4e2a crontab \u5b57\u7b26\u4e32

\u4f60\u53ef\u4ee5\u4f7f\u7528 https://crontab.guru/ \u6765\u521b\u5efa\u4e00\u4e2a crontab \u5b57\u7b26\u4e32

\u82e5\u4f5c\u4e1a\u672a\u4f7f\u7528\u5b9a\u65f6\u6a21\u5f0f\uff0c\u5176\u503c\u5e94\u4e3a null

  • \u7c7b\u578b\uff1aOptional[str]
"},{"location":"zh/config/#jitter","title":"jitter","text":"

\u4e24\u6b21\u4f5c\u4e1a\u4e4b\u95f4\uff0c\u6267\u884c\u4e4b\u95f4\u7684\u6296\u52a8

\u4e0b\u4e00\u4e2a\u4efb\u52a1\u7684\u5b9e\u9645\u6267\u884c\u65f6\u95f4\uff0c\u5c06\u5728\u8303\u56f4 [0, jitter] \u5185\u8fdb\u884c\u968f\u673a\u504f\u79fb

\u8bbe\u7f6e\u4e3a \"0s\" \u8868\u793a\u65e0\u6296\u52a8

  • \u7c7b\u578b\uff1astr
"},{"location":"zh/config/#\u7279\u6b8a\u7684\u503c\u7c7b\u578b","title":"\u7279\u6b8a\u7684\u503c\u7c7b\u578b","text":""},{"location":"zh/config/#duration","title":"Duration","text":"

\u4f7f\u7528\u5b57\u7b26\u4e32\u63cf\u8ff0\u7684\u65f6\u95f4\u6301\u7eed\u957f\u5ea6\uff0c\u5982\uff1a\"3s\"\u3001\"15m\"

Duration \u7531\u4e24\u90e8\u5206\u7ec4\u6210\uff1a\u6570\u5b57\u548c\u65f6\u95f4\u5355\u4f4d\u3002

\u5bf9\u4e8e\u6570\u5b57\u90e8\u5206\uff0c\u5b83\u53ef\u4ee5\u662f\u6574\u6570\u6216\u6d6e\u70b9\u6570

\u5bf9\u4e8e\u5355\u4f4d\u90e8\u5206\uff0c\u53c2\u89c1\u4e0b\u8868\uff1a

\u5355\u4f4d \u63cf\u8ff0 \u7b49\u4ef7\u4e8e \u79d2\u6570 ms \u6beb\u79d2 0.001 \u79d2 0.001 s, sec \u79d2 1 \u79d2 1 m, min \u5206\u949f 60 \u79d2 60 h, hour \u5c0f\u65f6 60 \u5206\u949f 3600 d, day \u5929 24 \u5c0f\u65f6 86400 mon, month \u6708 30 \u5929 2592000 y, year \u5e74 365 \u5929 31536000"},{"location":"zh/quick_start/","title":"\u5feb\u901f\u4e0a\u624b","text":""},{"location":"zh/quick_start/#\u5b89\u88c5","title":"\u5b89\u88c5","text":""},{"location":"zh/quick_start/#\u51c6\u5907-mcdr","title":"\u51c6\u5907 MCDR","text":"

Prime Backup \u662f\u4e00\u4e2a MCDReforged \u63d2\u4ef6\uff0c \u5b83\u9700\u8981 mcdreforged>=2.12 \u624d\u80fd\u8fd0\u884c

\u8981\u5b89\u88c5/\u66f4\u65b0 MCDReforged\uff0c\u4f60\u53ef\u4ee5\u8fd0\u884c\uff1a

pip3 install mcdreforged>=2.12 -U\n

\u8be6\u89c1 MCDR \u7684\u76f8\u5173\u6587\u6863

"},{"location":"zh/quick_start/#\u5b89\u88c5-python-\u4f9d\u8d56","title":"\u5b89\u88c5 Python \u4f9d\u8d56","text":"

Prime Backup \u9700\u8981\u4e00\u4e9b python \u5e93\u624d\u80fd\u8fd0\u884c\uff0c\u5b83\u4eec\u90fd\u88ab\u5217\u5728\u4e86 GitHub \u4ed3\u5e93 \u6839\u76ee\u5f55\u7684 requirements.txt \u6587\u4ef6\u4e2d

requirements.txt
# core\nmcdreforged>=2.12.0\npsutil\npytz\nxxhash>=3\nSQLAlchemy>=2\nAPScheduler>=3.8,<4\n\n# compress\nzstandard\n

\u4f7f\u7528\u547d\u4ee4 pip3 install -r requirements.txt \u5373\u53ef\u5b89\u88c5\u6240\u6709\u9700\u8981\u7684 Python \u4f9d\u8d56

\u9664\u6b64\u4e4b\u5916\uff0c\u4f60\u4e5f\u53ef\u4ee5\u4f7f\u7528\u4ee5\u4e0b\u6307\u4ee4\u4e00\u952e\u5b89\u88c5\u6240\u6709\u9700\u8981\u7684 Python \u4f9d\u8d56

pip3 install -r https://tisunion.github.io/PrimeBackup/requirements.txt\n
"},{"location":"zh/quick_start/#\u53ef\u9009\u4f9d\u8d56","title":"\u53ef\u9009\u4f9d\u8d56","text":"

\u4e00\u4e9b Prime Backup \u529f\u80fd\u6240\u9700\u8981\u7684 Python \u5e93\u5e76\u6ca1\u6709\u5728 requirements.txt \u4e2d\u5217\u51fa\uff0c \u56e0\u4e3a\u5728\u67d0\u4e9b\u73af\u5883\u4e0b\u5b89\u88c5\u8fd9\u4e9b\u4f9d\u8d56\u5e93\u53ef\u80fd\u4f1a \u82b1\u4e0d\u5c11\u529f\u592b

\u5982\u679c\u4f60\u60f3\u89e3\u9501 Prime Backup \u7684\u5168\u90e8\u529f\u80fd\u7279\u6027\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4\uff1a

pip3 install -r https://tisunion.github.io/PrimeBackup/requirements.optional.txt\n

\u8fd9\u4e9b\u53ef\u9009\u7684\u4f9d\u8d56\u4e5f\u88ab\u5217\u5728\u4e86 requirements.optional.txt \u91cc

requirements.optional.txt
# hash\nblake3\n\n# compress\nlz4\n
"},{"location":"zh/quick_start/#\u5b89\u88c5\u63d2\u4ef6","title":"\u5b89\u88c5\u63d2\u4ef6","text":"

\u4ece GitHub Release \u4e0b\u8f7d Prime Backup \u63d2\u4ef6\uff0c \u5e76\u5c06\u5176\u653e\u5165 MCDR \u7684\u63d2\u4ef6\u6587\u4ef6\u5939\u4e2d\uff0c\u7136\u540e\u6267\u884c MCDR \u63d2\u4ef6\u91cd\u8f7d \u64cd\u4f5c

"},{"location":"zh/quick_start/#\u914d\u7f6e","title":"\u914d\u7f6e","text":"

\u5728\u4f7f\u7528 Prime Backup \u4e4b\u524d\uff0c\u4f60\u9700\u8981\u6b63\u786e\u914d\u7f6e\u5176\u914d\u7f6e\u6587\u4ef6\uff0c\u624d\u53ef\u8ba9\u5176\u5de5\u4f5c

\u522b\u7740\u6025\uff0c\u5bf9\u4e8e\u5927\u591a\u6570\u914d\u7f6e\u9009\u9879\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u9ed8\u8ba4\u503c\u3002 \u4f46\u8fd8\u6709\u4e00\u4e9b\u9009\u9879\uff0c\u662f\u9700\u8981\u4f60\u914d\u7f6e\u4e00\u4e0b\u7684

"},{"location":"zh/quick_start/#\u4f4d\u7f6e","title":"\u4f4d\u7f6e","text":"

\u5728 Prime Backup \u63d2\u4ef6\u9996\u6b21\u88ab MCDR \u52a0\u8f7d\u65f6\uff0c\u5176\u914d\u7f6e\u6587\u4ef6\u5c06\u81ea\u52a8\u751f\u6210\uff0c \u8def\u5f84\u4e3a\uff1aconfig/prime_backup/config.json

mcdr_root/\n\u2514\u2500\u2500 config/\n    \u2514\u2500\u2500 prime_backup/\n        \u2514\u2500\u2500 config.json       <-------------\n

\u5b83\u662f\u4e00\u4e2a json \u6587\u4ef6\uff0c\u6240\u4ee5\u4f60\u5f97\u9075\u5faa json \u8bed\u6cd5\u6765\u7f16\u8f91

"},{"location":"zh/quick_start/#\u5fc5\u8981\u7684\u914d\u7f6e\u9879","title":"\u5fc5\u8981\u7684\u914d\u7f6e\u9879","text":"

\u914d\u7f6e\u6587\u4ef6\u4e2d\u7684\u4e00\u4e9b\u91cd\u8981\u5185\u5bb9\u5982\u4e0b\u6240\u793a\uff1a

  1. \u5907\u4efd\u76ee\u6807\uff0c\u5373\u4f60\u9700\u8981\u5907\u4efd\u7684\u90a3\u4e9b\u6587\u4ef6\u5939\u548c\u6587\u4ef6\u3002 \u4f60\u9700\u8981\u628a targets \u6570\u7ec4\u91cc\u7684 \"world\" \u7ed9\u4fee\u6539\u6210\u4f60\u7684\u5b58\u6863\u6587\u4ef6\u5939\u7684\u540d\u5b57

    // \u6839\u914d\u7f6e\n{\n    // ...\n    \"backup\": {\n        \"targets\": [\n            \"world\"\n        ],\n    }\n    // ...\n}\n

    \u9664\u6b64\u4e4b\u5916\uff0c\u5982\u679c\u4f60\u5728\u7528\u50cf bukkit \u90a3\u6837\u628a\u6bcf\u4e2a\u7ef4\u5ea6\u5b58\u5728\u72ec\u7acb\u7684\u6587\u4ef6\u5939\u91cc\u7684\u670d\u52a1\u5668\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u8fd9\u4e48\u914d\u7f6e\uff1a

    \"targets\": [\n    \"world\",\n    \"world_nether\",\n    \"world_the_end\"\n]\n
  2. \u7528\u4e8e\u8ba1\u7b97/\u50a8\u5b58\u5907\u4efd\u6570\u636e\u7684\u65b9\u5f0f

    // \u6839\u914d\u7f6e\n{\n    // ...\n    \"backup\": {\n        \"hash_method\": \"xxh128\",\n        \"compress_method\": \"zstd\",\n    }\n    // ...\n}\n
    • hash_method: \u5bf9\u6587\u4ef6\u8fdb\u884c\u54c8\u5e0c\u7684\u7b97\u6cd5\u3002\u53ef\u7528\u9009\u9879\uff1a \"xxh128\", \"sha256\", \"blake3\"

      • \"xxh128\":\uff1a\u4e00\u79cd\u6781\u5feb\u7684\u3001\u9ad8\u8d28\u91cf\u7684\u54c8\u5e0c\u7b97\u6cd5\uff0c\u4e0d\u63d0\u4f9b\u5bc6\u7801\u5b66\u5b89\u5168\u4fdd\u8bc1\u3002 \u63a8\u8350\u4f7f\u7528\uff0c\u9664\u975e\u4f60\u60f3\u8981\u7406\u8bba\u4e0a\u7684\u6781\u7aef\u5b89\u5168
      • \"sha256\": \u4e00\u79cd\u5e7f\u6cdb\u4f7f\u7528\u7684\u3001\u5bc6\u7801\u5b66\u5b89\u5168\u7684\u54c8\u5e0c\u7b97\u6cd5
      • \"blake3\": \u4e00\u79cd\u9ad8\u6548\u7684\u3001\u5bc6\u7801\u5b66\u5b89\u5168\u7684\u54c8\u5e0c\u7b97\u6cd5\u3002\u6bd4 sha256 \u5feb\u5f88\u591a\uff0c\u4f46\u662f\u4f9d\u7136\u6bd4 xxh128 \u6162\u3002 \u63a8\u8350\u4f7f\u7528\uff0c\u8bb0\u5f97\u8981\u88c5 blake3 Python \u4f9d\u8d56
    • compress_method: \u5907\u4efd\u6587\u4ef6\u7684\u538b\u7f29\u65b9\u5f0f\u3002\u5e38\u7528\u5efa\u8bae\uff1a

      • \"plain\": \u65e0\u538b\u7f29\u3002\u5982\u679c\u4f60\u5e0c\u671b\u83b7\u5f97\u6700\u5feb\u7684\u64cd\u4f5c\u901f\u5ea6\uff0c\u5c31\u7528\u8fd9\u4e2a
      • \"zstd\": \u5feb\u901f\u4e14\u9ad8\u6548\u7684\u538b\u7f29\u7b97\u6cd5\u3002\u5982\u679c\u4f60\u60f3\u8282\u7ea6\u4e00\u4e9b\u78c1\u76d8\u7a7a\u95f4\u7684\u8bdd\uff0c\u63a8\u8350\u4f7f\u7528

    Note

    \u5982\u679c\u4f60\u60f3\u4f7f\u7528 blake3 \u4f5c\u4e3a\u54c8\u5e0c\u7b97\u6cd5\uff0c\u4f60\u9700\u8981\u624b\u52a8\u5b89\u88c5 blake3 Python \u5e93\u3002 \u5b83\u5e76\u4e0d\u5305\u542b\u5728\u9ed8\u8ba4\u7684 Python \u4f9d\u8d56\u5217\u8868\u4e2d\uff0c\u56e0\u4e3a\u5b83\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u53ef\u80fd\u9700\u8981 rust \u73af\u5883\u6765\u6784\u5efa\u5b89\u88c5

    pip3 install blake3\n

    Note

    \u5efa\u8bae\u4f60\u5728\u4e00\u5f00\u59cb\u5c31\u660e\u667a\u5730\u8bbe\u7f6e\u8fd9\u4e24\u4e2a\u9009\u9879

    \u867d\u7136\u4f60\u4f9d\u7136\u53ef\u4ee5\u5728 MCDR \u4e2d\u4f7f\u7528 !!pb database migrate_xxx \u6307\u4ee4\u6765\u8fc1\u79fb\u73b0\u6709\u5907\u4efd\u7684\u538b\u7f29\u65b9\u6cd5\u548c\u54c8\u5e0c\u65b9\u6cd5\uff0c \u4f46\u5b8c\u6210\u8fc1\u79fb\u53ef\u80fd\u9700\u8981\u82b1\u8d39\u4e00\u5b9a\u7684\u65f6\u95f4\u548c\u78c1\u76d8\u7a7a\u95f4

  3. \u542f\u7528\u63d2\u4ef6\u3002\u5728\u914d\u7f6e\u6587\u4ef6\u7684\u6839\u5bf9\u8c61\u4e2d\uff0c\u8bbe\u7f6e enabled \u4e3a true\u3002\u5b83\u5e94\u8be5\u4f4d\u4e8e\u6574\u4e2a\u914d\u7f6e\u6587\u4ef6\u7684\u6700\u4e0a\u9762

    // root config\n{\n    \"enabled\": true\n    // ...\n}\n
  4. \u4f7f\u7528 MCDR \u547d\u4ee4\u91cd\u8f7d\u63d2\u4ef6

    !!MCDR plugin reload prime_backup\n

\u73b0\u5728 Prime Backup \u5e94\u8be5\u5f00\u59cb\u5de5\u4f5c\u4e86

"},{"location":"zh/quick_start/#\u4f7f\u7528","title":"\u4f7f\u7528","text":"

\u5728 MCDR \u63a7\u5236\u53f0\u6216\u6e38\u620f\u4e2d\u8f93\u5165 !!pb\uff0c\u4f60\u5e94\u8be5\u770b\u5230\u5982\u4e0b\u6240\u793a\u7684\u6b22\u8fce\u9875\u9762

"}]} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 0000000..692b61a --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,87 @@ + + + + https://tisunion.github.io/PrimeBackup/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/cli/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/command/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/config/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/quick_start/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/reference/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/zh/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/zh/cli/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/zh/command/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/zh/config/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/zh/quick_start/ + 2024-02-24 + daily + + + + + https://tisunion.github.io/PrimeBackup/zh/reference/ + 2024-02-24 + daily + + + + \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz new file mode 100644 index 0000000000000000000000000000000000000000..ff3dea9315341f3a3e751980ebe62c781052833c GIT binary patch literal 441 zcmV;q0Y?5GiwFp)IND_b|8r?{Wo=<_E_iKh0M(Ywa)K}vh4(%Mlf6W#i{c>8bkTJe z?Yfh~m1GP-lTfTr-|#bvZ5Op>QgEY*_i_&BY`$oH$hr3pQn5m;(A=LP4@6R=Ok^wc z^87fxN9%YJm69vao*5Qug{aoMCB{`%`HE@C$xiu&%&HgNdW`w^?Yk-ACq*kw7#|=F7{C~NIGcCV z!goC@9hfKofB3iHhXanX74$G5=T`b~gj3c+9}MT%fDeaMWv_sNppFFqamQ7*(jOM> j*uoFTd}XVQApwsa25|~lT@B5b0v&$>KRrRAXc7PbfGo?y literal 0 HcmV?d00001 diff --git a/zh/cli/index.html b/zh/cli/index.html new file mode 100644 index 0000000..7ac13be --- /dev/null +++ b/zh/cli/index.html @@ -0,0 +1,610 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 命令行工具 - Prime Backup 文档 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + 跳转至 + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

命令行工具

+

Prime Backup 的 *.pyz 文件除了是一个 MCDR 插件外,也是一个命令行界面(CLI)工具。 +在安装了所需的 Python 依赖库后,你可以直接用 Python3 解析器来运行它

+
$ python3 PrimeBackup.pyz
+usage: PrimeBackup.pyz [-h] [-d DB]
+                       {overview,list,show,import,export,extract,migrate_db}   
+                       ...
+
+Prime Backup v1.7.0 CLI tools
+
+options:
+  -h, --help            show this help message and exit
+  -d DB, --db DB        Path to the prime_backup.db database file, or path to  
+                        the directory that contains the prime_backup.db        
+                        database file, e.g. "/my/path/prime_backup.db", or     
+                        "/my/path" (default: ./pb_files)
+
+Command:
+  {overview,list,show,import,export,extract,migrate_db}
+                        Available commands
+    overview            Show overview information of the database
+    list                List backups
+    show                Show detailed information of the given backup
+    import              Import a backup from the given file. The backup file   
+                        needs to have a backup metadata file
+                        '.prime_backup.meta.json', or the --auto-meta flag     
+                        need to be supplied
+    export              Export the given backup to a single file
+    extract             Extract a single file from a backup
+    migrate_db          Migrate the database to the current version (2)  
+
+

你可以在每个子命令后添加 --help 来显示其帮助信息。例如:

+
$ python3 PrimeBackup.pyz export --help
+usage: PrimeBackup.pyz export [-h] [-f FORMAT] [--fail-soft] [--no-verify]
+                              [--no-meta]
+                              backup_id output
+
+Export the given backup to a single file
+
+positional arguments:
+  backup_id             The ID of the backup to export. Besides an integer     
+                        ID, it can also be "latest" and "latest_non_temp"      
+  output                The output file name of the exported backup. Example:  
+                        my_backup.tar
+
+options:
+  -h, --help            show this help message and exit
+  -f FORMAT, --format FORMAT
+                        The format of the output file. If not given, attempt   
+                        to infer from the output file name. Options: tar,      
+                        tar_gz, tar_bz2, tar_xz, tar_zst, zip
+  --fail-soft           Skip files with export failure in the backup, so a     
+                        single failure will not abort the export. Notes: a     
+                        corrupted file might damaged the tar-based file        
+  --no-verify           Do not verify the exported file contents
+  --no-meta             Do not add the backup metadata file
+                        '.prime_backup.meta.json' in the exported file
+
+

作为演示,下面的这个例子展示了数据库的状况概览:

+
$ python3 PrimeBackup.pyz -d run/pb_files overview
+[2023-12-09 20:31:39,929 INFO] Storage root set to 'run/pb_files'
+[2023-12-09 20:31:39,948 INFO] DB version: 1
+[2023-12-09 20:31:39,948 INFO] Hash method: xxh128
+[2023-12-09 20:31:39,948 INFO] Backup count: 2
+[2023-12-09 20:31:39,948 INFO] Blob count: 9108
+[2023-12-09 20:31:39,949 INFO] Blob stored size sum: 5158485126 (4.80GiB)
+[2023-12-09 20:31:39,949 INFO] Blob raw size sum: 8295323157 (7.73GiB)
+[2023-12-09 20:31:39,949 INFO] File count: 22010
+[2023-12-09 20:31:39,949 INFO] File raw size sum: 16610326638 (15.47GiB)
+
+ + + + + + + + + + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + \ No newline at end of file diff --git a/zh/command/index.html b/zh/command/index.html new file mode 100644 index 0000000..5fca5ad --- /dev/null +++ b/zh/command/index.html @@ -0,0 +1,645 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 指令 - Prime Backup 文档 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + 跳转至 + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

MCDR 指令

+
+

Note

+

本文档假定你使用 !!pb 作为 MCDR 命令的前缀

+
+

欢迎界面

+

根命令 !!pb 用于显示欢迎页面

+

welcome

+

指令列表概览

+

使用 !!pb help 可查看所有命令的完整列表

+

!!pb help

+

TODO

+

TODO:更多命令用法

+ + + + + + + + + + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + \ No newline at end of file diff --git a/zh/config/index.html b/zh/config/index.html new file mode 100644 index 0000000..8b0c3bd --- /dev/null +++ b/zh/config/index.html @@ -0,0 +1,1700 @@ + + + + + + + + + + + + + + +配置文件 - Prime Backup 文档 + + + + + + + + + + + + +
+
+
+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+
+

配置文件

+

配置文件详解

+

这是对配置文件的完整解释。如果你想深入了解它,那就接着往下看吧

+

根配置

+

这是配置文件中的根 json 对象

+
{
+    "enabled": true,
+    "debug": false,
+    "storage_root": "./pb_files",
+
+    // 子配置。详见以下各节
+    "command": {/* 命令配置 */},
+    "server": {/* 服务器配置 */},
+    "backup": {/* 备份配置 */},
+    "scheduled_backup": {/* 定时备份配置 */},
+    "prune": {/* 修剪配置 */},
+    "database": {/* 数据库配置 */}
+}
+
+

enabled

+

插件的开关。设置为 false 以禁用插件

+
    +
  • 类型:bool
  • +
  • 默认值:false
  • +
+

debug

+

调试开关。设置为 true 以启用调试日志

+
    +
  • 类型:bool
  • +
  • 默认值:false
  • +
+

storage_root

+

Prime Backup 储存各种数据文件所用的根目录

+

这是一个相对于 MCDR 工作目录的相对路径。默认情况下,根目录将是 /path/to/mcdr_root/pb_files

+
    +
  • 类型:str
  • +
  • 默认值:"./pb_files"
  • +
+

concurrency

+

在任何任务 / 操作的执行期间使用的最大并发数

+

将并发数设置为更高的值(例如 4)可以加快备份创建和回档等操作的速度, +但这也会让这些操作消耗更多的 CPU

+

0 表示使用 50% 的 CPU

+
    +
  • 类型:int
  • +
  • 默认值:1
  • +
+
+

命令配置

+
{
+    "prefix": "!!pb",
+    "permission": {
+        "abort": 1,  
+        "back": 2,
+        "confirm": 1,
+        "database": 4,
+        "delete": 2,
+        "delete_range": 3,
+        "export": 4,
+        "list": 1,
+        "make": 1,
+        "prune": 3,
+        "rename": 2,
+        "show": 1,
+        "tag": 3
+    },
+    "confirm_time_wait": "1m",
+    "backup_on_restore": true,
+    "restore_countdown_sec": 10
+}
+
+

prefix

+

MCDR 中,Prime Backup 所有命令的前缀。通常你不需要更改它

+
    +
  • 类型:str
  • +
  • 默认值:"!!pb"
  • +
+

permission

+

所有子命令所需的 MCDR 权限等级 的最低要求

+

它是一个从字符串映射到整数的映射表,存储所有子命令的权限级别要求。 +如果子命令不在映射表中,将使用 1 作为默认的权限等级要求

+

例如,在默认配置中,"back" 被映射到 2, +这意味着 !!pb back 命令需要权限级别 >=2 才能执行。

+
    +
  • 类型:Dict[str, int]
  • +
+

confirm_time_wait

+

有一些命令需要用户输入 !!pb confirm 才可继续执行。 +这里定义了这些命令的最长等待时间

+

若等待超时,则命令将被取消执行

+ +

backup_on_restore

+

在回档至指定备份前,是否要自动创建一个备份。这一类备份被称为“回档前备份”,类型为临时备份

+

这是一道为那些傻瓜用户准备的安全保障

+
    +
  • 类型:bool
  • +
  • 默认值:true
  • +
+

restore_countdown_sec

+

在回档时,关闭 Minecraft 服务器前,执行倒计时的持续秒数

+
    +
  • 类型:int
  • +
  • 默认值:10
  • +
+
+

服务器配置

+

与 Minecraft 服务器交互相关的选项

+
{
+    "turn_off_auto_save": true,
+    "commands": {
+        "save_all_worlds": "save-all flush",
+        "auto_save_off": "save-off",
+        "auto_save_on": "save-on"
+    },
+    "saved_world_regex": [
+        "Saved the game",
+        "Saved the world"
+    ],
+    "save_world_max_wait": "10m"
+}
+
+

turn_off_auto_save

+

是否应在进行备份之前关闭自动保存

+

由于关闭自动保存可以确保在备份期间,Minecraft 存档文件不会发生变化,因此建议将此选项设置为 true

+
    +
  • 类型:bool
  • +
  • 默认值:true
  • +
+

commands

+

Prime Backup 使用的 Minecraft 指令的集合。目前它们仅在创建备份期间使用

+

Prime Backup 在创建备份时的操作时序如下:

+
    +
  1. 如果配置 turn_off_auto_savetrue,则使用子配置 auto_save_off 存储的命令关闭自动保存
  2. +
  3. 使用子配置 save_all_worlds 存储的命令,触发服务器保存
  4. +
  5. 等待直到世界保存完毕,即服务器输出与 saved_world_regex 的某一个正则表达式成功匹配
  6. +
  7. 创建备份
  8. +
  9. 如果配置 turn_off_auto_savetrue,则使用子配置 auto_save_on 存储的命令打开自动保存
  10. +
+

saved_world_regex

+

一个正则表达式列表,用于识别服务器是否已保存完成

+
+

Note

+

正则表达式将对服务端消息输出执行 全串匹配 检查

+
+
    +
  • 类型:List[re.Pattern]
  • +
+

save_world_max_wait

+

在创建备份期间,等待世界保存完成的最长等待时间

+
    +
  • 类型:Duration
  • +
  • 默认值:"10m"
  • +
+
+

备份配置

+

与创建配置具体细节相关的配置

+
{
+    "source_root": "./server",
+    "source_root_use_mcdr_working_directory": false,
+    "targets": [
+        "world"
+    ],
+    "ignored_files": [
+        "session.lock"
+    ],
+    "follow_target_symlink": false,
+    "hash_method": "xxh128",
+    "compress_method": "zstd",
+    "compress_threshold": 64
+}
+
+

source_root

+

进行备份/还原操作的根目录

+

通常应该是 MCDR 的 工作目录, +即默认情况下的 server 目录

+
    +
  • 类型:str
  • +
  • 默认值:"./server"
  • +
+

source_root_use_mcdr_working_directory

+

若设置为 true,则使用 MCDR 的工作路径作为 source_root 的值。 +此时,配置文件中 source_root 键的值将被忽略

+
    +
  • 类型:bool
  • +
  • 默认值:false
  • +
+

targets

+

要备份的目标文件/目录

+

通常来讲,你需要在整理添加你的存档文件夹的名字

+

例如,对于像 bukkit 那样把每个维度存在独立的文件夹里的服务器,你可能需要这么配置:

+
"targets": [
+    "world",
+    "world_nether",
+    "world_the_end"
+]
+
+
    +
  • 类型:List[str]
  • +
+

ignored_files

+

在备份时忽略的文件名列表,默认仅包含 session.lock +以解决 Windows 下 session.lock 被服务端占用导致备份失败的问题

+

若文件名字符串以 * 开头,则将忽略以指定字符串结尾的文件, +如 *.test 表示忽略所有以 .test 结尾的文件,如 a.test

+

若文件名字符串以 * 结尾,则将忽略以指定字符串开头的文件, +如 temp* 表示忽略所有以 temp 开头的文件,如 tempfile

+
    +
  • 类型:List[str]
  • +
+ +

在设为 true 时,对于类型为符号链接的 备份目标, +Prime Backup 除了会创建它们的备份外, +还会把符号链接的实际目标包括在备份目标中

+

例如,对于以下符号链接关系图:

+
world --> foo --> bar
+^
+备份目标
+
+

Prime Backup 除了会保存 world 这个符号链接外,还会保存 foo 符号链接,和最终的的 bar 文件夹

+
    +
  • 类型:bool
  • +
  • 默认值:false
  • +
+

hash_method

+

对文件进行哈希时所使用的算法。可用选项:"xxh128""sha256""blake3"

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
哈希算法描述速度密码学安全性
xxh128一种极快的、高质量的 128 位哈希算法,不提供密码学安全性。推荐使用,除非你想要理论上的极端安全★★★★★❌
sha256一种广泛使用的、密码学安全的 256 位哈希算法。它比 xxh128 慢,但如果 CPU 带硬件加速的话也不会太慢★★✔
blake3一种高效的、密码学安全的哈希算法。比 sha256 快很多,但是依然比 xxh128 慢★★★☆✔
+
+

Note

+

如果你想使用 blake3 作为哈希算法,你需要手动安装 blake3 Python 库。 +它并不包含在默认的 Python 依赖列表中,因为它在某些情况下,可能需要 rust 环境来构建安装

+
pip3 install blake3
+
+
+
    +
  • 类型:str
  • +
  • 默认值:"xxh128"
  • +
+

compress_method

+

在储存备份中的文件时,所使用的压缩方法

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
压缩方法描述速度压缩率
plain无压缩,直接复制。若文件系统支持,将使用写时复制技术进行文件复制★★★★★
gzip基于 zlibgzip 库。.gz 文件同款格式★★★★★★
lzmaLZMA 算法。.xz 文件同款格式。提供最佳的压缩率,但是速度非常慢★★★★★
zstdZstandard 算法。一个优秀的压缩算法,在速度和压缩率间取得了较好的平衡。推荐使用★★★☆★★★★
lz4LZ4 算法。比 Zstandard 快,解压速度非常快,但是压缩率相对较低★★★★★★☆
+
+

Warning

+

更改 compress_method 只会影响新备份中的新文件(即新的数据对象)

+
+
+

Note

+

如果你想使用 lz4 作为压缩方法,你需要手动安装 lz4 Python 库

+
pip3 install lz4
+
+
+
    +
  • 类型:str
  • +
  • 默认值:"zstd"
  • +
+

compress_threshold

+

对于大小小于 compress_threshold 的文件,不弃用压缩。它们将以 plain 格式存储

+
+

Warning

+

更改 compress_threshold 只会影响新备份中的新文件(即新的数据对象)

+
+
    +
  • 类型:int
  • +
  • 默认值:64
  • +
+
+

定时备份配置

+

定时备份功能的配置

+

该功能会定期为服务器自动创建备份

+
{
+    "enabled": false,
+    "interval": "12h",
+    "crontab": null,
+    "jitter": "10s",
+    "reset_timer_on_backup": true,
+    "require_online_players": false,
+    "require_online_players_blacklist": []
+}
+
+

enabled, interval, crontab, jitter

+

定时作业配置 小节

+

reset_timer_on_backup

+

是否在每次手动备份时重置计划定时器

+

该功能仅在定时备份作业使用间隔模式的定时器的时候,才有效果

+
    +
  • 类型:bool
  • +
  • 默认值:true
  • +
+

require_online_players

+

若设为 true,则只有在服务器中存在玩家时,才正常进行定时备份。 +如果所有玩家均已离线,则在下一次定时备份完成后,之后的定时备份都会被跳过。 +也就是说,Prime Backup 在没有玩家在线上时,只会触发一次定时备份

+

时间线举例:

+
flowchart LR
+    subgraph g1[有玩家在线]
+    b1[8:00\n备份创建] --> b2
+    end
+
+    subgraph g2[无玩家在线]
+    b2[9:00\n备份创建] --> b3
+    b3[10:00\n备份创建] --> b4:::disabled
+    b4[11:00\n备份跳过] --> b5:::disabled
+    end
+
+    subgraph g3[有玩家在线]
+    b5[12:00\n备份跳过] --> b6
+    b6[13:00\n备份创建]
+    end
+
+    classDef disabled fill:#eee,stroke:#aaa,color:gray
+
+
+

Note

+

该功能需要 Prime Backup 插件在 服务器启动前 就被加载。 +这是必需的,以便 Prime Backup 能够正确计算在线玩家数量

+

如果 Prime Backup 插件是在服务器运行过程中被加载的, +玩家检测功能将被禁用,就如同 require_online_players 被设置为了 false 一样。

+

特例:如果存在 MinecraftDataAPI 插件, +那么 Prime Backup 将利用其 API 动态地查询在线玩家,此时上述需求将不再存在

+
+
+

Note

+

对于那些行为表现过于不原版的服务器,Prime Backup 的玩家在线计算逻辑可能无法正常工作

+
+
+

Tip

+

由于 Prime Backup 支持文件去重和高可自定义的 清理配置 功能, +即使在玩家不在线也照常进行定时备份,也不会占用过多的磁盘空间

+
+
    +
  • 类型:bool
  • +
  • 默认值:false
  • +
+

require_online_players_blacklist

+

require_online_players 判断是否存在玩家在线时, +排除的玩家名正则表达式列表

+

如果你希望服务器中只有某些玩家在线的时候,也视作服务器中不存在玩家, +不进行定时备份,则可以使用该选项

+

配置举例:

+
"require_online_players_blacklist": [
+    "bot_.*",  // 匹配所有以 "bot_" 为前缀的玩家名
+    "Steve"    // 匹配 "Steve" 这个玩家名
+]
+
+
+

Note

+

列表中的正则表达式将对玩家名执行 全串匹配 检查

+

匹配时 忽略大小写

+
+
    +
  • 类型:List[re.Pattern]
  • +
  • 默认值:[]
  • +
+
+

清理配置

+

Prime Backup 的备份清理功能可用于自动清理过时备份

+
{
+    "enabled": true,
+    "interval": "3h",
+    "crontab": null,
+    "jitter": "20s",
+    "timezone_override": null,
+    "regular_backup": {
+        "enabled": false,
+        "max_amount": 0,
+        "max_lifetime": "0s",
+        "last": -1,
+        "hour": 0,
+        "day": 0,
+        "week": 0,
+        "month": 0,
+        "year": 0
+    },
+    "pre_restore_backup": {
+        "enabled": true,
+        "max_amount": 10,
+        "max_lifetime": "30d",
+        "last": -1,
+        "hour": 0,
+        "day": 0,
+        "week": 0,
+        "month": 0,
+        "year": 0
+    }
+}
+
+

它包含两种清理设置,分别针对于如下两种类型的备份:

+
    +
  • regular_backup: 针对常规备份,即非临时备份
  • +
  • temporary_backup: 针对临时备份,如回档前的备份
  • +
+

每种清理设置都详细描述了存档的保留策略

+

Prime Backup 会执行以下步骤来决定删除/保留哪些备份

+
    +
  1. 使用 last, hour, day, week, month, year, + 基于 PBS 保留策略,筛选出要删除/保留的备份
  2. +
  3. 使用 max_amountmax_lifetime 这两条规则,在第一步保留的那些备份里,筛出那些旧的和过期的备份
  4. +
  5. 收集上述两次筛选过程中,找到的哪些需要删除的备份,并逐个进行删除
  6. +
+

删除备份相关的决策结果会以日志形式储存在 数据根目录logs/prune.log 文件里

+
prune.log
Backup #147 at 2023-12-10 21:49:09: keep=True reason=keep last 1
+Backup #146 at 2023-12-10 21:36:10: keep=True reason=keep last 2
+Backup #145 at 2023-12-10 21:26:25: keep=True reason=keep last 3
+Backup #144 at 2023-12-10 21:21:22: keep=False reason=superseded by 145 (hour)
+Backup #143 at 2023-12-10 21:16:19: keep=False reason=superseded by 145 (hour)
+Backup #142 at 2023-12-10 21:11:14: keep=False reason=superseded by 145 (hour)
+Backup #141 at 2023-12-10 21:05:06: keep=False reason=superseded by 145 (hour)
+Backup #140 at 2023-12-10 21:00:03: keep=True reason=protected
+Backup #139 at 2023-12-10 20:55:01: keep=True reason=keep hour 1
+Backup #138 at 2023-12-10 20:49:57: keep=False reason=superseded by 139 (hour)
+Backup #137 at 2023-12-10 20:44:53: keep=False reason=superseded by 139 (hour)
+Backup #136 at 2023-12-10 20:39:45: keep=False reason=superseded by 139 (hour)
+Backup #135 at 2023-12-10 20:34:41: keep=False reason=superseded by 139 (hour)
+Backup #128 at 2023-12-10 19:59:06: keep=True reason=keep hour 2
+Backup #116 at 2023-12-10 18:56:14: keep=True reason=keep hour 3
+Backup #104 at 2023-12-10 17:55:35: keep=False reason=superseded by 116 (day)
+Backup #22 at 2023-12-09 23:59:53: keep=True reason=keep day 1
+
+

max_amount

+

定义要保留的最大备份数量,例如 10 表示最多保留最新的 10 个备份

+

设置为 0 表示无限制

+
    +
  • 类型:int
  • +
+

max_lifetime

+

定义所有备份的最大保存时长。超出给定时长的备份将被清理

+

设置为 0s 表示无时长限制

+ +

last, hour, day, week, month, year

+

一组 PBS 风格的清理选项,用于描述备份的删除/保留方式

+

查看 清理模拟器 了解这些选项的更多解释

+

清理模拟器 也可用于模拟备份的保留策略

+

注意:值 0 表示不为该区间保留任何备份;值 -1 表示该区间可以保留无限多的备份,与设为极大值等价

+
    +
  • 类型:int
  • +
+
+

enabled, interval, crontab, jitter

+

定时作业配置 小节

+

timezone_override

+

在备份清理时所使用的时区。默认情况下(使用 null 值),Prime Backup 将使用本地时区

+

例子:null, "Asia/Shanghai", "US/Eastern", "Europe/Amsterdam"

+
    +
  • 类型:Optional[str]
  • +
  • 默认值:null
  • +
+
+

数据库配置

+

Prime Backup 所使用的 SQLite 数据库的相关配置

+
{
+    "compact": {
+        "enabled": true,
+        "interval": null,
+        "crontab": "0 7 * * *",
+        "jitter": "1m"
+    },
+    "backup": {
+        "enabled": true,
+        "interval": null,
+        "crontab": "0 6 * * 0",
+        "jitter": "1m"
+    }
+}
+
+

子配置 compactbackup 描述了与数据库相关的定时作业

+

compact

+

数据库精简作业

+

它对数据库使用了 VACUUM指令, 以精简数据库文件,并释放未使用的空间

+

backup

+

数据库备份作业

+

默认情况下,Prime Backup 会定期在 数据根目录 内的 +db_backup 目录中创建数据库备份,以防数据库文件损坏而导致无法访问备份

+

数据库备份将以 .tar.xz 格式存储,不会占用太多空间

+

enabled, interval, crontab, jitter

+

定时作业配置 小节

+
+

子配置项说明

+

定时作业配置

+

一个定时作业相关的配置,用于描述该作业会在什么时候执行。有两种模式:

+
    +
  • 间隔模式:按给定的时间间隔执行作业。第一次执行也要等待给定的间隔
  • +
  • 定时模式: 在特定时间执行作业,由 crontab 字符串描述
  • +
+

若作业被启用,你必须选择上述模式之一,并正确设置相关配置值

+
// 例子
+{
+    "enabled": true,
+    "interval": "1h",
+    "crontab": null,
+    "jitter": "10s"
+}
+
+

enabled

+

作业的开关。设为 true 以启用该作业,设为 false 以禁用该定时作业

+
    +
  • 类型:bool
  • +
+

interval

+

在间隔模式中使用。两次任务之间的时间间隔

+

若作业未使用间隔模式,其值应为 null

+
    +
  • 类型:Optional[str]
  • +
+

crontab

+

在定时模式中使用。描述定时计划的一个 crontab 字符串

+

你可以使用 https://crontab.guru/ 来创建一个 crontab 字符串

+

若作业未使用定时模式,其值应为 null

+
    +
  • 类型:Optional[str]
  • +
+

jitter

+

两次作业之间,执行之间的抖动

+

下一个任务的实际执行时间,将在范围 [0, jitter] 内进行随机偏移

+

设置为 "0s" 表示无抖动

+
    +
  • 类型:str
  • +
+
+

特殊的值类型

+

Duration

+

使用字符串描述的时间持续长度,如:"3s""15m"

+

Duration 由两部分组成:数字和时间单位。

+

对于数字部分,它可以是整数或浮点数

+

对于单位部分,参见下表:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
单位描述等价于秒数
ms毫秒0.001 秒0.001
s, sec1 秒1
m, min分钟60 秒60
h, hour小时60 分钟3600
d, day24 小时86400
mon, month30 天2592000
y, year365 天31536000
+
+
+ +
+ +
+ +
+
+
+
+ + + + \ No newline at end of file diff --git a/zh/img/pb_help.png b/zh/img/pb_help.png new file mode 100644 index 0000000000000000000000000000000000000000..e79340ddc2011bb0d81b6f470e69e3deba6e17c6 GIT binary patch literal 58630 zcmbTe2UJtp_Xf(?up^>Uq$pLu(0f&pE}(#v&`UrFHMCFyDk_4M2_-01sZs(`LMNzn zLQzVPj>JeW0qO1CfaCa^(fPmkvKEWvk_*xEVCvd&l5uwJsWmSxo!)ez8dQGndDQ}Ka8 zbbK^*t$d(XlGd#9a+hS_Qa}fe5O<49a7PCxHz~L*>t4T7zZ~C@97!C?+Bj}^pKitBFUyx6L z{7icnT3h|N&cy@fus6816+grQ;s|kacLS~!{BfH5dl|1$ufTMdmL zWBgJUN5>ySxVbBO0*~=sA-}xZP1oB6!mkZ+bM}B)K@>d!G1 zXh^9#xw%_7SwU29%CZ8=;j^=|mJ*T>v=p-zu>pzOSW1FK#Y8MX5*85Pousw3xRr>2 zh>eZ)U-#d1w(=mmz+d-U|9`w+3uXt*K?{ff-~EthCfRqSRP5XUt9pN*Iyw;7@9!M! zF73ICl!X;}8pyI*k?juwo?yS(?*F$2_V4$)2LU?$55L&I%+1-x-OB<7xo!(+>;LpS zen5DB@`T-g4*q{W;@)>ZP42%g2M~k&_6Jr0AAX=6#0h{n7=UG$^ZTz+P>jT=-n_00 z@1Nandoftn=`y<_HYRvOvnfP2`d~6`BjdV(tVCs{scJ6!A4l#}G__WFqaR2;3zmP# zURD@L>W$c)-=*BcQwoaJ&-@DC-`>X@`u+}ocK^-W955~-q9#CRqbiUdaRMb@NiRNr zT6xM_+2LIpSaL0d+t1W^f@Ymt*fUzb$C`z%z^=4YWDU_#ViX zN)GszjQ$jF_b%GI_BZ$DTY%JuziiqJ>@0775+gL%X#2aAdbzkP6BY{w3~-%~RFidU z)Z(SrVr)9(H27prIl~Xbm!9nlp38Cl`v}MOMk_MJJ%JP8|+ zq57Vf2I}}oj5Y8H__wElm-XNV1o7hzl~I6AFtSx3Di@*`-c027k+hI#Y{Wt??2tY z2s9+n<1nO7clxew%1R$eOMizB9!#TUV~z`IuNR z#S)TnFi~3d37VKJNH0CH9mVw#+#X-b-J6$-+;fimf9Zs*nmt85K|_p1O)WvI9bY(t zQTIU8VUtkp+viroj8K@X9%xHYqq3cKG0k{q8D@s=6RI{=SoH`RGP2biC&OKBD(Os_ zZ(_(swb#{mH`)8Q*B}DMQB!GqKWc~B+saHmv7;ViiE&pzXdJH_lD{B209Fz)RP3q0 z>mgHB;Xxjv>Cv&%iqj96*TXDcU_v{R@zgo3we(|H%n8s^$x?re=;GYNy^jC3tu<)R z9utMA8fMplvl3}WxC@QlUv;$6#Awc#BcC<#i=)>f=!&0j+g+SR26tOLQwr7YdO+74 zhiL_u*yI0rwY#bdr5_2f9`+2i$2V1;*z@IonZx`oxTFH7diHW;e@ZkHBoebF_og}% z(~40+q{>Rf7ILtVet04 zzNd;gq(7C} zqEezcxrUOX$}a@^E|Kzx=P%dzoki2Yxa!KQszG(OgsWY;_MUIN*fe|up@!NvlX#e4 zF;`nUvdiKFxP2)m)&Qrvv;cu2SybND%{-9Mdk@0P#(;5!<3ID_Qx>IYvBT-n~m?nX3?N6i?eRnT+vDlZp% zAx4-cXUqfl@1xjr`u+C{8~8=S1FiMtcyD|md()A-gp$`C%x!NfYMx9NkOrJ~Y~N>vFD1h{(Ad^ zQ2cb`C^464e&3V*z7%u)V1=!YE8pX>#h2%d;;D60GO5SXudTHtv!>FP{+Yf;`U5Hnar*f|e@IV6mJG}n zmBKjG7+j4s(*(Nv$E1ZEp%O5L$ikgm~jlZAH@DgNu%Yt#NjT*l=ssINGfbQ zL&{lieKM7bt?CMP?sYWO{^|~I;Ewzl8L(tkMW!GLz7)>GiY>IhQQ3G~Y~L*?-T;vl zc)q{X`2&c7FN9mWcOc0018mHWA24B?jh#E`v>N_I>tsDBJq!Jh=lT0~iYPQujOazV zSvAZtf8k?5V4mZk{#>OVmGek{^}9FU^q_`Q;8m45*{jgKph@ww6TJoRunKZ%4OJ3t z2z{cX5f7M1F-XnB=Pd>=qb#dSDWP>RQ&HZ1js6^YDelLlCQIX zQQ(*tVON62U_UbLYieKa`(7B7hlb|_ZY*Tsy@QPFz$bA%CXBV{=v5xSD_7*848L$V zOfE#qqxpP9q$xgaJevdZ=->0`?RPU!Q2eDI3QGLqxXm-aq^5^FN^5It(vLIaS)$^G zz%$(+joj|>y`a#Nn%*DmdyLrc)c}`?L5)zBL)_8CpUINNPI1%FD@Uk1a0A zO1M=+<_C@?vHJe}=rkR!0Q~$J{sr8Aa`rcV?LY02Tw-aP-iBW!CPB9zvyzEheZbac|jlgK-ZtrHGAv14m`dt-f!R5DUEU7#ZH;U$u(y722f1wI9`IG?((R~ zEboi@4|seF#-cD==`|av%Fa$AYMS;VGn5C<3r0X#Q+=wmq9$_&ib)}3Egm0C8b)rM zq5pjSW0lvl^bVsKOT-)#D#{lnTQ7NHujhYse1E_Qhd7>?Y-=N1yE{;bk4WSMhFMki14e0&Vzise4M zQv9QPAO;)YGSE&SdDXNZ(Y!J_T#44lnv7k ziHUavW!exV&{%78j)ps?di2{yX)fs&zg!x8e4$^yIyLE_tH@I z$j^rt?x*7aFzj0+FwVIEohG4vpcs>og@<{HC7Cb2@cA6YgDy^M?hjSTD~qzXw^rT7 zOw6dvCEji}x;{9^x4Y$glU6T7S(Q)TLo5ld(K0WU!3+d73Ip%Pp;;ZFuH}4fkGm=KI<5 z4?r@&eHzci!i?_&+2J^Zz}@rd)$Qc>;D#a+kV*`=LN$WjUO~e}q^qIJfs2?5`OIrA zpQS_J1xVD}xM%ZU+lRaFX!m3JkPiiwM(diZii$Zdr?6gFe1DXLl#vwjVe{^e%_++z^n9T$bVT;O!l1!q*}>(#{?%o(_wEV(Uz;@9O#>Z$x22 z&wa|agb?-+=HFlKNS<+8Tt16N3nyaWoko z9gs##KR%C4hmZi-oSNmi1Tb!Jg#G5zgJi}0+ttnN+8UyspS5N0^yBx^wuGtgu(G}% zdom%yQ>7IheR0L>0s=48nS~A47h;If&b?U{jJf4HqOnMF;j33#geT{^su!b_H9#H< zB)9JX|1afNRbz4oD&EzxaZna_^im7n3|!3NZ;%`l*(@BVmKYOa}j43YU46#rxHFXZ82H$}0X6g`NWIcSw*;F?#glNW>VXHDOp z(wKd(^0}00V6BeMVOKqT-}C-yvcIAVIVt%b41X++7a9NvppjYhW<8NzX3?YdF^N)6 zZs(#!+NY)@Qb%UE!k9|C#2NL5&-3S!<~k*_`goO7wR<(<3T%eM#hs@_lBDF)-U}mRk!5%k=^-#n{vtQ;(*B26D0&1rR8KtYmprm`^cd9OQ5KGZMH1_uW898zJdhSMII zMn@=Yzg-qJCvnqcxi7%FSC`cr$e#4K9`;x9dwM0e6OsG_Hoe>kIn^GJ=8T&~kH&1d zYFsM%+@`x{X7NVLh8F=}$hz3zXoWhcQ4lsj&CB#sof%>qy&!9KaUPbU&Lf`};MCZ$ zz+pCM{~!=w*d0nzknd^fQTCNjRcp(^#a%D`lrj{Nd9ySz!U!iya|v>~E@%+LW%-D<*AwHu_st-`DTo5ea}2;za{s(LYm!3Yz2R(zo8%??Au4|%+D{oK?-nGck>E}LPtd|R@YCC(M zk$SIwvzyk*Eb%{Zvi(8Xw+LhG*#Lyywu~vxlqspdw&`S6N6rTEwL;TMb=IDb{LYYX zbqsNc;pafSGwxZAiLyM_n6pFw30NObkMaY{EvG#83j|499#+g8ixC1cSs7c2+xR06 ziR7f~qYe0mkTRn`Mm_tQb+I?H=AKq8NwKe+3JNU>a94bsS&8#;cVqYQl9$NT=1kJg z(lW=OE}Yz~u06CScmc{nD)%@)VC}zJ=&Y3Trf?#l`*CLMb2C2-a6O0 z?=k&{`O6A04*eSMjmsw521-I)YBy>wmY9Uk4|itsv!w64R!HM5yxu=O-%2B z8rgP|y7e>w%2&x6r-~sqblqAVd17#HL~5ww<=bx8+ZZp^uI!*Y!=F zwyohamjA;)w7$Q0x8l;bvSso3PxGf5pYRQV8!}t^4$HeAntrvhX{r2h1aQ=!!0K<8 z1t#i!fEhv?`wBRD1nQMKkYHy4IP5{51>@`he0(w?ID>NLc zJ_upIsAYM3#ZWA1Vtn>N$g$!lg$+0dKfQ?1f%PT7yfM2e5BC0I=5iU)Ik}_jP_k07!u?4t!yU{+x$JGm+`*7w$Xu z_Racpydmx~_23evG5#V{Q4z^6!VyW)>XXhf(tXa1cflo3ux@e|KAHX@LABC`WdJG^`KR9t$v?Jyoz_fAoF6mNb+ zl7=!u)gR0qBR0Wn#N?Vxs~Id%4QO8PGYLM754{jv&3r4sl}=#ODi&`gz~enHdL%W; zDA9`jpjOVsibtwkn%ws`SDALbIgG0%xF^!O5Mh>MK4nD4_PY5Gd*c>|$M`O!>7 zXsaSXNqG0cr>HtLjxT?`kac$?6#iMwGtOr;K;}*ZT*A+6UEW7{fe}%Pf?I1pNqG01 zh`m!WerV!#%J7V~9rq%y|1c)p;7f=P-DOklbmW~d_0H4E^ztr+BtVK^i3cGSi9bzd;R;kTt>G>5ys0)ZNdG;;tM4H5m5BQKnsdVf6!4qns~;#-M{Rel=r zZwzbfIKq3(V`}ltY_w3j$tgY<7Q>c0Q(FQ zWsXU&`C(@@Z+?rOF|ryBFw%^`OH9n&>q4HC@d)d&m{xlKU^=s7H1}ESgB;Gcql|O~ zsK7?2-5BgMrRvVn%~QY>D@j??;ts_7f604CUY-4vK>klgFv-c0fUW2^293owqKT#q4a+xOIxg^jB=BWE zX$-Hs;ZzyL3{6e~*}4cFvZ|%zfQc6FSVAS2x2io4gtk7|G{E(7$2{zVH`KmXZYats zBAP*%1LDiSh>&CJ-x84%-0z=&b|-Vt{F(U#V4+gsHpQpz;~tiuU=31tZDYe1D)<0Q zOEkqg{`CS7w%C>Ox4toB95h(1vSSRaK+}Td9?O5yX;uo+t0%)`J)R-3LXjP|k(fc- z>*c{1W63|1zFuoojdlV}M|t10Rvz|uDaXv9Ha8FI&s)tM1<>eMj<}bqnc!jSP_d+| z+@2Gxw((_MrmM5bpODBc#U+VTjZQt@>GN}eh5XG8I$p7pfiHY7Vdvx-#C)fuS$TMv zGfV;;=KQVEv=<37CaR5ar4(1?lPUnwr`{kWME@|z!#Z-lEA-nb&8Uk~8-JLaDZcL9 z*f;XEG2e@0muENsm|V!*%yyG?Mrh9Q8IKFwnm&Rz&YwZ%-rQ7(f{g-7`z?%$7omb{ zkx)=q<PD<{1&xw_g_{F9dJO}#ob=G)__ zq1nVNDogweiAm!m*H;FfB=3Tv%|)m7*AreXFU2JdfFXW?|71+f<+$4jZeN9v=EY(X zat_GvZoCNN>f9c^{Uv-rBNqZKd4zQ~xjTc|v9$NXhZV#2%5S82@$_wtN>#uDlnR1??y0+Z-xh<$>w?C;H+>XugNXGHz+hxry!rzZ;hR#H5h@A97T*0}?U88-%B<*L#=?e0 zL7%E(dW+9_(Yp@DCck3KtR23?yzTJkLKm*2qR(QUYJBmd=c&8!hz3j||tJ`X4E|4($VXKSVN;EYTe+>5W6Pa+%0b^s8xP20rYXm&Ev5s{iD~ zt&m7LojW=ymsYQLk&cpPxwOW48%>5^1%L8s_U5@98I)-ba%SSfevK3Jzh3zz4mHNt zdn@>~qxf)Wb?-Cfm-;*)(XwwBwcb>if7;$pY zsoYl*#VFy1r5jL5=IebQn@FP*aB)fm1fRMi1f>sXACynb0HP+>LZ|S0*LsVq*Sdfu zWd6@dUdmL2GaVOpF%IQHmI;5ZXZUQ1@n*ecT{h)XZL7-hXaj#I%VNAw?L&->*ncIM z0G(-6zG6N&cKOpLVvL;c=v};L$e-Ka?xRAyKZ>(&ylz_%iVSJ zt6$10Lm3mV+tN~f;H$r}Vu%Y-e&!o?k&+>qD@Rq_CtaaLUyLAkFW)~dcLH(Rj94fz zABT4Y&AVwpVX>s#+pf)@W@j3r4)o;zIRq2yy|I#LY1_7Q1!B%Sq@3Fe$ospwv2X*w zXym}l-5yEd2;u_r#g&R4a6^#g2SxnFKjk8UMH^d0oip1RKRENT*STEpu4ILDa&dcm zj12*#nfir7{tThT*T&wV{L48`;zB7p@mc!%v0eptvSrux#6upY~mENyh=5m9|2_j7Ycu0 zZ~m^m>Ip_BCXjI8TL~U!Oe;1k!*`3k@7vgm_bH8NJ1=SABf$JIH?!k2+l^PI+)(-~ zpRH=H}Oj>m4c4qiye3EkU@ z(w#IbiNrJRdXu?|AGyWPF$rilumsq&LwZqW&l)94D~b*S+|BgHz33a|(z*AV1sW>5 zDnKPDbjSLT;B&$s@td#}jWFor!`MX_bX~O9?W^$mXE%qzht+S-`#r!^sddRzVvOB1 zF1B9A?!=)cczf?*ef+*X?0S_8dG>AysWJ;^Yph%%OgK{cdab{g=LdZBH#7VV$^_V# zS{%C|B%9}*gvo`z3pZcygf}#ff5jIrO9t#7t$qte@ql9bOsr7(RfFKUgJN#yYdI$t zNXNXDY=Tz{P((qQoh|NMB1e!f0Fd?Iyz&f<#h7$;wVO+r_KwkK)HVjVHPNNwDSWAv zwa55^v42!@ETEEKWf4HL=|?ci-Qdg8JC!fFDod((A#8w?SkkD0;vmFNh9ZF)wRI6oQb856wtu^EQ z5r$D=neG)#J8{eZY00V-%%D(Ytj!w@Tw!CK?@;M3Tv>CIjy_1eVM(`BRMtwFIk+^U zE3mGoRtWv4sMB(1C(F?e?J-89G`)H6wMSKmZ()?oawcn^)qyRa=UI4q?c^xLBJX1$ z;Bh8OZN`d$4ibl1uX39Gj~GnVJA>!>t%klNcCg7I7bFN+%B0Air-a}x$d7&^A% z?kUVyirN&Keie@Fr;PUs#v~xlaULE)P&xSK>*}A(%mRZiE~I@9dR9b=F3EL}xn9}L zAa9g>mX;X{hynnFDptrV+kH#3OW(w9cizgVs&l^f;$HUk3m^bopG-)W%pWwpzgFZ` zit!^9IQo7O(~G5*?hLJ#Ezj=Fvs#G$>Z478Z< zS1^$0(*AA`#X>Z|Mw)Q_#YXbuF%ikTl904kyfbJT<`V^07Ag#|W>*gHPCK@6&Y|e> zm$|L0)$zSqkXn!0kR+$4M_96`1Ty~w*C(l)d1exL!h=3e|=u=O~#xBg7;8SlXhjq$RL z$fA7)U(UwU7QJXYE6@u@iC9(-pGJ7oK+C^Y+Ts`IXHS>I>_6;;u0qW`aw-`MS_4Du zr&$RQ&j`0|^O(aUgCEuo>!dF)eOnU2$^$k4ix;BEhA%d?{d@C;Y>?xYd-XZ@CGoJ` z&N+Zz^h@m4*K9fKST&XW0F;xEac3xBjz$^tr5#*zaWy7=n>PgQbkRuKsH2vq^hIE5 zztrLY-GVT!%oo1tHucboZR)4RVTZOFggd$eV*>#ON3!IJGt~wrA32K5?l3W`fQ3ag z-=TyGwsVKgoQU;Lks!_Lma{A9X1&e=D3#0B=S7^CEr%pbyT?4(0H^&q4*eaR00#$X zZ86886NB{75A=5v6sqskhi`Ab`=LYA? zBNlfUKs%Xin@V#vqW9>=Z3*jIC`+ePTQz9R)q&SG`O)VkFS=fP2R=*l@yiqT2=R&zSfvzrfBhB6SdUrYo4(n-(7~E3r>vD}1b2lSjmE zR1GX)gE66>Uf1JcZxU1l=4ZZ10Kj5b$Lfz}Ymt+yYzP|wlI67U==MQv#%&J#V)otJ z6_^?3^qgGCbdx+Fl=XH0_K622Hd$kjzq0 zn$49b-AL?yTABOo{na44t+^8hxN~OSyimjAluj5FvS~!GvNuhwn~k{N_^>|l0x!)2_&oExyMU`#D_pF34ghV9}~XN++BhY!U#E){g4O%re85sQqb1EjhBO@03WhdDTphOZj5|y{ z_H29{E(7<&L}Aagn1ldzvC2}gvICP#P&C_a+H^zoyBfd!DEt#o_&0_EYQ`5rtKm^9 z$+_8$u}K=l(3=SySPR)+@Z1oDy|$Iu2j5_Aq&31tKATyI5idq%s>&asApqWg6{5@y zAvD{!>ho^g>jU^@?|1!y^($f4&0`vBlSQ(Vh2Nk-$&Q#Qz%KOaNF16t%Ab#%f+_#M zo7R9oI+3@G%NUIrCx!E;>N*=v1n-JMWT+hVm04r8?H~|OV3S4LVQpn8oWW=>F_Gz_ z>QgPMEX)#lyscD%Ju@1~rFJKMR#DNz5u+S&xf5Y3AruK&bvN+8G5?At{sX~(Vkb-mJafXqAg`w-qDV(6|$*x1sh1O#8e;c&P zigSB34#L(`?l^xZB;>EW> z=ox3cT&a{xFy#h!!#HQAYVrdn{ecTNv>uSF3(Y|w`gcGg^*wnkK4VGF8UaEmm*WRb zuvejo?~J4dzPQoUv_}O48RclZIk}qVHc+$iD0H7cRO#W37thK|e&BdL;(~r6PAqtq zsinLm1RsJD%^JS%I&7bZZ8!u^5ne4JxYc57K8FyWh_}U$G|rd2t=xSI^!76gHQ5T; zPhP&Wm)HW#t#0k)04A-`Kkv3&dRE+B{MQl|nR=AWiBOV-ENV1)K$ZO#p z6i_mV)k@sji-P}!Hx#SD6X?gs$|VJp4mOV2LOL{_HSSS%(!HL z+m^1cjLMtIF+f#u6h3sAy#d{M5uRVQ(AD031*mTsk4QVy3&F!i*3hPQq8i+CDOxrl zlqmK2yZXA~A~F0je`s127qt(%Q+gTsw?&nEr;Ihnk+-4FtLyYY^{%3qkK`~L`n%`9 z%ws6P9v*%unnXz^fPaaqK&t9hh#GoUjwPCpu{!(RksgNQVFj4bwEOVm&~hs1kTL;P zr)S9y^F29#*mVqj%AZwnd6DMj*>yQWD^qL3QrZzWndy&fs->;q(|p2t-~x8OiUtki zk>gYE$-B=`Je*kt82yJ&|11XJcEcTDr`SL$e$jcO&e>;bW>XkGd$zE3e3{}DgP-bF z6t-Sokh4_OMYI;tJ=+kxNf(~7?JNIe`9pt0NVwyjx@RV=hdQ3fZmd6F*zh&IHK(q5 zKS-%v&Q1M7KHJ5PA=67AL{e=UyGQE4D7~whxX>KEt0W)k3nuA3>QxDx&_3BU+yyvo z9!Vwv5c20a@FQ~rJh-X?bCPdJ4T|p!DZwNFh+CQ$hB3AQ5$+7oRzy@&P3h>SpREwZ zdj>hOttKlo4vtBXMEl?m)pD8x&ZpG4aa{|1VIuhlb9jH8@Ty*ktSm)UTD)@fb{CLC z6I&khqQW_ptv{X@bVb6B=!+I9Uj@h!LxQ&ipr79{)o^*}i^b<3D`t$UUZW`;mk&$b zePUU{TJ;KZD-?M(I8xhSnmEU%eP>9%K_NoxZm<71f*%{+Q+_RnxIbR>pnu7>q*&tr^C0@{H+Z-#K6b(mmsi3w-w# zZA|dK^k0(cL;I-vqL(FHgE6fpy@jZ9s_~$+F3@XZ9X;X^!c4*UonY1o>eblBPwnju zZc+yc1UJ>ATL{i;9623T!s2IfBecB%r7nwWm!G?$r4fp6eSi+1B6>m~om%y@U>yD( zz%-Ke^Pf_PLCe#NQEGpw2dt{gcl3o-ID%VLJX2EST_7xtT z0PvpR4Ic~3w~my&Se+!J$VT&$;L@5z5reQvD0lS+OG=f79p?}0P`SGG6mzxO`sJp1 zn^6Jda9=*Sz&$$ZxrX3#G26P;#M3*EfuO+9aga<6{GAW{gazbwdS42alS2&dwgU&0 z^a}aIa)XI6^V9eFbyTKFj;IY`bte&ZlN-M?*VYYq;bTjHg zg}vlQ)JV8x)kSHF-5bc>4bBIuuyVqolm6S;=hYjx-94+^LNJVz?Q6&FALKJS47Z3T zNw@;G`Wdf&B%^?swnZo-@Q7n_S)DP9tb6}`JW|!!(<#8{;)NL){>p5vj1F_sW^QBe z(~o7YypWrc9pRmcpz%cq84vM~wjdqOYeV^pRn{_2t3aV%$MJeJ@o^u#kn>u-L7TMO zsxX=z!%K8Xtulg%%g)uj1>-w%U7?1scTxT|-nHj(qcv%p>j0l zmSIn;#D~3u7QgZPx57s1)1WFkf|U7-+jLp(D?2gyjR+^`dT^Lu2q!vOU?|K`_zymr zRa#sfZJEtVn89s~QGtx~jaLBN>}5uOb!=Dvp6t-~G2c#7n8%5GYuO$$e;_T)us1qT zat1JPZ%|6Zqd>;=atQ1+@|<~H26^~y>(|2-Z=M6x+q%YdDN5A2At}?{kLb?6spLC% zG?_T^)UAu289GqKclBbzMLm(uv?i}iPjCB!_++7F2HN8Bc75`!{@3!J+y=PG&1Y56 z?R~}#xyQJ5rX40TZfsU^cRBo6KFRqzBF`)?JAHcy6yAiWT9r{*Y7kA{#?)toxd4fUk6`fd9^LC?2DRvK)M3Uono|G;bOh$2G%zvJn=N<#U%D5 zAObmF{v6oJ=^~k}@A%5AK9=7zn0SHCZmPsvFusrT58w>lunDShY0w!c&(#n^*9}?9 zYZ={LR7TIiWLkCvCa|Joa;9HZnpU!0r8i`xlF(x_?khHJD11l!xm|td9r%@1NFh2f`AbuHnu z&`%>l2MU-8GQ&+FNpnRn(C?wrtEX#s8%+!(?pO5vDL11Nk{WTduXIP{&6@IKEX$3( z0?1!mFc*UwD$LiS&4|a4j(qXFjL_u=i~^MF$pS@fuFc%1=9VH!_oti5TN_O#?Z8Gt z^2j6Yr=(ZULcNOvZ}^8kK1MlYXq~Jr;o0n96KX%6`_yQ(A`jG8?S8lS)r=NssWBOy zmL!aZe0idU8pXUY2jS$7&! zDr(8`M?Y9I1ha+5Ks-L*z8+5N0i3_wY@sH2e-TvRaog-gV+I4T&coO(m4vmnTq27} zWo(HKnoI|v3sMN2#1CW3>v708W8ryW5-m>?LVR2ExkKgD)?HXbc+PS$N1PcceN`)f zCq&~AlcjGnEjA7DF!`^*-on!}eMml^xeWw+$RQ&dP*xzNsmIt7}3snPUp!jz;O zSEbS@Daz;A=D|{lpt4mmLjDV@_O?Gpy>lVTmppSQG*+R6IiZ{rF);AsNg{p`YVL7G z-lIOZN6~_~RK`A}ukU>8%hCWC2WQ{W1)_e?TGqQ`*_|0j2YuLVxt5dcL2N*Hdq5|c zMiqD=cyw;sSGKIIdo9SB2*!~D;UZk}E!5vOudFpH&`Sb-`#f5~_>lx4)xWp&fJTb1 zMmP|M-Q5oPuC%R+!xJ(!CC&!bHEbFc!5Bu#mHpE~|DtQjpgW4f7p5I1U~`%6k|ac^q2*|IV3#=eiX20F4RCxyd63wf zE4NuE-I!bxkI5bHDUZo_@LwAG=-b*-Y%wY@ zC_nn%YlXq&BTnLN72bH5wpda{YHo53!h?+Iznq+-CO}cyisaZ(TuCHi+U+Hi!Uz53 zr|>X?_PURB^XAw*d-vEAg`~RbFM3NDFpiD5F>1=9oLa1fd3}&pa)MWx{e2l`P(3IJ zb<_P8qT@pK`G^bh&EAE>V9m&O;X)EnC|nkbjlmfIsm&c3W*dgN)r=})DOd}3`8G7s z2W*)9CII1KuP}^vg5-~1A3TvujQD(M74Um|BWn>S2xxUqh;@^%qoIpd68i~^GX7$& z3(vz`eUb4TyPkUf;q`piBFU6eHK7TSaaGg`k6kQKgIXdZi$T!~ZO9C@=|ansKN+%0 z3xQ~D3CB=fUWGTcxgZ{A09k%L=jMTcRcu30jW%XOeihHEz*uB%+J-eewlZQJYX{`e z2{|?5KO7fkJ3>;B!osAI0?WNNB1?;(*2G~akABJJMavo8aW;TFW%bPM!7xoeN34&F zdRmKD2wc<}LPRu8z+W%cy3~WbtEXIPz{ycDJgmZ8{1>(EX)3jkr1GTD`0twRmE`@> zf)xDrAetbnCyciWP^7OzevjCW=jTzgu>$2{`q-GVVQ7iY8ZLP^pbNp$0- z@e_Ank4F|eKb4v>FgqLRBjB(qma?8sYY8*j}sNbR=RA#u5&WY`+fe8=E;`$>HG!xBk&S2z&Uy*HjM{geSJWJD7@M( zc2H}}2p1=A)gi?MEFi2$?sYJI1`g437LKFi5TEZE8`)^r+8;|)>Xg;6*Y=TI+9-4Q z=49~EAmz={yxiue9nE6Q&K4QSfYk5d&qv*XglmtTI(BliMGjhi>7rIv3L=o80R}2! z2$DiybxxTKW_b*h(%=0iYBNF#qF&qC-rZ4#l(u*kHF&>>=H~Fv+Fg$1T#nJtgGPdA1Fm~Dq`b1i5HFyxSc7rUwmLj`y!wOsBhb5s;dBwX^~?&nYjBIH2?ue z#mHN{ncvpgq1**jbECZSF=i%Pi0v`6-A)?bM4+rAc{RA(%w#Rdah2uM%Im^`8sDAe zYu+cJo5o|j@{U7XnGfgRJbHPiRWy<$v^uiUX6vz;Qj#2d1+n^du5j*^zpKMtrQ9}) z%f7FKol<%5uu7u}RR2fw44;cGruE%@h1*pfJPlmeQeKC#Y+$Fb0Yh>*(hRlo$+0D! zUVsJ3nEOxf+-pA2yWSGH1{L+9ru6CWc3iR)E7CZSVMIO_9x+}%QdOrvH)}N17qc~V z8LcsU0w2yr>$89!m|{JSx!W{cXM#WVQ338zpOkPsy6jw8MPWP&wmmy1fI4Cc@ zB$b-qjon&W!f4}>c@BqsA`gPHKvAKztwGHLNsT+Z0oax-)<1m~Xf|*Ht#Z5jCpo%8 z`}Esi3WR-2!L%Y@9d*(dopfg(7o9w7X4qfDylJc*#&jxg{B!U?YttKD5vWTki?ZOT zEgu|N3H;!KtL-Y`N>T;JTR!{a2vej;=M%WV<}eIMXi6&+kk3-BwWeIV-i=NpkKC*> zVxQQ2r%*quRfkD8N;9anpEUj|x_CWerF@=xw=$7pISXd*ug>++b9e1zXys^x`~b@c zn7LFwfXEA|@?SXuc^?C42gQD9X| z<_CeZ@ul4EKngg;lbx3{Mq~$8+1YFy?o{=q@A2XcY#LK%@WM)f&ilaNW-Cw8O~Duq zTv!gKnbEDX;bise9Q9N^jj!zq6m3{qNK@%#0U1VKFv1lb;&1zyHG9D>J~|FR=RtvsF}YnkEpZP0sLs2Jjzn4z#Oa zP#i3=bCXkwVZIgTpptBzRs0yu)qB7X|J>2iY8gFuGRka*&q&cC=h{iVRUtg=MLwff z>`)&Zs3zbKMX--nj~T79(Xc$YYF2&~R(@``GWI&tyIwZxN<>3Z3X1jf6#5~*<(%fh zilPG@MM4Zr$1$Qn4PCwlUg#`5DJO{~e7?6zDPm42PYq2zN%~t@slXRnw~b8+$hyFv z0B1H}z}~f4PgE|k=?X;Z8Q}SGpEzM$j8NhJ0Gp^uzXrVGS!m}8^t&?0QaO}QrQTT=dod#zPgRd+#|*!6=bS# z%oLWh4n`A^u%VFNz*kph_4uYfDVoml0*7dZ^Jf!>fSuW;T%v;Q^tL_6kbZkpy&$l= z$W5hMy%5CqqG^3FkK^XYuqfoEm7NPLzxp;=qkqpjjCxE+<5iH8k} zDZwttCSqh{4Am6t4;Lqpf9m9SPFU8xzfJp`oB00Q)$+sPUTLWj%iC`8(L&j=wggFd z+3~U>98mdYSzDT1s#h_;cA3dclBolSfDEk zQj;_|w#DgijKS%${aj;wEQ(q|OwbrZjy8tiCE2u|!)B3TnS-k(@GYOWzOq%@7G>ai zpUI)a=y(0x%~`O!+7P#P8Mv!rliu^pwsbo$%C6(d9nJ$4l&(cSPHE)*e91qKH_Ud|dE`_`f16XS?3xPZYrZXG8OM1y7SoXvK5(jWJou0qs+oLF zA4o-i-lg4(p5K39W^Y(>UJATi*r4TYc{F>>ql~%^KVt}&)Nu|u;U0&j9ub7A#!{!( z@JhwaX@CXIJh?XdZuXwN6D{7o+=>AxPq$4F2+nLB%J+>g7SQT_lNDwrCIscN&nA`> zjd5#6(WiPfQyZF1D)1DEOXeG`=5~={T7VMsegv_C=k`uf zi2^nbJO9jcmj!<8XRGqWB2x@coUDcR*H#S8S70N3r?_w9>c)Dnc12`(&_J&8h)?ax z<}J0-Mbdo9=>7I~I-TrvODU)Lx{SMZp}4p;hrxv4bz$3g4pp8ETg*w)_0V_ zfnn6=&i-QA|HJ($DD?N%4xQssetm5;o2^dvSzCuwNjH@*k6o8rZgaLY+nqMEDG$|w zmT&7M({A=W4uI1=7;&i7=^yV+3Yg`Nuy9NsJZR$VNw_YbB<%HEAQLa-_5N0zu)fCg zOX&^DoC+AT>xU5|Tp=Er>LOAT>jGNHf4tLwwJ$ZvA%M zk3UvH7M}Ng>fUqDIrmFyM=a$PCj0gwgD)aM0M#OMXB?4^BFZ%xzHR!dsqtcGomg(P zRMHgQNh9(;SjFYn%E(L(BW4WmQf-CJvxHb1beV=usbqNdeb^9mhZrrF<%$f)wU>p< zMu32Nd2Oaf>)#NVA5#IUoq$?#+jhsjqyeU>Cm1l0r(*GNY5#&1Fq+D)pd3wf%C8t! zo@2#5K?hnt3RquyqnvAra88z!S&1EpPfHPs6BRSdi@PUo=@nI%12f%i7`5YNG{uPsEzLIHv#o}!*bD7>^nzx@4&qq^3n%&;mLNnyJpq@RC z>q53Fhrv-oJ%o*~O}&yasH5v#!JBB$;D=0Qz`G1CB{Qf0_p*Ox1??|(#v|N?auCNo z)7}bS1!wWs=8OxN>FUC(S3DS>95}LEkrrtl*Xy8p(lhg@1a5B;jYz4;o!(B+6f}6@ zXxjKPR-X-#a4%>2;N0fc2XE#+FGi8gyChp>oAw1dvWi9QBy3!iY-4iZ6JRCEqv;IvH!`y zjb$dZ!|OmQt4;7A+`m0Y`8Nni*`(qU*DkwRyxitv*%a7tW)vy0NqjtMCr@(oAZkQf z?vahfDJhl#B2O2A5AjU_rBo>(!}iguotw(cuE4gl3$WuxFPUz)c4vywv5BoX$qP>I z7D^TX;_JVh#lJfZ+M2S}G?YY4Kgp(rI`c6;=R927ML>M{0GBc8Mopm+YN$JPC~zG+4G^lQ-y* zPNq3@{suu$BIVuXA$3L!oaME-91+Egiun2Sa=l77V1_2PaiN9OukNmXovfeLL@C*P z?7DQ!&(SpbF$-%!7bBEX*0395A#xedL;Gav_8VM=)&wPHOYPzxhv%Qi=^qreQ^&@Z za!r&kIMl~T0+ALxTsL)=De#gcV|q15z!NVOpHORGBIppbXW!_hf5iY`OZLIG(Ip&s zDYa@hMX2D%w^t^y!x($y)Tdu?G)bF1)p$}qnQ=o8~N!QD^8XYUYLT&_NS|Ty8XL6ayqwq7#`VvAD9@0U4&{1 z-RG7nbYfR2#0G1iG|1wMwPkZ-9Ub&&^FcAyu9k4$|8aT!W2h&N*b9!)C1n>AcJz+m$+k8D@P$`2YOTn2(BiDY4h?NWsDEm<9|IX_in zU=(OURcs}#X%cGky(&i&6hPv-m)vtrU|F8uPyc*(f~vs%66DZA!}hGN!57W&ncix;mM#lVjC(yHI73%KVQR%8PEn0`wR6tjukq6@+4IQZqfpFQY0oq(q>dKm35U{+jxNXTy-2sRa1yEG0 zyVAJoXOo#OY=sB9g95{kTbr<@TB`Jd5qm(CVhdWMrTw zaQY{rT!M_bjR3y#U(-N&-~3ACXEX!}b($>}#eUqecNX|C0?e9L-oKzU&HLKu zNaf~z1y~-+v-)~<1FMgOa#_Bl*egud?T_N_aagb|z>OKTIj@Upuf28NB6X)473Whd z1P}DxhyjR%`qzpp+p5EZJ3h&Ohbm1?WeFhEp#8UrGTM8)25%&_L)f=-QxJWC6urHapAk@7iV70OP3~ z!#R0VpFUr+@HTF>QG(w|1t`1A-d6KbD@q1Bznr3{tM7kbKYY7AI9vowK~|bnqxHSV zdjtC8>R%g`4?{9+O})dcY4yed;`Lu|9_*4BJk%1cQZ|} zp*7PUZ37Gu(eEezJ##ra(oY@Jk4Dnid%Y%Ce5iK^>!wrdfR?%6mUIs_6MSxcs3=?h zY9p^QaC3nH4=|yPfx5ft+DctE;lZl({tP@19q@&x`8}j?U0(qLjW$ zI8u-Dge$NA3S1vWf&{>g@Nra*1Ajh4?)g|1Ej$!cG?pOm=;|T%n+OO!p&Q&`#XXq7 zjkRTi>Uu<$d}8mc@EMgk<5^(!8PkzAE1=N6<}g%lpiG^tx-C}FLP!DkmfeVKg>Tsi zo54dgs#0b}{lSkvnyA0S=U@asvUf5H!E`aG;M?VNWJ*N?>ykStMew=e4mLwv^d^OO zqs?t+HS?SGTQPpDsbY#%gaYLhsSJ7@I=3 zVO`tqpqdhfe3QY%F0q=;y@luO&o!ue2h54c9n<=8Fgh3E_!~_O`F#-YQLALrB}@&} zXQ>E|?NV}TQLF8t=DTxEYomXb&$3^PZ*Xg^gl*N+8Q*8UM0?kHDHVm?(X@2&N*=S% z0U@^#!YBgdhJzh{dTIO}<_AgTZ*|LiW32LzS!|X`*fjK%OTPy7x0x!yfna0VVYHdV z^LlY$^ht`RAsNyvd9N2XT>wMghYU-B_h0izijY5GW&%nq7`KpR@HTS$T7eZvyjIw^ zE}E}*9ZI6EP zwhp|%LOoJe*>;{p0SICD7tm`x>Y;DzVS=8u9@hlvvN-9UB#?J`XI0#+OeFWrYusGV zFP_!sOZwy;0{C9BUzNEl#UCwo?X1+9Z*=8&USGmun0f$wcUui$ogMq!7DTRV_@nkeSgv z9T~jr(>EhCk|cI0{3ayh_Vm+wooe7tDHjV9WM(R0EZV$P-&N$*Y0%Iu-aErH9TIB< zv`SmkOFNae-kYYA7A5fEflsol(P0B0Uc&l(ro6&t$LG{`e&0NQ0EB;>d0;ij|L$XS zLn(#{>!6gNp4!!HP80f|`-uuLqjs*%T6n;zi@N~r=e#5zOjEy%wG#c7YX+@?`V!d; zsY}Uu-pQZh90U=2E0c{Rz0>$`&h&Wx;wyd89Yy9|MG#mq)cYFX%R46+<^*gm-#BQ3 zi3sEW9AHZ0YZZ@9*5>SSSBf1fQMo)*lL#@v|*{Rm*ZU#o_jUgen7dz7A0 zmNp$84_-pT@!jv2KAoDV{|`*@U%?&1hIkhJL!w?bof*UZy=p@2PQ+8#AF;b;xJM+3 z+Bb+xM;&mL7V~G2#D#2b@6m|Zd9smjMcYqmwzv$>bJnD19~ez+{m6~YH+ zXhXFgk~W?;wCG6Rf&c|@?)6+|j0Dsj?&FSc!Rkqam!RLEm=PuAq(JdF*@tmy%m)VqszP9R=2_`p!fp^lB8zMgc^e zTRj@w;>sl2L)Vb4O}~WaZ|o1G%2`>Pm^$G{%(XQ1ntD8SjT+rr~yopf{YMer>kD$yHV5n1`g zWg{hNeLeu-sAW#~Y%17mSn~2Yj2@|ZIr*townD_3hawCX9piAE7NRdMz2BXrOn_^k zpoLf-q0G29mKVJ_Bzc61$9l1Z7r_Fc zz{FEkh1T%Sci8;+XJFScdAxa$VeO5Ng-E)XVSiTQjM(wNr$Y?q?%>h6JMR zTSQk&Mdk{!*KgW2<(j0)YW5;Y8Zv1;IidX-Z$XflT$#Wre&v#Oa;1nupVDr(mL|$$ zCbmoLk`hN(jMCILpjALGGz4m(oRn7&d!%hF75;zmeGoRG3ljraooz z=L}vU>hui#oJmOt8lIHEJwIJP^!oP9STZi-Eh7BtEe2Xa zYelspd`fE5f@top15{9$MmUWEb`$rSD6d0@y}9wqRz%wN_jky<8koZtKp8r;INSk(4B9u z+$3R7$HDiAt?}3ZGdo4r@w&7sc6%gfKLBbV>YN^TFWUmV%ZQgZ3Y13{&q79DSx_{Y zl^`#`xfuW(nc$W4lTaM|3s6Pex~&8Zd)X@Z9?1L=h*xGG2<9W(2Z?V#kdADWW>&(1 z62WHiHWDPiJw<3I&#t<+Tdn2~H*NEs#TD!FIv#Wyad9d={+QRi8ag#%p)jI^h2lRh z7s%fH(6y-S%uolW(4qbR{^RsbjoA;YX(a&kMMzH^ffTCn^}2=e#B*x#cfhBr0Rpd=8?KJ7QN=^m$5!2+ho{^O zu|TRw=n3W#FQ@`XM40l&%Es!ttNjz@&=++h{6>|p=Blhj!uy50c)@G@d-V7FXJGG* z(E;<%h3jfL=jy#ncTBxrIIu0S`i+L5xMp!Z;qLPi%U518P}zIU*4wxgKmS_3d2iT2 z=%QLDb~tCgt3&&@AN`x+{*N1(fXfr+6vP+hJx{q1;G4h)v?ZFb(ZQt$J_>V9m50o+6IOQpD z2MOI%yCCmnk_^~ZCsS3Pwy;UX6$9gpMn~f|AO@M;^YHLn5*yb1#hbX2gnbTI75)gZ z3nf3ais^`TN7A$hxq2D0t&8$?z1H5glk8!NDZ6c%$r%ALh;8J; zMfIK_TbH9z{u|SW5bC;}IS%I5hEDB5KhY;c@~zF>1Dt<(kifTYv<*SOZ%uX&-2cNS z?jjxgOi;m&2$iH&>EJ>CyD}>}@IXu2mJkt3>K3u}c*B>a>|DB5$tSW0)8wM|o7;k$ zb4a=|bjk^t@$x$IoHhLUaO9a%?@PGM>CL--&vD#et3$mUO?iuDhoO7khA_qRe1hDIJc$GCc1 zdYCKOSjK%qZBw12ix7Y{vay?N#x1@^JM_zho+@>TDM@zL;t)iHho2n{{AShr^;RZ@ zg+_iO`pL%j0Rw}k06o2U`Obio=g3$2bydM{*!~C;Ha&ewm|Ib0#~QMb&YX5Ho9;fl z`x#lyVuaV3*dD;&{s(OJmmv4pFM|Zxzw3f~DV$QrAHyql)i=eiv2%`ne(g8e|5Djh z6yKJ6OW8rZ6&tjH-7dz~oK4=t5Yh4Fd0p76wjdju`2#DcdyCAB)XEuoR>8uE5h~yj zj&WgGEWEo~oe=eLerW4bap=_h9a_wXQm(g?vTz|lo_*j`M~?d%g8;1z4k(SgBz)G* zE`w7Jgr;5pG6g^KcaZ?(P~I6jCEbl-rY*^|QT?0IjoCI!rm4Qs&uI}hd*7Yt-^rk( z?DgEuZ{S~K%5N4;aaKYOK;X?THEBP=UjUCBng#+;f5~~zlFq@cRsz7@mpmN1Xl`W-RewRESz})VO`V z=WDKs*SKpWIWF^Dh0D%>F&kcOcpXfD*BM!_!g%b3E+@-2@1qs{*W>Fi6L55xLHi3E zcdre~@qg(e?4DZ52PWm;RGdZ5+)(mv{TS+$i~H^r+$92h6Qd1E!>lYLohtOZ%Iv)+i)n(auH=$=qk!j(^8%1tktQMMjAcx za>p;Zk(OBQv;Q7Z5ukEW-+VYY{X%mKl;HMhC$2QqcRbJ4bzXqnaHIc9)jRaTQDdyo z*Nx>%oVLcWxRifcd)={3SkxBA94k)S&tJHa3rNWRhTinhSaN7Tg?n5c-R`1R>)D>5 zKozGQnRem;QCt|zVC7bM(Xiv_s}E)PFn^nNIgd!-s%VL{)dfDxRk4msD#`Yg?l+-3 zS6S!ZK`fWPG`9kG)^;t^J(@wZxG!USo%?#Zq0CB^+JB*R;FkI9sf8N*Cn$MN(js$1VuogS+25eP^|0 z)UYMEquNf46+Y~J1*|-J_W^{~IXyg1Ipy>Q+9#c~p#83t0m&rf&{+KD zGk(pdu0xAtj#o}!sXDSst(iYw&)rO%L;iChagOpO08G(^*jwM!CCw79^;H;tbS>Y& z)RI3iR?&)K4pP5>n^EYBVS9myik#hEcP)bBs)SHp)A3rU3d(b0R!zw*_&u5A2Rm%c zjgwMZ!e#o5TFwS3&xMM_o037Jsbw=$Mr%~@SuErowvhkER5jmt#93@LN@n4u`*-~o z$mY54VB7%gWnf(&6XJ$WAv}&@FE|{U0V*=sp%Bi0i6D;#{fq($PZQRhTHl~viu)cM zwfd$R^4^;vnI}s#yCAduR$*YpHyxmV?4G(+8i(kG&@p3j-C#6w*3!3Mtg=8yiYjS(m?fd5QGvP`RYDH!~FT6W64Ii3JB00qxj!l?n#WQ&=I3sZD`n|*FROzf_ zG82lbSkKL=&0|ZL(Ol?*byz!3eOGu6$Oc_XmTXFb&xwlpJN-$&^KMuDB?Y;u8H_+cU5A3ocn3y zC;$BhKKCEMy2sI-p=`^d$@&^ykq$wLMHg8$*(?K=lS3F7G8vuFJTxY*&?60?Z(o0wkOXr!8ODBzsk_G zpqf%UkRcde3qE$SGEF}OvN+wt)?s9L{O+=tC3DRcji=(6FN066p9h=ow-Ea;2(4O= zO5*$9l6ny9f4){bM*Z9O5wLc(o-?CQjvf1E!B)DWA9~aaW;M&pG`D{y&ti8XZYFJ| zYRNeOz3;6yH1|CIN>_kMB7;gHGT~UJUU``nht$t8$!UaS0?gju zFm=M$z-=CIT(2KEQe_k}_d4{AxkZ|4p<3NYNbtyC=ly+3+<8fuEc>o;867gMD6{O% zB;6UQit4OPT^-}}xb8>z6@7=iZg*SF7LpxHZ0WZYzz-$lFMoN`qwE^c8p>frj&s2I zu4^H=bBR?PHkygU?+(`-q;YF|e1nJ;mnfzl%zqKLlGaC+2&cikmv%5oYuC}6(mq{Q1!Zp$}ws2iYD*9dl=87*dEU>d$)wDlu#bKtd;2YkTi*xiAS|sad7AX zA%_BU{I|4=@X#9atI?{^ewLLNRK-e|5_dqbfZjlWvgUFj&k53+^5BT~+bWEjB{yvz zD1jCr47t~sHReh(a2@iKj`C16}p^x5nJq7-uu!{1LMTE~%=csSZ zwW!7;O4Yx;Zw#>O|Fb>Kokt9xH1r-zQ@rr|V5D*-2r|jas+ZX$7Gq@u^<8jxW3diZ z*Wm)>Gn%DC_4<*<;ptlzoM>YSW@>mCy8ai>eU+F1=b#=&>yBa_kR;}cJ{7fn6nMb? zDdrs`(WF$FZIU=mxP)JylSA*}0MBg(KO?D%8-zFTk06eKID!zGWS}4i5O}9)E9~AQ zgBN-lmL2Y~c-5?j+Y1xG>tQ7>Iy=#B2p{a$n>w=>edmFM6Y> z#8@NeR~AsuA@1BBsrIS&#x>N+MFEl#`mN}2yT$Guv?sjRdGlMQItL?c4d`9}<@zTK zP(Ejx?^Sy#LQBV@7pY#Aa252CYKUWxlB$e||A;%bREo}{rJJB6y3?Rua!q6H?b288 zHluE1$=_mQdsj`2kZ+z{ec8pJ&Klp6J4uwLqpuK$N$fU-Z37oUQoUPk+$~h07k2}{ zBRKJ`R2Px-fLUPlW`@R8F_k#ZyI9)42+%|RCFcMc`!P_z*aK0n!@Xt9Ji)A0*vTLQ z*)|VpP;VEw@7Z#FD;mGTC))vROhF|AvMercHBue;o6awWN9@vwOBRx*lhdA+ij?z8 z&h$=A1_YHOB4U3yD3Segxbb0Fm`0i`sVrueb8EOi2s2g?R3EU_5S`3)mh4D*_`f(H zVX>`_pt*oTyA`OL*DIcM`Jez)mFnKj=k_e_p@xna-EPxaQcU@%BmKlaFJw5!%qy# z>)?AM!kVA6s#0{6UMYarl7>qAo1HT!ysUp+RiIKS!V6vBgQOr6hF?Wgg5suhE9jQ# zeKAK&aovIC{z6JV`(*~er^Z;wgF11@2Vj?wep_KasL`67m4UOJbbNa(sqtog2Vjq$ z=$qui7H7c5KT{}CyufZ_uQt)jDtCM2PrS~XKui+liBc;TB8TYF-3J7RsGrQ=TcEk2 zW1GOlm6T;stA{9{9ZV=7l`dDHJJwe6-!6lQlJS(5IDO_qbk4MgUO%ZhO($#k{Yj-q zHhwjz*2XL9>IxI-jN3O`RBg=tCw|QrYX^pQQ|sXspfg1M(z0S8fJBtjc+wVL-Id=V zFfjjj#(sl$&|HI%Wnv2)bnbZbLgly4q)JJDz&$1!p2pPwkm`YV*Ct(j*op+4kQw9a zAC2rI4cQj@-ENMs!RnP5dxp~`Go^qqd(P5&8JF~U3e zXCOlO>Jm6GXC{&_S?1*2Tatjr_P(-LjEUG~;$QY&eRWKk=V4`KLSo46oAj4x^|Fy7 zPC?YzT>+{zSnKqj#guOl(0s&vd}$A*h5t8l=^1U7$$%oVxT=K%^Py zE#*ex9rYkr>&l~ODtA6^`rD7}tfWVF?r|j%M(~f~4dLedYz`7iN@evoJ$#l6I!Gh zLU8)ZX2^(JUDvGfLaEXwW$g1jZ}9*BEc_tcJm7=yJAeDzvtCefk6}78AN|Ztml>}Z zeCWNm#gE;;B>#4}d3#pjh*x0Ds3k3IzZ_kH$@Y+E{?IO_t{9NxK}1Zmvi52!bn1l| zI^!#Jh=>7JZs3D}OzODN*Nl^WalmBt?Hva%`6Z6>f1=rQ*@lEQS!%FQ#2tXM%cF*&HAThN_MolQ*zAa^75+p7+~gZJo~3`Z6OPv58-h5 zTcmdMP6&pughQjM6dAnT8gXi9MUSOOSo13&r*$2K8-?d_fJGJ+AoEGgqzEG#z*NwC zz9F&GKvBN8!9;mkhL5(o+KUUcX;zHW*;P(4Zy!iL3J3`VlZuN)e^Vj?1SxHr9cpm^ z_~(hpp_(fd!oKy@ff@2II)$h-m(KB7NC*~5t#^Vn&ta#QC-aqlsi?0HK3#(6XU>NMqrYn+Ah+$%s_T`OTHC^a z|Ezv<(n3YK3&+D5c#XZaq%E>QE8bojc+HHOn8ms9%B=oTO)_ z5g3Ci=f7NWe-IM^Uk5c#zBDHEOLjtLP*Jo_S?@>o1=PjcQgFmwO_X2$cWi=)rz6IU z&6lkl4FNFfiUnJZP@Hsu>Uman>JC1XnuB%xnP4f(S*bh8@N4RBwZCjAQ)tt-5UIu) z*wRP#ZfK%NnqcMi!8GY=FmWyqP)ypzyS3(ue3~EX^w&ViUlV7>jkr%yT#fDur_MWC zYX8Cj{gLGS6LkOM`UV|stk_DS2){?+xOnq@DQb?}CiX6U2PQgauXU-bFz;ixSz})W zNFblCf~M?nbqXY!9q#He@z8$HXE8<4Uh*$4Z~MRZKCN z9S4f^x;lDD#-s|C$J&Z{n&e@316GPy&iu=1`NtCj zMpwhF%dlcLyH8p|j4hXmTbKQJa`^=?5Gg4KihD`i5rYC)HK=>t=T+r(I$7L^a0EXR zUQS$P0<8-7P{f#)6BmWPLNAh1&&~9xV&iVvPh`0n%X%d@ffMh4&w)R4Qb6)51THl^ zrR;NLlAmQXq`k(wo<2r@+!PF#i_N_ONwaROmvN1;x43@c7)L-SleMb`q#oi@|9Z3u zLgz6O-sx!x6}$m)VNER=9Q8Y=E9aA|RifXwCU*7{$81ZS`KX-l7JCk3IppigEe6V# z^`g<)Cyz!$T4fp)w&Xz*ztbbByd%wIH(3vj?Rd^$(x6f~E!DZ27?<6=J{|=}B<+EeQ_)Fkvcqg@Ay561byLP?b zadS84gDfj3^tq+ICyyi`Ag zzXbxC1yz%)Y>oZcem=?)%UJ@hvLY6$i^s43_oyj>Y4zlb&N8euBaNxZwRF!A0lKNA z!K4QJt>`ns(t=<8pUCT_AXysH&tioL^vYVQesQv8+DqpY0}8`BinpB$S6DMLS{MVA zF^ach3l*<(G3U7tU1ZyUHaXmDm>Mx)j0u_V99l@W9VVTC-dw&iSqtuZQRk}ladjyn zt^-!LCc?O@y;Q5V6;7|i>m$_~=$`!?z$H{#;AcQ3QdNd%1#63)Ti`VWdq~RJ2U5t+d5dQH7@Gz%u^p>N! zo=)+)&&oaA3>E=~*~E8r&a35NZLY6?A0iFU37<(rml>-_>|qd!}A`B_OV+*av!YSI9v&LFJ{tK)fXz{?~lvwZr1q z#nPK$!LurQ{rsN38Hx+)kZihurQx}%rtdRqCPjzK(|NgzzMB$5NYFeeT_D0a!}}_5 z#9%N|qWcv2G=z7|>v8*={Ag}gsOe^+Ic-R}Wr*uItm;E?e|B7S%?rJDbL6Q!$bF%pnVLn)%@6^2j(icAk!hB zU$-c=3>CDptCB6sH8Bw(@=HW6UOtbvA|LFKCv^ODO%HQzKarXRrJ9GHQxucks0~|-d-X)c$RpU}w z@NN|1Y=bzsa?uVEsG(g_2VsqfkQ3Q+)nCg z7I^2bv450cb+(SDD2T0Ln^GmDqS=#_N(n&4dyf36{;))%r($^a=KR;}vIsTT{`Zdy zCziK}ZYnLxG`qC0tEMbYPWCh69^ZZh5D@!{rLgAB^-%`3(Vf@WNzy~=Ly`TD4K-hm z4*&mpku!jgFJD%#J9DOtcc*T4YL= z*FRi7=AGp`TaKa@BaM!Wx_%83rkzB3-BSZUqHc2wBh%|yvx(e$^3bv#8FH$0Guq|O zOo<^>mtm5$n%0)ue|vPPULc3Z+}roY9=G;Lc;=yF58XU1wkD=X^bxnxbiKFJj%OOu zN{5I~^^+-i55#t&!e*5&QDA!xHA9`3Ai8$^=eGmcFOSgM7qiRo?al&#$K61E>f-7i0-JEzj&K!}wW!ZUDggQT5L&aoX*2@cX{Ywlcw1Pi=sQmp!@+T@EfNosLcI;$L)=FsLbwLaps%sFkgbM;EbHhPk!;wDe3p3Q8UEq?GdN{`_<N6Rj&t6dKL2i!rOY zk}xYqg`ERd;<-Ve<8w}GEhuPXBwNpcu9W24xjEB|q^3X8(EmBteix|PsY7E6e_7bu@{zIYtf(*_f7)ao zleoC)nhV`na-0)Dx)w%X2Qi| zt1I|d%+JP~nLn)`fO$5C%| z;Y&r&c6I4B6A?$NP#lal+7nmgn1>Zhx=@W9l;AIYmNt^5josX}?=v;nBuu1_O7gX2k zJZ5kMlXvo{b17x8Z#(39hX&uM-EXty6Qe5b*PxnVQ1-dpoCn&9R~_H#rrYu@kDe_M_|>aX>z5ZM zp(-1%7d}6P3XX)QBfoEtb!-n~)&Ad?3u@Ub*Jd3mXlV4F1Aq0a>^!zhNN2l@!bOsP zx5ua|U*z3@W+FguQ!j+$KKE&ywGKNT8yAvsRbIEXG19!cI~IyR@BRf z)*}Ie#n38)cg|m;Uc@L)&o%dp^7?gb{!$V*8cua-Ay7r7;$!u=5FpQmI%Qa}32|)~ zjcz#Xv}zKZ`hJ$M4Jp)iW9QG`=B&Qwlq+>p1{YHT`TTcx_i9!)}8jeuQzl( zK1}Z%*(;?EJR6Ie{iNdD;jjbSu==T$Hwv*1Sok zU8E_@C-(ctJB1zKS`t2=P$0IrEs7Ttvq_bXRBIn5qWF)58?F57f0otYmpBTwoRuS&z1@%Q)}AGeXunzq za5mW@9c;)l|1+Ta{0x~;AS7XPuV?smMQ>q1nwh*nq6Fv-& zeJ4y)FH;>y++>!Ymmx4@>xrf8L6l$X6Ix}4hpV-B6j}k8{KrK9wY1UI+TV7H5DYVE zAUC-{sQyggB-EmxKpeEFttU`zHHfIZ2#3X8(5H)E10#MUUhC_r!vxkyVMhGYT^kVy zkJ__V>oSYtVQ(~W`p;>H7YD89-O?|7sS2-pBa>m%hux}j9bJ8mGu-;tFkCP|fXl(z z4r%%m)=cxf1GPYc^1>gx-FxqoB0hh=su*-1aLx$sQ`fP41iv(lA*Tu9os8wm(qr8> z^W+rPTv6E~wd!rP7i}d(gK514o6)0-i`5zX6hQqej@*}(Hqj`2|$VFCz&xJ6XD<`{V+uDqTHR;Ef z43@;~${osaBZ+Q>dTyAq@rw%$%kP6KjR;RbsGb*x{-rb2))RD>B4sxm~2~iZ6=;Jx1L)sve){SO5s`jICvHyTAxnJ zQRw1^1aceM(n-Ti3?)6@0DY(#){ci%~))WX8(cpl#3EbV{;4&$Z{>%M3ALg!r}=Nnq* zzvrd1h)b?C3F_uFig@{!?w&vOJDAgwJQ@oz7~4O~-of_RXV+q5)&2blQt{P^sC)(QJV-WOHC+&hYbAWGX{T z7bsIul(~kf437ugl#~SiQqAHx%UP#d$I{-%P0!ux{@hppc%g)Q0(Bf3i?i!3URLB0 z$R%EoS?wJ2TxJlZ&GeYM^N2Pi3e$2((TIYxa)j=8#$sp|_s~=FCT0d)tGf#I`gEjGdogs~~qu1k$N{n2Q)J3_r_$C0;FZJ*iCSL?1=4 z)PhnHQoBDD7Q8fqi`s+CAu@KEY`Uei2lX%8i(V50>b@QFvrCG^;x$Fcwm23A(k%uA ziA*t^!)}F+6hUZL5bpE5_wht?o9>c!eUGP;L38qG zY`9IR$OsRc9X^XLxFb%K3QI;3v&PI(ZpIeh*VG4(9xXosB{NvhG0BADcsMH0i0t;u zxR#8v^|zF1EMBjxUtO=%M9I$>%aLV;db(~c;ip%IflUIXM19)P(B#f;#`U&OAoUh3 zXANo{d;fMG9U&io@VUVFa!g8)ci9?j$heVgc3#s$b6BQAExle}tY(q)hw3;)PanTr z&UBT)P{iiI%y-JG1_h_Y_F1x$WM+H#8(yg}c0OsbfR`v|ddMEbJvh5}i*y18DQW3| z7gF~spVYBov-MtSceVrEJMWrh>KzJ=rBmu$m^_y_-3Ys0Fut5T$kKn#T zv(syDGsDlcc{AWGR8(vz$Q~RZth-WU`J63H5(9EoZT-w6xUTr4iQmuTRuzc zPqbDjOJl{`$?|(t)%8GcEz2Q(2gYX=9Vae5epU_a2Oxac*~A>e1H6(P@ZPa*v*Dqq zRvNga4o<5HOH^7TyDP@ZEq~vyXzbrNgPJg*9;?r020_KwKMLVt$QB;v@aTexAH(7e#`YWf>MNaPvH*I(y;#WrMAvU5b z7TS)Q>WT6F`)+9Nbx`_y=b6Zei`%o!Q%n|8-K-(nnCom7qXjn0dZVU8m0H9J_9ri1 zO4mq+!k3;x+GxN zVZwHM7=fsGekQ0Q8d>FnbR4hsDCli}!35sHznlq#TL7G`DxjcccIKGvui04H9#x=K zWC^_f(XU1-3p#w;&<)=;`A8J7viyiHE*74g-Gs48(Se0|)Op}&<||-77*7_)$A1Si zL9BI%)t1dApE4XVyIGuBoRgLD z__fkFPMZ^dmuC`3a?M{@yOM0d!6m-576_#{MLwMn-uV4Qk$(A`Mx_fG^xI#KqMMvs z(k`zM#%xV7oxaRm5c)c)tZa-kP(QrcHPia`wHX8CtP5qZTS8ROipzHaN7e$r2+^zC z#2wHT+*ZI}*{Ui(*jfu}NiFwS>W68JbtevQ#SYSTS9)6nYClTyu;6qPeI#g%HBvt` zgcjgJU3ntToc`GvN8sw*2So8|#%f@e8$YwZ0ri@mogFCYYwMS(4dpakJOD zM&l5g46LiCh=(+Px?Kn&XhHxQ34FNJtBa6Bs8?MBpEk~lZi~1`PECHW`4}~tb)kZ; z?qHdZIajYknXjoX;yRDcyy-%unWfjnj>KXlDL&jPL6ARi8w#paOOPi*ZDlTOWp=}} zi((?R$;*pLv<)J-1$$>_M`-_+XCp#$ct=?p-A_f+vU|gy<{j*z``$NoIICU|Ei4&C zlmA9F085X6j!@>qJxMp$t%9^r)ec>CAHm(hJZpxBtEvn;sEKu0>!wnsHC35}8RJf4 z^@G=ug2p7Mm4!~wE=_uDP>jVot#BtiamRSDXLs(~_*ePYA6LdgI~s{v#6HXuPnu08 z26nV9kJ3ry=@93n6$vjaCb#dXzhMgSz)HJRXxB+_?-x8zfCRCtWwLZwhpu`Kr^BE=gyI zAGx7H)lxU~RWW=8C-ZBf_#S2}09D)N4jV^8=ZP;T4ud2%!=>7JXksOPB-sgH8a{F` z|MUvlcV(R|MAnl88xKJ(eNU`z0^b-I=!f7@ee_>k*1rM4sX$R3q|s7rS{sIi0nUq5`AWEYsmk-{cj@Mp2&>b`J#s{{6Z z2soGicXG`5e?-Se&Zwh?TC(8(UAlZVo9e}f7G2Jk_0RqC*oEp|e5zN-2M7uG;|? zR2HmO*+a_UzOmtEWmipA`h5x!X52k^Ch2=W7uo(WCbRh!vl}+y-3h zx!DjjC2%Hx6eR_e|BFSdA*2&Xb;X{;3UQ*rT$6z^a4Y?}l8)}{uKuq_^$fz^PS->! z6Z5g(2hKyyuF?sRrYFHp2C+yQ`U2uy6HyH$ub`~72naG}IJ7LcG*NDRNl|C9Zu_oR z_AQe5xs{m>eTnHpICs1Ols+o*CFN>o5E1^*SpOObT&~IEpUmc$FoOo|=Yzy_6)o zc4VGTP;OcgUaZ^%qMOhKS`8y2-r65l*s1v1cHFrIY_qb%D>tnH7df(HoLA6+bTjAd zk97afNNjG=^tZwu7&it`$8Y5RnnhgBmgBa~%S{u^nd z0xZ}j$sFZwH8OV?NwMcIg;_}ycMp@$T!n{>xXbRZ3B#=!2qn_g+kOiQ{#;x+Cd&mf zVJ*4R9HDPF02jbswBnMVo?Yuh_N(09j2dr3%;v$06xCe`_MFyl!dHtOyohQn-p;7@%&$7Umeio_Wy5QR8#~NMCu9(qJ(sZLDv= zEE2R%ZK=EcygL;Z@Q_$4MV-E4Q89oIIp;lVXJG0or5Pq}Av*-fld3N`RYpAOkzaa_ zIqi~a*u;C$58LMrXJVlBerp?=1GxW`TFU@VlH^gZBLyifWiG8{Kvor&MtS9hRDHN~ zrC4u!C4N$YDSf8AxZsXzdyQmKz{E0KmAhw?z0{jsZoA-Y6{Bniza~f30^|V3EpI4_BV*F&@3Y%2e0!6gs^{TlMH@oGl3q&M~}O5`S?OyKDZuuF%z&fB?2KAWLnwx8RbyAMA5FAtBB}=HE)< zNB6-4Ig&GOJ#$1{0C6`eI60V_1KA*;xcJ3*oUgXE!Lx4=Em{{f4ewxUsx;4Vby?j) zAt)SNs^$!OzZt+#w%f+T+-I>Wyl3|;=^wxPQ>5(Wd6R@7sgV+Ufv6-kz^gGZE4ojG zYHj$MT_69}vJ~o;OI@Oen923wX z@fD<@zDwmM`g~HhEhe(fgmbrIJKFHI;qFXV)sf$;cx!uq2Kp$9Rgbi9aj_^adnE8vH*J6muX=* z;!JqsMJJB(x4M}hyoBx!M$4MlM+fLcHs6-PO!GOM5fjzB*i;|CeByzypGmLlTyw>v zH2)mYvck6cgd>craG~7GNodIGwlKdjXPH22qwh@TgDEM8kPD%D+Z&qd0JKZ^VfEyk zqZ74vSNmu{?zQuV$(MzaF9@L$IK)8rJ-5b>v*$_P_x{fv{yl5%_*Zo(O08uH*z9HR zD;=m}1{q2h`HEyJ8QE{-)1r!uy=OQpXtoxU;?85sKSPqFx(Loz_D^Ks_C*xJisyu& z9e(t!Ehf0FN1}Dt5oNeazXV>oV)8+@Q?-@`n=TD%1cNej{SvPh1&T;#7oo&++KJeh zvz}wKfW!%>At70WSJLqdW_K@Q4S#+xz1{rkwn+A4qodH zF&<{A)1V5~+2H(e;nv}41lDZZDZ#xyG}(5l$^#TexhI17CM^Dl(Z6iTzi;RRc~H)T zB3o|30fV6o^5To#;B>7|bhe$-yJ~jcD>7u5kTJB*tR|@tf2IGH0M6gpGqIniAMf)m z$4}=(zT1U&ly2H5Dgwn{IRTPdSzfQNNmob3jGM|P9}FX*^-rOZ$QIGEgePcC3*yLe z$)z@bke;{mf@Vto^0mcp%r2kH*@8~lF;oo52E?7#P(Y`zHRnHZP&;$lbE9y4jRCcy z8WL+Q4l++S2aLC#!Ir1)qHeYb;|f%Zo1ceOIA`%)>JG0i3oPJj{6EHtp{l+Gpun4# zo@b?Tp{AKR3{{zjT?Srq9U(_q-MiigQ;c`3$KBRT4r820E;Dn;+E(Dt+cYP7jnP_L zx%+mAI`>j1lEqAN8L8rY3NCvY$j-7jmYK{ES#*P3y$(V}riz0ipgkev+8fC0#M#q& z=o?sC#;E9%+B`9?bKQ z(-yOyJMorj(ub|D_dJT5=5wUH)|(pjd=#r-GG2$u6;4;LO~u0M$CF4Hl9zMKlYW;6 zC!&8}!T)$iMZyJ0UmFb|502&&rbh%q&7DR*ymCu{@TLMtGn;5Fvt$l6r-A!v`I9Zn zdOKaui#reOt}&OLL%pKQRyXqd&Ho+u>2KdMzv>K&Ke1=n5dfrF&6&3Ly8yRmtX}~4 zk-!2VSm*oT(~b*|T#~~c80*ggTWK9%(svy@r?Au&9n;>YOVL#0u+ecIZNe>-Bh9r|P&FiPM0F<-g0p7|I ztDrM>+n_Z6$I-~o#z&xLRF)*3YmOVY{WjPcfa;cIEoA6puyvtAc+w(x~^+kZ=Xl_vE zz^xy}uZZb`Z(w%C60vU8>1}NV24a5n3wOvFsVbV-(M?sm4*)iVfrlld<^?Vh5*uovukIv{ z8)vLrX*qty`8@d={>}{DcI`eLV{8Udxi8N3E z81D<;UwxD_`KV>k4AMv@|K@1Eo4KJ>r$DA1R+w@5XY5Bk|b z0+TbH_7lAPvOfbzw=2vUw_L`E%e?w@&#OhpR2d@cz0eO~iUf3Qv^0jGCLuxVK3ub* z2R}eB;fLN>tF3>{7`i+Co>!FD?Bj|-8MPDx;zKNZyFAb`8Ek9F$Ta4IxK(jRx(jh# z?8WcVEYglqL88D zm*>46m0)`PbI0{DV-DLq+p6ZUI1fB1f)7!6>QnEv<Me^N z@AQ~a2{@#`^(b`#CDfcrQ5q#%woQ$RePuPytu8fT8urqPGs7G=Rrb`ZrAa30@=S4V z=k*79HlEQwK$VtvxQph=55kFa4&$Fp0e075C+C`B@X}bGK&73zVCWEbX!y{-Yt{Z9 z9{&fL>OaH}i1jYI16Zw#^QR1g!u2dUSqyYmi#|t>^iwAhZfJSi{GsvN5UuMr&HGr5 zxgjLherljmv%usMqDC+)rr}pfNr$(X*fML5qWn-uLvni+CPX9*H=LfDLu1SNJ z{b8MIUwF)nJcP_7vSAYTo{Q!*Rl>uM9vuI_2J1Un3@DZz1K1SvBjlIQ)zdv6dWwI` z8md`WA$Wx&H;0XR+*9SXc=Si%$R6$;onAu#>fRzB+hlb^e)3v5yTvrMN zP$}W)=NK>N7g>rdHv{6WU&Jf6xXCki5?E0#mbC2go!?^}!iu>md_{JnBq>&&*ARku#Dsxnavaeem@UOzhXLpLWl>);evi z_;qA0T3$p=j`}cp*u5#5P6e8v%&62&_g=X3#dU$Vgx>|z9%VA6H{P`VqB)s%%1|B< z-W-);F-x??#zj!ovF{v(9;^RC)lwcB}Mr-2tQ+&KZBM(Vwa?Ym%X-^PfmIT=n~lQ_~EMEhH*_( z0h61qhOZU&Kl1&+41|b4t6tVat95HKW79$H;=-=UU;%>{aktRe8E*&rN56%pkr*qKJODiyh!D zTRlvN4^N|VK#bQukDc)AB(W=lwy$FMUiu(IERnK(#CNNT8+m!T!zx&48Jv4sB}@CR z_H(1%jc;mdb2fESvL8D%R+xXd$a?}}-$$;7BBl5Zgl5Xw$X&#!PbHVC z9yK0psYjTVZxZ9r@7?OhiQ)GN=!5{u@I@cBld{3dWkt6~O19hK;Ts=w^{&iX#!~{G zzifE^I2XlnxgT@`0hJq;`CP|^<39=?%tV0X7@%}ivxDIYdU*) z&EV5}f!^=2fx!VtY|f};NNFz341KIV&0~+`3+r0?pME14m%oJxGXA2g2Z#XllSOyK zllv5LzF@1z-T0N?pzswWO`JObdC9YXByL7x<07>mi)!zU;U~y^sOi+Q{3}?+hdiwh zFD^_fFCwqh_sw+ixj_csbVFn%ExrdT_Vw}J*ABb~@V-$aPMY@gY?X0-c;4&%`I?I| zPpsJ=ZQgq$duKWTnPVY6eJ0F<0!=!N1Z`hne*boCl{{X9QiFCSJfqc?>LuWv!l*hY ze8!APdF<*;I~(0u-_ZTu-S28*|BK~Mkjf!v^AegRjZoaXmkz1|aL-0)j61yP(Mx(` z_WX7)@nVB_*Zb4+C9HnJlmBfU%_Gd-mTg`8*k)4ip|sPh*wWGFQA4v}Y4l{R_P*?f zUh|~JLR-&Qq99ATm~1$o?=PMzOdHhwnyP5o+p*1jX~m^4y&tOx4v`6y!4Th(cv;fpJ=}yn>&sFJd1zENjHg3_&(IXu7MxV7U8QMC3F3hHha@!(7AsfK&4HV%p_U0v^^lz;$_v}qfQwd!P*My z&G0L|)NUVlcNU7OeUu3d5tS>1;#9k$@h&1Q(~t+_N@Wl;&MoS8a>ol$0}b-HjPe7cx z&L`DeJcNwmZ8a;ki`#<$lrmTQ5{e-^s!?*Ba+6O{kFQ{Re#iuHcgg;C?XE~S!pt(K zGy^XV?c*0t3$mU6A}Of1zO~&+Y>cnO>Yy<)w@lssKyA7Xljtx16#hS@KB?Ei0EJpR zmQm?i`;9cR$k)Fi_?-vJ16sFiNC+{Tllh87i6YHA?T1j$ubdN&{#N8lu#?Fea!nnZ z5FDClZtN?uo4ydG6|Ykie~Rx$ZWiAY0Aa?$5uqE=kM{VIZsP&CTRlim?b=I=$q?>AqTWOu^h-Yy?^1kbm*vv!bJ1 zcG(vk0Bfj7DL^SN?^()sC9onZZx`~n1>SmZ7hQR+XY^876>GtQG_kMcwE{<|$tw!vPr``LdlF_Oq>TlrCBcDc;+X#dLCisv|FQKSWuhxXa~cB ztb;ICNv738WVKlLAO!yHM3DNKTNsP0EHLbU;Cm%pges_?^~SzsGtNZjSu*a%z&(cs)JCg4GFQ1eoA4~cnfYWsf#eDV8dW-Uv z#pOR_E~{>RFSr=UvFIvH<+|OKO{Xm=RVjNme8#T;V|iAT;@}&?ySZ(eP0w*%GA02G zs7?KLRmtYt@{7$JIS(;?sTD%G0t3c@sVEr${f`To;dI^J+~*vwgZ#G81+Pjab>QE5 zHl)6~VG1;#d>X@{cxGW7eG4cG{LV$rofk}B-z27SgJl#-p zI?apcw<+C#CzW&@OYnCBI&j?d8J^2-R^^O)u4H-vu1ZgN}1R*YAI; zFT`_H{!tEWgmN+#EJT$u?=YsoM4?)n)UThr@yE20gvnPc=sHg6KEdr}T&Mr@(yKY- zbpe;LTG|`7<9T>-ap2fKo-mh6YmYi~UgGYxa;{S|H4A2mu8czPhn#s-%!nGa|LOeh zxuVLr*Omd(zm<2bl~hj`0Thg!;@AiycEetX%L~Oyk`?spX>l!x#mz5`OkH6LMkHQnvE;3SF`P+b~| z3-w2~IL9IQ=B9GYG^ncPvhPn@lGud*V+&meI4EU<;s((UOZ475T9_sN%+p5e?wA6W zY~{<7$`z%NE+O9vp_+~1%Yy<;X;KxbNNcR)0(Lb^l!vaJ1l4c{B6y6De8R8;qGf8f zeVufxzpDV?tdT}s4YCQ7%k-ay}%O%5PEt4HY8p3V-jRH5DOL~nt zdz5?^EcC8)w~SEV^+E_P|B-U1mavprIUL2YeYG9vj% zr79w@r`sk!Eh=|GUSPZH%kPtljatZUfNTFe~Z_Ei#}x#AS+M4tORH& zKOtX0KNK-bJD_0jLbr{Hk@cG4T^ptAO*yyk_C^u_-Ea;+@67#Boj0sdU8xdKd~1DR z=E0g!X=)45W=1rur*2Km9n4xYHlB3DQtDo+JYA$P7W`dp{Z9dz1U-dj@Xr%$5{j`oQ!j~sf zj^YX?MIzPOrWEuQ~y zL+WtHJrnrk%JjzUy2gzGi0aEpdxE}N`nlwL`=~45O|C!xkd(|n1?j%fNJz4nm^0e2 zeNW#m-rm;f7Q4V#EGdz{4UHn`ST>0%(pgH+yx>UkkIM4MXA;y(Le~QhfW4LXXRL0JgGmu+}CX=qE3F+Kz^J?X>>4w%G25+5r=OaQ^Tw5Pz(C1`4 zoEE@oH0BqkkJa^CXlpmgnO=P8Nt9vVc7V?bIIgxnZ1sJSze^sXBe!fG(i^N2q975P zLx%u(Cx32%QMEsl`M`Pu-n(Bgp*^of6%JS;3#3E%EsFr^L+YreA58@<;C|jnw!(in@)t8f|Ok;x+~6zJRWXAe?VChXOy#X@%@DPhl#5# zC1P~>c*?T!jHp-}yR}Ym%KvYTuotBSg6@Vjr_%K-HFlRQz$-({^NvUA2kVuyLf4V+ zs=NySS{~~pAr>Qx6zq@S$q_26Y_GMo=)}Q}4D|sATN5f`CRuD!L2ynEcc~#>JtNiK zy;|lG9{;wu=&2`#UGgbgUX<=Yzz%x4UrZ0(c#6vbWjNT_xLxcpUZuG(t-^_QoG}=1 zW#c`EA1NIPNX%6Sv-ngZv8VN@1UAo;i~a!^!=H=gXO8B+K>581Qm?(3F>Hgp4_B(T zS$<5}iJ+iEVH~PLB&|)eB~C&=r$k$^m zQX_-12I_Nq7ZukL_M;J#^+OhDKLIGbZW<>z>a7%^B}e(qJLYf+q(N|+i(8GaphY|O zV=mul-3;X@nREA*dr)cjOq~7g{%GE-9cz+M+E@OF)%S)5`pcY!u?YViIf3~d{`c^D znb+fFsL$i>NmCCI#Z%hZ_+d&=*%p38W6le*0NEld-{20LA_E-4xlH-lEwcr-s>?C{ zN||XJAYJI+mi2!4@W6q__pvN@NBlh)Ei-W+8{&La@<-tIqkM?*nke=1nuu}<_>SxE zbnOo-Q{K*cod>i8!7t!Y$2gDcA7~x}Lc(J;0lWP)IvcL+Ugc^mJ6u+GlEUr;#Dys} zTnf`cmrUrl;cwRAZ7j?>V-{xYRmz3tHJ_`}-T_r{++-TIOc z-m7Wua#M)r-K2YUncTVmS}|ZaK-dDH>uX=8c_i%%wZhw{10?L4=p22KgW)ZeHH0xK zJc#Fv-G8zszXCV<023E!vAO-xJNj%_NEzBed=1BTC2mFUm~8ogS9{9GU4F?gkon2m zN~hnx0{q6gny2w4Ncwfpnw2nq*0er8u0s(P*#*a(@&rnpN3 za^v1B>&<+e$n&1zR7C?2j6YmfFsZa`HVG7(gF};%xHoL?V-bQbNq%C4n4ad$ZEg!N z{a?Sh9fZ8|FWL;73;p1&*ltjYN*;^9AeJyo=XBCy(AhKQLM!Uko|(| zopZx1&E7vxfe!%aHQEgtfwOeTXF(h6}fD_|%1etxcA#cTp)B zMKFy#L#RL-T@)@#Hnz%dc}UEuRTOgi_R2tM?U5)<|qA8~$yoIrK?0%{`>4s4N3fAeCmnFd{HclIVVY|fmfb}`Z#X@bM> zUg#K_=1LZ&Yp+BX+ql>%zVb7&)v`*gQ4tQ;*R znZUp374TvgA%HQ^V4fMSh|&+!-nBF4RAcgD2Ba<#>SM4VB*)XY4Z)+=0eh&!R~NR3 zX~h$E`V3m2x;jfK-t_TH=TuiPAuPNbS{Pmjo7uI9sneK(Q9oJw`2^vTnk`?jn*PVF z1u+HtJT3M%R~mXQO*M}a?D;nguX&f~4CmpLQurh7EIxx|=fK9Xv&8m8qObU=#re$yV1lGyZ418>QIrv7Nf&#I1WaGhHQ7o!ewMt)2 zz|3Do;`&G)%UfDiuJSR%7^iXm!^+#w2&^otl4o%YS`7cS_`&tY!dMSiT7Ecy?i1l$ z21BHxis|j_1BWfoaF_yt#xNv(vAjJchNnx9_TurBAs4|R{B7uZ3ePRKL5Lym!BN$9 zDyVK-pi@pEj>=_P=J!#;ORgS($+Ii+6d4kt%!5hVPwx4pegQMMIFI4AjpG6sh3$|| zgdz)fpdGeqYKo|Qv`8W%Nk;KErUZ{`R*83|4&}G!m>I=WY~*nZmaq5}3%p=)&j!Ik zPcw0^@}@a+Gog#|2M}-Y6l73S407VmwbqI`J#uQJBUIcyx*DHp(NAABgzp~nH+QvjWR>RUmmIegcaT={ zMv#3pa-b{;1iAbmjdEBYNK3}cpfA6ar(iMbppR!axoyT((s5X9FSlzv7v_+KJzRN~ z987XKx4x|A!E3Po0)}F3LdgfvUWXSi@3PWdA?pvQn5%mP(3AJA=Y6Qu2iji)tzTm?4mSk1l;^rTzJAbhFYy*nQGH)6 zP4*+|O#1A8ze#1!fi^*7EebjAmwUIKrGUClQu}L6lJt82YBdB9R~6nfQFPV~Z2b3+ z9l$u~u(UN^V*C)h83d|8%hms!zCS;$+z|kXhpewm4c(nsjrb90{p(Z%Dx^k9zeuN{ z*Zb8d;O2js08>sW+N-H`Zh}c2l2ef%RuK7IzxtR7XW5*d#7x^Ua0okGtX_X=e+YY? z{r86oy9VuJU^Bet>6r|euu`gB{@vZLfZgtO* zD)6uH!Or(7&&cVoi58j$_k~fm-ZsT3h8BN+NdoYrkZ1yFqdC5l!ravGxi2`QngDZ#|oZFbP7<}sN%z>%0DeCb!?O8EYQQNusIA!%v)EH6@jH0Ik zo$WElhn4y5uLiw4nR-irNbnvq(}Axd2(u>IEB&FRH=*0*nX#o3gW2y&PjFb~m7)hQ zo4@np)blPs0PJ@+i$M-Y)B60Wr5*{X^m^O&nYG7!Tsl2ZHzJWwGF&n0&OU`NkWLXK zGM^u|Roam6IX*Dg`+EsS1*Hw7Q@KY+(a*)Rs{j~DLr1h-9e0}Ip<=7H2NN$c^p+q) z$Pli&pI++Gw^wVp*7%R?B1+ebDjn)+X+loeA-K?#3p6uQ?L`=4ZVtAks}2u7`eGR8 zh`M|qYgk*kENb4#s``=}$Y$~&mOb$Y6{Ug~9DPgM*&po&Yic;FIbrE6JD!qB%uK8m z!pmxp4USne&`bP>nEmc5l*c0nmHg#Hrv0*;d0!wb4MlH-5I;H%Lgvf&hr>A3AG}E4?P2(uT5Ttxy+Z!DN;hgAI}AzZU<6^e^!D3e z>-|!1ez#n|aw5zW>OQc-+@5P(apa*I$65rej?Uif{ls8ammpXqdIhDuxAdj#jg6v`H z&?mBYCRax-oZ#qEUXCOWJZoBrsb!>v0nwJ1O-?oYD5k(}D9M&4thyQ6|Ft^>cY@-- ze16g(5BT&1o#ECkpFhXtY;l(e_0uGaQMmzE$?k`qvX*MCKMQDUN4i1XkUz~#*qPzU zu_>z8_H9w8yC)~7(5Ga(w&dkEEj>mf`FkLO5|(nYZHVy?lH{6<4~fYQOcz*neK3sO zxBDB=$0cp*uNSaE}d5QKpP*Of5(jgp8$ra(AB& zZ$5js^S08B&vx;7;`Bi|C53BInsOp|w~l^fgxq)-4MRwKarDG^QVcHT<%?c6-a~$x z?ZVP5bD8h5&1gk1Efs^T&PG9ns{Ua!k1(%72BFjmnRq@43ICR-wzjJRApW)za_Se+ z-XCT*)q%xTU|KhvYR;n^aZdFJTFR!k-+K3Mn%#C3r_mwpm*SdjEsg@=z0-^*T50=W z>Z+d_M`pz8;8n8xrwALL+=++Wx9nXX`7##ALf^LkW^g;GJv6RUR85v~RXu5FvbC5} z1~$Utgkg_&@KMidlaR*EO;NuFDk}|^8dM{uw4nx-Y8Dv=jNIvE=#2NVD4Gvn2N+4G zcK_o6fD(Ipq-fHG3}#!|g4fY#3K>F}1#W#>n&r5j>T3L()5%>Bmt%DqfO#g$*i(FA z@$9F|QcEf0r?%7Hmu&bA-_Oyi$Yh{62@Jq;F?gu=DX5$Ox{D)JH~%*lOQsEd+43O; zva8UKNBq3iC~Cr2O|@uPEt{GP9IRXl#P4qPyu1TNtr>a(i05gF{vDz zAr_;eOZIT=o3g01?%8xPKa5w7=;_aj0P!YO;|m{4SmlDw5$=9y&iG@aE=c=m<+_yc zEO3lzdp;ah==eYS9}5n&%0Ycrscch$YDOQdzV;ni=zzS;=I<-CBLg+kv+%<@=#=Ab zTe&_J$ei}xA;B#XSqiqV@;lj185p9eu=;&P5yT~50@=i_ZIQyf!_6l+>`Q***Hmoa zAYa4t>dvNfnQ2?jNtstKZOrQrHec+XXZ_S|2sMrx42<8pQhH35An?FEiUO&-%H6N#MoQ_8JaX;E&TUUu84H(el_*yk%3r z%bu?$(p*Ws3_$bRPIx=T;ba#GK;q^ddsp@~r+yYqFC0fo=5t<^&u1AwQp<-sPL?jo zU?wBnMy~X#KQ(&0Ap_rd7G`<1yZ+obL%@LT#eHxE6)OW07#1nZzDFZ)w^ad7iOM8kCH|>-ul!@>A3p%|fa(^@T=C|=a4CuEwC6h$ zRle0|kL|Ul@?&@-XMtmx@>*{z)Cb8fx?X)Bc{&W1Pnn{vrsH&BO^SKV{D_(M+gW0A z+_l7r%Ngz5$!#qW4wVF3)Y0^44erb8pH`>7?F#BOUrN9x9`*MsSHN#iwnq6o$ST6l zoIp8FeALKXIG~cXahm2GonR(E-jM1(Vn&@8JZx}voJDulYAm5fkV$}11q1Wl%9j^=$s#`$homm+EfyR zD8KCVj3zryzx#7MxA!ajwWiY^Wd*r4(;#vJJ!zmJ!V+eU@BA`5KUl8dch<7rlWu+f z-kawh*T$*4;X#~|(%gfonHXN;hv|2=t4iC{gSrJTi`SU>njq$()%Tzx3onblB3}Q^ z^85GGump6o=ISS9Y@=8;Bf3M(ma_G>WQ;qKOBaf5R*{JNKp7`1GtMGY5@hoIcdQm^T53K0VNW^N0Yl@K?;F5MSznxfY1Ws5{r+H zIsOJ_bc#7;6SyhhG%>%mGE%jCF|+mE^6>7?b^vm9@l>V>Z@&;~UnTIDFw>=aQH$m^OWe0GRGjkzTCo&=S-bi=`Eo|tm!h~O$tjE!p^}t% z_6zX<94ns;WGw#q+{R8#-ksD*uU&ZUw18?sEZ#pCjWEkiF8vIdPYy0cm{q*f2c(bR zu0YW8RSs9~yK8hhZ(W4OJ4Yydh-FckE{qLklSao};y;&m$RhdKREF9rZABM^Yt1*+ z7U0qib=qx{&!a&vex;PbRoHRpy3+b~p^WFaUqDE)3G_Ts#AS5K2O?ql7CD&LPmDj( zY$j<=C!9*SzL{=|4ipmDIpft_)Z19t`ji$XD_h3JS}K<((0w~cfuIVno0K)m)0-G- zI!+~plTCNE=`nJvFh<ty;8fz2xz%vX*KECH!};0QzyXD;2RFT&f%IEs3&R6i80gtg zk?@x!eo}|g?{vh&&JH&`b6sn;Ij=|F2T?5!o-K^!Y)=cP@Q*qqf>Ys)a~teR**gB| z&IuGw-@Ro9aR17LhOG8|bDju(VZoU#Bco}68C0^i8m5(y%$l;W-P#j%21LN=x#n!W z#oWo0rRy4{HFExp-Xx}AC&;HzUo_B>*PTLwWrX>x$eB%iW_!LF#$lWN*N51o4evuF zMIJ@IT_+aV+cDxk0X&knGlo&(knIR=s(7!BMp4O+EOr}G)*Z0BEGgKf54%KnX#CYe z+ukmWtE95kbjvUum+)s@tGrr>c_LyCg`x%}()24n$XSsTKkfGd7EZx=%24$&=~=l< zZnVZ*Bz+kHT}|rH598|Z#fa6ARk+Oz7a4rK=y{~uR!sKfD_~MxtPox_WrVj4N(IU= z<4zwwDMgEqiKssUH#54+ciNcvEkBko$4umjchKew`n#t0u z8ft3^6Rfybp6!6Lq?!#U3r|)}-UrFjXvTHs2>bI37z;W*I>!xp5vn$fXn&Nfojr#m zs5y|z28=mkx7GmXIY$4Y)QLbxRz}Buv-Ay;JOMD-!Bq+Xnx|gI$x8goAD)jBA?USm zH{CemX^^%>s1=I5HG?cvv)dDyfsa%?oJU+kFiWuLi zVWrQ9G5#?~{M=!~sk9102YT+JDuF!hFd6BAhiqX(qdF5g)g$s6EN9K*ksLx3!d~95 zGi@9#X9dpLoHYl8sQL%9@B|S@_8I17Ti~^For0kIdTPTQWOKFiTg11qv>#&m{-=C% zhN5~rDdX4hyG5!}B|_l?=63@49TI9S9<4#N7xCL-qc1f=)cl*LVANURvRWr0#@4XZ zMZn`4J|yqU;wao(hEERz)ja8|pBBPT$~5awmo=ugRL5xhL|YDvPAuCVBo8{lh|Heo zXwCD-j)#OBj`o#KVC)W(qI$nxnjuT(L`ePs%|GhER3FPNzg&- zuXkg+XeZkbK}B${^^G}kDk@!~d^zJMyI;UWl_SMa9XHa@!IM-_5yGfr)XW1p5#5wH zSW#OgK~EIyto>-~-|q~%@;>%#s-clDizb_(hmz6BDZ~Yez@vsqc$o5mM>BS;B{a2YJQ%y8r+H literal 0 HcmV?d00001 diff --git a/zh/img/pb_welcome.png b/zh/img/pb_welcome.png new file mode 100644 index 0000000000000000000000000000000000000000..bf541769565ee6a8566ed4208f7a7f9e8fc1d674 GIT binary patch literal 41095 zcmbTe2UJtp7cY!`6crT_0Rg315CViE5I{wmH0d2gAfdNV5~>ZAE+AqkK}7|rQe)^S zoj~YF@1d6vS}5VW!7|Q&ocGrEW-TW-H|L(a&u(Y$-`^8e|uB7k8p4XM$^zhWDw5g7Is!{=kHm;Y#gOH7K+L^&f8c@ap;Mt3aC2ET3OpDdbwI@ zd8uhzc-dKqTXM)qpNAkMfC(I|+|17-9PAz85(p`d-FYQ|YwB$f$NAkMZgx@}H>fW> zudjONysVR})p=2V0X_=>0ipAPf};F_qQYXLqF2ug2?z;-1cX3>;(S722|)n~0kQKx z{^I~%=V}R+(7Yx8<7L1%DGqBlH)jbD$kWr4-xJL5j?kBCxBxhgt;?FkY9kh zrrm*-7QeXx~il@tdcH87u`5TAg!wxGC#pqK<$h*#j6 zgn+>Jp{h=nHc;e0hYAX43kXRFib@EI{9`DfGnVFV=Kt5hmKG9FCszk^V8J#H<}fRe zvm=b-{4X|2$U50OxdJZ+s006gUrAQ>j;j;Y#vb?quBmYIypo)(sGzv0D4!6&;4ZnU zsuD_$a5r;D3oE5tQXBwt_-$+~CB%e9Ed>RvMEHb+#mxCEg@pz9u33S_`L2oF6S!tB zA|fUtApG`!Ki@)Xme})#?Te;MV_D z??3?YAgaNBUkB)am$>`eZ^r#|IN&j;m%n@!@a31cvvLGnoGakVbRK!P(9p!4QMz?Q z8__e@-yc0zkmGFRz-f6)vPE}NDAXDh6X`+_IwcsnnbA#$>WWs)**mPr}^#oaxjty zKZb&|Is8RKQw}!b?O%wq*vuM)*91k|C2tMcm{r7XbdA@{51}#+Ye|2kTy~fn@{BFn z5G9Xbs6i+a_^li?S;T7S41O#5TYf5@O2*IEP~W~VigNi1k=Pl3 zg?XuICy=7*EUN9NHl!0}wsmHLVwQ2Z1bWlS;JLK3|1@SJx z^T5Ks(+o^DMC(mRF&~&mWkfbeft>=wd)BNz!U#pW(zopR`>?QTg%yup6)$N2UkVDi zwsQc9-#G(J0PuAE9$FmsYMa5TLG*|eoQqvEPYLwVO|1co;0+FhT=(4*$NHY! z!XK~9S78_4v32LD$z+dGT&p~VG1amHjpBe|sDjudTGwz${8Op8>h?Jf@ZVpa|Y z^L914=GH%KLYTzy2ghxA_;4i zL=manR3%i4TGRW~!%@X2W{&1MQN}?BHpaOo-Y7tTW&N%&i_s9UW1O-S{NB??ZLDLG zg4q$Dy8&fQ?y?Gi>4ti^@>}t!1j0;hUMWlEcFcZ3PM)OuTbZI@K*-`Fg%9~g$bnoZ zI`D1KE=M&F*4n^PHmMJ_L5nz*K8rWNJgb?Hy0NDd1p?5>_vRk*u5Pz$!k7Lumkz$K z7ix#n|2&)K`banTQAvaFR1^}b>{>4cmgxy5Xc9aWy$I9#-N91u7Rd55K>Gi%w$cKa zyl$Z~M*o#j)$xqm$-&IFt(7Mdc(8{xC7Y5*N%4p87`0c<3A7BhpbV;RvAs@x!q6o9 zFTrMX;aZ$~v<(>Kv3jWe{bAJk-?WD)0;#^%Bo`G7hR2$X2e-j4{IuJ&Z zaycty{Q3hhoh85iZFb07AY`Q#;noH7Qm4Z7Ec*PO~~V^&Ed2b2t% z*yZG{tLIX27An7xCX(eb|9zfcS^{{n`>?%?ad@xbArvFsHM~!$d8Zdtc}D`x^if!= zisQjBO8u2L;1&-5w4GglM1z3gw|HH&qqX#3@brIs_kyKz%1h(Zm|_%%YN(Hx_+Dj| zt71dEh0m{E96{+Y@|!kUF?tGX)ZaQ1@2^JTwm{Dgy7O!Wsav(?hb58sr(Wz>k6Xjs07d*sY<_l@ld;r+UeVA=4Y#HZ!%?{KA zuQ!qhTvTq11HWq$tTU|oF|4!nd`bcrH{;qVyw5TIj1}Dda!V=jh#n(?P@~w-q{G|I z0L_P;>4A3ijZ(erUWiuI-xB}6-2KwZY_FXHEi^RLFDXP32-mHku?Lf9Hus4f<5eIT zJ#zI<<#6%$L$JMW;Xi#`Zt{!Vhg;{L-YL%P3M`x*3FEnqs?EsZplhyq0a2A>>IiAM zVmPioX{?;R!NE9aYt@n|ka6-^$m)TjDr3~4TFqfvQJenTXQ?v&ofMmoR1aScmiky$ z3`5uU+8jRihX-~bbp%>yY0REaJD0aGpR_tQ74jK!6JZg^02v}b>Jvjq` zv)|a@5J2K*^<08s1#X!g?_>^P?8UW9SJP9Laej=55AXNl_XA6B=lV^^hF1W8dH9_a z{bx7L_zzc)s1_ z99sN&y?cE%=bX5cErPZ=U=tQL`^j(ywXOX=d&8?09>Z4GJ+ z7t@=qln8t0EzVz{b5rGs`cn6-k*QHt>6RRt2|w6o+v*1Bwb*HH#>}Mp2idVGZ>FmZ zrFWw`Gal~&6h$QPH%`AivTH$YQL(VnT$ox>V-=bya5}vwmb(pYeV3$tf8Gj>9l;I; znVjpFC3%l1*F>oOZ0L%)|ulQc$Srl(jX+U;K_;KgsJc=|<-S1kCADAe$=7W+Zy?2M)0OZe(Hn~wf| zlnak&KaBT*8Z4YjX#GI*zMoXmjif6g-Q6u5r_y1Zc;WZ|>$}EK@9x8-DJaTznZjJw zmno;MBaJC@J#N`>os0Pn0X?b+sDlO_c9Ixm2={xdlw<~BF5i(l6FO`qyIl&r){NLQ zJyO56oya*DfJLMQ zW+d`8#3=NK5R(nYZtC?%>>zm!a?Rw9F$-ujBX0h(A zkV3~5*6;E4kHGNnc!S>V;g=oBMC3i)e(iBF*bdUyjY3Ay|g#tFqrErYQ@T5sh@&nEyWtjW%!A}zvX}Fz{8)ZL~cJ;irwnY$?{CrlX}1s z9y=*CKMxxnL;+&+`3#fy`vh!VOJgc*WNZAKljo9>31` z`E-bRZ|D{yF{PpC<41z! zB!ugE{-h}+d{B+jgf=@k)g-5OlhJ5bMNH?8(+Hp|R9WTbefdTzQGcWXB#7k`U)DO7JsK`*1@?BfJM~ zoB8cAEX*`L1y<1h-q}HFW8;H+9B$hqk-{TAd`R$BTKaZwseh3hoKS8e2ijj)Z8>-BkvePZNhB}$a@Qepd?3QilZh!gZ_xw8- zDL{6>Pj}~{D2RO+OLv&fH!un(`#f&t|x>*^F$A3vbtfL%-?ScV8`f4{~ z{c61o%VzhZC!(f?*%{h4;#tY#nCN^ZT4q1UeK|Q>7XIo-yGr(&hLt0fq-gzz)ODp!snB& zjG_Id3MHSw_`y_j4Yt>cU4-iCcJQc6hSMC1xUI2amv#55mXBPiUPNvRx{QVC+RZeK z?#*XOJdNrrid{me(AznI#*6k_*Oc*`&)2k4QtVo;?X*~zTu&Ls39W6wEG7(IAVmr6 zcajb2h46)`u4;URX6?ojQMp{|FXa5SLd8>+EivK%d*z$KO22}4 zFO7KolL>FPXH1!ohnP!87BJ*A3H(Emetp4ZF^g^bj<;m-gDha`bA)XHPuWiXgy6kL zz1DnY*0TD*V9mAb_>h{hyf0&fNS8zYAx2XiJsJ`%Ydo@?&0eEz8!fCRyvs!%HwI## zLRdy)Px`m2Rj%sIxwO)iu=R9tonrEC%yn7ZqdAHq9?}+@=ti<-sYLZ$NcUH`Dxujv zYxlyma;mZ_VKc(ETVw06xcMsuA<;xjK|~9fMcbJ42*JF-?A=~mU9Hd*U+OaoIs{v) zKDK?TaeL=g%i+a3572+89P#*OZ2ED2sggsPYdF7>0AM+~PEr&E^n+c}g>G(*?j%MR zFX=T;51UZ=nHcHTMqTl`Yj`pIQQd z3sx`_#2?58BAlcJ!jqfb6P*`yJ{CBV!SA=|?k#Dw)$eQHXnPVNrqJkViDG;RzoH*0 zX9MZnM(Dx{_x%=5{=-V7ao|VzZpHgI2n*qyMa!nEm?60Om=Oe=!@6pOAebMX8Mt>< z=xL|Z&UB0jF+sc3zqKT8Vgx$a1eVWh z1t})xa5AaleNwgb97?aWv#c4MbX>-;;m*eUFEUMrbEq!ZyM6!Va0a`<;P9p1E(cV8 z`yBGVeC}IyZ>Yo3Zz(Vj_FxewL4Fd>&wg0C=(@~7dyV^@#>1E$p$*DT(ik2 zYCO2i4jsC1RxEA}ms*3s!sM4;7!y#$b^Nz5$B(@Nj*{b8(@bQBe=uy7L{r5+6|kLZ zBB!v*8PE2$_MF}J+C}eV+zrJrlxX*H$2K(8g ze-!4qaG2j2{JDf~S@VPblpfc$npvlBTZvO8NtjmEENrpwb>ggvQ-&WC_E zL9UO7hdo6=34)PFw?j)#HZ;BWiw$Zc;t%9z08$NxRkN36s|uyEjUGUYcjdoFW1Tby zF33EE4MZQB%)_-jm2C*9_eUn1wQ@(>yIqc3XOQ-@zSTMAy7M1?3_@y@%8hbAUur$G zQ{gr2fYRu0k!c%**#?TabDRZ5wo1`c^v){j_vZJKXjT%tWW@}3c++wvjZcV4`eIC@ znJ%ICSRk9eM36nEeHONbG2elD7b}BE9bC(X5cwWewzgHtScY zDc0~tW$7#-jQ()%TkNzhgk`V=Ov@)oJ_}mI^<*-LIyHf#!0@IQXXfmdaDXEn4z=tu z8bgs$Ck%{uc4m1=c9A<)n5@J9MW2(2MF-{E(QW2X(JUXotWxv7AiDUkywd$ z4BetYhB5=a&8FJ3dolQuC6vKRFzN9{|D{7NBl+HxW1FFjnZ?L7_BghN-97V%u^p%0jTZ=qC>?=%M;M#(SXFgBv5X^j+2J3WRES* z+N8JjxcF?ta9QReF6`5|{ED9V=1DdDQ}(CYhxxw0j%uD%z!(8-0w=HJu)33T$6C~z zzKW<@C~RKD1)x`@;JpzUnrD!k*&j{s#_dAFKf+4t4C+g`skagu>9V(&;SXT)W7xrM zEsOM^XuiD0F9rbS^bwPuD%`c7VX3!4Zhkct6~n%^gRGqiCd&^`#?XeoNNr z_5e~u< zlf9~jFG|D4jCq$UyAq_bXE9$2%yY8@(Q}{$+wH5mYSP(Ef|A!xDCl&HM`i9mFk%I zD!GJP$(lDt+`+Dj0R#pR3t-d_bpo#LCnKS)m*hL6_b1;U-smtvqg+OTeEsgLe@Sr__s*f|qltN?y~8WV zF(byYJ=49=1XDKLq5q{o5(4K%u%=$AH|o4ai1VS2jv3!$crt(`{;;DsmB#OBG*xtc z!zjk6n3t#KP`vMUGHg~#e1(C#-$zgvwwq2;Nv7T%O7kX|#c?hnFEDCH4A+F0DI?mL zNS&cn(EOJi%E4t%V1DZ7WGLQSTMM-D9wuv`JDolJS6RQNGM-4B%GhQ951f-K-WUV{ z)7Y}%69MB-9WiZT<{S2|ipWlqLzC4X?0DzJ=CM8~ezd(AUAl!YIsMEyU6-#e7$|Q1 zAZAbUhS?`@jjXAor&w)$2w)hDT^0CkE_U77;%&t6TMn4((r z&s_<)ELTN~yDg_Ry#Nf$lpTR>zqo1IzEEpUKzDFL=1?-YF5|mfQ?pWA4<<|Gb_c3T+qVWT?up{}OCirR(saHBb}X8^m*J^(q|z z&HRJMi4EY*mQQdZ2B^_68~3yppZa=k4F~tE7oJLd*31qcWulws%g*u(Ut*}+N41aN zb>$wuPbl_KiU5;355+^c(?#M-Za$p?1mUi@B|Y8!>Ul_5`Say4=Fy03_T)NpEm531 zCZ`h|9@{fLR59@{MypSte9K}@Ki7P{I(iuyxu=A9y^kT{J$C_uq2R(w8HV(e(xcUHS%J59v!dyZ^1)(=6g(3c1zg(z!YY#*s*u^`gfZ?+||5 z)##*_k24nU*6Fg_#- zpREaqL+h>c;zBG3YFp460rsu^ zmr(nN1csp7X~gZ5Y^+}?nA-!NLz~JwN3A!{OUw=RwS@r1h5rfYseW&lMU39iN`VOo zskw7xnnes((){ueS6KwCI;M*SE&`;oRx#f(gRK=v+HX` z^oLLTFulZ@jy=Lpm*N=Sr0uo^v~XQaF@{O z$vxFq+ir&8Rv7ZJ&qar(V^5&s>+`L;Ks-M z_x*HrKP%@{N#BP#QdVF#ps;pNbSYz11AtSuq;hhHyabP-GAgoIvk&8OX9+1B@+0-!=E}a2rv&Zg5b{X3``gjgZ|uGpOmhMvj8wW(P}-0 zm`|iEdAaGU?Q^qB_8RtnTf}qS^?2pY8ob$={f?nzh5EinVmVfdfiS|Fh>b6LYcm+3 z%k>ZN`5WG8Dl0F-<5&~Cx4TSb z(c+#rs5P%&*v+r%9}Qjw0c?^_)!N)!gm6Tjw3+-zdBC^p8*jl9d=~+1AZP z_npayk`_w|#n-l-C%4Y*MU@Y|$NGnr_9`QDE{UlNMZz6lpvCv_q)v(z=@ggKX7)Y0p3<+_Ti=fRSeAy6`?+ngh6C3%PJM~V)NFfMr) zcigCPg3=wXA~UXpeUe~OYITNA zT!yffY&pebbPoTGAmN~vnNrXnc(rlU=;ToYRj5)|`0<3WiiR=DRB+8>GpmPOn;3Q1 zPB}uk3Dq|Wp$*W7tg8sZ6)6j;zN#ajvd9Gkp)zI&Ah+MV;g8*9s9|Cc^R|zK%JRUa z=9_?FjA?V)9g?AEjqSU}6~%PvlvokJIzCuu!1|R-0wsC$V@eaS77-_58_E=lbEcN5 zxA;7$!T9mF=9iO6Cu_%%UXf96AZz%PBA};+@m+4A-CizC6!IA?Q;l#Mx92Z`rsothgFHYJ|g#EZ;74wqkxIuEZAfsxfQm5wRLY?4B?Ks4x}Z zBLu%Y!gFN}N3qQO*7c5&-meIzRu|xt>v5Pl>seK5_tS zou!&#jm`7vl>7OmEQ4K^Hf*nDzM>x7KA5|DGw;-ctA=mn$1boHGxuHcaf@gHiB==u zz6d1ZX6=MHz!++3RJR3_v}rT8FyyX01hW?LU#^Fm$)&VX(t~ji06%9g>g@QmqTv_h;8p+zh6D`k@otP(+%Nf}7bxv{!)c z7T&kck|lnxVbz>5BbSjvdrCmO?WuCrYtx)brQ7RcOLsc#TFb8CLcHenp&b6Hxk@8M9VMKnPKoKpeu~bVp8$uetFHRgg;}97-c}*`NkaG z$G5A#eZAWwKzuE*{!fklslrdb{^m6A!!%iU6D*)(FAQ3X-A()yvw1Ub7D|G#mS869EYNCcoFmdRlPNo}M1F8JvZF6Bcz&FLE~tS` zI&pTsv?PxAN^Gy`pS6NY8ZOxjx>Y30-BsU<_wS#_F(toSa2i7;A(@YeX&1l#=B*d6 zTm)}?mTxO=98x+ZXG~OyD^1Gs`M@CkaKlwoM9|bYB?y~2Cj**-8j}iGvNc<)8HeSmBTV{=-DmsyZaO=^N0gp3o?eXHF3(UtRLxuCp zp2Qt@P3ylv7`=ZrkX0(`DR;K{=ABkV-|T7>28=8AWzA&8@L(N@jCC~ai#P=ZyeUbg zL8jRe`62onK}74`&Ag??Z*lq%evFn)T15uNwPN~VMLBz7o(xCX@uNQ#_qXtl8bI+c z;@(&^Jv$@b8kCy$WTY9a7cvowMuqdnSzAh53J)~CGuP#70xqGiXh z;_<}blvWS(1KsDQ0|HTk&*?(Y0061Ga=mCACHh(XHsn?ATG(Y08`mooR8HdUmnA!` zoX}1d-4S%~-aiWs=xs@p1%;iaQ|V8n2VDf(@+jvn@AS?;qmx?`*H@QE;lxa%)=UlaIvPZU>Z_TVW^5gkyFtbjNz!&u%+R zzi8k83UxP~z;WQW&PW<+_GostxZZ}q^SYAIOzc7Lq*ht(NJk>^@wIn}3(Ss}!gq|* z^<=i??OeJy-f<~B^>?%b^Rlz+k-Y3Lvice@>sc+;g%0ujbjvllEa%nD;U+8V#$@ZMAMjo zS{*dW&LEqM8O;<>ZaUvv0owbZ9to)9#UWYcLN2+i(V44%J`zp;ib|ZH+eD%bV;tGzOoyYG>jPj3H;?OxF@KO`mi1oO z|0ct4SmJG;D*CI7_itKh7N$_i0Tae_2xR%9~i=Eh%^frJ>z z*PZ$#3TsVX#q*!)1*r_EG!fEfwOJN+%-;N5eFwU-W){Q=*10(C-_TlUEF2$|sNdhlw{#|ut~2L~_*WmrzFBE?-;TG7&Z7&t zDxxHDzS1yQLCxYi3A2bZ;$JI-83OI7Bo!meSNwuEC*r@! zzwgKjF_*X90;&_1-TnC6gF#-Z{6~yfOxg)~>$Wbryh}7yqiklG79SS2ONQ9b$`-YQ zyQJE5%YvI`1hl zfaLllZ+a)%)P3#-97XCO!$5OWA1vu!=ML|qmosX!A~_O{1@1-e1sdcRp#6W$@E6}f zt}Auh>0}E#sTOy^Cnh9adunR0^$DSq4Mp;<1YNyXK>M02i45k~|4TR2s4Qq7b9ErFN zJ#!7k*0u6%u?M-cj2D&e$+IkexM9FJvB#EG2YLUYv;ectx5QIorlq`zHUQg{?^)$) zS&cOI7`tz07<>pvydP{kgx~+~KybhFQ&^^`@DTk8Gd@*s0wY^*wp?U(VaYcYFozMQ zXv2(*(iJHhSo7Obp-UTDKdVHgT|er31L_ADGhP^ou&C2g@w6Y9`~dDBuv(P+T#ea| zIJXvI62m{^ij0z15OVdiLL zI2j|t-UIhB8*Mqrcj*0`dRSI%+NG)fNpY;*hDDJ@WuXncu9LB)d+Cgkhg#dK^zmDdMKNy5W!@~kATs0F+0whIA%3QQiPiWC;P}RW zaz;7{Hos%Mo|VgKx?(KOEv8dCUA9+2M_e|k(BJfQm~DfHd>H`hb&^>xPj8y*RL-XO z^C-BxjbS3PVXNqzMnBRKi<6whrx60Rh^9C{MOZT!{PG%ed#v!=aAI~uDt<1-IC9j& zwY|c045q|6@lbK_l9z|1j$@r_#}(U;urU6|=?^WW!_pVmQRX*JE-%VQ@9ew0du7bw?E1 zhQY0Ix~ecc)f|(>@}v9jf8&)AX?&krjT3t~Wp;LOAJO$lBBPFue=jS&Yy{}aQpVVz z56m9cByjO|Z^MMWm|4_hrIg1duhqlo?vqWaff2Y*r`B*-u)?=P~B8m{x^WLwt55#^Yv4&|~! zY=nQC`{?qJjBWp4|76-vG>_gBsEB=Q@#4rsGbW9{fPie%nvPc4Tp+$3Q4eB~0z1A^ zQb+*f=gJ(V;5+0}b#(D3mY=%$kG2Q9e~Czeyit}cwA%zPM53*)dI%7b7q=gxaigi z%m1YDf7!d6Y!b4O6Us|S4V@M1`m8r^6b~+Ed25a>HHLjuzQy?H*8Uai;HIv! z?5%Z7Y?hIhBMWv%xAkz>MBKJ|hw_6KnIhkGSi!dWxBaOUN4^|ex=zi~T&oWD{REaa zv1+W0gu}Z`sewm%(YBwtTfGCkhfHHL(&+JGn+8&(4V~u7aD+~W|9Dufb!D7X%-7Y> z&QS6JGJR+0pW(orrQau?To2fnPOeW%RTjzQd3*09NB<~fy8{D*S+|yp)#HVlgpQ5jMd%Z2yggx<- zqly6wliHIkq~CmfAyc!n{2u6%Y)W=- zG9P&#@p>{2XoUGZ&V5YDM~Zo;(`qwz%#-pL&oM(rF61;Szc(cwg(n9G0*!&LqtAW1 zgh=p7`DbNoRDjC#fK(+os({JhfKKRETqesSIVqq2)J6sXqob^CR1#CxpZau=We8|~ znDFuBt&c8T?pd~&CQ(rBzSClLz5}l>;O!T_xI&mCBEt7qRPVDIReB_0SY&-UKH`C) zq*o2(`bi6HKX~vG-JN1jK1Sxb^$5>n3;9vuaU}>pLXzcZTEbGmojJ`hd7xoC|D({` z7OFX0)C~=m{--Y#BjOHK%V_H)`0F2yjtcyGd8>Ecka{wS3)4si7e{PBtGJg^YAl3( zQY7JiMImlHYz3!l`cfA-P*i8{ktvuX zeqVdgtA0OejnPR(`KIs?7@1qrW>uRl=FQ#OT8(@bg*Sa+j0_C3j^U>J6ed)pOAQ(# z_|CmFYc84q+7aS3`S+6bM$H_vJ6v*gzMKmgLDTotiqj+Sr~1jV=Nzd|Oxy}i_0tG` z`Fi2A<5i}u-md?$OX2|tsd}QS%1T$NIMweikaGK?h>+{7sQ`ct-?86!e{-U51O-pp zw#3_KNO$>qI$n&vfZZ;geRcNfvpNNd4opB~SXXJ}CEUK#Q{FO1MWmy;rpB8?!E>nX zOY_fc@Fj1!!uVag)Ia^F1P$=U+xB~3UUjQ3u{L~fTFP?yq81}s zdd)SB++aCWPti>vrO@gj-VEOJVRMbciNh&Yj{};G?vCyGNBx8T*h0b>vsBDS!SD@11rwV={+lh2{B# za$^TxaL>SGlke<0%Wmwn=*9ZPg-DJWrU*TessBrXHMi8EEeyR$aWVuwu8+cam0uz2oB3t^yySrTV)~V8)V0@8%jttEVbe8L4KvRm%kM`XIFbV|mfMU? ziwO2QB^;V;X3>MC1SJO+mV*`auFC3|<=$h;5Yu;uk_Ag17TQ%3&L9}miM5CS8Giq4 zlF>sFmgmGg_c0E`e`||HyHg+5Dw{bk+KKcwuMMVCS!{zyCY{>&N zO1#%R&+NtU%UE#*cG-w(9~KDE{%u0Cuc zP)`tOy+(>0pM!vNjj=9OLfK=_t`>64pT2w%n`$6+j~l4DGl!@A*%+KNU@x@=y^>6~ z&N6Sa5LLV*!_lCkGSXCQ0mH24rmef15xI85&rmJQqX{urRg*0dgNck6b^>}jQWsMX zJ4+nOOr%kmFC1%PrL$l=J8>wJ#xN=So>rpR67J35NRjSU`XEhojo`IZ*+x?gL{W61 zUW842&u`lLH)1q&93TH|EoEcR=PIyW;w?z7hq!x+L$8RP5BKuoWRZ&TUikRG)JyEDawf+q zp=fc5bqwPFq%zN7jy8>y$O-MTl-f|BuYGohd%Lf+4w5TysJexDvg=B+ZNA}WSb2Ph z@fpUA4`>vgMi`^C-FyvarC6_WKd>R&Yp+|Afy+d-I|eBAvhemYC#pPl2C8#!y4o1+ z`h&(7W41FH8g7XPAkRHI>@D=fLt-^5718^5Gb(X2ARC;!gWiuacxLFIK|-rV74+`ZRg}3t@a$#|2lCqA$}hiM z%yXb?dV}oNEXR}1!LHSUC3S6cZ(H}=fAgZ7c)Ysk92v46UHi)T({vE%2+(>SL)gO{ zovp(BYU!{*X@6Ck;w>JPMcjH-XfNRa@_r_Y2GfVlxGEyMuy^SV7Ji|Piq#sEpX zKi^Y2_|TO8fW&gNioz0a3bvxm{(&cvIXwQ)O1yX%k9(}6U8Nl_9bqR0&+87TU;s+V z3587;fOFR@B$~zmE&dgp$IY19hea{2P%qoiSakv}m_##v@jC2w`e*nWDTAS-JCSSW z3HM-%X%ev`*z}M}-~EcL!Tfuubtx0p1BN3g)cly<9mccJ9Hd?*@fQBiOmfx%f|RFU zRsf`1L|trPnhov0#ka_E`l+&vyfUG@KK~T0qOQt!oolndkc8 zGY%f6a3~}+I>D%>Mv7DoxvoS1dh{%y+S@92B~K<_B&;hdL$ zbaAZ_EiF%4&TB2#j%LU4oYKf|fPhPJp~+)P2baT|-iOFkUcBB4w!3(JrpLs2qN(J` zUqN}?<#QWuQve*hwD4e&(EmZ z{ak6}{U)DZ?VdB2FLO5_>Bb}LEA`YATpjbe!WIn(;n(OAhO-MYX1-WGB9#XTsRsFY z+Qh_&4s95HFdIEEhg{O49%1~ow%r_iF}}92Coz_N)??pOgcA%5;3wKx((p2Dw=o749Tq3L2+;sY+JxM}xc?z+RFe9*2JRWdALAn&M>GJa}-+ z-J>!M&70iJz*#fRuOghZveGi`NClO)pEbWccSar;wgGe2=NJ_@WwJG$snlzH6545a zdR`B+jZdDlN-%e1Yy*v+IqVhkO#}HbO8+ZGTD#P53|1PEz<2~s5l_9;i}gHvIsp^o ztUvXstu($Zh(D~7Exfc7yDrk)m&Oa!kN+m>yKd|)*IUBbNX5|?yE4{`y)K{~Px1Cv(rFil*pdb*nviow=}YIHlyd?NLAw|UO%^7v~2d^n8QMKF+b;9;YilU8mkstiu-~VN4r|Q4DL*!BGL*j@kW0(_|;MR3zz}^{0a)@ z2p;s=MBtQqN>f~WL$sO2QwvXAwaiOVw0-+UTORrK9AAbNTC34d^)0<#H)44fXvyJt zQgB6k%)2Eo?8O5yY^vi;3twD1d#jTxxX}2#~WbM!QetruAUjJ}jw_Rm+ zrcaeor6I2x?9G9(mbu`P`v-9?;=WDXVCt1np?3dXCgPm56m%GmzZW!X2YNBYa3M*e z9_!a)en*NpTXN}0IJ1ZSgY@tFz(7_k%zPupY?IBatM7;;y}fu#eu$2|8;2vBJ?i4N zwbe+Vq8yi(D4ST3)7QuJt4U(LzNod;z!Gx;1TI4WaPd=OwEq?r4gMSv7kS0-z!~Ni z>w$!p7M8g$Hsbk=j#DYeyOqn&?tm-JH6r?NuV!blTUeW6j&_UYtYjRT*dyW3`CKVu znIFg)kAMap$HYw}MXIrPhiY}XpI!*tv>tn=c#FegbkEDD^M?6kg)OTaK5A;AcOMLI^Zvu04*eKBA#~~Ye*x)ELaIaye2;VhkvN!=Ra8 ztO~?aJwPv`TYA)|Q29kor-SO<4!+)srKnhVUAA0>dBhYOTgjqgGb@*&KpEbz}M4* zSjz+$dcOZuxcmTRhL73^6;6JwtoANkqAquzj( z3(4GTkRMua{EY;Z9LL7(-d~IDjVIu9 p{v+Kds<6N}oWd^@h?>+f%QQY_34S+D+ zqxg#b5MR55vtig&aOyc?>z9^V&rhZT2OUTcA=h1^w%{>hm*!FZq55G8N$zTv>M`LK zkwQ3J4rl?jX?4#z?a4FqFj^(ZlU1(X`V}-*cor*4cc&Rl%Ay1Q;sPTVJZNlBVKrEJ zX?a%RsvqY$UokJweSe?_INiw9Z5L2rI)oxO4}suTXFZ&-99<+%~r$GM5xinQ_-C_$$Rm}8AZux1LDRIq@_s{-={vC zsz(=Lg9K`6cg5ji%3L;DI*0cB+f>Sn#`j!lk5t*3lTBrF_%=n>NpczeCYr0Y-+p2h zay{c&_uNDh^8PBTjO7S#@+b(yF*X6#D;tZ-lrC1nuL%bV0H)G~Bj%ktun>pvgSQ5(Kfw9J&3%$5wj2aSILoIr#Ds5CNI)X@-ZL^? zchj#m14rr6lVoHwO&`sB$QekUk+exlP2-#5cWA0*u-H{YS|=P<5B?|nOh&3)@{gx} zl7VO^b7)bc0-#H8WNDa>=XiqBuwU=n;F+}6;_@q=r-t2$&&TshO2|v{o;Pt>a>YPRL`WTrgH;@b(V^#8cA zSh;^Dwo`N@lV++pqJ2JAK6k)3OxQRpCQ&mvMsU2hhvy7q&b04(MVRq}iBe{5hITyC zuPD5cYR{=*x4$k4u`=pF;=uo?n}Z^A1=2V8HDkAm21w%hYKoJD5p!kHwDo1bN@67P zc*i;1pu0qJ#lG#RN1y$^r+JWQGI0YtqGJ@Kw-}>&l8~%RoOsxHTK+hPR;E;4^PtD9 zuDdFR$7ILJug8JWBH9hH={0U=Wf<%BsKK2Kwc!;Ax46$qnWK z7vm0in$TCSBD&r79d|Ppj81yE4U1}w{6>PO{uKa{{;MKQukfLHR{>LxbAOjPDX*4f z4ytA_E$fab+G(!W#T$tg1_l1JZ`zYuJwMcS(v)9ZDJ=0`4dhsrGRvz>@*oqP&v3XO zS+*>V2!o9&7M>nbY?lwah6K+ac z=C~l-$D;E6O}kzGiS;7lw%Y5TUJgD&06$?`8a8=V9HP6XEoCiA6J*lCMJ39}xdRuL zY?C;n6t7nYIZ!Y$e-K42=@D;k2>e8Dk~jfZH7L0=BPYYoPeWZ3^PvUc)?Qlcy%hs% z*2U`Pv~T)!5-A;>itHKBz8sE<%-)e5f1~+lj?Nz=%W{L4O?2eFh~DY*l&79D#OD0R z0{?ML4&nw`7Pr=yzcx$h@{UcO2le;e!RL~^#x%#HXaf{NS#K{$8H|HaW*IA8hzttn8U%IlETS_32$V>BgZq6oE%fDF!#>zUk7o`;U8RNQgE zTz*l$iBmo%rl5L$ME9yhKcewz2q|ed$d4;FwT;SWe{yrV_Xzx8&E>@=HML1(m7B%3 zW!Q;JLZ->6T2v%~)}Gan)8e^z4+W^7M}IT}`wb2-p(v5KTw<6=x7zz0=>9{9lP zPC>>~+z4|GQ|r1IRPny+NSWK#S(r-{eDB=c-f(p1X~?!P63wo2X5TJz$4D7 zzab(HBY{M;_6UNEQc#`a?gpr7F&3F>WGY%z+u`6hme)M7y7FoBbp#qM8kuH$%Rn<+ zW>D-2N;Zu!&L(DUo7cG)ce`$1BCmijv8w44La#nf@l=vgV`FGIU4-=;Nc@eg_YZ6V z3VznUg>i+g_km>2jAINOKwQ3#R7|5)NS4V;{-O8z=B=NbQ~6LGxt*Qbd>enpb4i1w zcn;iR@c}n78?Q>i&JbD*6Ers_{a>$~4!~6eyYL0ZAw9_7;Lt85wifd`7Zr49`a1c? z)SPgxUkqP*rpoQqU8g!p*LRMN7XW0q|PN3y+E$fTY`C^LJUZTyKKB-b&-Qyk162 z_rq{YLnd0Kc=)<-ivO|Yqo)4w103!B@w*CCE_ihlHA#C`@3QTF+tge;R}63OsrHg`;fvwK0uky)4*h5v(}u zH04(s938RuGS2_icu&PO$Knb`2uFFpp_WDF^iRn>bBRCc+hCpxd`DOFGB4xX3x5`WZa+JUjB3 z(JDdzfIe(@9wb2*8>UkvxX!e#rr>2$-7`guq5%!vH+n+CQfUw}Q2If@E5WY+D~cOK zi%&6M2uLXyy5q#~&JMNJ(dS;d5}kVW6v^PaGQ5jF$+jHuKq6^g z;ikjqSFsI=u7GVQmM3}L3*{6MV&V>={J9;##=s3%GblYs)VvZPemV6vzY9V@+dem! zS)BtR9AY^i6kIhkFg}UmA~)%KdYk6VsTm|nq^qG*OE$UhSx8Q9x;SEy%mt%>KiFSi zRhP*8Bs$a6k@bv{`B;Lg${+9>Y)kK|W(QDV7;Wj`;Mi-rA#~|yGj-7ES<=b@O1x1q zAD@Ex^Q}OI)f^9Z^H4dNH87N8l3oV~ip9?;aXzu%*)mGp31sA74)0tp8{*v&DhOf^ zaKy(88bA@;j&`==5wnx_+_U$)IUp58soY_=SMaOVAL6J};>1%_)JWkb(a6X8>bA9W zP$-C$3w9(fB+@lTbe-59GN2Ue5pqGE;pZcD)xlk(drSFAq6uOe{qTAk z&^s&Ns{L7fIbXO1zr?DvPk0|SZzo)HSR65PD02mS3j+;cP$;S@Hb1%{NDUxdLk}E1 zHJ|2NuvZdqlyx*1Ud=3#v#;7hNjUzztS4&)%X*P!$x5c2ZCZICTh`Y(tkA8Mtj+4Z zio@H8bk@~{d!>+)+)C!=J9Vcnz|`zo;q;hefjC-r^>7zZg!M1x9f`0=s+0UP*8F${ ziiqxI{gd~8uiTn#_$x>LXA36&)!bLw>o~IgQ6pQ=}vz=EgUyq!7$=${8&Eu zi;NPLKlDc!?FVzNm1h;Rxjj=W604!XxpOBJ9MYaQI>n+uo?+L4ry;*9&1mfvI});? z7{%&h=;6j&;{4Temp6wlRU_lJ{d>p0DE$_rxW$8roA-OWJJh2kgxp%cc8FA#1>)*j zVjoE&xT69#6kkTpdkmMTEQ?v##-S2XPNhIA;NQ2Tf=2}J3c8xefOjssper|{n*~`as%EffRABUAzPBN{VFB#x+ ztT(X0Fh--rM)%!wHuf@e#Qznven0nkO=?4MF)p!f%@EsYA)l@N%u&`uEjqiX@{~Q& z>m1G>hwKOHyKq&7sA|&K3EUtKxSH$TSKoJ3JkRnO?B>g5L1MEAI$Wkl2XP3JKS95i zpkcXK%P>;Z<9h3w(Y~FOsTpl(q0QCEir=o!DR0FpPRrC?DQrQ;0ZOJ4y1VKS;u7>nh%)>ZVl zCrJ;xcr6Xuwqd|xMrA)sLtSZ7_1iM-Bo+nWb-u_cy&hK#>e<~h@eLdHSV6r;YxsPpMvaKy(_yoN9I((QA% zYFsWtzN^anT07o<_@+U*UbeR6Z}O&GL+e=&45F4@uR0jSrrz`GKJyf%*@DUXv>w{& zUAuSWqPfDBow53Az-wfjm)fuevx8Pyw4XS{S>pTs@DIMd1^a{A-$fNv5mVdD&WF8| z7~FoH&MQ9ttD_;zt}1OuDmZ(aAE1aIn9q#^6w!O-frfrJ!}Jiq5j~+-qhsSBy$XMf z-(nT(_1W-!AG72Drmn@}>2E=Y4?%9ebi40u$!!zWpwGQz(~iOiAH_sej~C3z+C0`H zE`9B57bM2O7tlrbS?}v+t;CjpDOnxa1Z2C;RGosC?Y;w<6M@mqDxbg|>}QXFB^Uog za6or-3|uGjCgt6-Eexca&PW3yVYdO4Fv6pQ$XQR{y{y^5Rv&Z6Y~OD7Mvajawhyk6IB?k<Hi)_ohiV8 za(?U0w$d@PJ&?H+7`>zUOJS(t8B!_0HO^duY#ZcCIUCORJfpAcSi+|LHO`q9-Hcti zd`thcOu5$ir|L}U#+xzgVmHia`?kh_CT^n6iHyd>0uXo_i^3LZLs_&Oww2K1{=Ic# zSOi^VHg9LXsJp@0#g6lLpL{WQ$-!8Gg|Tt;oIUr&>$wiq734dZqsf896hE6pc%5!v zO#c^O%`4OUInO%wW;2bvr{7H6mSKPDj~p;>rx$iE{TBiCZ@WqWcQyq~sB#Y|n}&cQ zj9B;uJh?F!e4KOBJK+c+S6?W{F$^A&Y?@~CY&WJ+0Ze+{lWM@9StcVCLkWcdX3A#d zD`c4WaA4BAZ%FTP^FmC61zoVV=-x@QTz+ex5vId!f=0^FnU*laPnM8XqYB!Q{KXBUOYN=r3MIZE;zHdfKECf4F-yJ*8iDn23K? zm#o^7)Clnis<@Sxocs!b$F18l#5Ehc)L+7BqzB!y!v;u^%4=pO@?=yG3pRK z-zkNySH{|3u~S?U0;SGV z;B}fB%b3P^^_-h`>MC9wEa%j>lr9HIyXEPsL7@%&LD5t7Zr<=hz^7`fw*dlQkTZ>k z^KGibT9DEdcok)B$|iUsh@^I)470mk&fTEW5HyBoE9u?HZX zshf_6D#_^#d#TG0;h3&5~yJy3YTf^(gnJZ0xj@A`@l$e29dSPJ*xYlScsQhii ze#mkYY;f2|eNrgd8?FT<3%flIFDJFo=8wenxT7H~SQlItdx4+dNZZWRw#9`L^Yf8r z(l0f|-bpyQqImJa=X4~dvsbd|2=5@!+q|l{a!yN(kJy6BumuT_{eomU`GZ^gh6V$! z2I=3AQU9RAR@eK5byn}!C~@pgsbNxf+n#A6>bXw z7Z@6ObPGIdn%f$4!5IEEI4A;PM%V@grW2A6PG~=kl9b%AX?eAI@)utyQ}2DrH#gb0k8DW?F8CQl!Op977Ib5zu;sc^~loGd~(=i*~y(jquX-w69yKY9z|ZS*gw7P)+Isz94eMj=p|6qZ{315s^SDr3ek(-E zx{&h_N;5d0*-}_BbCH+EiTjX~WQbQk7PM*jfd)caNS5z#Mi7JTxwz}h&ho!N9jMy%8t91ngDw|yZat~)Ww?S6fHa4nQctkK<3(( z&1J|FbX?@f<;=$oJ^b57-8-woBdDq;90;#%sjG3D;)pfU$A`>=S4=kdGcyeEJCAyZpV!g3 z@-hz?F8y~O0Y=cub8ps@^s`szL8;?n$8t9m@u^`12z}l+v3bf8oo+9@CC2bfv_F+r zHoKNqb~3pqcng5}-F2UpneaF=DF9os^3o>xMRi5>zKc*yAMwRA1ah=Cy^&&u@FoWBq8c-T@XXGa4`6F0zmEY%TQGr&i|gu7M z$%AsQKe(&o<|5UHvP};Q`{?G^p zvd(}BO`7>HwRlF@Yvf$(-t5594Nmdx-L+CEux0=Ht|eyB(1RBS(>6+j66A3H8RNJy zO5M(_Ft6LKefW(*K1}vq&J_N!8Hxyr?d;BOqEq31eVZ~Br`SkrP4)(DUvK4#+dY!% z-G7dNJoKQW=@{qGw4k*ipIg-}*L>f-J!WD1iGaG@++sC5AFA%=Z%6iTQ~qt2eGd$c z{{sx=yuIJ%iTP^i5%j8^i|K;kI9FOU8>G{}!J)ZSqy$}8!zz=$v}qyW3Db2Y2kzm! z=LA}1;3vD$Oen&_!?XEqPD9*IIVy9*l`$+tN4BEW=;6-zdhql1q9pR*YD}EkybMC4 zfJ^2_A9L`)$01a4%Pc7H4K6P;mWv0&Q4r?&YOEi+oypZzcS;9M!G%+Y_f{>+9F^Q3 zN(2Qb%;r9QTH47FUI^_KRI!m6sVedN4f*F!sk1Ws}Jb%Vk8JJ8LSQVcYsyv-6V8Sys`3U-=WzduTBE)nBQ%_}k*~miq97jyIryJ)#1IR7P0pT#VyBs{qbm|({A9GNqcX# zehjhLPm`Y(vv~Ug?7yz$3lb=)+A2h2O$J;QsTc&)Kv1OqWinfk=pHUvo*N{~!L2PS zYm@a*KZ82Z(qFg7aXX>YyMXSf+5S~KppW1sE8CU z{BsKd3ox~gH6Lz|)PL{BHJvVB7IUj&KF}0!iYBs@=O>~;*0W{bPE}GHZWiY!Te5M^X(exa9PMj7K}+53Exw?8;k*-mE6%n@^ucTpug9*aiB4&LSoWG)cBjX5 z31efAt{efJ!te1EU}R5&+n9a+`~1WV^d!jkn3h0^c)G?2@$ywoH=l#Z8`Zw%#9?1)aq>^$pkf7de|Jh*t1 z#%XkH>cS5@mShD0-|kNrGSTLrgjH|%?6m0#Fljb^i7K{eT0cdwMO3GS6HDGShb&W% zge-qP)g+$BW0S0h8{Hf*gu-ia<2>XV1al*A4RzPC@xI>aAa3W~>?#-YRfFf^|Misz z7QY~GdN#9}7Qx>Q;keg_cG%0N(Ys>VN0nl}~X0vVWl?t{>;4xMt zbn>zrNgwOGasgG$MX;@Fg_ZBCn$no%9cB()tqtL&JpNz5aR4M<$@O*#mU*)EIxHCl zs&Pqx&|7LHFJNO+q@nz-n=hZ@xd)+e>l5JsGx||w1{@WkK1p&KMWuIV%;nv6DU=KT zqJ(KJSL&fOWOHFGEUUDN$>WR-WH z2B_J0w#C0UZz8E5es@|x41$_KYRV7}P?{*P>=nLpJ=|3KhR0<3=vCs;iKkQR(+V1J zcZC=H*Gk5Bq*hOIFb!+mz@nLUnQ0^`hq$LPzYE^?w_O4+m$3Mbt$K1EhA2*<8TsXslF2gF{{5!Px6T@NySv7D zGs2dZcuoEn;@S;&99mgx0O!dar947xs2t>H0MGHaMfe+75kMC6n(BPXfX=aH1?MpV(p}}>TY6r~sV-~M{%cT5eCrKZtio3>DC}Cl5 zNtL`GMjk%5)nPxVNXaMBaF%*F5OKTvMSLal#-JNzW{1ppL^2Q$AVRiY)V(Bq{a-#D z%*``Fl=?Y7G5X%O4I--^LIY}k9H2;H)|hMAu=XV3I<(;S4BjlS+h5f^>0Av+0jJI2 zC7dHjdc=PpOz?qLK5&-a?E?R^l>?68uBk@Y`F(J23K5)NMbE#z^EST~SKG3XcaX#pYL(HN zO?=h)W#Zi~hFfL-!D-}FedO`_)F>uo3Wx36e~)O%6(n|(7r5Af%2kHwg0JapjwICZExYqIXzOi^269Ruc7*MJ7rt% z)&?`w>)^%n=!0Db=cGIV!e4HV$C$C(zHeYgm9FxP^KSUY&uDz(R{a&PlL8$H%fY!p z?(j zHm%tkxxgT_*!JeW3k~a2qd4{vGnYW~5et7HN<)7!22%rHsB6*Kv9lji;V4F)9~tc@H;lW(*( zBHW8o7SB|2Z`h0Uy`JwKM_>`8-~Q7&fmeT77!b&je%NCK;!Hgb9=mIC9zOe>#>!l2 zP1EPYsRP;!HfJT1Z7XbU+M$6h3Q|#3_U{Nk9BPT?4ck}-}{Cs&nqJC*838P zX))CaS=Xjs1XnIsi+^wswx1tG@Hj@ssz$OWTP=;Gq}Eh6OYZGi&z>qux!b#Hni6sB zwBUEf|1a7#Xp{zeC%!av)aW-7@sbt?cZ`-daCdfGS;s>lb!an?p^-z$y@yh5h1{E? z*jT8`D*rUNBY@hnmxIpA@4Em(XXXAz5$4Ub#_8~tw=4($vIpN`u4K^9kjmczBl_L; z*Pr)DuC**pP4P$*G5I4pDI8OYDO>|O7#a3S z@s!TwoC-=;eYGQFL2F;->GF8dVy>S8KYUx|%wp~(*yOH6MXqH)hrK|^J#)%}YR@OT z&|9oHn8S0Xz;&ZoxcmMT3D5f3!=Rin@Ived1D}Bonda&9YmacdQ?r$T1LK5mo;u4l z7}-f?PcMkILph0}(0l>t*+L(ib<^4DgtWK$mfgNLnbpv(*XY z4tlF*`7?dR58DdT($brp*wZpiG*w!za=ztZjap(qr(9-!VMW; zX`|mQd1V|1K18&_0`6WttW*P${zZL~Bfgx}t8ffiRaXgeEwybDHISY4>zKQZT&TW{ z1i$o#u+C+yH)jP<%fQ=C*UQ*%(0Xs{v9w@~M3y(ZnJDC?H(&uBQqIC+krzl*HyB{N zfewgiO(JX9;K4i1i(ff#*95SR&(Gpq+dp)^>*?gqR~(o+n8uHF6sGm`M*a4eWBg%~ zm#_pe{m6UCp+>A1+xuaC;|h|9$&-|8H*na`_y82Obwf|3qT}4m`P;$TH!Ly|cr1xm z#T%7|+i|2ifXKE$(N;64+V{xJg1hen&3trn`e`Zpy)kEM)sos-v9 zwu6b>ET)mO>h2RY$OkKDU4tDtO>xExJCjK9L{wJd-6~Kx^jc2emoqce4K;tX=spng zuHN^T!v?B-K)^&={4>NOV!h;kV+}|vhMui)^@hvjbCsWwE%a@F+y%soJjf#wEktN$ z3WF+K)L+)EJyVlNNGaaOd8N4gH+_S7>QIR$Sn3059n== zDor90@o8SNS~crqfZa!bDp0_&6^hv}q0b>s-F!+VPX5DW{`JEbq}t@cnW)?Zo+9w$T*+(9CaGtRp@%`!nn~RY%q|iA6N1qVdSt;v z6UVl z8HMT6h-go}n1KWhj?&)3>AKYbK8BNnm`=2tN?<3=JlCo%-LDGh9PvY_KHpEVobZGc zSttB3@BShIB$Cjto&4YtK+KPWsVYUc3L;B6sc>Ak^Ht1Iw9LBuMe_%PkmSRMEJ42x zW#=MLN?X_r3IV}fUT`$D59?sKD2Ody5rb^W#evo$Pva`<0$D&y8T5;dCMxUxJ6Ciy zm=6E`Q|tW#J{)|^sPa>Tx?N?4po(I03YfWJ-VxA=szXD~#jsef6_&HnQM@9Ffd~4^ zx%O_Vuu>20T<&}?eek)k=#6eR?HfAscox8&RK<>N*}R@GS>VubLS9@d4wFV?8(a8< z&&z)?9-OAZxf082A&|JKD*^u@75{N$Ucf;opq+@%BOzB+TIH3&p5Y+vv-P~a{JphN zlzNFqY-CP_`MQJfw3$Z;yGbi#XOfkwCm2gjjhnmvpqu-6)!e0EsHi203FoYW^H+Ee z)OSU_Ad^_;N)gcSK?B}y4k|h%SV!)2j@bg;TjffQRcs*_&a$8yg!bRLoWI-~MGBze zoNX@*lvEjycl$ zCsHk>Wl6gT^F^M>)_`?y*(i={OeJk347{Jwmcf6z4RYY7#ik*v3TnZ@CH44&zCjbJ zs9(+{NS=cTHiCJfz)Ba`a7AUHcGLc-4=isp?~Zjb6z~;Y%m*SR&7T#ZsEtkfAyXK- z7B0VdKeqylH=WjF`i*v$7b%Iw_xUHb)j;^Ydbwt zY@YbJtMlOjsA2^vS`k~ITE<3fuBCEJeMrF?z2a_Eq&hS0kyuzVadm+9>B!}seHux~ z154160K3X-C_#}cz^Ybx>=?6>O+`viWnhF>lqGve0=iOMDmNcv^kA*!K^qF31dYWL z%}!|U7{xCbiI zwZ^1&N=ZPu#|JiP>kAH7R?315j*cr1uG)wHO&aEe50Ia!7M!I89WHfvjF&qs<{EyR ze0XoM+Ei`Q3sff36P(UgPNPNdwP!yYt_BHvG{+ew{TRY8zHE#rPKuDdz0%x!jt04l zs|>A|R@qzxJbUoJ-_9r?uaW-zQ56B0YJ}{M?b{1Mm3su9We-uVG-;SfYyv;}Y{^N` zLO85djXT964BREHn|#UWQ-#&n7^_4Bi*kI^@XXQYx5})p*7GckB$Jx+c7;!B@vaE# z6mhb45O@Y_N`I%Dh@X*AS6M7i^&oN|6JmF&XVLD=j@Mwg-u3h7#q}WW&*cT}eOIWKgK8>y{9CY-C zvk)f3&hu+G$3M{Ny!!XO?K_|O{FnEeh)+jepV_1^AoV#yw|HKMq&jQ1Ek3U(Xsvwb8xgf8 ze_ZZydWyurlPlU6%}p9Zw&U>S77cs#L5w_D(#(|D>=l_v7g_3CMQ#BnFk{%OTZAd4 zPbzJD3qfmHMVBe7K)BD3Pn{KY$|@m0Z=EkY3nlDG0ztX&hW?KMS;Cf*GCy4MgAqa+ zz^K+c<0Wz`djVl3(MIH@JQiaQEZT_CMIie9C|3%<3KgfPQYq|6O*Jw~c4tn?XU=Soa4cgp z#p_CWS=}{dPdVccONIU1q!r;H^_}x&wP=QY6%|T*j?Y=!k#q|<|1gSc91uB>mw(hy zW)861MUbG7ZH{X=^DwdKtYyp+mJ+rao~_#ox(54}fU1P|Dle&4?ZSI>_}w4?b4hn8}cVo{pL%$*iiPPt*0^k`Ah zwAkmFO;0{M#7qAsbL+0`OUIXdB?GSuY_m)hn5du8pxB)+{3MEQ{DryRgnl3W?PlU3 z&^*f^M6@2rjkxiY6!|KM(Bu4z#-c%JXV|r;d(qwjxwD|H;(E9-D! zYBT;YhgAakN=w~jeB2yg?yBq7c8u1iXaS8|tZF9voXE))CY86PR>-X1?y*Z8lqr~a zfjQiZEmyp51Ql?w^=mC|M}3%eRgsllTRmi;$`kv0r^w2|#K_5LaerN++7rkQ+@i*L zW8mpgan;ppzlst@k@T!{a{(e6txC#48`!wS@&&IgE1cPuel0KK81k&S{NhGb<`aR7 zYe4sEWCk()q@>b($bGt4H?tx`a2zymdtZDSWihz%2#3`zvcZ|PJl{O>*{}W+%4uh? zxmnYdwXwaO8_2lb&>1hqI9cr5i9OlDy{zN@<(|lH zIxN8P3jMl|XG&mmJ=p2l9-#@N2J}bW2IvH_%}@f@$-HoQ3ZuU>8Xg$oq5kNLdPHQe z-HaaD07d^>zLEEiS&`^TJH&HZb+#a(YsPXgbl9|p%b{H(uQ}BHXYMr`YMHf=#kVeg zWA5Xnm9?@i%M2or$@_!ty-FABin-Dfb6w1%EfhvBj#qtj6BF+jp1hvfK78wb{moxa zZPqH5jP)c9@X?EW#m-^yg;RumiG3}Uh)EP^xKON@mCkg|f19NEz~{#D3cyv0Emw0- z)ft73rFYa6OlvwC&Xe}5W5${h;Q~-kLRjX&RRhC2RY}d2N0Rk(D%=`yPebc}5gMa?uh^Gh56I!f1@cDX$B#($cMVMbXz?^AUKnhW{ zC|!7BIrkARK!#ehf^uit7g|9nS8*5J?(BD=&69i<*w0Xj8Cj3h6LwDodYc0wp$f_fR3DFI@dpd8)GP9J-teQ5nWk^M zG^2I$r0PU*SpSYsC~D*Zn2!?!Ld?IVe46V4K8;P`WqwJjrM0ZAf4ctvbyV0$)@9w` zExgcioY+m?Tkh1{5Rny8Ru!IJ>|EdN8#b!YXk4dTJf6E+ z4Re^6ExSu>57f#yS5r1)e{n%kH+=;*A-l7*R#lP|7(t3jxg73=pr$$aA8dSv-dGME zY=ZpKKh-TZ?@L6}AdD~M3I#N1vX<_m6ef#Qa`;xvc9VfG)61;9_8;{O{MKBelBGN=Hp*YUm* zhD}ZliK%a0I#|D^&osO8I$I z@deoptnTh8Fk7#o1bHWXc#<;`9x;Ib zm=`bqj#I!lv$N}$L`Wr;CEfkm0vtNCjs;sJ(SD@T?cLgabk@Z!3;9dBZ&ycDiG|6q zxx(H|WjQB2=6A-*&4J33YUNz^DyJB!H~QG)|3x+j@c)(YQ^90qmm9ycku z_+}%25BsR9>{j?mri8b@D};GXvc+X+ayN)kQYVTNOo`p(u64Js)kwn^mNghUzpEvy z(#q07Ou->u5H3^vMaT)AWT?efhr43CqGd1TOW^YV|6547Ij}4lpuf7s{M;HhSZaXjYv)jP!9TuCC{+LKUjdhCW#sZ; zl2i&GlPR;VhNwMkSF3Or;X(Cr%xpt%1S_7>Y3qe)xHN9+-Q3MRViw-Xo8Ajh%P{t2 zl`grdm<)_b7+`!@eHuX>h9IV2WDN;!C{E58UBxU2$7QfNMME=F|JT9b;ySkXU5^M3 zYPwYFYplT@=zac`Mm+R3JU_;9*W}-E-<{g=1k(6`c9dE4 zn_;84VHV4-uKy+SXMEYUv8c1D2{IM1OwinkRY;jTEDm`ZE$nPqds%Z|bTlVj<#%cO zgT*<%6=iFot5>C*Kv%>|XWF!~-VzUq{t)na-J6#oP(^hNdN$i~8Obe^@uo3TmC-lg z%G+&TG>L{4Pg!{d8I!rXtK8>NGFc+EN^#5 zC!ttQrGZYwO5HVAvh-Y*K^iOYs4NW>jvDY73jDlBc$ee%OKj2waIt_$_$i*(#Z>K> zmcy%YY8B-xR=BwVe2Sh99%-o;l?jz1KJEfiocX)W)rWAoWo6uZr{zDR+IsxASUw@j z=`z)$*=6`?TL3LDO}WW7Q~aQNzLY(V^+u&$X1eMa5{4F4Q*;`%yf*uw^RldEC{IUM z`=hq%^84HW3+T_q86U5=pmL-<_SaF~le2@A)x81?$%g0pjy}!5YYlEt(G{NXp1=-} zu&>t$5(1YI)qoj6gkypVvE>e6EP@oSnaX`BtKO{%P*A(GD`+o(JjTXAS*BLu-6=z} z)p3sc*)GeYAu(@*EtX+40uK^6zW0*V(d zZmwpMPPh)x?=>zGba*DXzUTX8I0B%e*mom9`2Sy!-BHk*=jQV%$k*1{jUx$~!dKdlt^2(A-v@WM3ndm=7OB~$Kz4P8h3M9g zk{qCIQRD1Gjnm(Z&?%b9B6hdD zsF|g|o7ddF=`Qw8xhJaFpv#p--&irr{mf~(cN4D4nI809#k|>;@cL#IIXM?U7TCzO z-{w>46O-4tAN9`%SPHU`kZe1&wtKdCS?b^Mo__{~i?Pf~Qz0qdYbpF6;yrA=BVNgv zQ)V0#xhM|-aYYRY&@8Qm+!xrYW84|6O|EE`Wh|u|HjMB_9#IO{f%H>2^wmVaRWG;2 zPD$@31*fkml)Ev)oG#IYYKJ)i$|OFqP~HE z-`?@!TgPRPKPJ&f4nPSWTcp<4QhPDg=Xzip1i~d4Y^s#h{PvHmJLv_upi@3rwak&s zvxc`e_JWk~08R`fh3ofud!M;=Z!Mfm&5Z{1y6@7=2OOO7K~y?)(*aO|0@B^ysxFBM zReZ-*%>|#7z~~jGM#@Tm&tnmpL{gVS*Al!p!#|rznib$;;OnQ>b!Cp(i?PU#Q>WPq zEQNm?`5*g{#P#^nhf;rJCcnQvMrHglHMPgYyz*5=pJIyH;AhOOM>>lM|7m%R{JmPg zc20*-xPDPM<<4P6DZTXkLS1c6vo);UK0~oUxw1ysDI-SlZ#0QNlk}v4E}g_FT-DpiWmvV7Y+jc)&%BHkZU?=8=pLm{`1^CtP=HMAzVgO<~Zg>VaV)_Vb zVQ;G&3K(K zATVMLPKoH?9IyD|PM4HFpxkd0LHfoxVT(dWdKxnQfT#`~dNJ1ebTQhv@tJLHQ{t>~ z;_`J(r)Q*J`^MTJE&39+@5z<+cui(nyMD#I4LuAsv+2A#Kf^g_O!7Cj#2?Q9h%n$q zw5t%QfbUqCkA{X=pnl0^gI^4oOBMb1+~g+tup?_p1n_)CA0xWOw@Uu+-c{5hja zOIa3Ydl1^Ojr0|Avp>fzn(|xUq-r?U{?9Ok?kn{>iYvjgCqs(+}nwr9wG|eQbcdz0179B$^EO(6#Gxa7c&1i{8 zRP|&Tbr=k3@j=vZV5$Cvo`DbMUdN79?(c;vQ(PqWtQkmDLDW{iMo=Az)PAQby;D~o zy=sMvAtX#}Z%$Ep3=@e3J9}8^A!>7ziQVHoQ@W{oohODYXTEwHuz-F}G0{M^=m(A? ziI&CysN@C@M}%2=`iN_8`htwQE)_1dW))QEr*_WOgQlL%-0C9`OdKwCalOZANbW8` zK=0N0$t3_=xI>tgf*RYfy9 zxu^r{J1Yv{h8HG*RFGPq|K=%?4$ayYMK$ZRp2jE~2bn)^rUt>UT)RA=pRe+h$NXV# zL0O3a3VAmEaylKcw5Yfe>x!1_J-K&KUt-9#Tl3jFO^Z?r;~V&ZkIi9$YQfWszkzZy zSG0_^#!yVk93>M$&66jxfKdxz>mx!hN=;n8P|C~E3*bCKZIh>5xRXnlYe zOvD0e_m3F=kpu7gAzrSJEnhp~%%rhL#|=YitZu$DQ_4>>%VR`G)1~wnsZD;E4-*YL^h@tIb$K%X|}$Q`~++Mc2uSgkdK}wTekYT`E`w6LW23VMO?cf zt8fU3#PkCK0ZuF+gNvLmEQt*8hp%h1RX-&hm@gFyi(?s+M%?`5dA7kVeK5JBv3Yn@ z!7pVlM!V7zewy0Y@Sbjg?3k_AZVVjHwCuGLHT}>KdLL9IxNRMu=ppx;*h3OUsFnMS zL#KZBm7!yX_g^ZHEBh^9uk)^FaTtGushjJy{mZ&U+pYEXenB({9Ywl54%PGL}vVrSKSB8kY)AAKFDj}4S(3f zBzi0G)R7;%D4m{x-LR-=9)t%9A^l1ZT zYUKdX0U3M6f%Er}Fn9aeNx`ctO-h9EF$xd(&Rpv=n2-mR*!)6c1kk|Q6OI>0Wb`Qw@fNX_Y{Ct@)w?1)E@aRx?SVrG4WP0;3QQ544CFCX+*KJd^1D-67@QY + + + + + + + + + + + + + + + + + + + + + + + + + 首页 - Prime Backup 文档 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + 跳转至 + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

欢迎来到 Prime Backup 的文档

+

这里是 Prime Backup 插件的官方文档

+ + + + + + + + + + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + \ No newline at end of file diff --git a/zh/quick_start/index.html b/zh/quick_start/index.html new file mode 100644 index 0000000..22f195e --- /dev/null +++ b/zh/quick_start/index.html @@ -0,0 +1,904 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 快速上手 - Prime Backup 文档 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + 跳转至 + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

快速上手

+ +

安装

+

准备 MCDR

+

Prime Backup 是一个 MCDReforged 插件, +它需要 mcdreforged>=2.12 才能运行

+

要安装/更新 MCDReforged,你可以运行:

+
pip3 install mcdreforged>=2.12 -U
+
+

详见 MCDR 的相关文档

+

安装 Python 依赖

+

Prime Backup 需要一些 python 库才能运行,它们都被列在了 +GitHub 仓库 根目录的 requirements.txt 文件中

+
requirements.txt
# core
+mcdreforged>=2.12.0
+psutil
+pytz
+xxhash>=3
+SQLAlchemy>=2
+APScheduler>=3.8,<4
+
+# compress
+zstandard
+
+

使用命令 pip3 install -r requirements.txt 即可安装所有需要的 Python 依赖

+

除此之外,你也可以使用以下指令一键安装所有需要的 Python 依赖

+
pip3 install -r https://tisunion.github.io/PrimeBackup/requirements.txt
+
+

可选依赖

+

一些 Prime Backup 功能所需要的 Python 库并没有在 requirements.txt 中列出, +因为在某些环境下安装这些依赖库可能会 花不少功夫

+

如果你想解锁 Prime Backup 的全部功能特性,你可以使用以下命令:

+
pip3 install -r https://tisunion.github.io/PrimeBackup/requirements.optional.txt
+
+

这些可选的依赖也被列在了 requirements.optional.txt

+
requirements.optional.txt
# hash
+blake3
+
+# compress
+lz4
+
+

安装插件

+

GitHub Release 下载 Prime Backup 插件, +并将其放入 MCDR 的插件文件夹中,然后执行 MCDR 插件重载 操作

+

配置

+

在使用 Prime Backup 之前,你需要正确配置其配置文件,才可让其工作

+

别着急,对于大多数配置选项,你可以使用默认值。 +但还有一些选项,是需要你配置一下的

+

位置

+

在 Prime Backup 插件首次被 MCDR 加载时,其配置文件将自动生成, +路径为:config/prime_backup/config.json

+
mcdr_root/
+└── config/
+    └── prime_backup/
+        └── config.json       <-------------
+
+

它是一个 json 文件,所以你得遵循 json 语法来编辑

+

必要的配置项

+

配置文件中的一些重要内容如下所示:

+
    +
  1. +

    备份目标,即你需要备份的那些文件夹和文件。 + 你需要把 targets 数组里的 "world" 给修改成你的存档文件夹的名字

    +
    // 根配置
    +{
    +    // ...
    +    "backup": {
    +        "targets": [
    +            "world"
    +        ],
    +    }
    +    // ...
    +}
    +
    +

    除此之外,如果你在用像 bukkit 那样把每个维度存在独立的文件夹里的服务器,你可能需要这么配置:

    +
    "targets": [
    +    "world",
    +    "world_nether",
    +    "world_the_end"
    +]
    +
    +
  2. +
  3. +

    用于计算/储存备份数据的方式

    +
    // 根配置
    +{
    +    // ...
    +    "backup": {
    +        "hash_method": "xxh128",
    +        "compress_method": "zstd",
    +    }
    +    // ...
    +}
    +
    +
      +
    • +

      hash_method: 对文件进行哈希的算法。可用选项: "xxh128", "sha256", "blake3"

      +
        +
      • "xxh128"::一种极快的、高质量的哈希算法,不提供密码学安全保证。 + 推荐使用,除非你想要理论上的极端安全
      • +
      • "sha256": 一种广泛使用的、密码学安全的哈希算法
      • +
      • "blake3": 一种高效的、密码学安全的哈希算法。比 sha256 快很多,但是依然比 xxh128 慢。 + 推荐使用,记得要装 blake3 Python 依赖
      • +
      +
    • +
    • +

      compress_method: 备份文件的压缩方式。常用建议:

      +
        +
      • "plain": 无压缩。如果你希望获得最快的操作速度,就用这个
      • +
      • "zstd": 快速且高效的压缩算法。如果你想节约一些磁盘空间的话,推荐使用
      • +
      +
    • +
    +
    +

    Note

    +

    如果你想使用 blake3 作为哈希算法,你需要手动安装 blake3 Python 库。 +它并不包含在默认的 Python 依赖列表中,因为它在某些情况下,可能需要 rust 环境来构建安装

    +
    pip3 install blake3
    +
    +
    +
    +

    Note

    +

    建议你在一开始就明智地设置这两个选项

    +

    虽然你依然可以在 MCDR 中使用 !!pb database migrate_xxx 指令来迁移现有备份的压缩方法和哈希方法, +但完成迁移可能需要花费一定的时间和磁盘空间

    +
    +
  4. +
  5. +

    启用插件。在配置文件的根对象中,设置 enabledtrue。它应该位于整个配置文件的最上面

    +
    // root config
    +{
    +    "enabled": true
    +    // ...
    +}
    +
    +
  6. +
  7. +

    使用 MCDR 命令重载插件

    +
    !!MCDR plugin reload prime_backup
    +
    +
  8. +
+

现在 Prime Backup 应该开始工作了

+

使用

+

在 MCDR 控制台或游戏中输入 !!pb,你应该看到如下所示的欢迎页面

+

welcome

+ + + + + + + + + + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + \ No newline at end of file diff --git a/zh/reference/index.html b/zh/reference/index.html new file mode 100644 index 0000000..9a4355e --- /dev/null +++ b/zh/reference/index.html @@ -0,0 +1,560 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + References - Prime Backup 文档 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

References

+ +

TODO

+ + + + + + + + + + + + + + + + +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + \ No newline at end of file